Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,13 +110,21 @@ after view. Include desktop and mobile when responsive layout changes, and inclu
loading, empty, error, permission, or gated states when those states changed. Add
a short recording only when still images cannot explain the interaction.

Put the first viewport screenshot directly in this description, with the tested
revision, data/build boundary and a working preview link when available. Refresh
it for materially changed presentation. Ordinary authorized implementation and
refinement do not require another user-confirmation round; reuse prior scoped
direction. Ask only for an explicitly reserved presentation decision or a real
scope/authority gap. See AGENTS.md's First-Screen Review Evidence rule.

Use synthetic or public fixture data only. Do not upload live/private screenshots,
even when the underlying access was authorized.
-->

- UI impact: <!-- choose one: none | changed -->
- Before:
- After:
- First viewport and preview: <!-- Embed the screenshot here; identify revision and prototype/packaged/installed boundary. N/A for no UI impact. -->
- States and viewports shown:
- Source data: <!-- choose one: none | synthetic | public_fixture -->
- Attention review: <!-- Per docs/development/design.md: what earns its place through high-value information, essential interaction, or expressive visual presentation? Name consolidation/removal across the whole viewport, and how failures, uncertainty, and one-step controls remain available. -->
Expand Down
44 changes: 29 additions & 15 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ read back its state and unchanged head, and refresh the review packet. Drafts
are excluded from the review queue, so waiting for a review before marking one
ready creates a deadlock. A reviewer must still obey the packet's action
authority and may not mark another author's Draft ready without authorization.
Keep exact-head review, required validation, first-screen approval and explicit
Keep exact-head review, required validation, first-screen evidence and explicit
merge authorization as their separate gates.

### DCO Sign-Off
Expand Down Expand Up @@ -278,20 +278,34 @@ the validator's explicit bilingual no-change declarations. Never treat the
existence of a checklist, a release PR draft, or architecture-only capability
copy as proof that the final release body is usable.

## First-Screen Review Gate

Treat the first visible screen of public product surfaces as owner-reviewed
presentation, not as ordinary copy. Before committing, pushing, or self-merging
changes that alter the first viewport, hero block, primary CTA, or opening
navigation of README, hosted frontstage, showcase index pages, product home
pages, or similarly prominent public entry points, show the user a preview
first and wait for approval.

The preview should be concrete enough to judge the presentation: provide the
local URL and, when the surface is visual HTML, a screenshot or browser view of
the first viewport. Do not move the review gate into a PR comment, todo note, or
final summary after the fact. It must happen before the public first-screen
change is finalized.
## First-Screen Review Evidence

Treat the first visible screen of public product surfaces as reviewable product
presentation. For authorized work within the requested outcome and existing
product/design contract, do not add a separate user-confirmation round before commit,
push or PR submission merely because the first viewport, hero, primary CTA or
opening navigation changes. Reuse prior scoped approval; a new commit or a
routine refinement does not invalidate it.

Before submitting or updating the PR, inspect the actual first viewport and put
its screenshot or browser capture directly in the PR description's visual
evidence section. Include a useful before/after comparison for an existing
surface, affected desktop/narrow views, and a working preview link when one is
available. Identify the tested revision and whether the data and surface are
synthetic, a prototype, packaged or installed. Use public-safe evidence; keep
private messages, paths and live operating context out. A screenshot only in
chat, a PR comment, a Todo note or the final report does not satisfy this rule.
Refresh the evidence when the visible result materially changes, without
requesting another approval for the same authorized direction.

Ask only for a genuinely missing consequential decision, work outside the
accepted scope, or an explicit user instruction reserving presentation approval.
Do not infer such a reservation from a first-screen change alone. Name the
specific unresolved choice and continue independent authorized work. This
presentation evidence rule does not grant merge, installation, release, paid
execution or sensitive-data publication authority. Existing approval records
remain historical evidence; older prose that merely repeats the blanket
first-screen confirmation requirement follows this current rule.

