@open-agent-toolkit/cli 0.3.9 → 0.3.11

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 (193) hide show
  1. package/README.md +2 -1
  2. package/assets/bundle-metadata.json +1 -1
  3. package/assets/config/dispatch-matrix-recommendation.json +6 -6
  4. package/assets/docs/cli-utilities/configuration.md +12 -8
  5. package/assets/docs/cli-utilities/meta.json +13 -0
  6. package/assets/docs/cli-utilities/tool-packs.md +8 -2
  7. package/assets/docs/cli-utilities/workflow-gates.md +14 -1
  8. package/assets/docs/contributing/code.md +8 -2
  9. package/assets/docs/contributing/documentation.md +7 -1
  10. package/assets/docs/contributing/meta.json +15 -0
  11. package/assets/docs/contributing/updating-model-guidance.md +34 -6
  12. package/assets/docs/contributing/verifying-cursor-pins.md +38 -9
  13. package/assets/docs/docs-tooling/add-docs-to-a-repo.md +14 -5
  14. package/assets/docs/docs-tooling/commands.md +26 -8
  15. package/assets/docs/docs-tooling/meta.json +4 -0
  16. package/assets/docs/docs-tooling/workflows.md +2 -2
  17. package/assets/docs/guide/meta.json +4 -0
  18. package/assets/docs/meta.json +14 -0
  19. package/assets/docs/provider-sync/instruction-sync.md +8 -0
  20. package/assets/docs/provider-sync/meta.json +11 -0
  21. package/assets/docs/provider-sync/providers.md +4 -4
  22. package/assets/docs/provider-sync/scope-and-surface.md +3 -4
  23. package/assets/docs/reference/cli-reference.md +5 -2
  24. package/assets/docs/reference/docs-index-contract.md +22 -6
  25. package/assets/docs/reference/file-locations.md +7 -2
  26. package/assets/docs/reference/index.md +1 -1
  27. package/assets/docs/reference/meta.json +10 -0
  28. package/assets/docs/reference/troubleshooting.md +41 -6
  29. package/assets/docs/workflows/ideas/meta.json +4 -0
  30. package/assets/docs/workflows/meta.json +4 -0
  31. package/assets/docs/workflows/projects/cursor-cloud.md +8 -3
  32. package/assets/docs/workflows/projects/dispatch-ceiling.md +21 -14
  33. package/assets/docs/workflows/projects/evidence-layers.md +6 -8
  34. package/assets/docs/workflows/projects/implementation-execution.md +34 -5
  35. package/assets/docs/workflows/projects/lifecycle.md +7 -1
  36. package/assets/docs/workflows/projects/meta.json +25 -0
  37. package/assets/docs/workflows/projects/orchestration-model.md +5 -6
  38. package/assets/docs/workflows/skills/meta.json +10 -0
  39. package/assets/docs/workflows/skills/recon.md +28 -3
  40. package/assets/public-package-versions.json +4 -4
  41. package/assets/skills/oat-cursor-cloud-projects/SKILL.md +30 -16
  42. package/assets/skills/oat-dispatch-subagents/SKILL.md +4 -12
  43. package/assets/skills/oat-dispatch-subagents/references/managed-claude-example.json +1 -1
  44. package/assets/skills/oat-dispatch-subagents/references/provider-codex.md +51 -0
  45. package/assets/skills/oat-dispatch-subagents/references/provider-cursor.md +5 -2
  46. package/assets/skills/oat-dispatch-subagents/references/record-schema.md +8 -7
  47. package/assets/skills/oat-docs-analyze/SKILL.md +28 -3
  48. package/assets/skills/oat-docs-apply/SKILL.md +3 -3
  49. package/assets/skills/oat-docs-authoring/SKILL.md +1 -1
  50. package/assets/skills/oat-docs-authoring/references/oat-fumadocs-contract.md +5 -2
  51. package/assets/skills/oat-docs-bootstrap/SKILL.md +4 -3
  52. package/assets/skills/oat-docs-bootstrap/assets/AGENTS.md.template +3 -3
  53. package/assets/skills/oat-pjm-decision/SKILL.md +3 -2
  54. package/assets/skills/oat-project-autonomous/references/gate-inventory.md +4 -4
  55. package/assets/skills/oat-project-complete/SKILL.md +47 -2
  56. package/assets/skills/oat-project-design/SKILL.md +10 -6
  57. package/assets/skills/oat-project-discover/SKILL.md +3 -3
  58. package/assets/skills/oat-project-dispatch-subagents/SKILL.md +3 -10
  59. package/assets/skills/oat-project-document/references/docs/autonomy-contract.md +4 -4
  60. package/assets/skills/oat-project-implement/SKILL.md +1 -1
  61. package/assets/skills/oat-project-implement/references/completion-and-closeout.md +135 -3
  62. package/assets/skills/oat-project-implement/references/dispatch-and-dry-run.md +8 -10
  63. package/assets/skills/oat-project-implement/references/docs/autonomy-contract.md +4 -4
  64. package/assets/skills/oat-project-implement/references/plan-and-resume.md +1 -1
  65. package/assets/skills/oat-project-import-plan/SKILL.md +3 -3
  66. package/assets/skills/oat-project-lite/references/docs/autonomy-contract.md +4 -4
  67. package/assets/skills/oat-project-new/SKILL.md +3 -3
  68. package/assets/skills/oat-project-next/SKILL.md +50 -7
  69. package/assets/skills/oat-project-plan/SKILL.md +4 -4
  70. package/assets/skills/oat-project-plan-writing/SKILL.md +4 -4
  71. package/assets/skills/oat-project-pr-final/SKILL.md +11 -1
  72. package/assets/skills/oat-project-pr-final/references/docs/autonomy-contract.md +4 -4
  73. package/assets/skills/oat-project-promote-spec-driven/SKILL.md +2 -2
  74. package/assets/skills/oat-project-quick-start/SKILL.md +12 -8
  75. package/assets/skills/oat-project-quick-start/references/docs/autonomy-contract.md +4 -4
  76. package/assets/skills/oat-project-retro/SKILL.md +6 -3
  77. package/assets/skills/oat-project-review-provide/SKILL.md +2 -2
  78. package/assets/skills/oat-project-review-provide-remote/SKILL.md +2 -2
  79. package/assets/skills/oat-project-spec/SKILL.md +3 -3
  80. package/assets/skills/oat-project-summary/SKILL.md +22 -3
  81. package/assets/skills/oat-repo-improve/SKILL.md +2 -2
  82. package/assets/skills/recon/SKILL.md +24 -3
  83. package/assets/skills/recon/references/packet-contract.md +36 -6
  84. package/assets/skills/recon/references/profiles.md +3 -0
  85. package/assets/skills/recon/references/worker-contract.md +16 -3
  86. package/assets/skills/recon/scripts/create-review-brief.mjs +17 -86
  87. package/assets/skills/recon/scripts/lib/contracts.mjs +158 -41
  88. package/assets/skills/recon/scripts/lib/review-binding.mjs +123 -0
  89. package/assets/skills/recon/scripts/lib/routing.mjs +5 -2
  90. package/assets/skills/recon/scripts/reconcile-ledger.mjs +18 -7
  91. package/assets/skills/recon/scripts/render-packet.mjs +93 -1
  92. package/assets/skills/recon/scripts/validate-packet.mjs +119 -88
  93. package/assets/skills/subagent-orchestration/SKILL.md +1 -1
  94. package/assets/skills/subagent-orchestration/references/evidence-and-refresh.md +20 -8
  95. package/assets/skills/subagent-orchestration/references/provider-claude.md +25 -12
  96. package/assets/skills/subagent-orchestration/references/provider-codex.md +27 -18
  97. package/assets/skills/subagent-orchestration/references/provider-cursor.md +40 -10
  98. package/assets/templates/state.md +1 -0
  99. package/dist/commands/backlog/new.d.ts +2 -2
  100. package/dist/commands/backlog/new.d.ts.map +1 -1
  101. package/dist/commands/backlog/new.js +2 -2
  102. package/dist/commands/decision/new.d.ts +2 -2
  103. package/dist/commands/decision/new.d.ts.map +1 -1
  104. package/dist/commands/decision/new.js +2 -2
  105. package/dist/commands/docs/nav/contents.d.ts +9 -0
  106. package/dist/commands/docs/nav/contents.d.ts.map +1 -1
  107. package/dist/commands/docs/nav/contents.js +7 -2
  108. package/dist/commands/docs/nav/fumadocs.d.ts +51 -0
  109. package/dist/commands/docs/nav/fumadocs.d.ts.map +1 -0
  110. package/dist/commands/docs/nav/fumadocs.js +301 -0
  111. package/dist/commands/docs/nav/sync.d.ts +31 -1
  112. package/dist/commands/docs/nav/sync.d.ts.map +1 -1
  113. package/dist/commands/docs/nav/sync.js +163 -6
  114. package/dist/commands/index.d.ts.map +1 -1
  115. package/dist/commands/index.js +2 -0
  116. package/dist/commands/instructions/instructions.utils.d.ts +19 -0
  117. package/dist/commands/instructions/instructions.utils.d.ts.map +1 -1
  118. package/dist/commands/instructions/instructions.utils.js +89 -17
  119. package/dist/commands/instructions/sync/sync.d.ts.map +1 -1
  120. package/dist/commands/instructions/sync/sync.js +49 -2
  121. package/dist/commands/pjm/init.d.ts.map +1 -1
  122. package/dist/commands/pjm/init.js +2 -2
  123. package/dist/commands/project/closeout-check/closeout-invariant.d.ts +97 -0
  124. package/dist/commands/project/closeout-check/closeout-invariant.d.ts.map +1 -0
  125. package/dist/commands/project/closeout-check/closeout-invariant.js +301 -0
  126. package/dist/commands/project/closeout-check/index.d.ts +38 -0
  127. package/dist/commands/project/closeout-check/index.d.ts.map +1 -0
  128. package/dist/commands/project/closeout-check/index.js +117 -0
  129. package/dist/commands/project/complete-state/index.d.ts +4 -0
  130. package/dist/commands/project/complete-state/index.d.ts.map +1 -1
  131. package/dist/commands/project/complete-state/index.js +11 -13
  132. package/dist/commands/project/dispatch/index.d.ts.map +1 -1
  133. package/dist/commands/project/dispatch/index.js +6 -30
  134. package/dist/commands/project/dispatch/record.d.ts +9 -18
  135. package/dist/commands/project/dispatch/record.d.ts.map +1 -1
  136. package/dist/commands/project/dispatch/record.js +15 -212
  137. package/dist/commands/project/index.d.ts.map +1 -1
  138. package/dist/commands/project/index.js +2 -0
  139. package/dist/commands/project/new/scaffold.d.ts +0 -1
  140. package/dist/commands/project/new/scaffold.d.ts.map +1 -1
  141. package/dist/commands/project/new/scaffold.js +19 -20
  142. package/dist/commands/project/promote/promote.d.ts +2 -2
  143. package/dist/commands/project/promote/promote.d.ts.map +1 -1
  144. package/dist/commands/project/promote/promote.js +13 -11
  145. package/dist/commands/shared/frontmatter.d.ts +21 -0
  146. package/dist/commands/shared/frontmatter.d.ts.map +1 -1
  147. package/dist/commands/shared/frontmatter.js +70 -4
  148. package/dist/commands/shared/template-source.d.ts +29 -0
  149. package/dist/commands/shared/template-source.d.ts.map +1 -0
  150. package/dist/commands/{pjm → shared}/template-source.js +24 -7
  151. package/dist/commands/state/generate.js +2 -2
  152. package/dist/commands/template/index.d.ts +10 -0
  153. package/dist/commands/template/index.d.ts.map +1 -0
  154. package/dist/commands/template/index.js +87 -0
  155. package/dist/commands/template/resolve.d.ts +31 -0
  156. package/dist/commands/template/resolve.d.ts.map +1 -0
  157. package/dist/commands/template/resolve.js +86 -0
  158. package/dist/fs/io.d.ts +0 -41
  159. package/dist/fs/io.d.ts.map +1 -1
  160. package/dist/fs/io.js +2 -414
  161. package/dist/providers/claude/dispatch-envelope.d.ts.map +1 -1
  162. package/dist/providers/claude/dispatch-envelope.js +1 -0
  163. package/dist/providers/claude/targets.d.ts +1 -0
  164. package/dist/providers/claude/targets.d.ts.map +1 -1
  165. package/dist/providers/claude/targets.js +3 -1
  166. package/dist/providers/codex/codec/shared.d.ts +3 -0
  167. package/dist/providers/codex/codec/shared.d.ts.map +1 -1
  168. package/dist/providers/codex/codec/shared.js +4 -0
  169. package/dist/providers/cursor/codec/catalog.d.ts +2 -2
  170. package/dist/providers/cursor/codec/catalog.d.ts.map +1 -1
  171. package/dist/providers/cursor/codec/catalog.js +45 -0
  172. package/dist/providers/cursor/codec/mapping-validation.d.ts +4 -0
  173. package/dist/providers/cursor/codec/mapping-validation.d.ts.map +1 -0
  174. package/dist/providers/cursor/codec/mapping-validation.js +25 -0
  175. package/dist/providers/cursor/codec/materialize.d.ts.map +1 -1
  176. package/dist/providers/cursor/codec/materialize.js +2 -11
  177. package/dist/providers/cursor/codec/sync-extension.d.ts.map +1 -1
  178. package/dist/providers/cursor/codec/sync-extension.js +2 -11
  179. package/dist/providers/identity/absolute-paths.d.ts +4 -13
  180. package/dist/providers/identity/absolute-paths.d.ts.map +1 -1
  181. package/dist/providers/identity/absolute-paths.js +4 -17
  182. package/dist/providers/identity/generic-dispatch-record.d.ts +1 -1
  183. package/dist/providers/identity/generic-dispatch-record.js +2 -2
  184. package/dist/providers/identity/oat-dispatch-record.d.ts +4 -357
  185. package/dist/providers/identity/oat-dispatch-record.d.ts.map +1 -1
  186. package/dist/providers/identity/oat-dispatch-record.js +4 -236
  187. package/dist/release/public-package-contract.d.ts.map +1 -1
  188. package/dist/release/public-package-contract.js +12 -4
  189. package/dist/validation/skills.d.ts.map +1 -1
  190. package/dist/validation/skills.js +32 -6
  191. package/package.json +2 -2
  192. package/dist/commands/pjm/template-source.d.ts +0 -14
  193. package/dist/commands/pjm/template-source.d.ts.map +0 -1
