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.
Files changed (370) hide show
  1. phase_loop_runtime/__init__.py +20 -0
  2. phase_loop_runtime/_contract_docs/phase-loop/extraction-readiness.md +90 -0
  3. phase_loop_runtime/_contract_docs/phase-loop/granular-execution-policy.md +137 -0
  4. phase_loop_runtime/_contract_docs/phase-loop/harness-capability-matrix.md +510 -0
  5. phase_loop_runtime/_contract_docs/phase-loop/harness-skill-matrix.md +125 -0
  6. phase_loop_runtime/_contract_docs/phase-loop/harness-substrate-manifest.md +232 -0
  7. phase_loop_runtime/_contract_docs/phase-loop/pi-loop-control.md +247 -0
  8. phase_loop_runtime/_contract_docs/phase-loop/protocol.md +2759 -0
  9. phase_loop_runtime/_contract_docs/phase-loop/runtime-boundary.md +289 -0
  10. phase_loop_runtime/_contract_docs/phase-loop/spec-discovery-roots.md +47 -0
  11. phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-governed-pipeline.md +42 -0
  12. phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-portal-projection.md +34 -0
  13. phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-regenesis.md +29 -0
  14. phase_loop_runtime/_contract_docs/phase-loop/substrate-soak-report.md +32 -0
  15. phase_loop_runtime/_contract_docs/runtime/verification-evidence-contract.md +52 -0
  16. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-mixed-signals/commands.txt +2 -0
  17. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-mixed-signals/manifest.json +16 -0
  18. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-mixed-signals/mixed.json +5 -0
  19. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-provider-timeout/manifest.json +16 -0
  20. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-provider-timeout/timeout-note.txt +2 -0
  21. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-redacted-summary/manifest.json +16 -0
  22. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-redacted-summary/redacted-summary.json +6 -0
  23. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-small-sample/manifest.json +16 -0
  24. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-small-sample/sample.json +7 -0
  25. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-threshold-edge/edge.txt +2 -0
  26. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/borderline/borderline-threshold-edge/manifest.json +16 -0
  27. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/manifest.json +16 -0
  28. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/shot-a.txt +1 -0
  29. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/shot-b.txt +1 -0
  30. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-duplicate-png/shot-c.txt +1 -0
  31. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-missing-references/claimed-results.json +5 -0
  32. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-missing-references/manifest.json +16 -0
  33. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-subtle-low-variance/manifest.json +16 -0
  34. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-subtle-low-variance/metrics.json +9 -0
  35. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-templated-prose/findings.md +10 -0
  36. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-templated-prose/manifest.json +16 -0
  37. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-uniform-scores/manifest.json +16 -0
  38. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-uniform-scores/scores.json +4 -0
  39. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-fake/fake-uniform-scores/summary.txt +1 -0
  40. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-adoption-bundle/bundle-check.json +8 -0
  41. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-adoption-bundle/manifest.json +16 -0
  42. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-adoption-bundle/operator-note.txt +2 -0
  43. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-handoff-ledger/events-sample.jsonl +3 -0
  44. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-handoff-ledger/manifest.json +16 -0
  45. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-handoff-ledger/receipt.txt +1 -0
  46. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-runner-diff/evidence.json +13 -0
  47. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-runner-diff/manifest.json +16 -0
  48. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-runner-diff/summary.txt +2 -0
  49. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-test-matrix/manifest.json +16 -0
  50. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-test-matrix/matrix.json +9 -0
  51. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-test-matrix/notes.md +4 -0
  52. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-ui-screenshot-standin/console-summary.txt +2 -0
  53. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-ui-screenshot-standin/manifest.json +16 -0
  54. phase_loop_runtime/_test_fixtures/evidence-audit-calibration/known-real/real-ui-screenshot-standin/screenshot-standin.ppm +5 -0
  55. phase_loop_runtime/adoption_bundle.py +273 -0
  56. phase_loop_runtime/advisor_board/CONTRACTS.md +257 -0
  57. phase_loop_runtime/advisor_board/__init__.py +288 -0
  58. phase_loop_runtime/advisor_board/backing.py +137 -0
  59. phase_loop_runtime/advisor_board/backing_omnigent.py +498 -0
  60. phase_loop_runtime/advisor_board/config.py +225 -0
  61. phase_loop_runtime/advisor_board/events.py +115 -0
  62. phase_loop_runtime/advisor_board/fixtures/advisor-boards.example.toml +59 -0
  63. phase_loop_runtime/advisor_board/fixtures.py +91 -0
  64. phase_loop_runtime/advisor_board/harness_mapping.py +125 -0
  65. phase_loop_runtime/advisor_board/matrix.py +146 -0
  66. phase_loop_runtime/advisor_board/observability.py +481 -0
  67. phase_loop_runtime/advisor_board/presets.py +188 -0
  68. phase_loop_runtime/advisor_board/registries.py +309 -0
  69. phase_loop_runtime/advisor_board/resolver.py +253 -0
  70. phase_loop_runtime/advisor_board/schema.py +269 -0
  71. phase_loop_runtime/advisor_board/standin.py +166 -0
  72. phase_loop_runtime/advisor_board/validation.py +159 -0
  73. phase_loop_runtime/agent_runtime_provider.py +676 -0
  74. phase_loop_runtime/baml_modular.py +656 -0
  75. phase_loop_runtime/baml_src/dotfiles_adoption_manifest.baml +37 -0
  76. phase_loop_runtime/baml_src/dotfiles_c4_document.baml +14 -0
  77. phase_loop_runtime/baml_src/dotfiles_plan_manifest.baml +50 -0
  78. phase_loop_runtime/baml_src/dotfiles_runtime_projection.baml +16 -0
  79. phase_loop_runtime/baml_src/dotfiles_task_catalog.baml +20 -0
  80. phase_loop_runtime/baml_src/emit_phase_closeout.baml +86 -0
  81. phase_loop_runtime/baml_src/evaluate_suspected_fake_evidence.baml +36 -0
  82. phase_loop_runtime/baml_src/verification_evidence.baml +40 -0
  83. phase_loop_runtime/broker.py +181 -0
  84. phase_loop_runtime/build_bundle.py +294 -0
  85. phase_loop_runtime/capability_registry.py +835 -0
  86. phase_loop_runtime/classifier.py +87 -0
  87. phase_loop_runtime/claude_agent_view.py +625 -0
  88. phase_loop_runtime/claude_channel_sidecar.py +1086 -0
  89. phase_loop_runtime/cli.py +2599 -0
  90. phase_loop_runtime/closeout.py +865 -0
  91. phase_loop_runtime/closeout_classifier.py +120 -0
  92. phase_loop_runtime/closeout_evidence_audit.py +112 -0
  93. phase_loop_runtime/closeout_validation.py +144 -0
  94. phase_loop_runtime/closeout_validators.py +203 -0
  95. phase_loop_runtime/consiliency_gates.py +374 -0
  96. phase_loop_runtime/consiliency_ingest.py +399 -0
  97. phase_loop_runtime/consiliency_layout.py +176 -0
  98. phase_loop_runtime/consiliency_scaffold.py +305 -0
  99. phase_loop_runtime/cross_repo_channel.py +331 -0
  100. phase_loop_runtime/discovery.py +2368 -0
  101. phase_loop_runtime/dispatch_lock.py +167 -0
  102. phase_loop_runtime/doc_delta_validator.py +98 -0
  103. phase_loop_runtime/docs_audit.py +285 -0
  104. phase_loop_runtime/docs_freshness.py +468 -0
  105. phase_loop_runtime/docs_surfaces.py +150 -0
  106. phase_loop_runtime/dotfiles_profile_plugin.py +96 -0
  107. phase_loop_runtime/events.py +154 -0
  108. phase_loop_runtime/events_migration.py +96 -0
  109. phase_loop_runtime/evidence_audit.py +1082 -0
  110. phase_loop_runtime/evidence_audit_config.py +172 -0
  111. phase_loop_runtime/fleet_map.py +426 -0
  112. phase_loop_runtime/fleet_metrics.py +298 -0
  113. phase_loop_runtime/fleet_metrics_export.py +196 -0
  114. phase_loop_runtime/git_discipline.py +479 -0
  115. phase_loop_runtime/git_ops.py +122 -0
  116. phase_loop_runtime/git_topology.py +252 -0
  117. phase_loop_runtime/governed_bundle.py +137 -0
  118. phase_loop_runtime/governed_premerge.py +219 -0
  119. phase_loop_runtime/governed_review.py +264 -0
  120. phase_loop_runtime/handoff.py +932 -0
  121. phase_loop_runtime/handoff_path.py +14 -0
  122. phase_loop_runtime/injection.py +740 -0
  123. phase_loop_runtime/install_status.py +88 -0
  124. phase_loop_runtime/lane_scheduler.py +317 -0
  125. phase_loop_runtime/launcher.py +2760 -0
  126. phase_loop_runtime/lease_store.py +553 -0
  127. phase_loop_runtime/maintenance.py +401 -0
  128. phase_loop_runtime/migrate_handoffs.py +201 -0
  129. phase_loop_runtime/models.py +2144 -0
  130. phase_loop_runtime/observability.py +1290 -0
  131. phase_loop_runtime/panel_invoker.py +1638 -0
  132. phase_loop_runtime/phase_loop_drift_audit.py +388 -0
  133. phase_loop_runtime/phase_worktree_executor.py +433 -0
  134. phase_loop_runtime/pipeline_adapter/__init__.py +12 -0
  135. phase_loop_runtime/pipeline_adapter/branch_ops.py +274 -0
  136. phase_loop_runtime/pipeline_adapter/flag.py +55 -0
  137. phase_loop_runtime/pipeline_adapter/markers.py +13 -0
  138. phase_loop_runtime/pipeline_adapter/merge_policy.py +72 -0
  139. phase_loop_runtime/pipeline_adapter/ratification.py +100 -0
  140. phase_loop_runtime/pipeline_adapter/sibling_matcher.py +123 -0
  141. phase_loop_runtime/plan_ir.py +523 -0
  142. phase_loop_runtime/plan_manifest.py +415 -0
  143. phase_loop_runtime/planner_validation.py +176 -0
  144. phase_loop_runtime/profiles.py +462 -0
  145. phase_loop_runtime/prompts.py +365 -0
  146. phase_loop_runtime/provenance.py +165 -0
  147. phase_loop_runtime/publishing.py +339 -0
  148. phase_loop_runtime/py.typed +1 -0
  149. phase_loop_runtime/reconcile.py +1550 -0
  150. phase_loop_runtime/redaction.py +184 -0
  151. phase_loop_runtime/reflection_sync.py +293 -0
  152. phase_loop_runtime/release_guard.py +186 -0
  153. phase_loop_runtime/render.py +432 -0
  154. phase_loop_runtime/repo_validation.py +427 -0
  155. phase_loop_runtime/review_summary.py +150 -0
  156. phase_loop_runtime/roadmap_lint.py +425 -0
  157. phase_loop_runtime/route_log.py +59 -0
  158. phase_loop_runtime/route_policy/__init__.py +11 -0
  159. phase_loop_runtime/route_policy/fixtures/route_selection.golden.json +263 -0
  160. phase_loop_runtime/runner.py +8400 -0
  161. phase_loop_runtime/runtime_paths.py +225 -0
  162. phase_loop_runtime/runtime_projection.py +113 -0
  163. phase_loop_runtime/runtime_resources.py +36 -0
  164. phase_loop_runtime/schema_export.py +292 -0
  165. phase_loop_runtime/schemas/phase_loop_closeout.schema.json +366 -0
  166. phase_loop_runtime/skill_install.py +176 -0
  167. phase_loop_runtime/skill_inventory.py +662 -0
  168. phase_loop_runtime/skill_paths.py +42 -0
  169. phase_loop_runtime/skill_sources_plugin.py +37 -0
  170. phase_loop_runtime/skills_bundle/claude-advisor-board/README.md +1 -0
  171. phase_loop_runtime/skills_bundle/claude-advisor-board/SKILL.md +38 -0
  172. phase_loop_runtime/skills_bundle/claude-advisor-panel/README.md +1 -0
  173. phase_loop_runtime/skills_bundle/claude-advisor-panel/SKILL.md +38 -0
  174. phase_loop_runtime/skills_bundle/claude-execute-detailed/README.md +1 -0
  175. phase_loop_runtime/skills_bundle/claude-execute-detailed/SKILL.md +152 -0
  176. phase_loop_runtime/skills_bundle/claude-execute-phase/README.md +1 -0
  177. phase_loop_runtime/skills_bundle/claude-execute-phase/SKILL.md +745 -0
  178. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/allocate_worktree_name.sh +33 -0
  179. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/audit_lane_file_touches.py +197 -0
  180. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
  181. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
  182. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
  183. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
  184. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
  185. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/state.py +274 -0
  186. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
  187. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/team_teardown.sh +32 -0
  188. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/validate_plan_doc.py +642 -0
  189. phase_loop_runtime/skills_bundle/claude-execute-phase/scripts/verify_harness.sh +96 -0
  190. phase_loop_runtime/skills_bundle/claude-phase-loop/README.md +1 -0
  191. phase_loop_runtime/skills_bundle/claude-phase-loop/SKILL.md +115 -0
  192. phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/README.md +1 -0
  193. phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/SKILL.md +439 -0
  194. phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/assets/review_prompt.md +19 -0
  195. phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
  196. phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/references/roadmap-template.md +193 -0
  197. phase_loop_runtime/skills_bundle/claude-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
  198. phase_loop_runtime/skills_bundle/claude-plan-detailed/README.md +1 -0
  199. phase_loop_runtime/skills_bundle/claude-plan-detailed/SKILL.md +334 -0
  200. phase_loop_runtime/skills_bundle/claude-plan-detailed/assets/review_prompt.md +25 -0
  201. phase_loop_runtime/skills_bundle/claude-plan-phase/README.md +1 -0
  202. phase_loop_runtime/skills_bundle/claude-plan-phase/SKILL.md +776 -0
  203. phase_loop_runtime/skills_bundle/claude-plan-phase/assets/review_prompt.md +17 -0
  204. phase_loop_runtime/skills_bundle/claude-plan-phase/scripts/validate_plan_doc.py +1092 -0
  205. phase_loop_runtime/skills_bundle/claude-run-train/README.md +1 -0
  206. phase_loop_runtime/skills_bundle/claude-run-train/SKILL.md +75 -0
  207. phase_loop_runtime/skills_bundle/claude-skill-editor/README.md +1 -0
  208. phase_loop_runtime/skills_bundle/claude-skill-editor/SKILL.md +243 -0
  209. phase_loop_runtime/skills_bundle/claude-skill-editor/assets/editor_prompt.md +72 -0
  210. phase_loop_runtime/skills_bundle/claude-skill-improvement-planner/README.md +1 -0
  211. phase_loop_runtime/skills_bundle/claude-skill-improvement-planner/SKILL.md +249 -0
  212. phase_loop_runtime/skills_bundle/claude-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
  213. phase_loop_runtime/skills_bundle/claude-task-contextualizer/README.md +1 -0
  214. phase_loop_runtime/skills_bundle/claude-task-contextualizer/SKILL.md +74 -0
  215. phase_loop_runtime/skills_bundle/claude-task-contextualizer/references/task-templates.md +103 -0
  216. phase_loop_runtime/skills_bundle/codex-advisor-board/README.md +1 -0
  217. phase_loop_runtime/skills_bundle/codex-advisor-board/SKILL.md +38 -0
  218. phase_loop_runtime/skills_bundle/codex-advisor-panel/README.md +1 -0
  219. phase_loop_runtime/skills_bundle/codex-advisor-panel/SKILL.md +38 -0
  220. phase_loop_runtime/skills_bundle/codex-execute-detailed/README.md +1 -0
  221. phase_loop_runtime/skills_bundle/codex-execute-detailed/SKILL.md +154 -0
  222. phase_loop_runtime/skills_bundle/codex-execute-phase/README.md +1 -0
  223. phase_loop_runtime/skills_bundle/codex-execute-phase/SKILL.md +231 -0
  224. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/allocate_worktree_name.sh +33 -0
  225. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/audit_lane_file_touches.py +197 -0
  226. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
  227. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
  228. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
  229. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
  230. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
  231. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/state.py +274 -0
  232. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
  233. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/team_teardown.sh +32 -0
  234. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/validate_plan_doc.py +642 -0
  235. phase_loop_runtime/skills_bundle/codex-execute-phase/scripts/verify_harness.sh +96 -0
  236. phase_loop_runtime/skills_bundle/codex-phase-loop/README.md +1 -0
  237. phase_loop_runtime/skills_bundle/codex-phase-loop/SKILL.md +248 -0
  238. phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/README.md +1 -0
  239. phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/SKILL.md +150 -0
  240. phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/assets/review_prompt.md +19 -0
  241. phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
  242. phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/references/roadmap-template.md +193 -0
  243. phase_loop_runtime/skills_bundle/codex-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
  244. phase_loop_runtime/skills_bundle/codex-plan-detailed/README.md +1 -0
  245. phase_loop_runtime/skills_bundle/codex-plan-detailed/SKILL.md +119 -0
  246. phase_loop_runtime/skills_bundle/codex-plan-detailed/assets/review_prompt.md +25 -0
  247. phase_loop_runtime/skills_bundle/codex-plan-phase/README.md +1 -0
  248. phase_loop_runtime/skills_bundle/codex-plan-phase/SKILL.md +307 -0
  249. phase_loop_runtime/skills_bundle/codex-plan-phase/assets/review_prompt.md +17 -0
  250. phase_loop_runtime/skills_bundle/codex-plan-phase/scripts/validate_plan_doc.py +1092 -0
  251. phase_loop_runtime/skills_bundle/codex-run-train/README.md +1 -0
  252. phase_loop_runtime/skills_bundle/codex-run-train/SKILL.md +75 -0
  253. phase_loop_runtime/skills_bundle/codex-skill-editor/README.md +1 -0
  254. phase_loop_runtime/skills_bundle/codex-skill-editor/SKILL.md +94 -0
  255. phase_loop_runtime/skills_bundle/codex-skill-editor/assets/editor_prompt.md +72 -0
  256. phase_loop_runtime/skills_bundle/codex-skill-improvement-planner/README.md +1 -0
  257. phase_loop_runtime/skills_bundle/codex-skill-improvement-planner/SKILL.md +114 -0
  258. phase_loop_runtime/skills_bundle/codex-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
  259. phase_loop_runtime/skills_bundle/codex-task-contextualizer/README.md +1 -0
  260. phase_loop_runtime/skills_bundle/codex-task-contextualizer/SKILL.md +102 -0
  261. phase_loop_runtime/skills_bundle/codex-task-contextualizer/references/task-templates.md +103 -0
  262. phase_loop_runtime/skills_bundle/gemini-advisor-board/README.md +1 -0
  263. phase_loop_runtime/skills_bundle/gemini-advisor-board/SKILL.md +38 -0
  264. phase_loop_runtime/skills_bundle/gemini-advisor-panel/README.md +1 -0
  265. phase_loop_runtime/skills_bundle/gemini-advisor-panel/SKILL.md +38 -0
  266. phase_loop_runtime/skills_bundle/gemini-execute-detailed/README.md +1 -0
  267. phase_loop_runtime/skills_bundle/gemini-execute-detailed/SKILL.md +144 -0
  268. phase_loop_runtime/skills_bundle/gemini-execute-phase/README.md +1 -0
  269. phase_loop_runtime/skills_bundle/gemini-execute-phase/SKILL.md +198 -0
  270. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/allocate_worktree_name.sh +33 -0
  271. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/audit_lane_file_touches.py +197 -0
  272. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
  273. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
  274. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
  275. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
  276. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
  277. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/state.py +274 -0
  278. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
  279. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/team_teardown.sh +32 -0
  280. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/validate_plan_doc.py +642 -0
  281. phase_loop_runtime/skills_bundle/gemini-execute-phase/scripts/verify_harness.sh +96 -0
  282. phase_loop_runtime/skills_bundle/gemini-phase-loop/README.md +1 -0
  283. phase_loop_runtime/skills_bundle/gemini-phase-loop/SKILL.md +111 -0
  284. phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/README.md +1 -0
  285. phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/SKILL.md +147 -0
  286. phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/assets/review_prompt.md +19 -0
  287. phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
  288. phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/references/roadmap-template.md +193 -0
  289. phase_loop_runtime/skills_bundle/gemini-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
  290. phase_loop_runtime/skills_bundle/gemini-plan-detailed/README.md +1 -0
  291. phase_loop_runtime/skills_bundle/gemini-plan-detailed/SKILL.md +119 -0
  292. phase_loop_runtime/skills_bundle/gemini-plan-detailed/assets/review_prompt.md +25 -0
  293. phase_loop_runtime/skills_bundle/gemini-plan-phase/README.md +1 -0
  294. phase_loop_runtime/skills_bundle/gemini-plan-phase/SKILL.md +217 -0
  295. phase_loop_runtime/skills_bundle/gemini-plan-phase/assets/review_prompt.md +17 -0
  296. phase_loop_runtime/skills_bundle/gemini-plan-phase/scripts/validate_plan_doc.py +1092 -0
  297. phase_loop_runtime/skills_bundle/gemini-run-train/README.md +1 -0
  298. phase_loop_runtime/skills_bundle/gemini-run-train/SKILL.md +75 -0
  299. phase_loop_runtime/skills_bundle/gemini-skill-editor/README.md +1 -0
  300. phase_loop_runtime/skills_bundle/gemini-skill-editor/SKILL.md +87 -0
  301. phase_loop_runtime/skills_bundle/gemini-skill-editor/assets/editor_prompt.md +72 -0
  302. phase_loop_runtime/skills_bundle/gemini-skill-improvement-planner/README.md +1 -0
  303. phase_loop_runtime/skills_bundle/gemini-skill-improvement-planner/SKILL.md +109 -0
  304. phase_loop_runtime/skills_bundle/gemini-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
  305. phase_loop_runtime/skills_bundle/gemini-task-contextualizer/README.md +1 -0
  306. phase_loop_runtime/skills_bundle/gemini-task-contextualizer/SKILL.md +98 -0
  307. phase_loop_runtime/skills_bundle/gemini-task-contextualizer/references/task-templates.md +103 -0
  308. phase_loop_runtime/skills_bundle/opencode-advisor-board/README.md +1 -0
  309. phase_loop_runtime/skills_bundle/opencode-advisor-board/SKILL.md +38 -0
  310. phase_loop_runtime/skills_bundle/opencode-advisor-panel/README.md +1 -0
  311. phase_loop_runtime/skills_bundle/opencode-advisor-panel/SKILL.md +38 -0
  312. phase_loop_runtime/skills_bundle/opencode-execute-detailed/README.md +1 -0
  313. phase_loop_runtime/skills_bundle/opencode-execute-detailed/SKILL.md +144 -0
  314. phase_loop_runtime/skills_bundle/opencode-execute-phase/README.md +1 -0
  315. phase_loop_runtime/skills_bundle/opencode-execute-phase/SKILL.md +196 -0
  316. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/allocate_worktree_name.sh +33 -0
  317. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/audit_lane_file_touches.py +197 -0
  318. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/cleanup_lane_worktrees.sh +103 -0
  319. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/parent_tree_leakage_check.sh +125 -0
  320. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/post_merge_import_smoke.sh +62 -0
  321. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/pre_merge_destructiveness_check.sh +127 -0
  322. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/resolve_branch_from_sha.sh +51 -0
  323. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/state.py +274 -0
  324. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/sweep_stale_worktrees.sh +62 -0
  325. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/team_teardown.sh +32 -0
  326. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/validate_plan_doc.py +642 -0
  327. phase_loop_runtime/skills_bundle/opencode-execute-phase/scripts/verify_harness.sh +96 -0
  328. phase_loop_runtime/skills_bundle/opencode-phase-loop/README.md +1 -0
  329. phase_loop_runtime/skills_bundle/opencode-phase-loop/SKILL.md +113 -0
  330. phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/README.md +1 -0
  331. phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/SKILL.md +147 -0
  332. phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/assets/review_prompt.md +19 -0
  333. phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/references/parallelization-heuristics.md +111 -0
  334. phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/references/roadmap-template.md +193 -0
  335. phase_loop_runtime/skills_bundle/opencode-phase-roadmap-builder/scripts/validate_roadmap.py +32 -0
  336. phase_loop_runtime/skills_bundle/opencode-plan-detailed/README.md +1 -0
  337. phase_loop_runtime/skills_bundle/opencode-plan-detailed/SKILL.md +119 -0
  338. phase_loop_runtime/skills_bundle/opencode-plan-detailed/assets/review_prompt.md +25 -0
  339. phase_loop_runtime/skills_bundle/opencode-plan-phase/README.md +1 -0
  340. phase_loop_runtime/skills_bundle/opencode-plan-phase/SKILL.md +211 -0
  341. phase_loop_runtime/skills_bundle/opencode-plan-phase/assets/review_prompt.md +17 -0
  342. phase_loop_runtime/skills_bundle/opencode-plan-phase/scripts/validate_plan_doc.py +1092 -0
  343. phase_loop_runtime/skills_bundle/opencode-run-train/README.md +1 -0
  344. phase_loop_runtime/skills_bundle/opencode-run-train/SKILL.md +75 -0
  345. phase_loop_runtime/skills_bundle/opencode-skill-editor/README.md +1 -0
  346. phase_loop_runtime/skills_bundle/opencode-skill-editor/SKILL.md +87 -0
  347. phase_loop_runtime/skills_bundle/opencode-skill-editor/assets/editor_prompt.md +72 -0
  348. phase_loop_runtime/skills_bundle/opencode-skill-improvement-planner/README.md +1 -0
  349. phase_loop_runtime/skills_bundle/opencode-skill-improvement-planner/SKILL.md +109 -0
  350. phase_loop_runtime/skills_bundle/opencode-skill-improvement-planner/assets/aggregator_prompt.md +79 -0
  351. phase_loop_runtime/skills_bundle/opencode-task-contextualizer/README.md +1 -0
  352. phase_loop_runtime/skills_bundle/opencode-task-contextualizer/SKILL.md +98 -0
  353. phase_loop_runtime/skills_bundle/opencode-task-contextualizer/references/task-templates.md +103 -0
  354. phase_loop_runtime/state.py +156 -0
  355. phase_loop_runtime/state_degradation.py +136 -0
  356. phase_loop_runtime/state_ops.py +676 -0
  357. phase_loop_runtime/train_ledger.py +215 -0
  358. phase_loop_runtime/train_roadmap.py +339 -0
  359. phase_loop_runtime/train_runner.py +1197 -0
  360. phase_loop_runtime/verification_evidence.py +650 -0
  361. phase_loop_runtime/verification_evidence_validator.py +75 -0
  362. phase_loop_runtime/visual_evidence_validator.py +36 -0
  363. phase_loop_runtime/worker_pool.py +123 -0
  364. phase_loop_runtime/worktree_index.py +270 -0
  365. phase_loop_runtime-0.2.0.data/data/share/phase-loop-runtime/protocol/protocol.md +2475 -0
  366. phase_loop_runtime-0.2.0.dist-info/METADATA +106 -0
  367. phase_loop_runtime-0.2.0.dist-info/RECORD +370 -0
  368. phase_loop_runtime-0.2.0.dist-info/WHEEL +5 -0
  369. phase_loop_runtime-0.2.0.dist-info/entry_points.txt +9 -0
  370. 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.