## Product Delivery Completeness

Expand Down
2 changes: 1 addition & 1 deletion docs/architecture/rfcs/desktop-execution-frontends-v0.md
Original file line number Diff line number Diff line change
Expand Up @@ -966,7 +966,7 @@ bootstrap acceptance, Agent execution acceptance, or signed-release readiness.

#4547/#4548/#4552 delivered team-preview confirmation UI, packaged resources and a browser fixture; the confirmation entry is no longer unimplemented. Follow [roadmap](loopx-overall-roadmap-v0.md) R1 for semantically accurate partial/gap/stale readback, R2 for actual worker execution and R3 for automatic return/restart recovery. The confirmation fixture does not prove the complete Lark loop.

Frontend/Lark consume the same proposal, receipt and audience projection; confirmed plans cannot imply execution. Every implementation includes real packaged-frontend interaction and applicable Lark qualification, or explicitly names the untested surface. First-viewport/primary-CTA implementation changes still require concrete preview approval. This revision edits RFCs only, not UI.
Frontend/Lark consume the same proposal, receipt and audience projection; confirmed plans cannot imply execution. Every implementation includes real packaged-frontend interaction and applicable Lark qualification, or explicitly names the untested surface. First-viewport/primary-CTA implementation follows the repository first-screen evidence rule: include the concrete viewport in the PR description and reuse existing scoped direction without a routine confirmation round. This revision edits RFCs only, not UI.

## Delivery slices

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -782,7 +782,7 @@ App 更新仍能操作;在用户应用更新或有意选择其他恢复前,

#4547/#4548/#4552 已交付团队预览确认 UI、打包资源及 browser fixture,不再把确认入口列为未实现。按[统一路线](loopx-overall-roadmap-v0.zh-CN.md) R1 补语义一致的 partial/gap/stale 回读,R2 验 worker 实际执行,R3 验自动回报和重启恢复。现有确认 fixture 不能证明 Lark 端完整闭环。

前端/Lark 消费同一 proposal、receipt 和 audience projection;运行状态不能由计划已确认推断。每个实现批次含 packaged frontend 的实际交互和 Lark 适用路径验收,或明确说明未验收。涉及首屏/主 CTA 的实现继续先展示具体预览并获批准;本次仅更新 RFC,不修改 UI。
前端/Lark 消费同一 proposal、receipt 和 audience projection;运行状态不能由计划已确认推断。每个实现批次含 packaged frontend 的实际交互和 Lark 适用路径验收,或明确说明未验收。涉及首屏/主 CTA 的实现遵循仓库首屏证据规则:具体首屏放入 PR description,复用既有范围内的设计方向,不为普通细化再增加一轮确认;本次仅更新 RFC,不修改 UI。

## 交付切片

Expand Down
15 changes: 9 additions & 6 deletions docs/architecture/rfcs/goal-workspace-surface-v0.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,9 @@ acceptance rule, cost computation or new action.
**Unchanged:** Todo, gate, quota, lifecycle, acceptance and usage authority;
the Tasks board, W1 map, Chat, Files and the Stage 4 delivery section keep their
contracts and become lenses or destinations of this page. **Default boundary:**
the Overview composition is a default UI change and requires the owner's
first-screen preview approval before M1 becomes default. **Not approved here:**
the Overview composition is a default UI change. M1 follows the repository's
first-screen evidence rule, with the concrete viewport in the PR description
and ordinary refinements within authorized direction requiring no extra confirmation. **Not approved here:**
new Todo fields (including display numbers), a lifetime usage aggregate,
browser authoring of executable acceptance checks, Lark or CLI parity, and any
live-team L1/L2 or G1 claim.
Expand Down Expand Up @@ -502,7 +503,7 @@ This view does not authorize intervention in a frozen benchmark.
| Copy the reference pattern literally (flat list, `#n`, lifetime runtime) | Rejected | Breaks the identity, liveness and unknown-is-not-zero invariants |
| A separate Goal page route beside the workspace tabs | Rejected | Duplicates navigation; Overview is already the direct Goal destination |
| A Python-served page projection | Rejected | The TypeScript presentation boundary is the established owner; a Python decision mirror is forbidden |
| The W1 task map as every Overview's hero | Deferred | Ordinary work keeps its responsibility lens; research Goals use the whole-history Explore composition in Section 5.11, without turning task dependencies into research evidence; first-screen approval still applies |
| The W1 task map as every Overview's hero | Deferred | Ordinary work keeps its responsibility lens; research Goals use the whole-history Explore composition in Section 5.11, without turning task dependencies into research evidence; first-screen PR evidence still applies |
| Vitals on Overview only | Rejected | Owners working in Chat or Tasks would lose stop and needs-you context |
| Lifetime totals summed from windows | Rejected | Double counting and retention gaps; lifetime belongs to the usage owner |