@@ -247,9 +247,9 @@ remains immutable baseline evidence for the original p01-t01 verification.
247
247
  | `oat-project-lite/SKILL.md` | `b8a40746b272 -> NG`; `090e205f5959 -> LITE-10` |
248
248
  | `oat-project-quick-start/references/docs/autonomy-contract.md` | `* -> NG` |
249
249
  | `oat-project-discover/SKILL.md` | `6acc57686847 -> NG`; `4df56b83b98e -> NG`; `660fcdb9dd0d -> NG`; `655d61df0a8f -> NG`; `302f5a4e2f7e -> DISC-03`; `8ee1861bb37c -> DISC-03`; `50a1cdc5156b -> DISC-05`; `73964bb042ab -> DISC-05`; `82cc79370b80 -> DISC-05`; `ff09e8f7774f -> DISC-06`; `323e71dca05d -> DISC-06`; `012bab5b478e -> DISC-06`; `59b36042ba08 -> DISC-06`; `7eaa40e078b9 -> DISC-07`; `b57408be1e7b -> DISC-07`; `4683ea4a7d2f -> DISC-07`; `04454a79d998 -> DISC-08`; `54444ee79fc8 -> DISC-08`; `dd3b5d3d6424 -> DISC-08`; `f64efa435cb2 -> DISC-08`; `1f802b9bc5ad -> DISC-08`; `3fad0405b2bc -> NG`; `2eeba46b7d76 -> DISC-08`; `459873105e7a -> NG` |
