Repository navigation
feat(t3): T3 主控对齐跨厂商协作,复核按模型家族选候选 - #19
Merged
Merged
Conversation
用当前 T3 能力目录实测,verification workers 的候选默认选主控同 provider, 解析成主控自己的 claude-opus-5-5,复核与被查工作同家族;原规则只写在 文档里,解析器不保证。另外 T3 自身说明"同 provider 优先原生子 agent", 而 overlay 要求全走 delegate_task,加上共享契约"宿主指令优先",两者互相 矛盾。 - resolve 新增 --checked <entry 或 model>:从模型 ID 末段读家族 (claude/gpt/gemini/grok),候选里先选父 provider、再按配置顺序,取第一个 已知且不同家族的;没有时保留默认并警告同家族或未知。verification workers 不带 --checked 或 --provider 直接报错。provider 名不决定家族,因为一个 provider 可以路由别家模型(实测 codex 下挂着 claude/gemini/grok)。 - 每个 worker 输出 family;panel 席位输出 auxiliary,角色永远不是辅助。 - overlay 改用 T3 自己的说法:pstack worker 都是明确归 T3 所有的子任务, 并写明 T3 下由 hosts.t3 而不是原生 agent 定义管强度。 - setup-pstack 补 T3 跨厂商布局建议;路由与实测文档同步。 - fork 守卫新增两条锚点,测试覆盖新行为,旧解析器下 6 个用例失败。 Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
跨家族复核(codex/gpt-6.1-sol,经新 --checked 选出)指出两处配置指导 无法执行:@latest 只支持 Claude 与 GPT 系列,gemini/grok 需用 catalog 精确 ID;候选每个 provider 只能一个,同一 provider 路由两个家族时 "每个家族一个候选"会被配置校验拒绝。补充多候选排序与路由模型候选的 测试,旧解析器下该用例失败。 Co-Authored-By: Claude Opus 5.5 <[email protected]>
收尾审查发现 modelOf 对 T3 target 返回整段 provider/model,只是靠 familyOf 读末段才得到正确家族;xagent 的模型部分也在 workerFor 里 重复解析。modelOf 现在只返回模型部分,workerFor 复用它,行为不变。 Co-Authored-By: Claude Opus 5.5 <[email protected]>
mtmtian
marked this pull request as ready for review
October 18, 2026 14:20
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
问题
#16–#18 把“原生 Claude/Codex 当主控、用 xagent 拉另一家协作”做成了显式规则:
verification workers指向另一家、auxiliary_panel_members、xagent_effort_caps、agent 定义管强度、setup 推荐跨厂商布局。T3 当主控这条路径有三处没对齐:verification workers的候选[codex/gpt-sol@latest, claudeAgent/claude-opus@latest]默认选主控同 provider,解析成主控自己的claude-opus-5-5。“选不同家族”只写在 poteto-mode 文档里,解析器不保证。原生那边是写死成xagent:codex/xagent:claude,必然跨家族。delegate_task,而共享契约又规定宿主指令优先。resolve的输出不标哪个席位是辅助成员;setup 也没有 T3 版的跨厂商布局建议。改动
config.mjs resolve --checked <entry 或 model>:家族只从模型 ID 末段读(claude-/gpt-/gemini-/grok-,其余为未知)。provider 名不决定家族,因为实测codexprovider 下也挂着 claude/gemini/grok 路由模型。候选角色先看父 provider、再按配置顺序,取第一个已知且不同家族的(selection.strategy: "cross-family");没有时保留原默认,并警告同家族或未知。verification workers不带--checked或--provider直接报错,--checked与--provider互斥。family;panel 席位输出auxiliary(仅共享auxiliary_panel_members中的席位为 true,角色永远为 false)。delegate_task,因此和“宿主指令优先”不再冲突。另外写明 T3 下由hosts.t3而不是原生 agent 定义管强度。@latest,其他家族用 catalog 精确 ID;候选每个 provider 一个,同一 provider 路由两个家族时如何取舍。poteto-mode、路由文档、实测文档、ADAPTATION 同步。t3-owned-child-task、t3-cross-family-verification两条锚点,并补上对应的“删锚点”用例。0.15.25-shared.9。不改 T3、不改共享配置文件;原生 Claude/Codex 的解析路径不受影响(
show输出不变)。验证
bash scripts/check.sh runtime→runtime checks passed.(Node 86 条,fork 守卫 25 条)bash scripts/check.sh build→build checks passed.(Bun 1.4.2,产物与源码一致;在 cd7b26e 之前跑,之后未改 orch/watch-pr 源码)scripts/t3-targets.test.mjs本分支 30/30;用ad65028的bin/跑同一份测试 23 pass / 7 failclaudeAgent/claude-opus-5-5:--checked inherit-parent→codex/gpt-6.1-sol(cross-family,reasoningEffort: high,无警告);不带--checked→ 报错delegate_task(role: review);T3 返回并在终态记录providerInstanceId: codex、model: gpt-6.1-sol,与请求一致;status: completed、workState: result_available;子任务自报 efforthigh9380182,git status前后都干净@latest家族限制、候选 provider 唯一),已在 cd7b26e 修复;核心选择算法未发现缺陷ad65028..cd7b26e:无结构性退化;modelOf对 T3 target 返回整段 provider/model、xagent 模型重复解析两处,已在 0a79195 收敛(行为不变)。0a79195 上 runtime 门禁 86/86,实际目录下的解析结果不变限制与未验证项
isolation: "shared",不是 overlay 默认的 worktree:本线程绑定 Cuddler 项目,开 worktree 会 checkout Cuddler 并跑它的初始化,而审查对象在 pstack 仓库。只读边界改用前后基线比对验证。完整的docs/t3-verification.md写入方 + 复核方流程未跑。group/auto-gpt-*、zero-risk这类路由别名记为未知,只会触发警告,不会被当作跨家族证据。🤖 Generated with Claude Code