Expand All @@ -521,7 +522,8 @@ This view does not authorize intervention in a frozen benchmark.
Agent time / Agent 用时, Cost / 成本, Last activity / 最近活动, Stopped / 已停止,
Done / 已完成, Accepted / 已验收.
- Default change: while under review, M1 may ship behind a local view toggle.
After first-screen approval it becomes the default, with release notes naming
After the required PR review and merge authorization it becomes the default,
with first-screen evidence in the PR description and release notes naming
the changed Overview and masthead.

## 8. Migration and rollback
Expand Down Expand Up @@ -565,7 +567,7 @@ second upgrade.
| Milestone | Shipped behavior | Entry gate | Exit evidence | Rollback |
| --- | --- | --- | --- | --- |
| M0 Contract | This RFC, the composition study and roadmap/RFC reconciliation | — | Docs governance smoke; owner review | Revert docs |
| M1 Masthead and vitals | Persistent masthead with Stop/Resume readback on all Goal views; vitals from `goal_workspace_digest_v0`; Overview order Direction (read-only) → Needs you → existing sections | First-screen preview approval of the Goal page | V1, V2 (strip), V4, V6, V9 | Revert composition |
| M1 Masthead and vitals | Persistent masthead with Stop/Resume readback on all Goal views; vitals from `goal_workspace_digest_v0`; Overview order Direction (read-only) → Needs you → existing sections | Goal first-viewport evidence in the PR description | V1, V2 (strip), V4, V6, V9 | Revert composition |
| M2 Work lenses and rail | Now by owner with Board/Map lenses; All-work rail and Activity; shared selection and `todo` deep link; inline Add task; Results region | M1 | V2, V3, V6, V7, V9, V10 | Revert to M1 |
| M3 Direction and return | Since-you-looked delta; target declaration through the acceptance owner | M2; D3 decided by its owner | V5, V8 | Hide declaration; delete marker |
| M4 Live and expressive | W2 live state on rows and map from the execution observation owner; event motion; keyboard map and palette; dark inverse | M2; W2 observation available | V6 (motion, dark); live-team W2 acceptance | Disable motion/theme |
Expand Down Expand Up @@ -654,7 +656,8 @@ question to close. Research supplies permitted cases, assessment contracts and
method qualification; product owns rendering, interaction and result consumption.
This documentation establishes neither implementation, an available analysis
provider, evaluator calibration, installed behavior nor scientific benefit.
Any new first-screen composition still needs its concrete preview approval.
New first-screen compositions follow the repository evidence rule: concrete
viewport in the PR description, with no repeated approval for authorized refinements.

The current author candidate combines the scoped paginated history reader with
a default record-time lens and optional relationship view. Reading thirds,
Expand Down
12 changes: 7 additions & 5 deletions docs/architecture/rfcs/goal-workspace-surface-v0.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@