250
- | `oat-project-design/SKILL.md` | `d942bb5a75dc -> NG`; `5eb3949f32e1 -> NG`; `8bdedbff2084 -> NG`; `655d61df0a8f -> NG`; `cf317c17c586 -> DES-01`; `2fd9e4306093 -> NG`; `30aaa490f54f -> NG`; `5d39260a7350 -> DES-03`; `925238b3a9b8 -> DES-03`; `f44832c14f8f -> DES-03`; `7f6ed9174a80 -> DES-03`; `ea8a45cff484 -> DES-03`; `ae06e7f3590d -> DES-03`; `ad9715bfa9b5 -> DES-03`; `235f4eba81d9 -> DES-03`; `86d15c022ff2 -> DES-03`; `c08ee2c84186 -> DES-03`; `bd3ee332d171 -> DES-03`; `ec88b585a24d -> DES-03`; `a9595a6486f1 -> DES-04`; `accb06cd6f3c -> DES-04`; `806001c2c365 -> DES-04`; `696587b33f1e -> DES-04`; `9c3320eee2f8 -> NG`; `8b653210ce17 -> NG`; `8ad2a4dc63d2 -> DES-05`; `33cc7540d89e -> DES-05`; `51a2b698ba14 -> DES-05`; `81085592cc91 -> DES-05`; `74b952cc1121 -> DES-05`; `da7551391a41 -> DES-05`; `02c93ec05a4a -> DES-06`; `6864967fd8a4 -> DES-06`; `84e9be719156 -> DES-06`; `7ed89c44264b -> DES-06`; `dc7ba56c1cd4 -> DES-06`; `57ccefb935bf -> DES-06`; `9d27238332b2 -> NG`; `a0c758ab26aa -> NG`; `0e17c1a2de0b -> DES-07`; `e9ea8625567c -> DES-07`; `908e710e7304 -> DES-07`; `b3df7f6b838c -> DES-07`; `f2cb6d4a915e -> DES-07`; `2f4a7f0c9fe5 -> DES-07`; `feccfddbb990 -> DES-07`; `62556fd0060a -> DES-07`; `5382604ed237 -> DES-07`; `3b8724979206 -> DES-07`; `f86a1f05edb9 -> DES-07`; `65f2c8b5c7fd -> DES-07`; `96e24cf8a888 -> DES-07`; `bd3ad56d6265 -> DES-08`; `a19d9c6d7b42 -> DES-08`; `3af5412588ba -> DES-08`; `a0f1c66507d0 -> DES-08`; `a97364c2ca8b -> DES-08`; `4725e333dea4 -> DES-07`; `595d3a64c0f4 -> DES-07`; `57923a130802 -> DES-07`; `7d8fdfb4ca6f -> NG`; `033fb711de49 -> NG`; `d30bb6464138 -> DES-08` |
250
+ | `oat-project-design/SKILL.md` | `d942bb5a75dc -> NG`; `f9e319c9b223 -> NG`; `8bdedbff2084 -> NG`; `655d61df0a8f -> NG`; `cf317c17c586 -> DES-01`; `2fd9e4306093 -> NG`; `30aaa490f54f -> NG`; `5d39260a7350 -> DES-03`; `925238b3a9b8 -> DES-03`; `f44832c14f8f -> DES-03`; `7f6ed9174a80 -> DES-03`; `ea8a45cff484 -> DES-03`; `ae06e7f3590d -> DES-03`; `ad9715bfa9b5 -> DES-03`; `235f4eba81d9 -> DES-03`; `86d15c022ff2 -> DES-03`; `c08ee2c84186 -> DES-03`; `bd3ee332d171 -> DES-03`; `ec88b585a24d -> DES-03`; `a9595a6486f1 -> DES-04`; `accb06cd6f3c -> DES-04`; `806001c2c365 -> DES-04`; `696587b33f1e -> DES-04`; `9c3320eee2f8 -> NG`; `8b653210ce17 -> NG`; `8ad2a4dc63d2 -> DES-05`; `33cc7540d89e -> DES-05`; `51a2b698ba14 -> DES-05`; `81085592cc91 -> DES-05`; `74b952cc1121 -> DES-05`; `da7551391a41 -> DES-05`; `02c93ec05a4a -> DES-06`; `6864967fd8a4 -> DES-06`; `84e9be719156 -> DES-06`; `7ed89c44264b -> DES-06`; `dc7ba56c1cd4 -> DES-06`; `57ccefb935bf -> DES-06`; `9d27238332b2 -> NG`; `a0c758ab26aa -> NG`; `0e17c1a2de0b -> DES-07`; `e9ea8625567c -> DES-07`; `908e710e7304 -> DES-07`; `b3df7f6b838c -> DES-07`; `f2cb6d4a915e -> DES-07`; `2f4a7f0c9fe5 -> DES-07`; `feccfddbb990 -> DES-07`; `62556fd0060a -> DES-07`; `5382604ed237 -> DES-07`; `3b8724979206 -> DES-07`; `f86a1f05edb9 -> DES-07`; `65f2c8b5c7fd -> DES-07`; `96e24cf8a888 -> DES-07`; `bd3ad56d6265 -> DES-08`; `a19d9c6d7b42 -> DES-08`; `3af5412588ba -> DES-08`; `a0f1c66507d0 -> DES-08`; `a97364c2ca8b -> DES-08`; `4725e333dea4 -> DES-07`; `595d3a64c0f4 -> DES-07`; `57923a130802 -> DES-07`; `7d8fdfb4ca6f -> NG`; `033fb711de49 -> NG`; `d30bb6464138 -> DES-08` |
251
251
  | `oat-project-design/references/selective-review-pass.md` | `d4956192b82e -> DES-06`; `7d6e1f926ecb -> DES-06`; `04f918a5fcac -> DES-07` |
