@open-agent-toolkit/cli 0.3.16 → 0.3.18
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.
- package/assets/agents/oat-phase-implementer.md +26 -6
- package/assets/agents/oat-reviewer.md +51 -1
- package/assets/bundle-metadata.json +1 -1
- package/assets/docs/contributing/documentation.md +4 -0
- package/assets/docs/contributing/skills.md +3 -1
- package/assets/docs/getting-started/bootstrap.md +1 -1
- package/assets/docs/getting-started/index.md +0 -4
- package/assets/docs/getting-started/tool-packs.md +0 -7
- package/assets/docs/reference/cli-reference.md +42 -1
- package/assets/docs/reference/config-and-local-state.md +11 -2
- package/assets/docs/reference/project-artifacts.md +43 -8
- package/assets/docs/skills/repo-improve.md +9 -7
- package/assets/docs/workflows/advanced/autonomy.md +40 -0
- package/assets/docs/workflows/backlog-and-planning/backlog-lifecycle.md +25 -24
- package/assets/docs/workflows/backlog-and-planning/remote-project-management.md +0 -7
- package/assets/docs/workflows/ideas/lifecycle.md +2 -7
- package/assets/docs/workflows/projects/execution/project-log.md +22 -0
- package/assets/docs/workflows/projects/reviews/review-flavors.md +8 -0
- package/assets/public-package-versions.json +4 -4
- package/assets/skills/oat-agent-instructions-apply/SKILL.md +14 -4
- package/assets/skills/oat-brainstorm/SKILL.md +17 -13
- package/assets/skills/oat-docs-apply/SKILL.md +13 -3
- package/assets/skills/oat-doctor/SKILL.md +11 -1
- package/assets/skills/oat-explainer-kit/SKILL.md +1 -1
- package/assets/skills/oat-explainer-kit/references/lifecycle-contract.md +6 -3
- package/assets/skills/oat-pjm-review-backlog/SKILL.md +2 -2
- package/assets/skills/oat-pjm-update-repo-reference/SKILL.md +28 -3
- package/assets/skills/oat-project-autonomous/SKILL.md +60 -5
- package/assets/skills/oat-project-autonomous/references/gate-inventory.md +44 -6
- package/assets/skills/oat-project-capture/SKILL.md +7 -3
- package/assets/skills/oat-project-complete/SKILL.md +39 -34
- package/assets/skills/oat-project-complete/scripts/execute-synced-archive-entry.mjs +106 -28
- package/assets/skills/oat-project-complete/scripts/parse-synced-archive-resume-fields.mjs +30 -3
- package/assets/skills/oat-project-design/SKILL.md +12 -9
- package/assets/skills/oat-project-discover/SKILL.md +8 -4
- package/assets/skills/oat-project-document/SKILL.md +14 -5
- package/assets/skills/oat-project-document/references/docs/autonomy-contract.md +44 -6
- package/assets/skills/oat-project-implement/SKILL.md +1 -1
- package/assets/skills/oat-project-implement/references/completion-and-closeout.md +6 -6
- package/assets/skills/oat-project-implement/references/docs/autonomy-contract.md +44 -6
- package/assets/skills/oat-project-implement/references/phase-execution.md +20 -6
- package/assets/skills/oat-project-import-plan/SKILL.md +20 -6
- package/assets/skills/oat-project-lite/SKILL.md +7 -5
- package/assets/skills/oat-project-lite/references/docs/autonomy-contract.md +44 -6
- package/assets/skills/oat-project-new/SKILL.md +6 -2
- package/assets/skills/oat-project-plan/SKILL.md +14 -6
- package/assets/skills/oat-project-pr-final/SKILL.md +1 -1
- package/assets/skills/oat-project-pr-final/references/docs/autonomy-contract.md +44 -6
- package/assets/skills/oat-project-progress/SKILL.md +13 -1
- package/assets/skills/oat-project-promote-spec-driven/SKILL.md +7 -3
- package/assets/skills/oat-project-quick-start/SKILL.md +17 -12
- package/assets/skills/oat-project-quick-start/references/docs/autonomy-contract.md +44 -6
- package/assets/skills/oat-project-reconcile/SKILL.md +8 -4
- package/assets/skills/oat-project-retro/SKILL.md +1 -1
- package/assets/skills/oat-project-retro/references/apply-procedure.md +6 -6
- package/assets/skills/oat-project-retro-file/SKILL.md +7 -3
- package/assets/skills/oat-project-review-provide/SKILL.md +23 -4
- package/assets/skills/oat-project-review-provide-remote/SKILL.md +19 -1
- package/assets/skills/oat-project-review-receive/SKILL.md +37 -12
- package/assets/skills/oat-project-review-receive-remote/SKILL.md +7 -3
- package/assets/skills/oat-project-revise/SKILL.md +13 -5
- package/assets/skills/oat-project-spec/SKILL.md +8 -4
- package/assets/skills/oat-project-summary/SKILL.md +11 -7
- package/assets/skills/oat-repo-knowledge-index/SKILL.md +54 -20
- package/assets/skills/oat-repo-knowledge-index/scripts/refresh-owned.mjs +118 -0
- package/assets/skills/oat-review-provide/SKILL.md +7 -3
- package/assets/skills/oat-review-receive-remote/SKILL.md +14 -4
- package/assets/skills/oat-wave-execute/SKILL.md +24 -11
- package/assets/skills/oat-wave-execute/assets/wrapper-plan-template.md +16 -2
- package/assets/skills/oat-worktree-bootstrap-auto/SKILL.md +45 -17
- package/assets/templates/pjm-agents.md +38 -8
- package/assets/templates/repo-agents.md +5 -0
- package/assets/templates/repo-readme.md +5 -0
- package/dist/commands/backlog/archive.d.ts +3 -0
- package/dist/commands/backlog/archive.d.ts.map +1 -1
- package/dist/commands/backlog/archive.js +63 -26
- package/dist/commands/backlog/index.d.ts.map +1 -1
- package/dist/commands/backlog/index.js +3 -0
- package/dist/commands/backlog/rewrite-references.d.ts +5 -0
- package/dist/commands/backlog/rewrite-references.d.ts.map +1 -1
- package/dist/commands/backlog/rewrite-references.js +39 -1
- package/dist/commands/init/index.d.ts.map +1 -1
- package/dist/commands/init/index.js +1 -0
- package/dist/commands/init/tools/shared/skill-script-references.d.ts.map +1 -1
- package/dist/commands/init/tools/shared/skill-script-references.js +8 -1
- package/dist/commands/internal/commit-paths.d.ts +3 -0
- package/dist/commands/internal/commit-paths.d.ts.map +1 -0
- package/dist/commands/internal/commit-paths.js +31 -0
- package/dist/commands/internal/index.d.ts.map +1 -1
- package/dist/commands/internal/index.js +2 -0
- package/dist/commands/pjm/init.d.ts.map +1 -1
- package/dist/commands/pjm/init.js +37 -8
- package/dist/commands/project/archive/archive-utils.d.ts +6 -3
- package/dist/commands/project/archive/archive-utils.d.ts.map +1 -1
- package/dist/commands/project/archive/archive-utils.js +510 -104
- package/dist/commands/project/archive/push-runner.d.ts.map +1 -1
- package/dist/commands/project/archive/push-runner.js +1 -0
- package/dist/commands/project/log/append.d.ts +2 -3
- package/dist/commands/project/log/append.d.ts.map +1 -1
- package/dist/commands/project/log/append.js +125 -111
- package/dist/commands/project/migrate/index.d.ts +1 -2
- package/dist/commands/project/migrate/index.d.ts.map +1 -1
- package/dist/commands/project/migrate/index.js +8 -2
- package/dist/commands/project/new/scaffold.d.ts.map +1 -1
- package/dist/commands/project/new/scaffold.js +4 -4
- package/dist/commands/project/promote/promote.d.ts +8 -0
- package/dist/commands/project/promote/promote.d.ts.map +1 -1
- package/dist/commands/project/promote/promote.js +37 -6
- package/dist/commands/project/status.d.ts.map +1 -1
- package/dist/commands/project/status.js +3 -0
- package/dist/commands/project/sync/ref-sync.d.ts +12 -1
- package/dist/commands/project/sync/ref-sync.d.ts.map +1 -1
- package/dist/commands/project/sync/ref-sync.js +347 -23
- package/dist/commands/shared/agents-md-lock.d.ts +3 -0
- package/dist/commands/shared/agents-md-lock.d.ts.map +1 -0
- package/dist/commands/shared/agents-md-lock.js +130 -0
- package/dist/commands/shared/agents-md.d.ts.map +1 -1
- package/dist/commands/shared/agents-md.js +26 -8
- package/dist/commands/shared/exact-path-commit.d.ts +32 -0
- package/dist/commands/shared/exact-path-commit.d.ts.map +1 -0
- package/dist/commands/shared/exact-path-commit.js +691 -0
- package/dist/validation/skills.d.ts.map +1 -1
- package/dist/validation/skills.js +138 -11
- package/package.json +3 -2
|
@@ -11,6 +11,25 @@ mid-run user input. It defines the activation signal, boundary behavior,
|
|
|
11
11
|
provenance requirements, and the inventory of interactive gates that an
|
|
12
12
|
autonomous caller must resolve.
|
|
13
13
|
|
|
14
|
+
## Exact-path commit ownership
|
|
15
|
+
|
|
16
|
+
Autonomous parent-branch bookkeeping and task commits use the shared
|
|
17
|
+
`oat internal commit-paths` primitive with an exact producer-owned file list,
|
|
18
|
+
message and stable unique operation/task identity. Capture the list when files
|
|
19
|
+
are created, changed, removed or renamed; retain it and the identity through
|
|
20
|
+
hook formatting and resumable retries. Include both rename sides and tracked
|
|
21
|
+
removals; omit ignored local outputs. Never infer ownership from unrelated
|
|
22
|
+
staging or pass directories for the helper to expand.
|
|
23
|
+
|
|
24
|
+
Verify `oat internal commit-paths --help` before the first commit. A missing
|
|
25
|
+
command stops execution with CLI-update guidance; blocked/failed outcomes stop
|
|
26
|
+
with their receipt and diagnostic. There is no staged-index or pathspec-only
|
|
27
|
+
fallback. Ordinary hooks remain enabled; a validated smoke child retains its
|
|
28
|
+
launcher-owned hook policy on the same primitive. Synced project artifacts
|
|
29
|
+
continue through scope-resolved `oat project push`, with scope/push failures
|
|
30
|
+
stopping bookkeeping. This ownership contract applies to the lifecycle sites
|
|
31
|
+
in the vendored inventory below.
|
|
32
|
+
|
|
14
33
|
## Activation and lifetime
|
|
15
34
|
|
|
16
35
|
Autonomy is active only when the current process environment contains the exact
|
|
@@ -65,6 +84,25 @@ Operational, validation, correlation, malformed or contradictory envelope,
|
|
|
65
84
|
launch, and receive failures are boundary stops regardless of `onFailure`.
|
|
66
85
|
None can continue under `warn` or produce an allowed disposition.
|
|
67
86
|
|
|
87
|
+
## Kickoff disclosure
|
|
88
|
+
|
|
89
|
+
The autonomous caller must read the owning recovery, gate and dispatch
|
|
90
|
+
contracts before execution and disclose effective project/phase limits, their
|
|
91
|
+
source/override, prior durable usage, remaining capacity and reconciled pending
|
|
92
|
+
attempts. `oat-project-autonomous` owns the kickoff report; phase dispatch and
|
|
93
|
+
resume refresh it from `state.md` using the phase-execution contract.
|
|
94
|
+
|
|
95
|
+
Capacity is not permission. A failed recovery attempt is terminal even when
|
|
96
|
+
allowance remains; continuing after failure requires a separate future policy.
|
|
97
|
+
Report all applicable owning stops: eligibility/proof failure, new-attempt
|
|
98
|
+
budget exhaustion, malformed ledger or unresolved pending attempt, exact-target
|
|
99
|
+
or accepted-launch failure, configured blocking reviews, missing credentials,
|
|
100
|
+
repository authority, product judgment, destructive risk and inventory gaps.
|
|
101
|
+
Route retries, recovery events/attempts, warnings and review/gate budgets have
|
|
102
|
+
separate meanings. Neither a counter nor a warning overrides a stop or grants
|
|
103
|
+
recovery permission. Existing failure dispositions and gate policies remain
|
|
104
|
+
authoritative.
|
|
105
|
+
|
|
68
106
|
## Boundary classes
|
|
69
107
|
|
|
70
108
|
| Class | Required behavior |
|
|
@@ -241,16 +279,16 @@ remains immutable baseline evidence for the original p01-t01 verification.
|
|
|
241
279
|
|
|
242
280
|
| Skill root / file | Stable prompt-site mappings |
|
|
243
281
|
| -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
244
|
-
| `oat-project-new/SKILL.md` | `f7ca8635452f -> NG`; `
|
|
245
|
-
| `oat-project-quick-start/SKILL.md` | `3d101cb200b3 -> NG`; `c493a38b89f2 -> QS-04`; `655d61df0a8f -> NG`; `
|
|
282
|
+
| `oat-project-new/SKILL.md` | `f7ca8635452f -> NG`; `93afef50c96b -> NG`; `1af4957a1af2 -> NEW-01`; `45b699c1c0b5 -> NEW-01`; `ba6d120791c1 -> NEW-01`; `33ce6a6c30aa -> NEW-02`; `0f5a90f34f63 -> NG`; `d0ea3a91261d -> NG` |
|
|
283
|
+
| `oat-project-quick-start/SKILL.md` | `3d101cb200b3 -> NG`; `c493a38b89f2 -> QS-04`; `655d61df0a8f -> NG`; `81fde4589fa0 -> NG`; `1af4957a1af2 -> QS-01`; `141d0a20099b -> QS-01`; `45b699c1c0b5 -> QS-01`; `ba6d120791c1 -> QS-01`; `1a5ee85164ff -> QS-02`; `af8e2bea90d7 -> QS-04`; `a823cf5aeaec -> QS-04`; `7753dc323083 -> QS-04`; `1f557da5e03c -> QS-04`; `1564ca151111 -> NG`; `c24787334ade -> QS-05`; `021ba03c82c5 -> QS-05`; `5d1a9d1b661d -> QS-05`; `318f304ee3b3 -> QS-05`; `cc700d4d2cab -> QS-05`; `7ef6aa642400 -> QS-05`; `4d389b234556 -> QS-05`; `84c506dac106 -> QS-05`; `caf7622a2e02 -> QS-05`; `8917190b2e98 -> QS-06`; `5a028d846aa5 -> QS-06`; `b1d92192b8ca -> QS-06`; `bdbb18955cc4 -> QS-06`; `6d159a2e8f8e -> QS-06`; `61a9849f4dfc -> QS-06`; `31cb92052ea6 -> QS-06`; `ed1ed94c6d32 -> QS-07`; `1b4d962822b2 -> QS-07`; `1c37d3834054 -> QS-07`; `2cb069a2590b -> NG`; `fd0aff270853 -> NG`; `a114b27f8b4b -> NG`; `77dc8e1b728a -> QS-08`; `d3e3fba65b96 -> QS-09`; `71c2a0ba99bf -> QS-09`; `f47f9f9c0d03 -> QS-09`; `224a4b43fb29 -> QS-10`; `744f130d4116 -> QS-12`; `bee4c4aa34c6 -> NG`; `3f0b53056edd -> QS-12`; `857e91aa3095 -> NG`; `b4af2220eb91 -> QS-12` |
|
|
246
284
|
| `oat-project-lite/SKILL.md` | `f7ca8635452f -> NG`; `ccb52f3fe44f -> NG`; `d09c1d63de1e -> NG`; `74b3049abec0 -> NG`; `973d0ae8a3dc -> NG`; `2d41ff5e5312 -> NG`; `5d4905b0be0c -> NG`; `f83829edf0a9 -> LITE-03`; `1515a1f4cded -> LITE-03`; `d0ff7aed2105 -> NG`; `22a862d34014 -> NG`; `3f5d2168fae3 -> LITE-05`; `c42b996db4f1 -> LITE-05`; `b2f7560edf76 -> LITE-05`; `92d354802e4c -> LITE-05`; `ccd2225b1a37 -> LITE-05`; `89266e7d2643 -> NG`; `b018d0fc3536 -> LITE-09`; `e2d7d177f04e -> LITE-09`; `60db88220f98 -> NG`; `43ae7872602f -> NG` |
|
|
247
285
|
| `oat-project-lite/SKILL.md` | `b8a40746b272 -> NG`; `090e205f5959 -> LITE-10` |
|
|
248
286
|
| `oat-project-quick-start/references/docs/autonomy-contract.md` | `* -> NG` |
|
|
249
287
|
| `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`; `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`; `
|
|
288
|
+
| `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`; `4f53e61a9df5 -> 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
289
|
| `oat-project-design/references/selective-review-pass.md` | `d4956192b82e -> DES-06`; `7d6e1f926ecb -> DES-06`; `04f918a5fcac -> DES-07` |
|
|
252
290
|
| `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
|
-
| `oat-project-import-plan/SKILL.md` | `f7ca8635452f -> NG`; `c2e5fa410069 -> NG`; `655d61df0a8f -> NG`; `
|
|
291
|
+
| `oat-project-import-plan/SKILL.md` | `f7ca8635452f -> NG`; `c2e5fa410069 -> NG`; `655d61df0a8f -> NG`; `4c47bc965ad9 -> NG`; `1af4957a1af2 -> IMPORT-01`; `45b699c1c0b5 -> IMPORT-01`; `ba6d120791c1 -> IMPORT-01`; `070ebc5259af -> IMPORT-03`; `c11552696e2e -> IMPORT-03`; `9727e7ffb5cb -> IMPORT-04`; `959ec0019ee5 -> IMPORT-04`; `9b8eab171295 -> 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
292
|
| `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
293
|
| `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` |
|
|
256
294
|
| `oat-project-implement/references/dispatch-and-dry-run.md` | `21b85f5e4daa -> IMPLEMENT-08`; `74c92b32bb2a -> IMPLEMENT-08`; `8efd2d0517ab -> IMPLEMENT-09`; `461ed9b3e495 -> IMPLEMENT-09`; `b5ad64fd744d -> NG`; `14ce436cfffa -> NG`; `043ca36da3e2 -> NG`; `a23e45c1dc8d -> NG`; `498143bb41a7 -> NG`; `4fe3eb179023 -> NG`; `7f75485e5a33 -> NG`; `8ec3a96df029 -> NG`; `16c3f96e758d -> NG`; `5915c41fe058 -> NG`; `f51e43eeac56 -> NG`; `fd41c25623cb -> NG`; `58a932ed6453 -> NG`; `4718bd3ce12d -> NG`; `58c444a2126b -> NG`; `e75df892b55c -> NG`; `8ba5dbd2a0d8 -> NG`; `4d6c519131e5 -> NG` |
|
|
@@ -264,7 +302,7 @@ remains immutable baseline evidence for the original p01-t01 verification.
|
|
|
264
302
|
| `oat-project-pr-final/references/docs/autonomy-contract.md` | `* -> NG` |
|
|
265
303
|
| `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` |
|
|
266
304
|
| `oat-project-review-provide/SKILL.md` | `1f4b981cac8b -> NG`; `adaeca152bb2 -> NG`; `2f7c201c3c06 -> NG`; `88f79700afdc -> NG`; `655d61df0a8f -> NG`; `efafde9ef5a0 -> NG`; `d2a3861d6323 -> REVIEWPROVIDE-02`; `65f5b9cf49cd -> REVIEWPROVIDE-04`; `962cb38d246a -> REVIEWPROVIDE-04`; `1a568483ba0b -> REVIEWPROVIDE-04`; `610e27edfe85 -> REVIEWPROVIDE-04`; `bb0096e95c47 -> REVIEWPROVIDE-06`; `55f6357a987d -> REVIEWPROVIDE-06`; `1bee61f8531c -> REVIEWPROVIDE-07`; `3d35091607a1 -> REVIEWPROVIDE-08`; `fb40c4341c4c -> NG`; `b22d16885150 -> NG`; `d2b25906242e -> REVIEWPROVIDE-08`; `fd8ebf72b3c4 -> NG`; `79c8103e8656 -> NG`; `4fbd78337e33 -> NG`; `c3d50ea7cf69 -> NG`; `09b1b8dd445c -> NG`; `7acc8f3718d2 -> REVIEWPROVIDE-09`; `b2fa883fc4a2 -> NG`; `fe4421531b4c -> NG` |
|
|
267
|
-
| `oat-project-review-receive/SKILL.md` | `9b8a3743d626 -> NG`; `49ed2780983b -> NG`; `4ee8730382d3 -> NG`; `655d61df0a8f -> NG`; `765f897d67ac -> NG`; `53b58d16dd32 -> NG`; `fb8755a3bdf4 -> NG`; `1d710fb4cc66 -> NG`; `1f7dd98dff2f -> NG`; `56f78c6740e6 -> NG`; `76f5fb5a88cd -> NG`; `085abfa3599f -> REVIEWRECEIVE-01`; `92578f7df686 -> NG`; `a7d114059bb6 -> NG`; `ac88cfaa83d9 -> NG`; `594bbf70346c -> REVIEWRECEIVE-08`; `f31f07284718 -> REVIEWRECEIVE-02`; `e4c0625439f8 -> REVIEWRECEIVE-04`; `505ad8389c0a -> REVIEWRECEIVE-05`; `20e05e1a4381 -> REVIEWRECEIVE-06`; `
|
|
305
|
+
| `oat-project-review-receive/SKILL.md` | `9b8a3743d626 -> NG`; `49ed2780983b -> NG`; `4ee8730382d3 -> NG`; `655d61df0a8f -> NG`; `765f897d67ac -> NG`; `53b58d16dd32 -> NG`; `fb8755a3bdf4 -> NG`; `1d710fb4cc66 -> NG`; `1f7dd98dff2f -> NG`; `56f78c6740e6 -> NG`; `76f5fb5a88cd -> NG`; `085abfa3599f -> REVIEWRECEIVE-01`; `92578f7df686 -> NG`; `a7d114059bb6 -> NG`; `ac88cfaa83d9 -> NG`; `594bbf70346c -> REVIEWRECEIVE-08`; `f31f07284718 -> REVIEWRECEIVE-02`; `e4c0625439f8 -> REVIEWRECEIVE-04`; `505ad8389c0a -> REVIEWRECEIVE-05`; `20e05e1a4381 -> REVIEWRECEIVE-06`; `e30e06f39281 -> REVIEWRECEIVE-07`; `f8fd58180ecf -> NG`; `c3abcdc02d9f -> NG`; `f2ebdd6abb9b -> NG` |
|
|
268
306
|
| `oat-project-review-provide/SKILL.md` | `2e794bf4fc4a -> REVIEWPROVIDE-08`; `5441ab977b46 -> REVIEWPROVIDE-08` |
|
|
269
307
|
| `oat-project-review-provide/SKILL.md` | `f4238ebb1887 -> NG`; `0360fa2db9a5 -> NG` |
|
|
270
308
|
| `oat-project-implement/references/phase-execution.md` | `b31a9a4e6f75 -> NG` |
|
|
@@ -277,7 +315,7 @@ remains immutable baseline evidence for the original p01-t01 verification.
|
|
|
277
315
|
| `oat-dispatch-subagents/references/record-schema.md` | `78f8069274a8 -> NG`; `1c9a84c4d1e0 -> NG`; `2a63da6e3a96 -> NG`; `30762d53b043 -> NG`; `66bc2f0d4fda -> NG` |
|
|
278
316
|
| `oat-project-dispatch-subagents/SKILL.md` | `eca03ad1ca12 -> PDISPATCH-01`; `59fbcdc79cea -> PDISPATCH-01` |
|
|
279
317
|
| `oat-project-plan/SKILL.md` | `f99e44b39932 -> PLAN-12`; `7e6a9854504b -> NG` |
|
|
280
|
-
| `oat-project-complete/SKILL.md` | `0177956707aa -> NG`; `
|
|
318
|
+
| `oat-project-complete/SKILL.md` | `0177956707aa -> NG`; `1234c29d1999 -> NG`; `3c0b26f0ff1c -> NG`; `8cc1fa5aab1e -> COMPLETE-01`; `4c209fbb4716 -> COMPLETE-01`; `02e4175e1171 -> COMPLETE-01`; `d698d4f98e76 -> COMPLETE-01`; `9f86a7218d93 -> COMPLETE-01`; `024713698d9a -> COMPLETE-01`; `c327995053fa -> COMPLETE-01`; `61f81d4ec7c1 -> COMPLETE-01`; `14fb2e56809f -> COMPLETE-01`; `7d4ff668744d -> COMPLETE-01`; `502a6c141784 -> COMPLETE-01`; `fb7e2db356af -> COMPLETE-01`; `f73f8476360a -> NG`; `1e15f420039f -> NG`; `cc234032ddd7 -> NG`; `1dd54687229b -> NG`; `fc05c8303cd2 -> NG`; `24be721d635e -> NG` |
|
|
281
319
|
| `oat-project-lite/references/docs/autonomy-contract.md` | `* -> NG` |
|
|
282
320
|
| `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` |
|
|
283
321
|
| `oat-project-quick-start/SKILL.md` | `aa560418765a -> QS-13`; `40ddcac880ef -> NG` |
|
|
@@ -127,6 +127,20 @@ Optional third-tier readiness is not a preflight blocker. Codex depth two may be
|
|
|
127
127
|
provisioned as capability, but default phase execution requires only the root →
|
|
128
128
|
phase-agent depth.
|
|
129
129
|
|
|
130
|
+
#### Disclose Resolved Phase Capacity
|
|
131
|
+
|
|
132
|
+
Before dispatch and on resume, report the effective project default and phase
|
|
133
|
+
limit, source/override, prior durable `used_attempts`, remaining capacity
|
|
134
|
+
`max(0, phase_recovery_limit - used_attempts)`, and reconciled `pending_attempt`.
|
|
135
|
+
Use the owning policy resolution above; do not introduce another default.
|
|
136
|
+
Refresh the autonomous kickoff disclosure with these values and every
|
|
137
|
+
applicable recovery, dispatch, review and repository stop.
|
|
138
|
+
|
|
139
|
+
Capacity is not permission: a failed-attempt remains terminal even when
|
|
140
|
+
allowance remains. Separate route retries, recovery events, consumed attempts,
|
|
141
|
+
review-fix rounds and gate attempts; the warning at three recovery events
|
|
142
|
+
changes none of their limits or eligibility rules.
|
|
143
|
+
|
|
130
144
|
#### Dedicated Phase Recovery Contract
|
|
131
145
|
|
|
132
146
|
This contract covers only a post-commit defect discovered by declared task,
|
|
@@ -965,9 +979,9 @@ PROJECT_SCOPE=$(oat project scope "{PROJECT_PATH}" --format value) || { echo "oa
|
|
|
965
979
|
if [ "$PROJECT_SCOPE" = "synced" ]; then
|
|
966
980
|
oat project push "{PROJECT_PATH}" --message "chore(oat): record {pNN} task ledger before review" || { echo "oat: project push failed; run oat project pull, resolve the reported state, and retry" >&2; exit 1; }
|
|
967
981
|
else
|
|
968
|
-
|
|
969
|
-
[ -f {PROJECT_PATH}/project-log.md ] &&
|
|
970
|
-
|
|
982
|
+
OWNED_COMMIT_PATHS=({PROJECT_PATH}/implementation.md {PROJECT_PATH}/state.md {PROJECT_PATH}/plan.md)
|
|
983
|
+
[ -f {PROJECT_PATH}/project-log.md ] && OWNED_COMMIT_PATHS+=({PROJECT_PATH}/project-log.md)
|
|
984
|
+
oat internal commit-paths --identity "${COMMIT_IDENTITY:?set once and retain for retries}:oat-project-implement:phase-execution:1" --message "chore(oat): record {pNN} task ledger before review" -- "${OWNED_COMMIT_PATHS[@]}" || exit 1
|
|
971
985
|
fi
|
|
972
986
|
```
|
|
973
987
|
|
|
@@ -1023,9 +1037,9 @@ PROJECT_SCOPE=$(oat project scope "{PROJECT_PATH}" --format value) || { echo "oa
|
|
|
1023
1037
|
if [ "$PROJECT_SCOPE" = "synced" ]; then
|
|
1024
1038
|
oat project push "{PROJECT_PATH}" --message "chore(oat): bookkeeping after {pNN} {pass|fail}" || { echo "oat: project push failed; run oat project pull, resolve the reported state, and retry" >&2; exit 1; }
|
|
1025
1039
|
else
|
|
1026
|
-
|
|
1027
|
-
[ -f {PROJECT_PATH}/project-log.md ] &&
|
|
1028
|
-
|
|
1040
|
+
OWNED_COMMIT_PATHS=({PROJECT_PATH}/implementation.md {PROJECT_PATH}/state.md {PROJECT_PATH}/plan.md)
|
|
1041
|
+
[ -f {PROJECT_PATH}/project-log.md ] && OWNED_COMMIT_PATHS+=({PROJECT_PATH}/project-log.md)
|
|
1042
|
+
oat internal commit-paths --identity "${COMMIT_IDENTITY:?set once and retain for retries}:oat-project-implement:phase-execution:2" --message "chore(oat): bookkeeping after {pNN} {pass|fail}" -- "${OWNED_COMMIT_PATHS[@]}" || exit 1
|
|
1029
1043
|
fi
|
|
1030
1044
|
```
|
|
1031
1045
|
|
|
@@ -7,7 +7,7 @@ disable-model-invocation: true
|
|
|
7
7
|
user-invocable: true
|
|
8
8
|
allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion
|
|
9
9
|
metadata:
|
|
10
|
-
version: 1.4.
|
|
10
|
+
version: 1.4.20
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Import External Plan
|
|
@@ -21,6 +21,10 @@ adoption, the project named ceiling, the `Shared Phase Gate Review Setup Contrac
|
|
|
21
21
|
and the rule that readiness and completion follow only after a durable review
|
|
22
22
|
disposition. It does not add a separate provider-plan prompt.
|
|
23
23
|
|
|
24
|
+
## Hook-safe exact-path commits
|
|
25
|
+
|
|
26
|
+
Before a parent-branch commit, verify `oat internal commit-paths --help` succeeds. If unavailable, stop and update the OAT CLI; never fall back to a staged-index or pathspec-only commit. Set `COMMIT_IDENTITY` to a unique operation/artifact identity before the first attempt and retain it for every retry; use a new identity for a new operation. Pass only the exact produced file list, including tracked removals and both names of a rename. A blocked/failed result stops the workflow; retain its receipt and follow its diagnostics. Hooks remain enabled. Synced project artifacts continue through `oat project push`.
|
|
27
|
+
|
|
24
28
|
## Prerequisites
|
|
25
29
|
|
|
26
30
|
- External plan exists as a local markdown file.
|
|
@@ -82,7 +86,7 @@ When executing this skill, provide lightweight progress feedback so the user can
|
|
|
82
86
|
Before scaffolding, surface the working tree state so unrelated changes don't get carried into the project workflow's bookkeeping commits.
|
|
83
87
|
|
|
84
88
|
1. Run `git status --porcelain`. If empty, continue silently to the next step.
|
|
85
|
-
2. If `.oat/sync/manifest.json` is the only entry **and** its two-character status code is either `??` or made up solely of the letter `M` and blanks — a plain modification, staged, unstaged, or both — commit it without asking: `
|
|
89
|
+
2. If `.oat/sync/manifest.json` is the only entry **and** its two-character status code is either `??` or made up solely of the letter `M` and blanks — a plain modification, staged, unstaged, or both — commit it without asking: `oat internal commit-paths --identity "${COMMIT_IDENTITY:?set once and retain for retries}:oat-project-import-plan:1" --message "chore: run sync" -- .oat/sync/manifest.json`. Report the commit in one line and continue to the next step. That file is `oat sync` output and carries no user content, so the prompt below was always answered "commit now" for it. Every other code falls through to the prompt below, including any code that pairs `M` with something else: `MD` (deleted in the worktree), `MT` (type change), `AM`, `RM`, `CM`, and every unmerged state. Auto-staging one of those would commit a deletion, a retyped file, or a half-resolved merge. Any other dirty path, in any combination, also falls through.
|
|
86
90
|
3. Otherwise, present the dirty list to the user.
|
|
87
91
|
4. If `.oat/sync/manifest.json` or paths under `.claude/`, `.cursor/`, `.codex/` appear in the list, note: "These are generated by `oat sync` (often by `pnpm run worktree:init` or `oat-worktree-bootstrap-auto`) and are typically safe to commit as `chore: run sync`."
|
|
88
92
|
5. Offer three choices via `AskUserQuestion`:
|
|
@@ -157,7 +161,12 @@ Create references directory if missing:
|
|
|
157
161
|
|
|
158
162
|
```bash
|
|
159
163
|
mkdir -p "$PROJECT_PATH/references"
|
|
160
|
-
|
|
164
|
+
IMPORTED_REFERENCE_FILES=()
|
|
165
|
+
IMPORTED_REFERENCE_PATH="$PROJECT_PATH/references/imported-plan.md"
|
|
166
|
+
# When the default snapshot exists, choose the timestamped destination below
|
|
167
|
+
# before copying; never overwrite it without user confirmation.
|
|
168
|
+
cp "{source-path}" "$IMPORTED_REFERENCE_PATH" || exit 1
|
|
169
|
+
IMPORTED_REFERENCE_FILES+=("$IMPORTED_REFERENCE_PATH")
|
|
161
170
|
```
|
|
162
171
|
|
|
163
172
|
Never overwrite an existing source snapshot without user confirmation.
|
|
@@ -165,6 +174,11 @@ If already present, write timestamped copy:
|
|
|
165
174
|
|
|
166
175
|
- `references/imported-plan-YYYY-MM-DD-HHMM.md`
|
|
167
176
|
|
|
177
|
+
Set `IMPORTED_REFERENCE_PATH` to that exact destination before the copy and
|
|
178
|
+
append only the successfully created snapshot to `IMPORTED_REFERENCE_FILES`.
|
|
179
|
+
Retain this producer list through Step 6.5 and any retry; never substitute the
|
|
180
|
+
references directory or discover ownership from the staged index.
|
|
181
|
+
|
|
168
182
|
### Step 2.5: Snapshot Explicit Phase-Review Setting Before Plan Normalization
|
|
169
183
|
|
|
170
184
|
Before any template-based create, update, replacement, or normalization of
|
|
@@ -504,14 +518,14 @@ PROJECT_SCOPE=$(oat project scope "$PROJECT_PATH" --format value) || { echo "oat
|
|
|
504
518
|
if [ "$PROJECT_SCOPE" = "synced" ]; then
|
|
505
519
|
oat project push "$PROJECT_PATH" --message "chore(oat): update imported plan artifacts for {project-name}" || { echo "oat: project push failed; run oat project pull, resolve the reported state, and retry" >&2; exit 1; }
|
|
506
520
|
else
|
|
507
|
-
|
|
521
|
+
OWNED_COMMIT_PATHS=("${IMPORTED_REFERENCE_FILES[@]}")
|
|
508
522
|
for path in \
|
|
509
523
|
"$PROJECT_PATH/plan.md" \
|
|
510
524
|
"$PROJECT_PATH/implementation.md" \
|
|
511
525
|
"$PROJECT_PATH/state.md"; do
|
|
512
|
-
[ -e "$path" ] &&
|
|
526
|
+
[ -e "$path" ] && OWNED_COMMIT_PATHS+=("$path")
|
|
513
527
|
done
|
|
514
|
-
|
|
528
|
+
oat internal commit-paths --identity "${COMMIT_IDENTITY:?set once and retain for retries}:oat-project-import-plan:2" --message "chore(oat): update imported plan artifacts for {project-name}" -- "${OWNED_COMMIT_PATHS[@]}" || exit 1
|
|
515
529
|
fi
|
|
516
530
|
```
|
|
517
531
|
|
|
@@ -7,7 +7,7 @@ disable-model-invocation: true
|
|
|
7
7
|
user-invocable: true
|
|
8
8
|
allowed-tools: Read, Write, Bash, Glob, Grep, AskUserQuestion
|
|
9
9
|
metadata:
|
|
10
|
-
version: 1.1.
|
|
10
|
+
version: 1.1.8
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Lite Project
|
|
@@ -15,6 +15,10 @@ metadata:
|
|
|
15
15
|
Create or resume a project in **lite mode** and produce one approved,
|
|
16
16
|
single-phase `plan.md` for `oat-project-implement`.
|
|
17
17
|
|
|
18
|
+
## Hook-safe exact-path commits
|
|
19
|
+
|
|
20
|
+
Before a parent-branch commit, verify `oat internal commit-paths --help` succeeds. If unavailable, stop and update the OAT CLI; never fall back to a staged-index or pathspec-only commit. Set `COMMIT_IDENTITY` to a unique operation/artifact identity before the first attempt and retain it for every retry; use a new identity for a new operation. Pass only the exact produced file list, including tracked removals and both names of a rename. A blocked/failed result stops the workflow; retain its receipt and follow its diagnostics. Hooks remain enabled. Synced project artifacts continue through `oat project push`.
|
|
21
|
+
|
|
18
22
|
## Prerequisites
|
|
19
23
|
|
|
20
24
|
- A repository initialized for OAT (`.oat/` and `.agents/` exist).
|
|
@@ -100,9 +104,7 @@ Use these compact progress lines:
|
|
|
100
104
|
the gate passes or resolves.
|
|
101
105
|
- Before each scoped commit, resolve the project scope. Scope resolution fails
|
|
102
106
|
closed. A synced project uses `oat project push` with the same message;
|
|
103
|
-
another scope uses
|
|
104
|
-
"$PROJECT_PATH/state.md" "$PROJECT_PATH/implementation.md"` followed by a
|
|
105
|
-
commit when the index is non-empty. Never stage unrelated paths.
|
|
107
|
+
another scope uses `oat internal commit-paths --identity "${COMMIT_IDENTITY:?set once and retain for retries}:oat-project-lite:1" --message "$BOOKKEEPING_MESSAGE" -- "$PROJECT_PATH/plan.md" "$PROJECT_PATH/state.md" "$PROJECT_PATH/implementation.md"` and stops on a nonzero exit. Set the same bookkeeping message and a distinct operation identity for each lifecycle write; retain both for retries. Never include unrelated paths.
|
|
106
108
|
|
|
107
109
|
## Artifact Hygiene
|
|
108
110
|
|
|
@@ -122,7 +124,7 @@ get carried into the project workflow's bookkeeping commits.
|
|
|
122
124
|
2. If `.oat/sync/manifest.json` is the only entry **and** its two-character
|
|
123
125
|
status code is either `??` or made up solely of the letter `M` and blanks —
|
|
124
126
|
a plain modification, staged, unstaged, or both — commit it without asking:
|
|
125
|
-
`
|
|
127
|
+
`oat internal commit-paths --identity "${COMMIT_IDENTITY:?set once and retain for retries}:oat-project-lite:2" --message "chore: run sync" -- .oat/sync/manifest.json`.
|
|
126
128
|
Report the commit and continue. Every other code falls through, including
|
|
127
129
|
`MD`, `MT`, `AM`, `RM`, `CM`, and every unmerged state.
|
|
128
130
|
3. Otherwise, present the dirty list to the user and offer commit now, proceed
|