**不变:** Todo、Gate、quota、生命周期、验收与用量的权限;任务看板、W1 地图、对话、
文件和 Stage 4 交付区保持各自合同,成为本页面的镜头或去处。**默认边界:** 概览组合
属于默认 UI 变化,M1 设为默认前需 owner 的首屏预览批准。**本文不批准:** 新 Todo 字段
属于默认 UI 变化;M1 遵循仓库首屏证据规则,将具体首屏放入 PR description,
获准方向内的普通细化不再增加一轮确认。**本文不批准:** 新 Todo 字段
(包括显示编号)、累计用量聚合、在浏览器中编写可执行验收检查、飞书或 CLI 对等呈现,
以及任何团队实时 L1/L2 或 G1 声明。

Expand Down Expand Up @@ -377,7 +378,7 @@ Agent/执行 owner 准备并完成分析。不要求用户填写来源 id、选
| 照搬参考页面(平铺列表、`#n`、累计运行时长) | 否决 | 违反身份、活跃与未知不是零的不变量 |
| 在工作区页签之外另建 Goal 页面路由 | 否决 | 重复导航;概览已是直达 Goal 的去处 |
| 由 Python 提供页面投影 | 否决 | TypeScript 展示边界是既定 owner;禁止 Python 决策镜像 |
| 所有概览均以 W1 任务地图为主视觉 | 推迟 | 普通工作保留负责人镜头;研究 Goal 使用第 5.11 节全历史 Explore 组合,不将任务依赖变成研究证据;首屏批准仍适用 |
| 所有概览均以 W1 任务地图为主视觉 | 推迟 | 普通工作保留负责人镜头;研究 Goal 使用第 5.11 节全历史 Explore 组合,不将任务依赖变成研究证据;首屏 PR 证据仍适用 |
| 指标只放在概览 | 否决 | 在对话或任务页工作的 owner 会失去停止与等你决定的上下文 |
| 由窗口相加得到累计值 | 否决 | 重复计数与保留期缺口;累计属于用量 owner |

Expand All @@ -390,7 +391,7 @@ Agent/执行 owner 准备并完成分析。不要求用户填写来源 id、选
- 远端状态来源保持只读,生命周期操作除外,并沿用既有精确 Host alias 绑定。
- 文案按同一术语表双语呈现:Work / 工作、Needs you / 等你决定、Agent time / Agent 用时、
Cost / 成本、Last activity / 最近活动、Stopped / 已停止、Done / 已完成、Accepted / 已验收。
- 默认变化:评审期间 M1 可放在本地视图开关之后;首屏批准后设为默认,发布说明点名变化的
- 默认变化:评审期间 M1 可放在本地视图开关之后;必要 PR review 与合并授权通过后设为默认,具体首屏放入 PR description,发布说明点名变化的
概览与页头。