252
- | `oat-project-plan/SKILL.md` | `5eb3949f32e1 -> NG`; `2f0ae331febf -> NG`; `655d61df0a8f -> NG`; `56b37486f09d -> PLAN-01`; `cf317c17c586 -> PLAN-02`; `781643b0f2c3 -> NG`; `01fd7cca8253 -> PLAN-04`; `7bc7fa3f2cbb -> NG`; `da28ce0a5f2e -> NG`; `e334f94c4d35 -> NG`; `1fa55762c038 -> NG`; `c0935b5484a2 -> NG`; `6008163054f8 -> PLAN-05`; `571271f4d71b -> PLAN-06`; `746b760289e4 -> PLAN-06`; `de195590ff83 -> NG`; `49640510829a -> PLAN-07`; `4bef7afa7a71 -> PLAN-08`; `e5886632533e -> PLAN-08`; `4cfe1df14372 -> NG`; `d116c97a500c -> PLAN-10`; `aa62facff547 -> PLAN-10`; `bee4c4aa34c6 -> NG`; `3f0b53056edd -> PLAN-11`; `1734b2c85c5d -> NG`; `b4af2220eb91 -> PLAN-11` |
252
+ | `oat-project-plan/SKILL.md` | `f9e319c9b223 -> NG`; `2f0ae331febf -> NG`; `655d61df0a8f -> NG`; `56b37486f09d -> PLAN-01`; `cf317c17c586 -> PLAN-02`; `781643b0f2c3 -> NG`; `01fd7cca8253 -> PLAN-04`; `7bc7fa3f2cbb -> NG`; `da28ce0a5f2e -> NG`; `e334f94c4d35 -> NG`; `1fa55762c038 -> NG`; `c0935b5484a2 -> NG`; `6008163054f8 -> PLAN-05`; `571271f4d71b -> PLAN-06`; `746b760289e4 -> PLAN-06`; `de195590ff83 -> NG`; `49640510829a -> PLAN-07`; `4bef7afa7a71 -> PLAN-08`; `e5886632533e -> PLAN-08`; `4cfe1df14372 -> NG`; `d116c97a500c -> PLAN-10`; `aa62facff547 -> PLAN-10`; `bee4c4aa34c6 -> NG`; `3f0b53056edd -> PLAN-11`; `1734b2c85c5d -> NG`; `b4af2220eb91 -> PLAN-11` |
253
253
  | `oat-project-import-plan/SKILL.md` | `f7ca8635452f -> NG`; `c2e5fa410069 -> NG`; `655d61df0a8f -> NG`; `dceff5cc04b5 -> NG`; `1af4957a1af2 -> IMPORT-01`; `45b699c1c0b5 -> IMPORT-01`; `ba6d120791c1 -> IMPORT-01`; `070ebc5259af -> IMPORT-03`; `c11552696e2e -> IMPORT-03`; `cfe661966baf -> IMPORT-04`; `baa91c0a0bf8 -> NG`; `e364e84b2702 -> NG`; `39031985a945 -> IMPORT-06`; `f106aa29a217 -> IMPORT-07`; `65038450aee3 -> IMPORT-07`; `bee4c4aa34c6 -> NG`; `3f0b53056edd -> IMPORT-09`; `30aa74677c8d -> IMPORT-03`; `430c2bc030a6 -> IMPORT-03`; `93522f67da52 -> NG` |
254
254
  | `oat-project-implement/SKILL.md` | `18980f6bc1a6 -> NG`; `e0355c7a05e9 -> IMPLEMENT-11+IMPLEMENT-13+IMPLEMENT-16`; `6296f41ae11c -> NG`; `a167d03559fa -> NG`; `cf317c17c586 -> IMPLEMENT-01`; `8ce8a09feca4 -> NG`; `bd0cb4988188 -> NG`; `28af4ee0055d -> NG` |
255
255
  | `oat-project-implement/references/completion-and-closeout.md` | `87f1424a8692 -> NG`; `6b1ec05182f0 -> IMPLEMENT-11`; `e6d696a27c91 -> NG`; `c77f8ccb52ad -> NG`; `48de2614c0ba -> IMPLEMENT-11`; `32d53f5212e5 -> IMPLEMENT-11`; `7cdb4a9c57b7 -> IMPLEMENT-11`; `16ffc0aa099b -> IMPLEMENT-11`; `d6868ea10b3f -> IMPLEMENT-11`; `4f05ff5567be -> IMPLEMENT-11`; `c70b47ae7a6d -> IMPLEMENT-11`; `5fafd093b58e -> NG`; `21ceaf7e658a -> NG`; `249427a9f475 -> NG`; `8a7ec13a9b7c -> NG`; `9aeb7fce2012 -> IMPLEMENT-18`; `f11a7cdda220 -> IMPLEMENT-18`; `4523ac029152 -> NG`; `6e87b08c4046 -> NG`; `baa6052c7f0a -> IMPLEMENT-18`; `27d3fad116b1 -> IMPLEMENT-18`; `2cfbeb4388a5 -> IMPLEMENT-18`; `c56ea56a56db -> NG`; `43e2e3c1380d -> IMPLEMENT-17`; `b49690277fb5 -> NG`; `df12304d6a36 -> NG`; `52eacac11fef -> IMPLEMENT-17`; `60092df6b17b -> IMPLEMENT-17`; `361872c6b00e -> IMPLEMENT-17`; `d2bc711a75fb -> IMPLEMENT-17`; `9889538f6212 -> NG`; `58add7778cef -> NG`; `3984cd158ca8 -> NG`; `64a638393159 -> NG`; `ecdaaf6c76fa -> NG`; `96e01b7c0713 -> NG`; `79806948373a -> NG`; `82701dfaf962 -> NG`; `b1c7b8299bf7 -> IMPLEMENT-13+IMPLEMENT-15`; `352caf79e5cb -> IMPLEMENT-13+IMPLEMENT-15`; `6792dd0068a7 -> IMPLEMENT-13+IMPLEMENT-15`; `91f4ebf1704c -> IMPLEMENT-13+IMPLEMENT-15`; `1119540c90cd -> IMPLEMENT-13+IMPLEMENT-15`; `13e6d608682c -> IMPLEMENT-15`; `9fc3aa86e096 -> IMPLEMENT-13+IMPLEMENT-15`; `b44bd8f4fe7e -> NG`; `d62f3ae68677 -> NG`; `4133bca9bd9f -> IMPLEMENT-12`; `f6f87d97896b -> IMPLEMENT-14`; `9d066a59d00a -> IMPLEMENT-14`; `abd7a8d8fc89 -> IMPLEMENT-14`; `a2199f9dafee -> IMPLEMENT-14`; `fcef83b91326 -> NG`; `e2df750966f5 -> IMPLEMENT-13+IMPLEMENT-15`; `2b714060ccae -> IMPLEMENT-13+IMPLEMENT-15`; `708e8e6d33ac -> IMPLEMENT-15`; `f81e67549c28 -> IMPLEMENT-13+IMPLEMENT-15`; `8980233e250d -> NG`; `713729395d08 -> IMPLEMENT-13`; `671f3622cd05 -> IMPLEMENT-13`; `19c38f351f3e -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `b552eeb1fa37 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `24de52a2e140 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `18071a1287a9 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `318989f76cd7 -> IMPLEMENT-16`; `50c9170a3fc8 -> NG`; `8af4d1f8c32c -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `f47aefb3a3cc -> IMPLEMENT-16`; `7c7bcd0381cb -> NG`; `4808cd2e14d6 -> NG`; `906d7d8628af -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `c7221ba40303 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `05eaa2d6f58f -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `acf05140d8f3 -> IMPLEMENT-19`; `6d68053180a0 -> NG`; `1128ae7838f5 -> IMPLEMENT-19`; `2b3e427b5fc0 -> IMPLEMENT-19`; `9fdeb38897a2 -> IMPLEMENT-13+IMPLEMENT-15`; `4f1c82e4bef8 -> IMPLEMENT-13+IMPLEMENT-15`; `d74b5b3c4ad3 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `85b8fae4aa24 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `912923a29ecf -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `c9707e20ad4a -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `8108196d68a5 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `ad9d8e0114a6 -> IMPLEMENT-16`; `e6ef8cdc8986 -> IMPLEMENT-16`; `d3891824ecfa -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `045d486db046 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `7f3891ba6f9d -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `2db46931ac00 -> IMPLEMENT-13+IMPLEMENT-14+IMPLEMENT-15+IMPLEMENT-16`; `aaaf9a6d018a -> IMPLEMENT-16`; `5198341f296c -> IMPLEMENT-16`; `4443b0d16d43 -> IMPLEMENT-16`; `76511502e95b -> IMPLEMENT-16`; `585a1f4575a1 -> IMPLEMENT-16`; `7dc4e4afca1e -> IMPLEMENT-16`; `0d3f1d6038fd -> IMPLEMENT-16`; `e3dfc24fbed6 -> IMPLEMENT-16`; `f19c8013230c -> IMPLEMENT-16`; `ba83e7ce6aed -> IMPLEMENT-16`; `4e4c5485b755 -> IMPLEMENT-16`; `cc8e7e01f30c -> IMPLEMENT-17`; `a13b8adde5da -> IMPLEMENT-17` |
