Why: Q1 WP1/WP2 - replace the linear step scan with per-round graph
compilation and layer advancement so Needs drives scheduling and
write-conflicting steps never run concurrently.
Evidence: go vet clean in all five modules; go test ok everywhere,
including the full compatibility net (engine, leader, recovery, r2
regression, intent, evaluator suites) and new graph tests.
Impact: new squad/graph.go (compile/layer/conflict); StepSpec gains
Writes; advance advances by superstep (parallel run of
conflict-free members, serial for write-conflicts, single-member
groups keep dynamic adjustment). Legacy semantics preserved:
adjacent-Parallel mapping, degraded-continue on non-critical
failure (failed counts as satisfied), empty status = pending,
cycle/unknown/dup needs fail-closed.
Refs: Documents proposal 2026-10-07-agent-stack-n1q1i1-plans.md Q1 WP1/WP2
weichen
merged commit 3870489614 into main2026-10-07 09:08:21 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Q1 增量一:superstep 推进与 Needs 调度(WP1/WP2)
按 Documents 提案
2026-10-07-agent-stack-n1q1i1-plans.md§3.2 落地 Q1 的前两个工作包。改动
squad/graph.go:compileGraph(每轮从权威 Steps 现场编译——Steps 仍是唯一真相源,动态调整改 Steps 后下一轮自然生效)+nextLayer(当前可执行层)+ 写集冲突检测。规则:StepSpec.Writes:写集(调度依据)。同一 superstep 内写集相交 → 强制串行(按声明序);不相交 → 并行。advance重写为 superstep 推进:并行段复用runParallel(审批/权限/挂起/cancel 传播不变),串行段逐个runOneStep;单成员并行组实际是顺序执行,其后照常动态调整(多成员组不做——与旧「仅顺序步骤后」一致);图编译失败/依赖死锁 → fail-closed 运行失败。层边界发EvPhasesuperstep 事件。runOneStep)。验证
go vet通过、go test全 ok。验收映射(提案 Q1 验收三条的当前进度)
主任务:Dev 仓
feature/agent-stack-q1。