## 8. 迁移与回滚
Expand Down Expand Up @@ -429,7 +430,7 @@ Agent/执行 owner 准备并完成分析。不要求用户填写来源 id、选
| 里程碑 | 交付行为 | 进入门槛 | 退出证据 | 回滚 |
| --- | --- | --- | --- | --- |
| M0 合同 | 本 RFC、组合研究以及路线与 RFC 对齐 | — | 文档治理 smoke;owner 评审 | 回退文档 |
| M1 页头与指标 | 所有 Goal 视图的常驻页头及停止/恢复回读;由 `goal_workspace_digest_v0` 产出指标;概览顺序为方向(只读)→ 等你决定 → 既有区域 | Goal 页面首屏预览获批 | V1、V2(指标条)、V4、V6、V9 | 回退组合 |
| M1 页头与指标 | 所有 Goal 视图的常驻页头及停止/恢复回读;由 `goal_workspace_digest_v0` 产出指标;概览顺序为方向(只读)→ 等你决定 → 既有区域 | Goal 页面首屏证据进入 PR description | V1、V2(指标条)、V4、V6、V9 | 回退组合 |
| M2 工作镜头与侧栏 | 按负责人的当前工作,以及看板/地图镜头;全部工作侧栏与动态;共享选中与 `todo` 深链;行内新建任务;成果区 | M1 | V2、V3、V6、V7、V9、V10 | 回到 M1 |
| M3 方向与回归 | 自上次查看变化;经验收 owner 声明目标 | M2;D3 由其 owner 决定 | V5、V8 | 隐藏声明;删除标记 |
| M4 实时与表现力 | 由执行观察 owner 在行与地图上显示 W2 实时状态;事件动效;快捷键与命令面板;深色反色 | M2;W2 观察可用 | V6(动效、深色);团队实时 W2 验收 | 关闭动效/主题 |
Expand Down Expand Up @@ -472,7 +473,8 @@ V2 的指标条与看板共用工作判定;V4 的真实隔离 Chat 动作服
深入分析。先交付只读全历史原型与 V11 打包旅程,再整合既有获准分析动作和 V12,
不等待所有科学问题闭合。研究侧提供获准案例、评测合同与方法资格,产品侧负责展示、
交互与结果消费。本文档不证明实现、分析 provider 已可用、evaluator 已校准、安装行为或
科学收益;新的首屏组合仍须提供具体预览并获批准。
科学收益;新的首屏组合遵循仓库首屏证据规则:具体首屏放入 PR description,
获准方向内的细化不再重复确认。

当前候选将限定来源、完整分页的历史 reader 与默认记录时间视图、可选关系图组合。
三等分、密度、来源标签和显式决策均是展示投影;同一问题多轮决策与延后回填不能在
Expand Down
7 changes: 4 additions & 3 deletions docs/architecture/rfcs/live-team-workspace-v0.md
Original file line number Diff line number Diff line change
Expand Up @@ -311,8 +311,9 @@ owners, with explicit history gaps if durable events do not exist.
Disable the scene or stop its subscription to return to list/chat without
interrupting member work. Do not delete journals, rebind sessions, rewrite
historical receipt strength or reset provider state. Default Overview/navigation
changes require the repository's concrete first-screen preview approval before
commit/push; approval of an unrelated copy edit does not approve this scene.
changes follow the repository first-screen evidence rule: put the concrete
viewport in the PR description and reuse scoped direction for ordinary
refinements; approval of an unrelated copy edit does not approve this scene.

## 9. Acceptance

Expand Down Expand Up @@ -542,7 +543,7 @@ The [near-term local-agent launch](loopx-overall-roadmap-v0.md#near-term-local-a
| L0 Design and traceability | Interactive synthetic study, source audit and executable acceptance plan | Design review; V1/V3 concept checks; no live claim | Presentation; discard prototype, retain decisions |
| L1 One real correction | Objection→revision→independent acceptance→requester adoption is understandable, with evidence, intervention and accurately scoped stop controls | Section 9 first live outcome; V1/V2/V3/V6 and episode-level V7 through real frontend + CLI | Collaboration/evidence/control owners + Chat/packaged UI; disable scene without implying work stopped |
| L2 Continuous research | Original research Agent completes V4 and the user replays correction→adoption→next cycle | Runtime credential/admission repairs and usable L1; qualify each host profile, then V4 | Existing R2/R3 owners; stop new admission and retain results |
| L3 Semantic zoom and scale | Subteams, source/conclusion version comparison and focused replay at measured 10/30/100 display load | Typed lineage producers and L2; V5/V7 and approved first-screen composition | Presentation + evidence owner; reduce detail/revert renderer |
| L3 Semantic zoom and scale | Subteams, source/conclusion version comparison and focused replay at measured 10/30/100 display load | Typed lineage producers and L2; V5/V7 and first-screen composition evidence in the PR description | Presentation + evidence owner; reduce detail/revert renderer |

**Work-scale map track.** Semantic zoom needs a whole-Goal Work view to zoom
from. This track renders existing typed Todo relations only. It runs beside L1
Expand Down
Loading
Loading