Skip to content

fix(workspace): open Goals on Overview by default - #6564

Merged
huangruiteng merged 1 commit into
mainfrom
codex/goal-default-overview-20261016
Oct 16, 2026
Merged

huangruiteng merged 1 commit into
mainfrom
codex/goal-default-overview-20261016

Conversation

@huangruiteng

@huangruiteng huangruiteng commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

Goal And Delivered Outcome

Opening a Goal should first show its objective, acceptance and current work. Previously, selecting a Goal opened Tasks, while a Goal URL without view opened Chat. Both now start on Overview, saving the extra tab selection. Explicit Tasks, Chat, Results and Todo links retain their destinations.

  • Outcome basis: maintainer request to make Overview the default Goal entry; ordinary contribution against main, with no issue invented for admission.

Author Declaration

  • Written by: model_agent — OpenAI Codex, GPT-6 family.
  • Implemented against: the maintainer request above; the existing workspace composition in docs/architecture/rfcs/goal-workspace-surface-v0.md §5.2 at 3bc74f9317479e36286414d899a77172a115e330. The new default policy is documented in this change.
Criterion Disposition Owner / validation
Open a Goal on Overview when no view is requested implemented PersonalWorkspacePage.selectGoal, initial local view and DashboardPage route fallback; packaged sidebar, bare URL and reload checks
Honor explicit destinations and browser navigation implemented Existing route owner retained; packaged Tasks/Chat/Results links, Todo deep links, dismiss/reload and Back/Forward checks
Opening views does not start work or mutate Goal authority implemented Navigation journeys assert zero Turn requests and action applies

Scope And Continuation

Complete within this scope. Reuses the existing view type, tabs and route owner; adds no setting, layout or execution policy. Tasks-only smokes now enter Tasks explicitly and scope retained history to that panel. The standalone scroll smoke also aligns its old CSS assertions with the existing Tasks-only selectors and declares the Chinese locale its assertions use. No CSS changes.

Source proposal only: not merged or installed in a running App. No successor is needed for this navigation change.

Validation

  • Tested revision: 1302a80 (matching working tree); packaged bundle fingerprints verified against the source.
  • Run state: finished.
  • Input classes: synthetic.
Check kind Result Evidence / limitation
static passed TypeScript check and production Chat build via uv run --extra test python scripts/chat_bundle.py build; verify --source; workspace drawer contract; diff/privacy checks
real_entrypoint passed Packaged task-inspector-route-smoke.mjs: desktop/390px default Overview, bare URL/reload, explicit views, deliberate/unavailable Todo links, keyboard, Back/Forward; no model or authority writes
integration passed Packaged goal-showcase, workspace-view-recovery, navigation-sorting, task-inspector-return and typed-actions journeys; isolated fixture API boundaries, not live Goals or models
integration passed task-board-scroll-smoke.mjs: desktop wheel/keyboard scrolling and 390px page scrolling
manual passed Inspected synthetic packaged screenshots; existing Overview composition and tabs remain readable
real_entrypoint not_run Installed desktop App update/restart; this PR does not claim installation

Frontend / Visual Evidence

  • UI impact: changed default destination; no layout, styling or copy changes.
  • Before: sidebar → Tasks, or bare Goal URL → Chat → select Overview.
  • After: sidebar or bare Goal URL → Overview; explicit destination links remain direct.
  • Source data: synthetic showcase workspace only. No private Goal screenshots, live traces or local paths are published.
  • Images below compare the former Tasks destination and the new Overview entry at 1440×900 using the same synthetic fixture and current packaged build. The former destination is reproduced by explicitly selecting Tasks; it is not labeled as a separate baseline build. Navigation is additionally checked at 390px.
  • Attention/craft review: the existing objective hero, acceptance conditions, owner-grouped current work and folded composer become the entry view. Existing unknown/error states, control locations, tokens and motion are reused; no grouping cards or new visual vocabulary are introduced.

Former destination:

Former Tasks destination

Default entry after this change:

Default Overview entry

Type / Area

Bug fix and focused smoke/documentation updates; presentation surface. Shared-authority migration impact: N/A, no authority or storage contract changes.

Boundary Checklist

  • Public-safe source, body and synthetic attachments only; private state, generated bundle, screenshots, local logs and dependency links are excluded from Git.
  • No duplicated benchmark or maintainer program work; change stays within the requested Goal entry behavior.
  • Visual evidence and validation limits are disclosed above.
  • Every commit includes a DCO sign-off.

Signed-off-by: huangruiteng <huangrt01@163.com>

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approval conclusion
Reviewer: model_agent; model=gpt-6.1-sol; provider=OpenAI; runtime_reported; reasoning_effort=max.

精确 head:1302a80b7cc8d3a5bd1c3f802756f7391d8f8a5f。未发现阻塞性导航回归;质量回执和安装资格仍分别保留。

动机

打开 Goal 了解目标、验收条件和当前工作的人,原先需要先从任务或对话页切换到概览。
旧版从侧栏选择 Goal 会进入任务页,无 view 的 Goal URL 会进入对话页;当前版本两种入口都进入概览,显式任务、对话和成果链接仍到原处。
独立打包页面对照已验证桌面与手机的新默认、显式链接和 Todo 关闭/重载;导航没有发起 Turn 或 action apply。
本 PR 不改变布局、样式、Goal 权限或执行策略,也不宣称已更新安装中的桌面 App、验证真实模型或关闭整个工作区路线图。

改动思路

