parallel-implement-feature
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseParallel Implement Feature
并行实现功能
Implement an approved OpenSpec proposal using DAG-scheduled multi-agent parallel execution. Each work package runs in its own worktree with explicit scope and lock claims. Degrades to linear-implement-feature behavior when the coordinator is unavailable.
使用DAG调度的多Agent并行执行已获批的OpenSpec提案。每个工作包在独立的工作树中运行,具有明确的范围和锁声明。当协调器不可用时,会降级为线性实现功能的行为。
Arguments
参数
$ARGUMENTS$ARGUMENTSPrerequisites
前置条件
- Approved OpenSpec proposal with at
work-packages.yamlopenspec/changes/<change-id>/ - Contracts generated at
openspec/changes/<change-id>/contracts/ - Coordinator available with required capabilities
- 已获批的OpenSpec提案,且在路径下存在
openspec/changes/<change-id>/work-packages.yaml - 已在路径下生成契约
openspec/changes/<change-id>/contracts/ - 协调器可用且具备所需能力
Coordinator Capability Check
协调器能力检查
At skill start, detect coordinator capabilities:
REQUIRED (hard failure without coordinator):
CAN_DISCOVER — discover_agents() for agent health monitoring
CAN_QUEUE_WORK — submit_work()/get_work()/complete_work()/get_task() for DAG dispatch
CAN_LOCK — acquire_lock()/release_lock()/check_locks() for resource claims
REQUIRED (safety):
CAN_GUARDRAILS — check_guardrails() for destructive operation detection
ENRICHING (degrades gracefully):
CAN_HANDOFF — write_handoff() for orchestrator resumability
CAN_MEMORY — remember()/recall() for procedural memories
CAN_POLICY — check_policy() for authorization decisions
CAN_AUDIT — query_audit() for execution summary generationIf required capabilities are unavailable, degrade to behavior and emit a warning.
/linear-implement-feature技能启动时,检测协调器的能力:
REQUIRED(无协调器则直接失败):
CAN_DISCOVER — discover_agents() 用于Agent健康监控
CAN_QUEUE_WORK — submit_work()/get_work()/complete_work()/get_task() 用于DAG调度
CAN_LOCK — acquire_lock()/release_lock()/check_locks() 用于资源声明
REQUIRED(安全相关):
CAN_GUARDRAILS — check_guardrails() 用于检测破坏性操作
ENRICHING(可优雅降级):
CAN_HANDOFF — write_handoff() 用于编排器可恢复性
CAN_MEMORY — remember()/recall() 用于过程记忆
CAN_POLICY — check_policy() 用于授权决策
CAN_AUDIT — query_audit() 用于生成执行摘要若所需能力不可用,则降级为行为并发出警告。
/linear-implement-featureSteps
步骤
Phase A: Feature-Level Preflight (Orchestrator)
阶段A:功能级预检(编排器)
A1. Parse and validate work-packages.yaml
- YAML parse + validate against work-packages.schema.json
- Lock key canonicalization check
- File scope non-overlap for parallel packages
- Logical lock non-overlap for parallel packages
A2. Validate contracts exist
- Every file in contracts.openapi.files exists on disk
- Primary OpenAPI file parses without errors
A3. Compute DAG order
- Build directed graph from packages[].depends_on
- Detect cycles (validation error if found)
- Topological sort for execution order
A4. Submit work queue tasks
- For each package in topological order:
- Resolve depends_on package_ids to task_ids
- Build input_data envelope with context slice
- submit_work() with task_type, description, priority, depends_on
A5. Begin monitoring loop
- Poll discover_agents() for agent health
- Poll get_task(task_id) for each in-flight package
- On each completion: dispatch newly unblocked packagesA1. 解析并验证work-packages.yaml
- YAML解析 + 依据work-packages.schema.json进行验证
- 锁键规范化检查
- 并行包的文件范围无重叠
- 并行包的逻辑锁无重叠
A2. 验证契约存在
- contracts.openapi.files中的每个文件都存在于磁盘上
- 主OpenAPI文件可无错误解析
A3. 计算DAG顺序
- 基于packages[].depends_on构建有向图
- 检测循环(若发现则视为验证错误)
- 拓扑排序确定执行顺序
A4. 提交工作队列任务
- 对拓扑顺序中的每个包:
- 将depends_on的package_id解析为task_id
- 构建包含上下文切片的input_data信封
- 调用submit_work(),传入任务类型、描述、优先级、依赖项
A5. 启动监控循环
- 轮询discover_agents()获取Agent健康状态
- 轮询每个进行中包的get_task(task_id)
- 每个包完成时:调度新解锁的包Phase B: Package Execution Protocol (Every Worker Agent)
阶段B:包执行协议(每个Worker Agent)
Each worker agent claiming a package via MUST execute steps B1-B11 from the execution protocol (see design.md section 2.4).
get_workKey steps: session registration, pause-lock check, deadlock-safe lock acquisition, code generation within scope, deterministic scope check via git diff, verification steps, structured result publication.
每个通过获取包的Worker Agent必须执行执行协议中的步骤B1-B11(详见design.md第2.4节)。
get_work关键步骤:会话注册、暂停锁检查、死锁安全锁获取、范围内代码生成、通过git diff进行确定性范围检查、验证步骤、结构化结果发布。
Phase C: Review + Integration Sequencing
阶段C:评审与集成排序
C1. Result validation (on each package completion)
- Validate result against work-queue-result.schema.json
- Verify contracts_revision and plan_revision match
C2. Escalation processing
- Execute escalation protocol for any escalations
C3. Per-package review
- Dispatch /parallel-review-implementation on each package diff
C4. Integration gate
- Wait for all packages COMPLETED and reviewed
C5. Integration merge (wp-integration package)
- Merge all worktrees into feature branch
- Run full test suite and cross-package contract verification
C6. Execution summary generation
- DAG timeline, contract compliance, review findingsC1. 结果验证(每个包完成时)
- 依据work-queue-result.schema.json验证结果
- 验证contracts_revision和plan_revision匹配
C2. 升级处理
- 对任何升级情况执行升级协议
C3. 逐包评审
- 针对每个包的差异调度/parallel-review-implementation
C4. 集成网关
- 等待所有包完成并通过评审
C5. 集成合并(wp-integration包)
- 将所有工作树合并到功能分支
- 运行完整测试套件和跨包契约验证
C6. 生成执行摘要
- DAG时间线、契约合规性、评审结果Final Steps
最终步骤
After integration:
- Run quality checks (pytest, mypy, ruff, openspec validate)
- Create PR with execution summary attached
- Write handoff if CAN_HANDOFF=true
集成完成后:
- 运行质量检查(pytest, mypy, ruff, openspec validate)
- 创建包含执行摘要的PR
- 若CAN_HANDOFF=true,则写入切换信息
Output
输出
- Feature branch:
openspec/<change-id> - All tests passing
- PR created with execution summary
- 功能分支:
openspec/<change-id> - 所有测试通过
- 创建包含执行摘要的PR
Next Step
下一步
After PR is approved:
/parallel-cleanup-feature <change-id>PR获批后:
/parallel-cleanup-feature <change-id>