Skip to content

Document AI Teams Studio implementation design#1116

Open
AbigailDeng wants to merge 1 commit into
devfrom
docs/2026-05-27_ai-teams-studio-design
Open

Document AI Teams Studio implementation design#1116
AbigailDeng wants to merge 1 commit into
devfrom
docs/2026-05-27_ai-teams-studio-design

Conversation

@AbigailDeng

Copy link
Copy Markdown
Contributor

Problem

The AI Teams + Studio frontend work had product decisions spread across earlier proposal material and the current refactor/frontend implementation, making it hard to see what the current Console Web implementation should actually follow.

Solution

  • Add an implementation design document for AI Teams + Studio on the current Console Web baseline.
  • Capture the accepted product conclusions, route structure, page/module responsibilities, Studio deep-linking expectations, delivery waves, and verification plan.
  • Keep the document scoped to frontend implementation design only; it does not add backend contracts or solution files.

Impact Paths

  • docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md

Validation

  • bash tools/docs/lint.sh passed.

@loning

loning commented May 28, 2026

Copy link
Copy Markdown
Contributor

🤖 Tests review:通过

TL;DR

  • 这是什么: PR Document AI Teams Studio implementation design #1116 只新增 1 份 docs/design/... 实施设计文档。
  • 结论是什么: 从测试质量角度 approve;没有 src/agents/test/ 变更,也没有新增轮询等待、跳过测试或弱化断言。
  • 需要 maintainer 做什么: 无需测试侧补充;后续真正落地前端实现时再按变更补行为测试。

详细说明

我按 PR diff 检查到唯一变更是 docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md,属于设计文档新增。因为没有触及生产代码或测试代码,本轮没有“新增 public method / branch / event type 必须补测试”的覆盖缺口,也没有 Task.Delay / WaitUntilAsync allowlist、[Skip][Trait("Category","Manual")] 或断言弱化问题。


📎 完整 codex 原始输出(存档备查)
---
pr: 1116
role: tests
verdict: approve
---

## Verdict
Test coverage and quality are adequate for this docs-only diff.

## Evidence
- `docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md`: the PR adds only this design document; no `src/`, `agents/`, or `test/` files are touched, so there are no net-new production lines requiring behavior tests.
- `tools/ci/test_stability_guards.sh` and `tools/ci/test_polling_allowlist.txt`: unchanged by the PR; no new polling waits, skip attributes, manual traits, or assertion loosening are introduced.

## What would change your verdict (only if comment or reject)
N/A

⟦AI:AUTO-LOOP⟧

@loning

loning commented May 28, 2026

Copy link
Copy Markdown
Contributor

🤖 架构审查通过

TL;DR

  • 这是什么: PR 1116 的 architect / CLAUDE compliance 角度审查。
  • 结论: approve;本 PR 只新增 1 份 docs/design 草稿,未改 .cs.protodocs/canon,没有引入架构边界变化。
  • 下一步: controller 可以把 architect 维度视为通过,继续汇总其他 reviewer 结论。

详细说明