@@ -259,7 +259,7 @@ remains immutable baseline evidence for the original p01-t01 verification.
259
259
  | `oat-project-implement/references/plan-and-resume.md` | `413829d31e32 -> IMPLEMENT-02`; `c7706cd8ad09 -> IMPLEMENT-03`; `b7ea139780ec -> IMPLEMENT-03+IMPLEMENT-04`; `8d438f2180ba -> IMPLEMENT-03`; `9e72e0518cda -> IMPLEMENT-03`; `3e177a1021e6 -> IMPLEMENT-03+IMPLEMENT-04`; `b59fc9eb9ce3 -> IMPLEMENT-03`; `a2b1d6855283 -> IMPLEMENT-03`; `44351a32e52a -> IMPLEMENT-03`; `b98b022f5523 -> IMPLEMENT-03`; `e9f5b949e214 -> IMPLEMENT-03`; `316fb6d9e980 -> IMPLEMENT-03`; `8b25a2c5c548 -> IMPLEMENT-03`; `1a59b1c0e705 -> IMPLEMENT-03`; `466cd562fc52 -> IMPLEMENT-03`; `083d896978d5 -> IMPLEMENT-03`; `f4ab11c13ae9 -> IMPLEMENT-03`; `7dc17ffcc1c4 -> IMPLEMENT-03`; `f731a90adabd -> IMPLEMENT-04`; `886ac01e7aa9 -> IMPLEMENT-04`; `b715db67df0c -> IMPLEMENT-04`; `2d9f26a539f3 -> IMPLEMENT-10`; `28384dee114f -> IMPLEMENT-05`; `f2591a4978b4 -> NG`; `8290823080b5 -> IMPLEMENT-06`; `f75789bf6c8e -> IMPLEMENT-07`; `b5bd4852c58d -> NG`; `6e7fac10d436 -> NG`; `16f6203aadac -> NG`; `4b876e81abad -> NG` |
260
260
  | `oat-project-document/SKILL.md` | `4fc2d8618208 -> NG`; `8c7b024c4e9d -> NG`; `40f8be47affa -> NG`; `3a3c390528f3 -> DOCUMENT-03`; `2a7ba093b315 -> DOCUMENT-02`; `252aabe44db2 -> DOCUMENT-02`; `3751172de299 -> DOCUMENT-02`; `b987a0697ba9 -> DOCUMENT-01`; `a06ff3ca7926 -> NG`; `0d04714ca9fc -> NG`; `f79af01d94c6 -> DOCUMENT-02`; `71634113c348 -> DOCUMENT-02`; `cdb707f5081e -> NG` |
261
261
  | `oat-project-document/references/docs/autonomy-contract.md` | `* -> NG` |
262
- | `oat-project-summary/SKILL.md` | `68c197c44c18 -> NG`; `35cb2ea1d677 -> NG`; `a167d03559fa -> NG`; `cf317c17c586 -> SUMMARY-01`; `f3e49b727752 -> NG`; `f979b2342d28 -> NG`; `803bf40ec423 -> NG`; `c8fced47ef8e -> NG`; `d7ea1e2a4f5f -> NG`; `5f315ab87cb1 -> NG` |
262
+ | `oat-project-summary/SKILL.md` | `68c197c44c18 -> NG`; `a8983fec040c -> NG`; `a167d03559fa -> NG`; `cf317c17c586 -> SUMMARY-01`; `f3e49b727752 -> NG`; `f979b2342d28 -> NG`; `803bf40ec423 -> NG`; `c8fced47ef8e -> NG`; `d7ea1e2a4f5f -> NG`; `5f315ab87cb1 -> NG` |
263
263
  | `oat-project-pr-final/SKILL.md` | `601ac2b890f2 -> NG`; `c264a64398f0 -> NG`; `9efcbcee42ea -> NG`; `655d61df0a8f -> NG`; `cf317c17c586 -> PRFINAL-01`; `2de348a391c0 -> PRFINAL-03` |
264
264
  | `oat-project-pr-final/references/docs/autonomy-contract.md` | `* -> NG` |
265
265
  | `oat-project-complete/SKILL.md` | `6ed459f9e462 -> NG`; `a167d03559fa -> NG`; `79c2eeed668c -> COMPLETE-01`; `2c1514b9d9af -> COMPLETE-01`; `31c750b4fea7 -> COMPLETE-01`; `cfba413b1293 -> COMPLETE-01`; `7fcfce0423ac -> COMPLETE-01`; `7bcbf58b54e9 -> NG`; `4c7f88a7f942 -> COMPLETE-02`; `6a1a95acc8cc -> COMPLETE-02`; `3b559956b3eb -> COMPLETE-03`; `14d161cdf99b -> COMPLETE-03`; `fffe5eea5ebd -> NG`; `e7dc6fdc4eb3 -> COMPLETE-01`; `e5460e437299 -> NG`; `882b61c9096c -> NG`; `9ffa1c752505 -> NG`; `8c5e599f6bac -> NG` |
@@ -283,7 +283,7 @@ remains immutable baseline evidence for the original p01-t01 verification.
283
283
  | `oat-project-quick-start/SKILL.md` | `aa560418765a -> QS-13`; `40ddcac880ef -> NG` |
284
284
  | `oat-project-plan/SKILL.md` | `2b32bc5e9fea -> NG`; `58cc6b0adf97 -> PLAN-13`; `9fba3b40b522 -> NG` |
285
285
  | `oat-project-import-plan/SKILL.md` | `349790ade2e1 -> IMPORT-10`; `8ea53b60c725 -> NG` |
286
- | `oat-project-implement/references/completion-and-closeout.md` | `5636ed3a0418 -> NG` |
286
+ | `oat-project-implement/references/completion-and-closeout.md` | `5636ed3a0418 -> NG`; `98aadc6a1691 -> NG`; `218e19d342f1 -> NG`; `5c6cf9e72316 -> NG` |
287
287
 
288
288
  ## Prompt-scan comparison
289
289
 
@@ -3,9 +3,9 @@ name: oat-project-retro
3
3
  description: Use when the user requests or confirms a project retrospective — e.g. "run the project retro", "write project-retro.md", "retrospective this project", or confirms a previously offered retro. Do NOT auto-invoke merely because implementation or summary completed. Produces references/project-retro.md from project logs, execution learnings, and session/transcript evidence, with repo improvements and OAT upstream feedback.
4
4
  disable-model-invocation: false
5
5
  user-invocable: true
6
- allowed-tools: Read, Write, Bash(git:*), Bash(jq:*), Bash(pnpm:*), Bash(oat config:*), Bash(oat decision:*), Bash(oat project log:*), Bash(oat project push:*), Bash(oat project scope:*), Bash(oat tools:*), Glob, Grep, AskUserQuestion
6
+ allowed-tools: Read, Write, Bash(git:*), Bash(jq:*), Bash(mkdir:*), Bash(pnpm:*), Bash(oat config:*), Bash(oat decision:*), Bash(oat project log:*), Bash(oat project push:*), Bash(oat project scope:*), Bash(oat template:*), Bash(oat tools:*), Glob, Grep, AskUserQuestion
7
7
  metadata:
8
- version: 1.0.7
8
+ version: 1.0.8
9
9
  ---
10
10
 
11
11
  # Project Retrospective
@@ -104,7 +104,10 @@ justifies them. Root synthesis remains with the invoking agent.
104
104
 
105
105
  ### Step 3: Render the Artifact
106
106
 
107
- Copy `.oat/templates/project-retro.md` to the output path and render it against
107
+ Create `"$PROJECT_PATH/references"` if it is missing (`--output` creates no
108
+ directories), copy the template to the output path with
109
+ `oat template resolve project-retro --output "$PROJECT_PATH/references/project-retro.md"`
110
+ (repository, user, then bundled tier), and render it against
108
111
  [references/retro-quality-bar.md](references/retro-quality-bar.md).
109
112
 
110
113
  Keep output concise by default. Every section must add distinct information.
@@ -5,7 +5,7 @@ disable-model-invocation: false
5
5
  user-invocable: true
6
6
  allowed-tools: Read, Glob, Grep, Write, Edit, Bash(git:*), Bash(oat:*), Bash(pnpm:*), Bash(mkdir:*), Bash(date:*), Bash(realpath:*), Bash(awk:*), AskUserQuestion
7
7
  metadata:
8
- version: 1.5.11
8
+ version: 1.5.12
9
9
  ---
10
10
 
11
11
  # Request Review
@@ -759,7 +759,7 @@ stamp it already copies into the review artifact's dispatch audit metadata
759
759
  (Step 6.0); it never writes `implementation.md` (this rail requires that file
760
760
  clean and never commits it) and adds no request-id, launch-status, or outcome
761
761
  field to any artifact or ledger column. Construct and redact the complete
762
- generic record plus OAT role event before the native call. Writing a per-dispatch file with `oat project dispatch record` is optional and off by default: no lifecycle skill or command consumes those files, so do not write them unless the host has explicitly opted in. A rejected launch must
762
+ generic record plus OAT role event before the native call. A rejected launch must
763
763
  attest `provesNoChildStarted: true`; only it permits one exact-target
764
764
  approximation with a fresh request ID. Preserve the exact model, effort, route,
765
765
  authority, and provider controls. Timeout, `BLOCKED`, refusal after acceptance,
@@ -5,7 +5,7 @@ disable-model-invocation: true
5
5
  user-invocable: true
6
6
  allowed-tools: Read, Write, Bash, Glob, Grep, Task, AskUserQuestion
7
7
  metadata:
8
- version: 1.1.8
8
+ version: 1.1.9
9
9
  ---
10
10
 
11
11
  # Remote Review Provide (Project-Scoped GitHub PR)
@@ -324,7 +324,7 @@ stamp it already copies into the posted review's dispatch audit metadata; it
324
324
  never writes `implementation.md` (the remote rail runs in an ephemeral worktree
325
325
  and forbids that mutation) and adds no request-id, launch-status, or outcome
326
326
  field anywhere. Construct and redact the complete generic record plus OAT role
327
- event before the native call. Writing a per-dispatch file with `oat project dispatch record` is optional and off by default: no lifecycle skill or command consumes those files, so do not write them unless the host has explicitly opted in. A rejected launch must attest
327
+ event before the native call. A rejected launch must attest
328
328
  `provesNoChildStarted: true`; only it permits one exact-target approximation
329
329
  with a fresh request ID. Preserve exact model, effort, route, authority, and
330
330
  provider controls. Timeout, `BLOCKED`, refusal after acceptance, runtime
@@ -3,9 +3,9 @@ name: oat-project-spec
3
3
  description: Use when discovery is complete but you're not ready to design yet, and you want to formalize requirements into a structured spec.md as an optional standalone step. Independent of the design workflow — oat-project-design confirms requirements automatically and does not require this skill to be run first.
4
4
  disable-model-invocation: true
5
5
  user-invocable: true
6
- allowed-tools: Read, Write, Bash(git:*), Glob, Grep, AskUserQuestion
6
+ allowed-tools: Read, Write, Bash(git:*), Bash(oat template:*), Glob, Grep, AskUserQuestion
7
7
  metadata:
8
- version: 2.0.3
8
+ version: 2.0.4
9
9
  ---
10
10
 
11
11
  # Specification Phase
@@ -148,7 +148,7 @@ Read for context:
148
148
 
149
149
  ### Step 5: Initialize Specification Document
150
150
 
151
- Copy template: `.oat/templates/spec.md` → `"$PROJECT_PATH/spec.md"`
151
+ Copy template: `oat template resolve spec --output "$PROJECT_PATH/spec.md"`
152
152
 
153
153
  Update frontmatter:
154
154
 
@@ -3,9 +3,9 @@ name: oat-project-summary
3
3
  description: Use when the user requests or confirms summarizing an active OAT project — e.g. "summarize the project", "generate the summary", "run oat-project-summary", or confirms a previously offered summary run. Do NOT auto-invoke when implementation completes. Generates summary.md from project artifacts as institutional memory.
4
4
  disable-model-invocation: false
5
5
  user-invocable: true
6
- allowed-tools: Read, Write, Bash(git:*), Bash(jq:*), Bash(oat config:*), Bash(oat decision:*), Bash(oat pjm:*), Bash(oat project log:*), Bash(oat project push:*), Bash(oat project scope:*), Bash(oat tools:*), Glob, Grep, AskUserQuestion
6
+ allowed-tools: Read, Write, Bash(git:*), Bash(jq:*), Bash(oat config:*), Bash(oat decision:*), Bash(oat pjm:*), Bash(oat project log:*), Bash(oat project push:*), Bash(oat project scope:*), Bash(oat template:*), Bash(oat tools:*), Glob, Grep, AskUserQuestion
7
7
  metadata:
8
- version: 1.5.6
8
+ version: 1.5.7
9
9
  ---