复用已有 WorkspaceGoalTab、受控路由和本地 fallback,调整三个默认值即可完成普通阅读路径;新增设置或第二套路由会增加不必要的状态与维护成本。
本次完整交付默认导航这一有界请求,保留显式目的地、Todo 身份和浏览器历史;已有 Overview 的布局与后端执行规则不扩写。
旧契约是 docs/architecture/rfcs/goal-workspace-surface-v0.md,spec_revision:3bc74f9317479e36286414d899a77172a115e330。先读变更前5.2、6、7、8、9节:它已定义 Overview 的目标/验收/当前工作、直接 Chat、URL 身份和 V9 无副作用;没有规定无 view 的默认页。本次新增三行是有意的新导航政策,不能拿修改后的文字反证旧实现错误。

criterion_id 变更前要求 当前处置
page-anatomy Section5.2 places objective/acceptance, owner decisions and current work in the existing Overview. implemented: PersonalWorkspacePage localView/selectGoal; DashboardPage selectedView
direct-chat Chat remains a direct destination. implemented: Existing conversation URL mapping and explicit view callback
route-compatibility Section8 preserves goalId/view and additive todo URL identity; reload/back restore the same task context. implemented: Unchanged navigation owner and task inspector selection
V9 Opening, refreshing and switching lenses cause no action, quota or validator request. implemented: Existing read-only browser navigation and fixture HTTP request inventory
用户入口 基础版本 当前 head
侧栏 / 普通打开 Goal 任务 概览
Goal URL 不带 view / reload 对话 概览
显式 tasks、conversation、files 原目的地 原目的地
Todo deep link / 关闭 / 历史返回 原 Goal、来源与 Todo 身份 保留;不因新默认触发执行

具体改动

关键代码讲解

PersonalWorkspacePage.localView 统一以 overview 初始化;selectGoal 的缺省 view 同样变为 overview,但显式 chat/files 等调用仍传原参数,controlledView 仍优先。DashboardPage.selectedView 只改变有 Goal 且未给 view 的 fallback;conversation 的 URL 映射、已有 navigate owner、goalId/statusUrl/todo 和 Back/Forward 没有另起实现。
十路径总计 +49/-21,其中两处生产文件仅三个默认表达式;RFC增加3行,七个既有浏览器 smoke/fixture 适配新默认。任务专用测试先显式进入 Tasks,历史列表查询限定在 Tasks panel,避免已访问 Overview 中的同类节点产生歧义;scroll smoke 对齐已有 Tasks-only CSS selector并显式声明中文 locale。没有 CSS、布局、复制的组件、配置开关或生成 bundle 入库;提交有 DCO。
相邻可维护性检查已做:不同的全局视图、受控 URL 和独立组件 fallback 都有真实调用者,保留现有 typed owner 比新建“默认页设置”或共享状态层更小、更易回滚。Overview、样式和公共 API fixture 的 base/head blobs 完全相同。

对主干的风险

本次分别构建基础版本与当前 head 的真实 Chat bundle,当前 TypeScript生产构建及 verify --source 通过。使用同一 Ego TaskSpace、生产 assets HTTP 和仓库合成 API,在 1440px/390px 验证四组 source-specific 对照:基础版确实为侧栏 Tasks/裸 URL Chat,当前版二者均为 Overview;显式 Tasks/Chat/Results 和 Todo关闭重载保持一致。另有11条当前桌面路径,覆盖键盘开详情、焦点返回、关闭后重载、显式视图、Todo重载、Back/Forward和缺失 Todo的退出恢复。
已逐张目检两个来源各自打包版本的桌面/手机四张 populated showcase 首屏:桌面把已有目标与验收作为单一主内容、决定放在旁栏;手机延续已批准的 Direction 折叠,键盘展开可见目标。页面宽度与1440/390视口一致。交付快照503显示“交付快照读取失败,请刷新重试。”,恢复读取后警告消失、原目标恢复;没有伪造空成功。两来源 HTTP 记录的 Turn和action apply均为0。此处状态/动作接口是公共合成 fixture,不证明活跃 Goal、新安装 App、模型或真实验收执行;作者完整 Playwright 场景未被冒充为本次独立运行。
实际 premerge 的3项 direct和13项 selected全部执行通过,语义、文档和public-boundary检查通过;整个 gate 仍为 quality_receipt_missing,须由作者/维护者在精确范围补齐,未制造豁免。生产构建原有大 chunk提示保留,不据此声称性能改善。未查询或等待 CI。
需要 Tasks 的侧栏用户会多选一次标签;其显式 Tasks链接仍一步直达。这是把普通阅读入口交给现有概览的公开默认变更,没有新增确认轮次、操作权限、调度或模型调用。

我的整体评价

APPROVE 当前精确 head:默认导航请求在现有前端 owner 内完整落地,普通阅读少一次标签切换,明确目的地与错误恢复没有丢失。当前范围不需要新的状态 owner、设置或仪式性后继任务;源码提案与安装采用保持区分。
复用已有 WorkspaceGoalTab、受控路由和本地 fallback,调整三个默认值即可完成普通阅读路径;新增设置或第二套路由会增加不必要的状态与维护成本。
本次完整交付默认导航这一有界请求,保留显式目的地、Todo 身份和浏览器历史;已有 Overview 的布局与后端执行规则不扩写。
安装中的 App 与真实模型不在本次资格内;审查环境缺失的精确范围质量回执仍需在合并前补齐。
代码批准不表示质量门已通过或获得合并授权;这里未更新用户 App或执行合并。

English verdict: APPROVE - 1302a80. Independent packaged base/head browser checks at1440/390 verify Overview defaults, explicit-view/Todo parity and visible failure recovery with zero Turn/action applies. The missing local quality receipt and installed-App qualification remain separate; CI was not consulted.

@huangruiteng
huangruiteng merged commit e04c970 into main Oct 16, 2026
30 of 39 checks passed
@huangruiteng
huangruiteng deleted the codex/goal-default-overview-20261016 branch October 16, 2026 03:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants