phase-loop-runtime 0.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- phase_loop_runtime/__init__.py +20 -0
- phase_loop_runtime/_contract_docs/phase-loop/extraction-readiness.md +90 -0
- phase_loop_runtime/_contract_docs/phase-loop/granular-execution-policy.md +137 -0
- phase_loop_runtime/_contract_docs/phase-loop/harness-capability-matrix.md +510 -0
- phase_loop_runtime/_contract_docs/phase-loop/harness-skill-matrix.md +125 -0
- phase_loop_runtime/_contract_docs/phase-loop/harness-substrate-manifest.md +232 -0
- phase_loop_runtime/_contract_docs/phase-loop/pi-loop-control.md +247 -0
- phase_loop_runtime/_contract_docs/phase-loop/protocol.md +2759 -0
- phase_loop_runtime/_contract_docs/phase-loop/runtime-boundary.md +289 -0
- phase_loop_runtime/_contract_docs/phase-loop/spec-discovery-roots.md +47 -0
- phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-governed-pipeline.md +42 -0
- phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-portal-projection.md +34 -0
- phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-regenesis.md +29 -0
- phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-report.md +32 -0
- phase_loop_runtime/_contract_docs/runtime/verification-evidence-contract.md +52 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-mixed-signals/commands.txt +2 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-mixed-signals/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-mixed-signals/mixed.json +5 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-provider-timeout/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-provider-timeout/timeout-note.txt +2 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-redacted-summary/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-redacted-summary/redacted-summary.json +6 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-small-sample/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-small-sample/sample.json +7 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-threshold-edge/edge.txt +2 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-threshold-edge/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/shot-a.txt +1 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/shot-b.txt +1 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/shot-c.txt +1 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-missing-references/claimed-results.json +5 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-missing-references/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-subtle-low-variance/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-subtle-low-variance/metrics.json +9 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-templated-prose/findings.md +10 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-templated-prose/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-uniform-scores/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-uniform-scores/scores.json +4 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-uniform-scores/summary.txt +1 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-adoption-bundle/bundle-check.json +8 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-adoption-bundle/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-adoption-bundle/operator-note.txt +2 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-handoff-ledger/events-sample.jsonl +3 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-handoff-ledger/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-handoff-ledger/receipt.txt +1 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-runner-diff/evidence.json +13 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-runner-diff/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-runner-diff/summary.txt +2 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-test-matrix/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-test-matrix/matrix.json +9 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-test-matrix/notes.md +4 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-ui-screenshot-standin/console-summary.txt +2 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-ui-screenshot-standin/manifest.json +16 -0
- phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-ui-screenshot-standin/screenshot-standin.ppm +5 -0
- phase_loop_runtime/adoption_bundle.py +273 -0
- phase_loop_runtime/advisor_board/CONTRACTS.md +257 -0
- phase_loop_runtime/advisor_board/__init__.py +288 -0
- phase_loop_runtime/advisor_board/backing.py +137 -0
- phase_loop_runtime/advisor_board/backing_omnigent.py +498 -0
- phase_loop_runtime/advisor_board/config.py +225 -0
- phase_loop_runtime/advisor_board/events.py +115 -0
- phase_loop_runtime/advisor_board/fixtures/advisor-boards.example.toml +59 -0
- phase_loop_runtime/advisor_board/fixtures.py +91 -0
- phase_loop_runtime/advisor_board/harness_mapping.py +125 -0
- phase_loop_runtime/advisor_board/matrix.py +146 -0
- phase_loop_runtime/advisor_board/observability.py +481 -0
- phase_loop_runtime/advisor_board/presets.py +188 -0
- phase_loop_runtime/advisor_board/registries.py +309 -0
- phase_loop_runtime/advisor_board/resolver.py +253 -0
- phase_loop_runtime/advisor_board/schema.py +269 -0
- phase_loop_runtime/advisor_board/standin.py +166 -0
- phase_loop_runtime/advisor_board/validation.py +159 -0
- phase_loop_runtime/agent_runtime_provider.py +676 -0
- phase_loop_runtime/baml_modular.py +656 -0
- phase_loop_runtime/baml_src/dotfiles_adoption_manifest.baml +37 -0
- phase_loop_runtime/baml_src/dotfiles_c4_document.baml +14 -0
- phase_loop_runtime/baml_src/dotfiles_plan_manifest.baml +50 -0
- phase_loop_runtime/baml_src/dotfiles_runtime_projection.baml +16 -0
- phase_loop_runtime/baml_src/dotfiles_task_catalog.baml +20 -0
- phase_loop_runtime/baml_src/emit_phase_closeout.baml +86 -0
- phase_loop_runtime/baml_src/evaluate_suspected_fake_evidence.baml +36 -0
- phase_loop_runtime/baml_src/verification_evidence.baml +40 -0
- phase_loop_runtime/broker.py +181 -0
- phase_loop_runtime/build_bundle.py +294 -0
- phase_loop_runtime/capability_registry.py +835 -0
- phase_loop_runtime/classifier.py +87 -0
- phase_loop_runtime/claude_agent_view.py +625 -0
- phase_loop_runtime/claude_channel_sidecar.py +1086 -0
- phase_loop_runtime/cli.py +2599 -0
- phase_loop_runtime/closeout.py +865 -0
- phase_loop_runtime/closeout_classifier.py +120 -0
- phase_loop_runtime/closeout_evidence_audit.py +112 -0
- phase_loop_runtime/closeout_validation.py +144 -0
- phase_loop_runtime/closeout_validators.py +203 -0
- phase_loop_runtime/consiliency_gates.py +374 -0
- phase_loop_runtime/consiliency_ingest.py +399 -0
- phase_loop_runtime/consiliency_layout.py +176 -0
- phase_loop_runtime/consiliency_scaffold.py +305 -0
- phase_loop_runtime/cross_repo_channel.py +331 -0
- phase_loop_runtime/discovery.py +2368 -0
- phase_loop_runtime/dispatch_lock.py +167 -0
- phase_loop_runtime/doc_delta_validator.py +98 -0
- phase_loop_runtime/docs_audit.py +285 -0
- phase_loop_runtime/docs_freshness.py +468 -0
- phase_loop_runtime/docs_surfaces.py +150 -0
- phase_loop_runtime/dotfiles_profile_plugin.py +96 -0
- phase_loop_runtime/events.py +154 -0
- phase_loop_runtime/events_migration.py +96 -0
- phase_loop_runtime/evidence_audit.py +1082 -0
- phase_loop_runtime/evidence_audit_config.py +172 -0
- phase_loop_runtime/fleet_map.py +426 -0
- phase_loop_runtime/fleet_metrics.py +298 -0
- phase_loop_runtime/fleet_metrics_export.py +196 -0
- phase_loop_runtime/git_discipline.py +479 -0
- phase_loop_runtime/git_ops.py +122 -0
- phase_loop_runtime/git_topology.py +252 -0
- phase_loop_runtime/governed_bundle.py +137 -0
- phase_loop_runtime/governed_premerge.py +219 -0
- phase_loop_runtime/governed_review.py +264 -0
- phase_loop_runtime/handoff.py +932 -0
- phase_loop_runtime/handoff_path.py +14 -0
- phase_loop_runtime/injection.py +740 -0
- phase_loop_runtime/install_status.py +88 -0
- phase_loop_runtime/lane_scheduler.py +317 -0
- phase_loop_runtime/launcher.py +2760 -0
- phase_loop_runtime/lease_store.py +553 -0
- phase_loop_runtime/maintenance.py +401 -0
- phase_loop_runtime/migrate_handoffs.py +201 -0
- phase_loop_runtime/models.py +2144 -0
- phase_loop_runtime/observability.py +1290 -0
- phase_loop_runtime/panel_invoker.py +1638 -0
- phase_loop_runtime/phase_loop_drift_audit.py +388 -0
- phase_loop_runtime/phase_worktree_executor.py +433 -0
- phase_loop_runtime/pipeline_adapter/__init__.py +12 -0
- phase_loop_runtime/pipeline_adapter/branch_ops.py +274 -0
- phase_loop_runtime/pipeline_adapter/flag.py +55 -0
- phase_loop_runtime/pipeline_adapter/markers.py +13 -0
- phase_loop_runtime/pipeline_adapter/merge_policy.py +72 -0
- phase_loop_runtime/pipeline_adapter/ratification.py +100 -0
- phase_loop_runtime/pipeline_adapter/sibling_matcher.py +123 -0
- phase_loop_runtime/plan_ir.py +523 -0
- phase_loop_runtime/plan_manifest.py +415 -0
- phase_loop_runtime/planner_validation.py +176 -0
- phase_loop_runtime/profiles.py +462 -0
- phase_loop_runtime/prompts.py +365 -0
- phase_loop_runtime/provenance.py +165 -0
- phase_loop_runtime/publishing.py +339 -0
- phase_loop_runtime/py.typed +1 -0
- phase_loop_runtime/reconcile.py +1550 -0
- phase_loop_runtime/redaction.py +184 -0
- phase_loop_runtime/reflection_sync.py +293 -0
- phase_loop_runtime/release_guard.py +186 -0
- phase_loop_runtime/render.py +432 -0
- phase_loop_runtime/repo_validation.py +427 -0
- phase_loop_runtime/review_summary.py +150 -0
- phase_loop_runtime/roadmap_lint.py +425 -0
- phase_loop_runtime/route_log.py +59 -0
- phase_loop_runtime/route_policy/__init__.py +11 -0
- phase_loop_runtime/route_policy/fixtures/route_selection.golden.json +263 -0
- phase_loop_runtime/runner.py +8400 -0
- phase_loop_runtime/runtime_paths.py +225 -0
- phase_loop_runtime/runtime_projection.py +113 -0
- phase_loop_runtime/runtime_resources.py +36 -0
- phase_loop_runtime/schema_export.py +292 -0
- phase_loop_runtime/schemas/phase_loop_closeout.schema.json +366 -0
- phase_loop_runtime/skill_install.py +176 -0
- phase_loop_runtime/skill_inventory.py +662 -0
- phase_loop_runtime/skill_paths.py +42 -0
- phase_loop_runtime/skill_sources_plugin.py +37 -0
- phase_loop_runtime/skills_bundle/claude-advisor-board/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-advisor-board/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/claude-advisor-panel/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-advisor-panel/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/claude-execute-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-execute-detailed/SKILL.md +152 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/SKILL.md +745 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/allocate_worktree_name.sh +33 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/audit_lane_file_touches.py +197 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/state.py +274 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/team_teardown.sh +32 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/validate_plan_doc.py +642 -0
- phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/verify_harness.sh +96 -0
- phase_loop_runtime/skills_bundle/claude-phase-loop/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-phase-loop/SKILL.md +115 -0
- phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/SKILL.md +439 -0
- phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/assets/review_prompt.md +19 -0
- phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
- phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/references/roadmap-template.md +193 -0
- phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
- phase_loop_runtime/skills_bundle/claude-plan-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-plan-detailed/SKILL.md +334 -0
- phase_loop_runtime/skills_bundle/claude-plan-detailed/assets/review_prompt.md +25 -0
- phase_loop_runtime/skills_bundle/claude-plan-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-plan-phase/SKILL.md +776 -0
- phase_loop_runtime/skills_bundle/claude-plan-phase/assets/review_prompt.md +17 -0
- phase_loop_runtime/skills_bundle/claude-plan-phase/scripts/validate_plan_doc.py +1092 -0
- phase_loop_runtime/skills_bundle/claude-run-train/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-run-train/SKILL.md +75 -0
- phase_loop_runtime/skills_bundle/claude-skill-editor/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-skill-editor/SKILL.md +243 -0
- phase_loop_runtime/skills_bundle/claude-skill-editor/assets/editor_prompt.md +72 -0
- phase_loop_runtime/skills_bundle/claude-skill-improvement-planner/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-skill-improvement-planner/SKILL.md +249 -0
- phase_loop_runtime/skills_bundle/claude-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
- phase_loop_runtime/skills_bundle/claude-task-contextualizer/README.md +1 -0
- phase_loop_runtime/skills_bundle/claude-task-contextualizer/SKILL.md +74 -0
- phase_loop_runtime/skills_bundle/claude-task-contextualizer/references/task-templates.md +103 -0
- phase_loop_runtime/skills_bundle/codex-advisor-board/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-advisor-board/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/codex-advisor-panel/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-advisor-panel/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/codex-execute-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-execute-detailed/SKILL.md +154 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/SKILL.md +231 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/allocate_worktree_name.sh +33 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/audit_lane_file_touches.py +197 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/state.py +274 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/team_teardown.sh +32 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/validate_plan_doc.py +642 -0
- phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/verify_harness.sh +96 -0
- phase_loop_runtime/skills_bundle/codex-phase-loop/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-phase-loop/SKILL.md +248 -0
- phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/SKILL.md +150 -0
- phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/assets/review_prompt.md +19 -0
- phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
- phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/references/roadmap-template.md +193 -0
- phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
- phase_loop_runtime/skills_bundle/codex-plan-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-plan-detailed/SKILL.md +119 -0
- phase_loop_runtime/skills_bundle/codex-plan-detailed/assets/review_prompt.md +25 -0
- phase_loop_runtime/skills_bundle/codex-plan-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-plan-phase/SKILL.md +307 -0
- phase_loop_runtime/skills_bundle/codex-plan-phase/assets/review_prompt.md +17 -0
- phase_loop_runtime/skills_bundle/codex-plan-phase/scripts/validate_plan_doc.py +1092 -0
- phase_loop_runtime/skills_bundle/codex-run-train/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-run-train/SKILL.md +75 -0
- phase_loop_runtime/skills_bundle/codex-skill-editor/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-skill-editor/SKILL.md +94 -0
- phase_loop_runtime/skills_bundle/codex-skill-editor/assets/editor_prompt.md +72 -0
- phase_loop_runtime/skills_bundle/codex-skill-improvement-planner/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-skill-improvement-planner/SKILL.md +114 -0
- phase_loop_runtime/skills_bundle/codex-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
- phase_loop_runtime/skills_bundle/codex-task-contextualizer/README.md +1 -0
- phase_loop_runtime/skills_bundle/codex-task-contextualizer/SKILL.md +102 -0
- phase_loop_runtime/skills_bundle/codex-task-contextualizer/references/task-templates.md +103 -0
- phase_loop_runtime/skills_bundle/gemini-advisor-board/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-advisor-board/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/gemini-advisor-panel/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-advisor-panel/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/gemini-execute-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-execute-detailed/SKILL.md +144 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/SKILL.md +198 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/allocate_worktree_name.sh +33 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/audit_lane_file_touches.py +197 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/state.py +274 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/team_teardown.sh +32 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/validate_plan_doc.py +642 -0
- phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/verify_harness.sh +96 -0
- phase_loop_runtime/skills_bundle/gemini-phase-loop/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-phase-loop/SKILL.md +111 -0
- phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/SKILL.md +147 -0
- phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/assets/review_prompt.md +19 -0
- phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
- phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/references/roadmap-template.md +193 -0
- phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
- phase_loop_runtime/skills_bundle/gemini-plan-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-plan-detailed/SKILL.md +119 -0
- phase_loop_runtime/skills_bundle/gemini-plan-detailed/assets/review_prompt.md +25 -0
- phase_loop_runtime/skills_bundle/gemini-plan-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-plan-phase/SKILL.md +217 -0
- phase_loop_runtime/skills_bundle/gemini-plan-phase/assets/review_prompt.md +17 -0
- phase_loop_runtime/skills_bundle/gemini-plan-phase/scripts/validate_plan_doc.py +1092 -0
- phase_loop_runtime/skills_bundle/gemini-run-train/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-run-train/SKILL.md +75 -0
- phase_loop_runtime/skills_bundle/gemini-skill-editor/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-skill-editor/SKILL.md +87 -0
- phase_loop_runtime/skills_bundle/gemini-skill-editor/assets/editor_prompt.md +72 -0
- phase_loop_runtime/skills_bundle/gemini-skill-improvement-planner/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-skill-improvement-planner/SKILL.md +109 -0
- phase_loop_runtime/skills_bundle/gemini-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
- phase_loop_runtime/skills_bundle/gemini-task-contextualizer/README.md +1 -0
- phase_loop_runtime/skills_bundle/gemini-task-contextualizer/SKILL.md +98 -0
- phase_loop_runtime/skills_bundle/gemini-task-contextualizer/references/task-templates.md +103 -0
- phase_loop_runtime/skills_bundle/opencode-advisor-board/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-advisor-board/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/opencode-advisor-panel/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-advisor-panel/SKILL.md +38 -0
- phase_loop_runtime/skills_bundle/opencode-execute-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-execute-detailed/SKILL.md +144 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/SKILL.md +196 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/allocate_worktree_name.sh +33 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/audit_lane_file_touches.py +197 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/state.py +274 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/team_teardown.sh +32 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/validate_plan_doc.py +642 -0
- phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/verify_harness.sh +96 -0
- phase_loop_runtime/skills_bundle/opencode-phase-loop/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-phase-loop/SKILL.md +113 -0
- phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/SKILL.md +147 -0
- phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/assets/review_prompt.md +19 -0
- phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
- phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/references/roadmap-template.md +193 -0
- phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
- phase_loop_runtime/skills_bundle/opencode-plan-detailed/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-plan-detailed/SKILL.md +119 -0
- phase_loop_runtime/skills_bundle/opencode-plan-detailed/assets/review_prompt.md +25 -0
- phase_loop_runtime/skills_bundle/opencode-plan-phase/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-plan-phase/SKILL.md +211 -0
- phase_loop_runtime/skills_bundle/opencode-plan-phase/assets/review_prompt.md +17 -0
- phase_loop_runtime/skills_bundle/opencode-plan-phase/scripts/validate_plan_doc.py +1092 -0
- phase_loop_runtime/skills_bundle/opencode-run-train/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-run-train/SKILL.md +75 -0
- phase_loop_runtime/skills_bundle/opencode-skill-editor/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-skill-editor/SKILL.md +87 -0
- phase_loop_runtime/skills_bundle/opencode-skill-editor/assets/editor_prompt.md +72 -0
- phase_loop_runtime/skills_bundle/opencode-skill-improvement-planner/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-skill-improvement-planner/SKILL.md +109 -0
- phase_loop_runtime/skills_bundle/opencode-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
- phase_loop_runtime/skills_bundle/opencode-task-contextualizer/README.md +1 -0
- phase_loop_runtime/skills_bundle/opencode-task-contextualizer/SKILL.md +98 -0
- phase_loop_runtime/skills_bundle/opencode-task-contextualizer/references/task-templates.md +103 -0
- phase_loop_runtime/state.py +156 -0
- phase_loop_runtime/state_degradation.py +136 -0
- phase_loop_runtime/state_ops.py +676 -0
- phase_loop_runtime/train_ledger.py +215 -0
- phase_loop_runtime/train_roadmap.py +339 -0
- phase_loop_runtime/train_runner.py +1197 -0
- phase_loop_runtime/verification_evidence.py +650 -0
- phase_loop_runtime/verification_evidence_validator.py +75 -0
- phase_loop_runtime/visual_evidence_validator.py +36 -0
- phase_loop_runtime/worker_pool.py +123 -0
- phase_loop_runtime/worktree_index.py +270 -0
- phase_loop_runtime-0.2.0.data/data/share/phase-loop-runtime/protocol/protocol.md +2475 -0
- phase_loop_runtime-0.2.0.dist-info/METADATA +106 -0
- phase_loop_runtime-0.2.0.dist-info/RECORD +370 -0
- phase_loop_runtime-0.2.0.dist-info/WHEEL +5 -0
- phase_loop_runtime-0.2.0.dist-info/entry_points.txt +9 -0
- phase_loop_runtime-0.2.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Aggregator prompt
|
|
2
|
+
|
|
3
|
+
You are an aggregator. You will receive a set of **reflection files** produced at close-out by the planning-chain skills (`claude-phase-roadmap-builder`, `claude-plan-phase`, `claude-execute-phase`) and the meta-skills that operate on them (`claude-skill-improvement-planner`, `claude-skill-editor`). Each reflection is a short markdown document with two sections: `## What worked` and `## Improvements to SKILL.md`. Your job is to read them, find what matters, and produce a concrete plan that a downstream claude-skill-editor can apply. The meta-skills' reflections are in-scope so the planner and editor can be improved by the same loop they drive.
|
|
4
|
+
|
|
5
|
+
## Inputs
|
|
6
|
+
|
|
7
|
+
You will be given:
|
|
8
|
+
|
|
9
|
+
- A concatenated block of reflections, grouped by skill.
|
|
10
|
+
- Each reflection is tagged with its skill name and version (`v<N>`).
|
|
11
|
+
- A `min_reflections` threshold (integer).
|
|
12
|
+
|
|
13
|
+
## What to produce
|
|
14
|
+
|
|
15
|
+
A single markdown document in the exact format described at the end of this prompt. No preamble, no chat, no apologies.
|
|
16
|
+
|
|
17
|
+
## Rules
|
|
18
|
+
|
|
19
|
+
1. **Identify recurring themes.** A "theme" is a concern that appears in:
|
|
20
|
+
- At least `min_reflections` distinct reflections for a given skill, OR
|
|
21
|
+
- At least 2 reflections across different skills (cross-cutting theme).
|
|
22
|
+
Single-mention items are NOT themes; record them under `## Speculative / low-confidence notes` instead.
|
|
23
|
+
|
|
24
|
+
2. **Repo-agnostic output.** The reflections were instructed to be repo-agnostic. Double-check. Reject any proposed change that names:
|
|
25
|
+
- A specific project, product, or company.
|
|
26
|
+
- A specific filename or path (except where naming a file *inside this skill's own SKILL.md* that needs editing — e.g., "Step 5 of claude-plan-phase/SKILL.md" is fine; "the auth.py in the consiliency project" is not).
|
|
27
|
+
- A specific domain (finance, healthcare, etc.) unless the theme is generic enough to apply across domains.
|
|
28
|
+
If a theme looks repo-specific, either drop it or rewrite it generically.
|
|
29
|
+
|
|
30
|
+
3. **Directive-only style in proposed edits.** Write each proposed SKILL.md change in imperative form. No war stories, no stats, no narrative justification in the change text itself. Use short clauses for rationale ("because X," not paragraphs).
|
|
31
|
+
|
|
32
|
+
4. **Concrete edits, not directions to edit.** Bad: "Consider improving Step 5." Good: "In Step 5 of claude-plan-phase/SKILL.md, add a bullet after 'Apply the claude-task-contextualizer checklist' stating: 'Include the phase's full Exit criteria list, not just the Objective.'"
|
|
33
|
+
|
|
34
|
+
5. **Cite supporting reflections.** For each theme, list the reflection versions that raised it (e.g., "claude-plan-phase v3, v5, v7"). Lets the user trace back.
|
|
35
|
+
|
|
36
|
+
6. **Flag contradictions.** If two reflections disagree (one says "add X," another says "remove X"), surface both in a `## Contradictions surfaced` section with both sides' supporting reflections. Let the user decide.
|
|
37
|
+
|
|
38
|
+
7. **Stay lean.** If a skill had no recurring themes, write "No recurring themes above the `--min-reflections` threshold." Do not invent work. The goal is a useful plan, not a long plan.
|
|
39
|
+
|
|
40
|
+
8. **Speculative section is a valid output, not a dump.** Use it for single-mention observations that seem plausible but lack support. Each should be a single line. If it's garbage, drop it entirely.
|
|
41
|
+
|
|
42
|
+
## Output format (emit exactly this structure)
|
|
43
|
+
|
|
44
|
+
```markdown
|
|
45
|
+
# Skill improvement plan — <ISO timestamp>
|
|
46
|
+
|
|
47
|
+
## Summary
|
|
48
|
+
|
|
49
|
+
<1–2 paragraphs. Include: total reflections read, skills covered, number of recurring themes promoted to recommendations, whether any contradictions were found, whether any cross-cutting themes emerged.>
|
|
50
|
+
|
|
51
|
+
## Recommendations by skill
|
|
52
|
+
|
|
53
|
+
### <skill-name>
|
|
54
|
+
- **Change**: <specific SKILL.md edit in directive-only imperative form>
|
|
55
|
+
- **Rationale**: <one-clause reason, tied to the recurring theme>
|
|
56
|
+
- **Supporting reflections**: <skill> v3, v5, v7
|
|
57
|
+
|
|
58
|
+
(Repeat per recommendation. Group all recommendations for a skill under that skill's subheading. Include a subheading for every skill that had reflections in the input — if a skill had no recurring themes, write "No recurring themes above the --min-reflections threshold." under that skill's subheading.)
|
|
59
|
+
|
|
60
|
+
## Cross-cutting recommendations
|
|
61
|
+
|
|
62
|
+
<Themes that affect multiple skills simultaneously. Each item names the skills it touches. Same rationale + supporting-reflections format.>
|
|
63
|
+
|
|
64
|
+
(If none, write "None this pass.")
|
|
65
|
+
|
|
66
|
+
## Speculative / low-confidence notes
|
|
67
|
+
|
|
68
|
+
<Single-line observations from one-off reflections worth recording but not acting on. No rationale needed beyond the observation itself.>
|
|
69
|
+
|
|
70
|
+
(If none, write "None this pass.")
|
|
71
|
+
|
|
72
|
+
## Contradictions surfaced
|
|
73
|
+
|
|
74
|
+
<Where reflections disagreed. Name both sides and their supporting reflections. Do not pick a winner — the user decides.>
|
|
75
|
+
|
|
76
|
+
(If none, write "None this pass.")
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
End of prompt. Do not output anything before the `# Skill improvement plan` heading.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Harness-specific overlay files for this workflow skill.
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: claude-task-contextualizer
|
|
3
|
+
description: "Harness Code subagent briefing guide. Use before creating any Task tool call, especially for Explore or general-purpose subagents. Provides templates for task prompts that include necessary file paths, architecture context, and scope boundaries."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Task Contextualizer
|
|
7
|
+
|
|
8
|
+
## Runtime State
|
|
9
|
+
|
|
10
|
+
Use `phase_loop_runtime.skill_paths` resolver helpers for harness skill roots, helper roots, repo-local handoff roots, and harness-specific reflection roots.
|
|
11
|
+
|
|
12
|
+
For reflections, handoffs, and latest handoff pointers, follow `<harness>-config/shared/runtime-state.md`. This repo/branch/run-isolated contract supersedes any older flat closeout examples retained for historical context in this skill.
|
|
13
|
+
|
|
14
|
+
Subagents do not inherit parent context. Brief every Task call with specific file paths, architecture, and scope so the subagent can start work immediately instead of rediscovering the project.
|
|
15
|
+
|
|
16
|
+
## Mandatory Checklist
|
|
17
|
+
|
|
18
|
+
Before EVERY Task tool call, verify:
|
|
19
|
+
|
|
20
|
+
- [ ] **File paths**: Listed the specific files the subagent needs to read or modify
|
|
21
|
+
- [ ] **Architecture context**: Explained how the relevant module fits into the larger system (1-2 sentences)
|
|
22
|
+
- [ ] **Scope boundary**: Told the subagent what NOT to touch
|
|
23
|
+
- [ ] **Expected output**: Specified what the subagent should produce (file changes, report, answer)
|
|
24
|
+
- [ ] **Related files**: Mentioned test files, config files, type definitions
|
|
25
|
+
|
|
26
|
+
## Bad vs Good
|
|
27
|
+
|
|
28
|
+
**BAD** (forces subagent to discover everything):
|
|
29
|
+
```
|
|
30
|
+
Fix the TypeScript error in the chat service
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**GOOD** (subagent can start working immediately):
|
|
34
|
+
```
|
|
35
|
+
Fix the TypeScript error in /src/services/chatService.ts.
|
|
36
|
+
|
|
37
|
+
Error: "Property 'messageId' does not exist on type 'ChatEvent'" at line 142.
|
|
38
|
+
|
|
39
|
+
Related files:
|
|
40
|
+
- /src/types/chat.ts — ChatEvent and ChatMessage type definitions
|
|
41
|
+
- /src/services/apiClient.ts — base service class that chatService extends
|
|
42
|
+
- /tests/services/chatService.test.ts — existing tests
|
|
43
|
+
|
|
44
|
+
Architecture: chatService extends BaseApiService and handles WebSocket
|
|
45
|
+
messages. ChatEvent is the raw event type; ChatMessage is the processed type.
|
|
46
|
+
|
|
47
|
+
Scope: Only modify chatService.ts and chat.ts. Do not change apiClient.ts.
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Templates by Task Type
|
|
51
|
+
|
|
52
|
+
### Bug Fix
|
|
53
|
+
Include: file path + exact error message + related type/config files + test file
|
|
54
|
+
|
|
55
|
+
### New Feature
|
|
56
|
+
Include: example files showing the pattern to follow + target directory + naming/style conventions
|
|
57
|
+
|
|
58
|
+
### Research / Explore
|
|
59
|
+
Include: known file paths to start from + specific questions to answer + what you already know (so the agent doesn't re-discover it)
|
|
60
|
+
|
|
61
|
+
### Refactor
|
|
62
|
+
Include: all files to change + the target pattern + constraints on what must stay the same
|
|
63
|
+
|
|
64
|
+
## Key Insight for Explore Subagents
|
|
65
|
+
|
|
66
|
+
Explore agents are read-only — they can't edit files. But they spend the MOST on context discovery because they're often asked broad questions. Always give them:
|
|
67
|
+
1. Specific file paths to start from (not "find where X is")
|
|
68
|
+
2. Specific questions to answer (not "understand module X")
|
|
69
|
+
3. What you already know (so they don't re-discover it)
|
|
70
|
+
|
|
71
|
+
## Resources
|
|
72
|
+
|
|
73
|
+
### references/
|
|
74
|
+
Full copy-paste templates with placeholders for each task type. See `references/task-templates.md` for ready-to-use templates.
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# Task Prompt Templates
|
|
2
|
+
|
|
3
|
+
Copy and fill in the placeholders (in ALL_CAPS) for each task type.
|
|
4
|
+
|
|
5
|
+
## Bug Fix Template
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
Fix DESCRIPTION in FILE_PATH.
|
|
9
|
+
|
|
10
|
+
Error: "ERROR_MESSAGE" at line LINE_NUMBER.
|
|
11
|
+
|
|
12
|
+
Related files:
|
|
13
|
+
- TYPE_DEFS_PATH — type definitions used by this file
|
|
14
|
+
- BASE_CLASS_PATH — parent class or service it extends
|
|
15
|
+
- TEST_FILE_PATH — existing tests for this module
|
|
16
|
+
- CONFIG_PATH — relevant config (tsconfig.json, etc.)
|
|
17
|
+
|
|
18
|
+
Architecture: BRIEF_DESCRIPTION of how this module fits into the system.
|
|
19
|
+
|
|
20
|
+
Scope: Only modify ALLOWED_FILES. Do not change EXCLUDED_FILES.
|
|
21
|
+
Expected output: Modified files that resolve the type error.
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## New Feature Template
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
Implement FEATURE_DESCRIPTION.
|
|
28
|
+
|
|
29
|
+
Example to follow: EXAMPLE_FILE_PATH (shows the pattern for similar features)
|
|
30
|
+
Create new files in: TARGET_DIRECTORY
|
|
31
|
+
Naming convention: NAMING_PATTERN (e.g., camelCase, kebab-case)
|
|
32
|
+
|
|
33
|
+
Related files:
|
|
34
|
+
- ROUTER_OR_INDEX_PATH — where to register/export the new feature
|
|
35
|
+
- TYPE_DEFS_PATH — existing types to reuse or extend
|
|
36
|
+
- TEST_PATTERN_PATH — example test file showing test conventions
|
|
37
|
+
|
|
38
|
+
Architecture: BRIEF_DESCRIPTION of how new features are structured in this project.
|
|
39
|
+
|
|
40
|
+
Scope: Create new files in TARGET_DIRECTORY. Register in ROUTER_FILE. Do not modify EXCLUDED_FILES.
|
|
41
|
+
Expected output: New files implementing the feature + registration in index/router.
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Explore / Research Template
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
Research QUESTION about this codebase.
|
|
48
|
+
|
|
49
|
+
Start from these files:
|
|
50
|
+
- FILE_1 — BRIEF_DESCRIPTION
|
|
51
|
+
- FILE_2 — BRIEF_DESCRIPTION
|
|
52
|
+
- FILE_3 — BRIEF_DESCRIPTION
|
|
53
|
+
|
|
54
|
+
What I already know:
|
|
55
|
+
- KNOWN_FACT_1
|
|
56
|
+
- KNOWN_FACT_2
|
|
57
|
+
|
|
58
|
+
Specific questions to answer:
|
|
59
|
+
1. QUESTION_1
|
|
60
|
+
2. QUESTION_2
|
|
61
|
+
3. QUESTION_3
|
|
62
|
+
|
|
63
|
+
Expected output: A summary answering each question with file paths and line references.
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Refactor Template
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
Refactor DESCRIPTION across these files:
|
|
70
|
+
- FILE_1
|
|
71
|
+
- FILE_2
|
|
72
|
+
- FILE_3
|
|
73
|
+
|
|
74
|
+
Current pattern: CURRENT_PATTERN_DESCRIPTION
|
|
75
|
+
Target pattern: TARGET_PATTERN_DESCRIPTION
|
|
76
|
+
|
|
77
|
+
Constraints:
|
|
78
|
+
- CONSTRAINT_1 (e.g., "maintain backward compatibility with existing API")
|
|
79
|
+
- CONSTRAINT_2 (e.g., "do not change test files, only source files")
|
|
80
|
+
|
|
81
|
+
Type definitions: TYPE_DEFS_PATH
|
|
82
|
+
Test file: TEST_FILE_PATH (run after refactor to verify)
|
|
83
|
+
|
|
84
|
+
Expected output: Modified files following the target pattern. All existing tests must still pass.
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Multi-File Edit Template
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
Make the following related changes:
|
|
91
|
+
|
|
92
|
+
1. In FILE_1: CHANGE_DESCRIPTION_1
|
|
93
|
+
2. In FILE_2: CHANGE_DESCRIPTION_2
|
|
94
|
+
3. In FILE_3: CHANGE_DESCRIPTION_3
|
|
95
|
+
|
|
96
|
+
These changes are related because: RELATIONSHIP_DESCRIPTION
|
|
97
|
+
|
|
98
|
+
Type definitions: TYPE_DEFS_PATH
|
|
99
|
+
Config: CONFIG_PATH
|
|
100
|
+
|
|
101
|
+
Verification: After all edits, run VERIFICATION_COMMAND to confirm no errors.
|
|
102
|
+
Scope: Only modify the listed files.
|
|
103
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Harness-specific overlay files for this workflow skill.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: codex-advisor-board
|
|
3
|
+
description: Run a customizable cross-vendor advisor board (formerly advisor-panel; that name remains a working alias) through the agent-harness runtime primitive when a high-stakes change needs independent review evidence.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Advisor Board
|
|
7
|
+
|
|
8
|
+
Use this skill when a plan, implementation diff, release closeout, or other high-stakes artifact needs an independent cross-vendor review board. This skill was formerly named `advisor-panel`; that name still resolves as an alias, so existing instructions that say "advisor-panel" keep working.
|
|
9
|
+
|
|
10
|
+
## Source Of Truth
|
|
11
|
+
|
|
12
|
+
The advisor-board (formerly advisor-panel) implementation is owned by `agent-harness`:
|
|
13
|
+
|
|
14
|
+
- Runtime primitive: `phase_loop_runtime.panel_invoker`
|
|
15
|
+
- Board model: `phase_loop_runtime.advisor_board` (seats, boards, resolver, validation)
|
|
16
|
+
- Entry points: `available_panel_legs`, `invoke_panel`, and `invoke_panel_request` (from a `PanelRequest`)
|
|
17
|
+
- Governed workflow integration: phase-loop governed review/pre-merge paths
|
|
18
|
+
|
|
19
|
+
Do not call dotfiles advisor-panel scripts, copy provider-specific shell scripts, or introduce a separate implementation in the skill body. The skill is a thin operator guide over the runtime primitive.
|
|
20
|
+
|
|
21
|
+
## Use
|
|
22
|
+
|
|
23
|
+
1. Prefer the repo's governed phase-loop path when reviewing phase execution or pre-merge work.
|
|
24
|
+
2. For a standalone smoke or diagnostic, build a metadata-only review artifact and call `phase_loop_runtime.panel_invoker.invoke_panel`.
|
|
25
|
+
3. Require every leg to end with `AGREE`, `PARTIALLY AGREE`, or `DISAGREE`.
|
|
26
|
+
4. Treat `EMPTY`, `TIMEOUT`, `ERROR`, `DEGRADED`, and `UNAVAILABLE` as structured evidence, not successful reviews.
|
|
27
|
+
5. Keep provider API keys out of the environment; the runtime strips known API-key variables and uses local subscription CLIs.
|
|
28
|
+
|
|
29
|
+
## Standalone Smoke Shape
|
|
30
|
+
|
|
31
|
+
```python
|
|
32
|
+
from phase_loop_runtime.panel_invoker import available_panel_legs, invoke_panel
|
|
33
|
+
|
|
34
|
+
artifact = "Review artifact with acceptance criteria and verification evidence."
|
|
35
|
+
panel = invoke_panel(artifact, available_panel_legs())
|
|
36
|
+
for leg in panel.legs:
|
|
37
|
+
print(leg.leg, leg.status)
|
|
38
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Harness-specific overlay files for this workflow skill.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: codex-advisor-panel
|
|
3
|
+
description: Run a customizable cross-vendor advisor board (formerly advisor-panel; that name remains a working alias) through the agent-harness runtime primitive when a high-stakes change needs independent review evidence.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Advisor Board
|
|
7
|
+
|
|
8
|
+
Use this skill when a plan, implementation diff, release closeout, or other high-stakes artifact needs an independent cross-vendor review board. This skill was formerly named `advisor-panel`; that name still resolves as an alias, so existing instructions that say "advisor-panel" keep working.
|
|
9
|
+
|
|
10
|
+
## Source Of Truth
|
|
11
|
+
|
|
12
|
+
The advisor-board (formerly advisor-panel) implementation is owned by `agent-harness`:
|
|
13
|
+
|
|
14
|
+
- Runtime primitive: `phase_loop_runtime.panel_invoker`
|
|
15
|
+
- Board model: `phase_loop_runtime.advisor_board` (seats, boards, resolver, validation)
|
|
16
|
+
- Entry points: `available_panel_legs`, `invoke_panel`, and `invoke_panel_request` (from a `PanelRequest`)
|
|
17
|
+
- Governed workflow integration: phase-loop governed review/pre-merge paths
|
|
18
|
+
|
|
19
|
+
Do not call dotfiles advisor-panel scripts, copy provider-specific shell scripts, or introduce a separate implementation in the skill body. The skill is a thin operator guide over the runtime primitive.
|
|
20
|
+
|
|
21
|
+
## Use
|
|
22
|
+
|
|
23
|
+
1. Prefer the repo's governed phase-loop path when reviewing phase execution or pre-merge work.
|
|
24
|
+
2. For a standalone smoke or diagnostic, build a metadata-only review artifact and call `phase_loop_runtime.panel_invoker.invoke_panel`.
|
|
25
|
+
3. Require every leg to end with `AGREE`, `PARTIALLY AGREE`, or `DISAGREE`.
|
|
26
|
+
4. Treat `EMPTY`, `TIMEOUT`, `ERROR`, `DEGRADED`, and `UNAVAILABLE` as structured evidence, not successful reviews.
|
|
27
|
+
5. Keep provider API keys out of the environment; the runtime strips known API-key variables and uses local subscription CLIs.
|
|
28
|
+
|
|
29
|
+
## Standalone Smoke Shape
|
|
30
|
+
|
|
31
|
+
```python
|
|
32
|
+
from phase_loop_runtime.panel_invoker import available_panel_legs, invoke_panel
|
|
33
|
+
|
|
34
|
+
artifact = "Review artifact with acceptance criteria and verification evidence."
|
|
35
|
+
panel = invoke_panel(artifact, available_panel_legs())
|
|
36
|
+
for leg in panel.legs:
|
|
37
|
+
print(leg.leg, leg.status)
|
|
38
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Harness-specific overlay files for this workflow skill.
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: codex-execute-detailed
|
|
3
|
+
description: "Harness bounded-plan executor for one detailed implementation plan with verification, acceptance reduction, and mandatory reflection closeout."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Harness Execute Detailed
|
|
7
|
+
|
|
8
|
+
Executes one detailed plan artifact produced by `<harness>-plan-detailed`. Use
|
|
9
|
+
this when one Harness thread should implement a bounded plan end to end without
|
|
10
|
+
phase lanes or cross-harness dispatch.
|
|
11
|
+
|
|
12
|
+
## Core Rules
|
|
13
|
+
|
|
14
|
+
Use `phase_loop_runtime.skill_paths` resolver helpers for harness skill roots,
|
|
15
|
+
handoff roots, helper roots, and reflection roots.
|
|
16
|
+
|
|
17
|
+
- Read the detailed plan artifact before editing.
|
|
18
|
+
- Optionally read `.dev-skills/handoffs/<harness>-plan-detailed/latest.md`
|
|
19
|
+
when no explicit plan path is supplied, and only trust it if `from:` is
|
|
20
|
+
`<harness>-plan-detailed`, the repo fields match the current repo, and the
|
|
21
|
+
artifact path resolves under the current repo root.
|
|
22
|
+
- Preserve user work. Never revert changes you did not make.
|
|
23
|
+
- Use `apply_patch` for manual edits.
|
|
24
|
+
- Keep implementation bounded to the detailed plan's `## Changes` section.
|
|
25
|
+
- Treat ignored, private, raw-data, credential, and evidence-source files as
|
|
26
|
+
read-protected unless the detailed plan explicitly allowlists the exact path
|
|
27
|
+
or glob for read access.
|
|
28
|
+
- Git safety invariant: never commit to `main` or a protected branch, never commit from
|
|
29
|
+
a dirty primary checkout, and never commit/push onto a branch this run does not own (a
|
|
30
|
+
shared or pre-existing colleague branch). When executing a plan, publishing a PR from a
|
|
31
|
+
dedicated branch is the default outcome (see the Workflow + "## Publication") unless a
|
|
32
|
+
runner owns closeout, or the user asked for local-only, planning-only, or no-publication
|
|
33
|
+
work, or verification failed. Never merge, force-push, reset, delete a publication
|
|
34
|
+
branch/worktree holding unmerged work, or run other destructive git commands without
|
|
35
|
+
explicit instruction.
|
|
36
|
+
|
|
37
|
+
## Inputs
|
|
38
|
+
|
|
39
|
+
- Plan path: explicit detailed plan artifact, or the latest valid
|
|
40
|
+
`.dev-skills/handoffs/<harness>-plan-detailed/latest.md` artifact.
|
|
41
|
+
- Optional handoff: repo-local handoff from `<harness>-plan-detailed`.
|
|
42
|
+
|
|
43
|
+
## Workflow
|
|
44
|
+
|
|
45
|
+
1. Resolve the repo root and detailed plan artifact.
|
|
46
|
+
2. Run `git status --short --untracked-files=all` and keep the starting dirty
|
|
47
|
+
paths for closeout comparison.
|
|
48
|
+
3. Read the plan artifact in full.
|
|
49
|
+
4. Validate that it contains non-empty `## Changes`, `## Verification`, and
|
|
50
|
+
`## Acceptance criteria` sections.
|
|
51
|
+
5. Best-effort mark the detailed plan manifest entry as `executing` through
|
|
52
|
+
`phase_loop_runtime.plan_manifest.update_lifecycle` (`plan-manifest append`)
|
|
53
|
+
after plan validation and before source edits. Use `by=<harness>-execute-detailed`
|
|
54
|
+
and metadata that identifies the run and plan artifact. Manifest lifecycle
|
|
55
|
+
failures emit ledger/reflection warnings only and do not abort execution
|
|
56
|
+
during the dual-mode window.
|
|
57
|
+
6. **Establish the safe working tree BEFORE editing** (unless a runner owns closeout — see step 2 / the Git safety invariant): resolve a fresh base ref (`origin/<default-branch>` after fetch, or an explicit merge target; never a stale local `main`) and select the working tree — reuse the current branch only if it is clean, non-protected, AND owned by this run; otherwise (`main`/a protected branch, a shared/foreign branch, or a dirty primary checkout) create a worktree+branch off the base: `git worktree add <path> -b <branch> <base>` under `/mnt/workspace/worktrees/<project>-<branch-slug>` if `/mnt/workspace` exists, else a repo sibling `../<project>-<branch-slug>`. Do ALL editing, the `git status` snapshots, the dirty-path classification, and verification in that tree — never on `main`/protected/dirty/shared. Then apply the `## Changes` section in declared order. Use `apply_patch` for
|
|
58
|
+
manual edits. If implementation requires a file or behavior not named by the
|
|
59
|
+
plan, stop and report `dirty worktree from non-plan output`.
|
|
60
|
+
7. Run every command in `## Verification` unless unsafe, unavailable, or blocked
|
|
61
|
+
by missing credentials. Report each command with pass/fail status.
|
|
62
|
+
8. Compare the final state against each item in `## Acceptance criteria` and
|
|
63
|
+
report satisfied or unmet status.
|
|
64
|
+
9. Run `git status --short --untracked-files=all` and classify every dirty path
|
|
65
|
+
as plan-owned, pre-existing unrelated, or non-plan output.
|
|
66
|
+
10. If the diff touches a user-visible public surface (CLI flags, exported
|
|
67
|
+
symbols, config/openapi schema, contract docs, `README.md`, `CHANGELOG.md`),
|
|
68
|
+
record a `doc_delta_decision` in the closeout: `docs_updated`,
|
|
69
|
+
`docs_follow_up_filed`, or `no_doc_delta` (state why). This is the input the
|
|
70
|
+
autonomy-first doc-delta review gate checks; it defaults to warn (recorded,
|
|
71
|
+
non-blocking) and is satisfiable by the agent with no human.
|
|
72
|
+
11. When reporting `verification_status=passed`, attach the verification
|
|
73
|
+
artifact (`artifact_paths.verification` or `verification_artifact_path`); if
|
|
74
|
+
the change has no executable verification, record a
|
|
75
|
+
`verification_evidence_opt_out` reason (`no_executable_verification`,
|
|
76
|
+
`verification_deferred_to_later_phase`, or `operator_attested_manual`). This
|
|
77
|
+
is the input the verification-evidence review gate checks (warn by default).
|
|
78
|
+
|
|
79
|
+
## Failure Diagnostics
|
|
80
|
+
|
|
81
|
+
- `verification failed`: a command from `## Verification` failed after one local
|
|
82
|
+
diagnosis and repair attempt, or the failure is outside the detailed plan's
|
|
83
|
+
scope.
|
|
84
|
+
- `acceptance criterion unmet`: a required `## Acceptance criteria` item is not
|
|
85
|
+
satisfied, or the detailed plan lacks `## Changes`, `## Verification`, or
|
|
86
|
+
`## Acceptance criteria`.
|
|
87
|
+
- `dirty worktree from non-plan output`: closeout finds a dirty path that was
|
|
88
|
+
not pre-existing and is not produced by the detailed plan's declared changes.
|
|
89
|
+
- `publication blocked`: a publication precheck failed (no remote / no push auth / no `gh` /
|
|
90
|
+
branch-name collision / push rejected / unresolved base ref), or publishing would otherwise
|
|
91
|
+
require committing to `main`/a protected branch or a branch this run does not own. Verified
|
|
92
|
+
work is preserved locally on a safe branch/worktree; report what blocked the PR.
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
## Runner Verification Evidence
|
|
96
|
+
|
|
97
|
+
Before reporting a successful closeout, require the runner-owned verification artifact. The closeout must name `verification_artifact_path`, quote the artifact summary line, and must not report `verification_status=passed` unless that artifact exists and supports the executed work. Treat dependency-manifest install refresh and the full suite before closeout as runner-enforced expectations, not optional narrative checks. A blocked gate may be re-verdicted only by rerunning the originally specified runner check; proxy evidence requires a roadmap or plan amendment before the verdict changes.
|
|
98
|
+
|
|
99
|
+
## Closeout
|
|
100
|
+
|
|
101
|
+
### Manifest lifecycle
|
|
102
|
+
|
|
103
|
+
During closeout, best-effort call `phase_loop_runtime.plan_manifest.update_lifecycle` with `completed` when verification and acceptance passed, or `failed` when verification failed, acceptance was unmet, or closeout found non-plan output. Include verification metadata, reflection metadata, dirty-path classification, and the final diagnostic in the lifecycle event. Manifest lifecycle failures are non-fatal during the dual-mode window: emit a ledger warning, record the failure in the mandatory reflection, and preserve the existing detailed executor closeout.
|
|
104
|
+
|
|
105
|
+
Before final response, write a reflection for every non-trivial run. Write it to
|
|
106
|
+
`resolve_skill_bundle_root("codex")/<harness>-execute-detailed/reflections/<repo_hash>/<branch_slug>/<run_id>.md`.
|
|
107
|
+
The reflection must include `## Run context` with skill name, ISO timestamp,
|
|
108
|
+
repo, branch, commit, and artifact path, followed by `## What worked`,
|
|
109
|
+
`## What didn't`, and `## Improvements to SKILL.md`. Skip only when no artifact
|
|
110
|
+
was executed, no edit was made, and no decision was made.
|
|
111
|
+
|
|
112
|
+
Final response must include the detailed plan artifact path, changed files,
|
|
113
|
+
verification command results, acceptance-criteria status, final dirty-path
|
|
114
|
+
classification, and next action or blocker.
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
## Publication
|
|
118
|
+
|
|
119
|
+
After a verified implementation, publishing a PR from the working tree established in
|
|
120
|
+
Workflow step 6 is the default outcome — under the Git safety invariant in Core Rules.
|
|
121
|
+
Defer entirely if a runner / pipeline owns closeout (a phase-loop-runner-driven or adapter
|
|
122
|
+
run, or an explicit runner-owned-closeout instruction): the runner owns commit and closeout.
|
|
123
|
+
Do NOT infer "runner owns closeout" from `verification_artifact_path` — every closeout
|
|
124
|
+
records it; it does not signal a runner. The following applies for human-invoked plan
|
|
125
|
+
execution.
|
|
126
|
+
|
|
127
|
+
Call `phase_loop_runtime.publishing.publish_from_worktree(repo, owned_paths, draft=<intent>)`
|
|
128
|
+
(IF-0-P1-1 — the runtime publication primitive), supplying the worktree root, the plan's
|
|
129
|
+
owned paths, and the draft/ready intent:
|
|
130
|
+
- `draft=True` when dependencies remain or verification was partial/skipped;
|
|
131
|
+
- `draft=False` when verification is complete (skipped or partial verification never opens
|
|
132
|
+
a ready PR).
|
|
133
|
+
|
|
134
|
+
The primitive performs the complete #28 flow in code, not prose:
|
|
135
|
+
|
|
136
|
+
1. **Preflight.** Confirms the branch is non-protected, non-main, and not in a
|
|
137
|
+
dirty/unowned state; confirms a remote, push auth, and the `gh` CLI. A preflight
|
|
138
|
+
failure returns `{status: "publication_blocked", reason: ...}` — keep the committed
|
|
139
|
+
work on the safe branch/worktree and STOP at publish with `publication blocked`;
|
|
140
|
+
never on `main`/a protected branch, and never imply a PR exists.
|
|
141
|
+
2. **Stage + audit.** Stages only owned paths (`git add -- <paths>`, never `git add -A`),
|
|
142
|
+
audits the staged set (rejects any ignored, private, raw-data, credential, or `.env`
|
|
143
|
+
path; runs `git diff --cached --check`), and fails closed on any violation — path-scoping
|
|
144
|
+
alone does not catch a secret inside an owned file; the read-protection rules and this
|
|
145
|
+
audit are the backstop.
|
|
146
|
+
3. **Commit + push.** Commits the audited diff and pushes without force. A rejected push
|
|
147
|
+
(divergent / non-fast-forward / branch protection) returns `publication_blocked` — never
|
|
148
|
+
force-push or merge to resolve it.
|
|
149
|
+
4. **Open the PR.** `gh pr create --draft` or ready (`--fill`) per the intent flag.
|
|
150
|
+
|
|
151
|
+
Returns `{status: "published", branch, head_sha, pr_url}` on success (IF-0-P1-1; report
|
|
152
|
+
`pr_url` in the final response and include `head_sha` in the handoff for downstream
|
|
153
|
+
consumers). Returns `{status: "publication_blocked", reason: <slug>}` on any violation —
|
|
154
|
+
report `publication blocked` with the reason and stop.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Harness-specific overlay files for this workflow skill.
|