10
10
 
11
11
  # Project Summary
@@ -225,7 +225,7 @@ test -f "$PROJECT_PATH/summary.md"
225
225
 
226
226
  **If does not exist (first run):**
227
227
 
228
- Copy template: `.oat/templates/summary.md` → `"$PROJECT_PATH/summary.md"`
228
+ Copy template: `oat template resolve summary --output "$PROJECT_PATH/summary.md"`
229
229
 
230
230
  ### Step 4: Generate / Update Summary Sections
231
231
 
@@ -255,6 +255,7 @@ spec, or design artifacts.
255
255
  | Tradeoffs Made | plan.md `Assumptions`; implementation.md decisions |
256
256
  | Follow-up Items | plan.md `Out of Scope`; implementation.md deferred results |
257
257
  | Integration Notes | plan.md `Validation Criteria`; implementation.md test results |
258
+ | Exit-Gate Waivers | state.md `oat_implement_exit_gate.waivers` |
258
259
 
259
260
  **Non-lite section sources:**
260
261
 
@@ -273,6 +274,7 @@ spec, or design artifacts.
273
274
  | Workflow Observations | project-log.md via `oat project log rollup` only |
274
275
  | Autonomous Execution Learnings | oat-execution-learnings.md dated entries |
275
276
  | Explainer Outcome | project-recap `manifest.json` and `qa/result.json`, or the recorded recap skip |
277
+ | Exit-Gate Waivers | state.md `oat_implement_exit_gate.waivers` |
276
278
 
277
279
  **Explainer Outcome (conditional):**
278
280
 
@@ -310,6 +312,23 @@ Omit `Explainer Outcome` only when no project-recap attempt and no persisted
310
312
  recap skip exist. A failed or skipped recap remains visible as its own product
311
313
  outcome; do not reinterpret it as project implementation failure.
312
314
 
315
+ **Exit-Gate Waivers (conditional):**
316
+
317
+ When `oat_implement_exit_gate.waivers` in `state.md` is non-empty, render
318
+ `## Exit-Gate Waivers`. Render one item per entry in
319
+ `oat_implement_exit_gate.waivers`, in stored order; never merge, summarize
320
+ away, or drop an entry:
321
+
322
+ ```markdown
323
+ ## Exit-Gate Waivers
324
+
325
+ - `{from_commit short}..{to_commit short}` ({effective-delta-v1 | effective-delta-v2}) waived by {waived_by} at {waived_at}: {reason}
326
+ ```
327
+
328
+ Copy `waived_by` and `reason` exactly as recorded. A waiver is an operator's
329
+ recorded decision, not something this skill infers or adds. Omit the section
330
+ only when the list is absent or empty.
331
+
313
332
  **Autonomous Execution Learnings (conditional):**
314
333
 
315
334
  When `"$PROJECT_PATH/oat-execution-learnings.md"` exists, synthesize
@@ -8,7 +8,7 @@ allowed-tools: Read, Write, Glob, Grep, Bash, AskUserQuestion
8
8
  license: MIT
9
9
  metadata:
10
10
  author: shadcn
11
- version: 2.1.5
11
+ version: 2.1.6
12
12
  ---
13
13
 
14
14
  # OAT Repo Improve
@@ -263,7 +263,7 @@ Plans are always the primary output. Tracking publication happens only after the
263
263
 
264
264
  When PJM is installed, offer backlog-item creation for plans from `repo-audit` or `maintainability-review`. `--backlog-items` records prior explicit acceptance; otherwise ask once after previewing the plan-to-item mapping.
265
265
 
266
- - Prefer the canonical `oat-pjm-add-backlog-item` workflow when installed. For a bulk fallback, use `.oat/templates/backlog-item.md`, `oat backlog generate-id`, and one final `oat backlog regenerate-index` without changing the field contract.
266
+ - Prefer the canonical `oat-pjm-add-backlog-item` workflow when installed. For a bulk fallback, use the `backlog-item` template (`oat template resolve backlog-item --output <item path>` resolves the repository, user, then bundled tier), `oat backlog generate-id`, and one final `oat backlog regenerate-index` without changing the field contract.
267
267
  - Create one item per plan, with the plan's outcome as the title/description basis and its done criteria mapped to acceptance criteria.
268
268
  - Initialize `external_plans` with that plan path at creation time.
269
269
  - For `backlog-review`, `backlog-directory`, and `backlog-item`, never create duplicate items. Reuse source items and update only their reverse links.
@@ -6,7 +6,7 @@ disable-model-invocation: true
6
6
  user-invocable: true
7
7
  allowed-tools: Read, Write, Glob, Grep, Bash, AskUserQuestion, Agent, mcp__*
8
8
  metadata:
9
- version: 1.1.5
9
+ version: 1.1.6
10
10
  ---
11
11
 
12
12
  # Recon
@@ -65,7 +65,9 @@ problem:
65
65
  - `worker`: an accepted lane failed, was cancelled, or wrote an invalid
66
66
  artifact;
67
67
  - `provider/dispatch`: the launch surface could not satisfy the approved
68
- envelope, or a launched axis drifted from approval;
68
+ envelope, a launched axis drifted from approval, or the provider rejected a
69
+ launch before any child was accepted (for example a Codex agent-limit
70
+ rejection). A pre-acceptance rejection is never a worker failure;
69
71
  - `contract validation`: artifacts were produced but the packet or a
70
72
  candidate failed deterministic validation;
71
73
  - `source availability`: a declared source was unavailable, stale, or lacked
@@ -188,7 +190,8 @@ The proposal shown for approval includes:
188
190
 
189
191
  - every wave's exact effective provider, route, role, model, effort, reasoning
190
192
  mode, and service tier;
191
- - authority level, maximum concurrency, per-lane deadline, and retry limit; and
193
+ - authority level, maximum concurrency, per-lane deadline, and retry limit
194
+ (pre-acceptance admission retries per lane); and
192
195
  - every wave with its mode, task class, class floor, selection reason, target,
193
196
  and conditional flag; every condition with its predecessor, destination,
194
197
  predicate, and single-activation cap; and every lane with its identity, read
@@ -222,6 +225,24 @@ result. If any approved axis cannot be satisfied, stop with a
222
225
  `provider/dispatch` diagnostic, leave the run at `awaiting-approval`, and
223
226
  launch nothing. Never substitute a different axis to make the launch fit.
224
227
 
228
+ **Pre-acceptance rejections.** A launch the provider rejects before any child
229
+ is accepted, such as a Codex `agent thread limit reached` rejection, is a
230
+ `provider/dispatch` failure for that lane, never a worker failure; keep every
231
+ accepted artifact. `retryLimit` counts these pre-acceptance admission retries
232
+ per lane. With `retryLimit` of at least 1, allow at most one admission retry,
233
+ and only after checking that completed agents are eligible to be unloaded; the
234
+ default of 0 allows none and is never silently overridden. If the retry is
235
+ rejected or not allowed, use an alternate route only when the approved envelope
236
+ already names it. Otherwise stop with a partial run: record the lane with a
237
+ material `PASS_OMITTED` gap carrying its exact `waveId` and `laneId`, and ask
238
+ for a concrete continuation amendment instead of inventing fallback authority.
239
+ No retry or route changes model, effort, role behavior, data authority, output
240
+ limits, or reviewer blindness. Fresh review lanes stay fresh, and an accepted
241
+ lane is never rerun to free capacity. Provider lifecycle mechanics, including
242
+ Codex v2 residency and the `interrupt_agent` versus `close_agent` distinction,
243
+ live in the dispatch dependency's
244
+ `oat-dispatch-subagents/references/provider-codex.md`; do not copy them here.
245
+
225
246
  Launch each wave through the dispatch dependency with exactly the approved