我按三点核对:CLAUDE.md / AGENTS.md、指定三点 diff origin/dev...origin/docs/2026-05-27_ai-teams-studio-design -- *.cs *.proto docs/canon/*.md、以及全量 PR diff 的架构反模式 grep。指定架构 diff 结果为空;全量 PR 只有 docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md 新增 264 行。

该文档声明 frontend-only、不新增后端 contract、不构造伪聚合总图,和 CLAUDE 的读写边界、事实源、外部仓库无改动权方向一致;未触碰 proto,因此无字段号复用风险;未新增 actor/readmodel/projection/runtime 代码,因此没有 HandleEventAsyncSubscribeAsync<EventEnvelope>、JSON state serialization、Task.DelayTypeUrl.Contains、跨请求 Dictionary 状态等新增风险。


📎 完整 codex 原始输出(存档备查)
---
pr: 1116
role: architect
verdict: approve
---

## Verdict
approve: PR 1116 is docs-only outside the architect-sensitive code/proto/canon surface and does not introduce a CLAUDE/AGENTS architecture compliance regression.

## Evidence
- `git diff --name-only origin/dev...origin/docs/2026-05-27_ai-teams-studio-design -- '*.cs' '*.proto' 'docs/canon/*.md'` returned `0` files, so the requested architecture diff surface has no code, proto, or canon changes to review.
- `docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md:1` includes required retained-doc frontmatter (`title/status/owner`), aligning with CLAUDE: `AI 生成的设计文档默认不保留到 docs/;需要保留时必须有 title/status/owner frontmatter 并放入对应目录。`
- `docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md:42` states frontend-only/no backend contract/no runtime truth rewrite, and `:242` states no backend team create API, aligning with CLAUDE: `严格分层:Domain / Application / Infrastructure / Host;API 仅做宿主与组合,不承载业务编排。` and `外部仓库无改动权:本仓库需求禁止依赖 NyxID / chrono-storage / chrono-ornn 等外部仓库新增或修改;现有 surface 不足时,在本仓库内绕开或不做。`
- `docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md:246` explicitly avoids fake scope-level aggregate graphs, aligning with CLAUDE: `聚合必须 actor 化:跨 actor 聚合/汇总/关联若有稳定业务语义,建模为 aggregate actor;禁止长期放在 query-time 拼装层。`
- Anti-pattern grep over the full PR diff found no new `actor.HandleEventAsync(`, `SubscribeAsync<EventEnvelope>`, JSON actor-state serialization, production `Task.Delay(`, `GetAwaiter().GetResult()`, `TypeUrl.Contains(...)`, middle-layer `Dictionary<,>` fact state, raw `new HttpClient(`, `[Skip]`, technical actor splits, or new NyxID/chrono references.
- No `.proto` files changed, so field-number reuse/reserved-field concerns do not apply.

## What would change your verdict
Not applicable.

REVIEW_DONE:1116:architect:approve

⟦AI:AUTO-LOOP⟧

@loning

loning commented May 28, 2026

Copy link
Copy Markdown
Contributor

🤖 质量评审结论:comment

TL;DR

  • 这是什么:PR 1116 是一份 Console Web AI Teams + Studio 前端实施设计文档。
  • 结论是什么:文档整体可读、范围集中,但 /teams 入口语义和现有实施清单冲突,会让后续实现者不确定该自动进详情还是先展示 roster preview。
  • 需要 maintainer 做什么:请让作者把 /teams 的行为统一成一个口径;若实施清单已过期,也请在本文里明确取代关系。

详细说明

主要问题在 docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md:79:113:250-251:新文档把 /teams 描述为“解析当前团队上下文并跳转到详情页”或“进入 /teams/:scopeId”。但相邻的既有实施清单 docs/design/2026-04-09-aevatar-console-web-frontend-implementation-checklist.md:57-60 明确约束 /teams 有当前 team 时应渲染 roster-style preview,只有用户点击 View details 才进入 /teams/:scopeId。这不是个人风格差异,而是同一入口的实施语义冲突。

建议二选一:如果现在确实要改为自动进入详情页,就在新文档中明确写出“取代 2026-04-09 清单中的 roster preview 约束”,并说明原因;如果仍保留 roster preview,就把本文中“跳转/进入详情”的表述改成“解析当前 session team 并展示 roster preview,详情由用户显式进入”。


📎 完整 codex 原始输出(存档备查)
---
pr: 1116
role: quality
verdict: comment
---

## Verdict
Comment: the document is readable and focused, but it leaves `/teams` behavior ambiguous by contradicting the existing implementation checklist.

## Evidence
- `docs/design/2026-04-10-aevatar-console-web-ai-teams-studio-implementation-design.md:79`, `:113`, `:250-251` describe `/teams` as resolving the current team and entering `/teams/:scopeId`; the existing checklist at `docs/design/2026-04-09-aevatar-console-web-frontend-implementation-checklist.md:57-60` says `/teams` should render a roster-style preview and only enter detail after an explicit `View details` action. That makes the intended route behavior unclear for the next implementation pass.

## What would change your verdict
Clarify whether this new design supersedes the roster-preview rule, or update the new document so `/teams` consistently means current-session roster preview plus explicit navigation to `/teams/:scopeId`.
⟦AI:AUTO-LOOP⟧

@loning

loning commented May 28, 2026

Copy link
Copy Markdown
Contributor

📊 Phase 10 advisory review 完成 — PR #1116(AbigailDeng)

Reviewer Verdict
architect approve
tests approve
quality comment(non-blocking)

:auto-loop 主动 advisory review,仅参考。

🤖 controller Phase 10 advisory summary

⟦AI:AUTO-LOOP⟧

@loning loning added the phase10-reviewed Phase 10 advisory review已完成,head SHA 变即失效 label May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

phase10-reviewed Phase 10 advisory review已完成,head SHA 变即失效

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants