feat(subagent): 实现 Task Context Slice 与结构化结果契约#335
Conversation
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
|
@xgopilot 你现在是本仓库的独立审查 Agent(只读审查,不改代码,不提交 commit,不 push)。 审查目标:
执行要求:
输出格式(严格):
|
|
@xgopilot 解决以上review的所有问题,然后把覆盖率补齐到90%以上,向我的分支推送pr |
完成结果已按“以上 review”逐项修复并补测试,变更已推送到你的 PR 分支 主要修复
验证
未执行
|
…clone cost - enforce descriptor allowlists for artifact refs and todo fragments during rebuild - treat empty todo fragment allowlist as explicit keep-none - add read-only todo snapshot flag to avoid deep clone in scheduler hot path - add regression tests and raise subagent coverage above 90% Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: Cai-Tang-www <106404101+Cai-Tang-www@users.noreply.github.com>
|
@xgopilot 先分析当前PR中可能存在哪些风险点,然后给我一个让AI能够进行review的提示词 |
|
@xgopilot 帮我修复上述的6个风险问题 |
修复结果已完成你提到的 6 个风险点修复,并已推送到当前 PR 分支 已推送提交: 本次修复
新增/调整测试
验证
未执行
|
Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: Cai-Tang-www <106404101+Cai-Tang-www@users.noreply.github.com>
|
/review |
| }) | ||
|
|
||
| slice.DependencyArtifacts = filterByAllowlist(slice.DependencyArtifacts, descriptor.ArtifactRefs) | ||
| slice.TodoFragment = filterTodoFragmentsByID(slice.TodoFragment, descriptor.TodoFragmentIDs) |
There was a problem hiding this comment.
RebuildTaskContextSlice 在 build 之后只按 descriptor 过滤了 DependencyArtifacts 和 TodoFragment,但没有再过滤 RelatedFiles。由于 BuildTaskContextSlice 会把依赖产物重新合并进 RelatedFiles,这里会出现 descriptor 白名单绕过(例如 RelatedFilePaths 为空时仍可能返回 artifact 衍生文件)。建议在这里补一轮 RelatedFiles 的 allowlist 过滤,确保重建结果严格受 descriptor 约束。
| slice.Goal = "…" | ||
| refreshChars() | ||
| } | ||
| if currentChars > maxChars && len(slice.Acceptance) == 0 && len(slice.TodoFragment) == 0 && |
There was a problem hiding this comment.
这里的提前返回可能在“极小 maxChars”场景下把 Truncated=true 返回给调用方,但渲染结果仍然大于预算(task_id: 前缀本身不会被裁剪)。如果预算语义要求严格不超限,建议在返回前再做一次硬性上限校验/兜底策略。
|
/simplify |
处理结果已完成你要求的 3 件事:检查未解决 review、按价值修复、并执行 code-simplifier 简化复审;改动已提交并推送到当前 PR 分支。 已修复问题
新增测试
验证
提交与推送
未执行
|
…dget cap Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: Cai-Tang-www <106404101+Cai-Tang-www@users.noreply.github.com>
关联
Closes #277
本次改动
Task Context Slice模型,输入收敛到任务目标、依赖产物、相关文件摘要、激活技能与 Todo 片段descriptor重建能力,支持 compact 后仅凭descriptor + 当前快照重建上下文Context Slice构建,Worker 任务不再只携带goal/acceptancesummary/findings/patches/risks/next_actions/artifacts测试
go test ./internal/subagent -covergo test ./internal/subagent ./internal/runtime说明
go test ./...在当前主线存在与本 PR 无关的既有失败(internal/config与internal/gateway),本 PR 未改动对应模块逻辑