226
247
  axes. On Cursor, launch both the custom worker role and the pre-approved generic
227
248
  fallback in the background. Immediately before each launch, check the constructed target through the
@@ -111,7 +111,12 @@ it is not an unknown-value fallback.
111
111
 
112
112
  The other execution fields include `authority` as `provider-enforced` or
113
113
  `contract-enforced`; integer `maxConcurrency` and `deadlineSeconds` values of
114
- at least 1; and an integer `retryLimit` of at least 0. Each closed wave adds:
114
+ at least 1; and an integer `retryLimit` of at least 0. `retryLimit` counts
115
+ pre-acceptance admission retries per lane: relaunches after the provider
116
+ rejects a launch before any child is accepted. The controller makes at most one
117
+ such retry per lane, whatever the limit, and never reruns an accepted lane. The
118
+ preview's worst-case lane attempts are lanes times (min(`retryLimit`, 1) + 1). Each closed
119
+ wave adds:
115
120
 
116
121
  - `classFloor`, from the same durable task-class order and not above
117
122
  `taskClass`;
@@ -347,14 +352,29 @@ branch; source ineligibility never bypasses persistence safety.
347
352
  association, and an association cannot name evidence absent from that result
348
353
  or a claim without a disposition in that result.
349
354
 
350
- Every `unresolvedIssues` member is a string. Review results are closed objects:
351
- unknown fields and object-valued issue entries are invalid.
355
+ `unresolvedIssues` members are a closed union. A string is a legacy entry read
356
+ as a global issue. `{ "text": "...", "claimIds": ["claim-1"] }` scopes an issue
357
+ to a non-empty list of unique claim IDs that the review covers (each has a
358
+ disposition in that review, so each is projected by its immutable brief).
359
+ `{ "text": "...", "scope": "global" }` is an explicit global issue. Any other
360
+ entry, including an object with neither or both scope forms, an empty or
361
+ non-string claim list, or a claim the review does not cover, is rejected at
362
+ artifact acceptance with `INVALID_UNRESOLVED_ISSUE`; it is never read as no
363
+ issue. Reconciliation and publication apply one rule: a claim-scoped issue keeps
364
+ only the claims it names below `verified`, and a global issue keeps every claim
365
+ the review covers below `verified`. Review results are closed objects: unknown
366
+ fields are invalid.
352
367
  Reconciliation results replace the brief reference with prior-ledger/revision,
353
368
  additions/removals, exact transitions, and coverage-disposition bindings.
354
369
  Coverage findings are closed records bound to affected claims and exact
355
- manifest gaps. Accepted
356
- material gaps require a legal downgrade for every affected claim; a resolved
357
- finding instead names exact typed evidence. Non-material coverage gaps
370
+ manifest gaps. One coverage rule applies at acceptance, reconciliation, and
371
+ publication: an accepted material finding forces every claim it names below
372
+ `verified`, and publication rejects a named claim that is still `verified`
373
+ (`MATERIAL_COVERAGE_ASSURANCE_EXCEEDED`). The reviewer's per-statement
374
+ disposition for a named claim may remain `covered`, because a missing question
375
+ is not a defect in that statement; the material gap stays visible in
376
+ `manifest.gaps` and forces `partial`. A resolved finding instead names exact
377
+ typed evidence. Non-material coverage gaps
358
378
  downgrade verified claims and transition provisional claims to unresolved,
359
379
  while existing supported claims remain supported without verified promotion.
360
380
  Thorough redundant verification and contradiction resolution are
@@ -366,6 +386,16 @@ Create immutable mode-specific review projections with
366
386
  statements, display excerpts, typed locators, and required source descriptors.
367
387
  Adversarial briefs expose only scope, questions, and provisional statements.
368
388
  Coverage briefs expose only scope, questions, and claim ID/statement pairs.
389
+ Publication checks a brief by rebuilding it: `validate-packet.mjs` calls the
390
+ same generator with the brief's `id`, `mode`, and `createdAt`, the manifest,
391
+ the prior ledger, and the claim IDs the brief lists, and requires identical
392
+ canonical JSON. Any edited, injected, duplicated, or unprojected field differs
393
+ (`REVIEW_BRIEF_MISMATCH`), so a brief cannot carry an injected claim, note, or
394
+ source. Each review's dispositions must be unique and name claims its brief
395
+ lists. The brief `id` is a lowercase slug of at most 64 characters and
396
+ `createdAt` a UTC ISO-8601 instant. A reviewer may leave a briefed claim without
397
+ a disposition; like an `uncertain` one, the claim stays `unresolved`, and
398
+ `packet.md` lists it under Review Downgrades as not reviewed.
369
399
  All reject dossier paths, compiler reasoning, synthesis prose, provenance
370
400
  references, and prior review IDs.
371
401
 
@@ -79,5 +79,8 @@ reopening and verification.
79
79
  5. Reduce lanes when scope is small; never invent work to fill a profile cap.
80
80
  6. If runtime limits prevent the requested topology, prepare a different
81
81
  profile for approval or publish an honest partial after an accepted failure.
82
+ A launch rejected before acceptance is a `provider/dispatch` failure with a
83
+ `PASS_OMITTED` lane gap, retried at most once and only within `retryLimit`
84
+ (SKILL.md Step 5).
82
85
  7. Never add a lane, retry, replacement, or target change beyond the approved
83
86
  envelope.
@@ -86,7 +86,12 @@ unpromoted `writePath`. Correct an invalid candidate within the same accepted
86
86
  task and validate again. A terminal invalid candidate is `PASS_FAILED`; it does
87
87
  not authorize controller retry or replacement.
88
88
 
89
- Closed review-result examples (all omitted arrays are still required as shown):
89
+ Closed review-result examples (all omitted arrays are still required as shown).
90
+ Each `unresolvedIssues` entry names its scope: `{ "text", "claimIds" }` for
91
+ issues about specific claims this review covers, or
92
+ `{ "text", "scope": "global" }` for an issue about every claim it covers. A
93
+ bare string is accepted as a legacy global issue. Scope an issue to the claims
94
+ it actually affects: a global issue keeps every covered claim below `verified`.
90
95
 
91
96
  ```json
92
97
  {
@@ -103,11 +108,19 @@ Closed review-result examples (all omitted arrays are still required as shown):
103
108
  },
104
109
  "permittedInputs": [],
105
110
  "excludedInputs": [],
106
- "dispositions": [],
111
+ "dispositions": [
112
+ { "claimId": "claim-1", "disposition": "affirmed" },
113
+ { "claimId": "claim-2", "disposition": "uncertain" }
114
+ ],
107
115
  "newEvidence": [],
108
116
  "evidenceAssociations": [],
109
117
  "coverageFindings": [],
110
- "unresolvedIssues": []
118
+ "unresolvedIssues": [
119
+ {
120
+ "text": "The cited release note may describe a different version.",
121
+ "claimIds": ["claim-2"]
122
+ }
123
+ ]
111
124
  }
112
125
  ```
113
126