@open-agent-toolkit/cli 0.2.72 → 0.2.74
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-reviewer.md +4 -3
- package/assets/agents/recon-worker.md +42 -8
- package/assets/bundle-metadata.json +1 -1
- package/assets/docs/cli-utilities/configuration.md +3 -56
- package/assets/docs/cli-utilities/tool-packs.md +4 -4
- package/assets/docs/contributing/code.md +2 -2
- package/assets/docs/contributing/index.md +0 -1
- package/assets/docs/reference/cli-reference.md +1 -1
- package/assets/docs/reference/troubleshooting.md +17 -40
- package/assets/docs/workflows/projects/artifacts.md +16 -34
- package/assets/docs/workflows/projects/lifecycle.md +20 -19
- package/assets/docs/workflows/skills/explainer-kit.md +180 -440
- package/assets/docs/workflows/skills/index.md +1 -2
- package/assets/docs/workflows/skills/recon.md +114 -23
- package/assets/public-package-versions.json +4 -4
- package/assets/skills/explainer-kit/SKILL.md +96 -171
- package/assets/skills/explainer-kit/recipes/engineer-tour.json +1 -22
- package/assets/skills/explainer-kit/recipes/program-recap.json +1 -29
- package/assets/skills/explainer-kit/recipes/project-explainer.json +1 -22
- package/assets/skills/explainer-kit/recipes/project-recap.v2.json +1 -43
- package/assets/skills/explainer-kit/references/fact-base-contract.md +76 -101
- package/assets/skills/explainer-kit/references/recap-authoring.md +99 -0
- package/assets/skills/explainer-kit/schemas/manifest.schema.json +13 -135
- package/assets/skills/explainer-kit/scripts/bundle.mjs +712 -0
- package/assets/skills/explainer-kit/scripts/lib/claim-subject.mjs +40 -0
- package/assets/skills/explainer-kit/scripts/lib/contracts.mjs +113 -1504
- package/assets/skills/explainer-kit/scripts/lib/failure.mjs +13 -0
- package/assets/skills/explainer-kit/scripts/lib/package-coverage.mjs +57 -403
- package/assets/skills/explainer-kit/scripts/lib/qa-result.mjs +168 -0
- package/assets/skills/explainer-kit/scripts/lib/qa.mjs +90 -488
- package/assets/skills/explainer-kit/scripts/lib/recipes.mjs +28 -545
- package/assets/skills/explainer-kit/scripts/lib/run-package.mjs +120 -0
- package/assets/skills/explainer-kit/scripts/lib/sanitize.mjs +42 -0
- package/assets/skills/explainer-kit/scripts/record.mjs +335 -0
- package/assets/skills/explainer-kit/scripts/verify.mjs +648 -0
- package/assets/skills/oat-explainer-kit/SKILL.md +57 -117
- package/assets/skills/oat-explainer-kit/references/config-contract.md +20 -64
- package/assets/skills/oat-explainer-kit/references/lifecycle-contract.md +85 -237
- package/assets/skills/oat-explainer-kit/scripts/bind-project-sources.mjs +18 -10
- package/assets/skills/oat-explainer-kit/scripts/check-core.mjs +1 -0
- package/assets/skills/oat-explainer-kit/scripts/check-terminal-outcome.mjs +256 -21
- package/assets/skills/oat-explainer-kit/scripts/persist-intent.mjs +82 -3
- package/assets/skills/oat-explainer-kit/scripts/resolve-config.mjs +0 -162
- package/assets/skills/oat-explainer-kit/scripts/resolve-intent.mjs +57 -123
- package/assets/skills/oat-project-autonomous/SKILL.md +14 -13
- package/assets/skills/oat-project-autonomous/references/gate-inventory.md +165 -165
- package/assets/skills/oat-project-complete/SKILL.md +168 -349
- package/assets/skills/oat-project-complete/scripts/consume-persisted-recap-intent.mjs +125 -0
- package/assets/skills/oat-project-complete/scripts/execute-synced-archive-entry.mjs +0 -30
- package/assets/skills/oat-project-complete/scripts/parse-completion-retry-fields.mjs +4 -37
- package/assets/skills/oat-project-complete/scripts/parse-synced-archive-resume-fields.mjs +17 -16
- package/assets/skills/oat-project-complete/scripts/recover-completion-receipts.mjs +9 -174
- package/assets/skills/oat-project-complete/scripts/resolve-completion-retry.mjs +1 -2
- package/assets/skills/oat-project-document/SKILL.md +1 -1
- package/assets/skills/oat-project-document/references/docs/autonomy-contract.md +165 -165
- package/assets/skills/oat-project-implement/SKILL.md +1 -1
- package/assets/skills/oat-project-implement/references/completion-and-closeout.md +44 -56
- package/assets/skills/oat-project-implement/references/docs/autonomy-contract.md +165 -165
- package/assets/skills/oat-project-lite/SKILL.md +1 -1
- package/assets/skills/oat-project-lite/references/docs/autonomy-contract.md +165 -165
- package/assets/skills/oat-project-plan/SKILL.md +5 -6
- package/assets/skills/oat-project-pr-final/SKILL.md +1 -1
- package/assets/skills/oat-project-pr-final/references/docs/autonomy-contract.md +165 -165
- package/assets/skills/oat-project-quick-start/SKILL.md +1 -1
- package/assets/skills/oat-project-quick-start/references/docs/autonomy-contract.md +165 -165
- package/assets/skills/oat-project-review-receive/SKILL.md +14 -1
- package/assets/skills/oat-project-summary/SKILL.md +35 -25
- package/assets/skills/oat-wave-execute/SKILL.md +11 -36
- package/assets/skills/oat-wave-program/SKILL.md +13 -37
- package/assets/skills/recon/SKILL.md +103 -40
- package/assets/skills/recon/references/packet-contract.md +150 -67
- package/assets/skills/recon/references/profiles.md +38 -16
- package/assets/skills/recon/references/worker-contract.md +39 -8
- package/assets/skills/recon/scripts/lib/contracts.mjs +703 -55
- package/assets/skills/recon/scripts/lib/routing.mjs +588 -0
- package/assets/skills/recon/scripts/lib/validated-run.mjs +2 -0
- package/assets/skills/recon/scripts/prepare-routing.mjs +88 -0
- package/assets/skills/recon/scripts/render-packet.mjs +69 -1
- package/assets/skills/recon/scripts/validate-packet.mjs +473 -56
- package/assets/skills/subagent-orchestration/SKILL.md +18 -9
- package/assets/skills/subagent-orchestration/references/model-selection-principles.md +17 -8
- package/dist/commands/config/index.d.ts.map +1 -1
- package/dist/commands/config/index.js +9 -113
- package/dist/commands/project/archive/archive-utils.d.ts.map +1 -1
- package/dist/commands/project/archive/archive-utils.js +32 -184
- package/dist/commands/project/archive/explainer-package-coverage.d.ts +3 -8
- package/dist/commands/project/archive/explainer-package-coverage.d.ts.map +1 -1
- package/dist/commands/project/archive/explainer-package-coverage.js +1 -1
- package/dist/config/oat-config.d.ts +0 -11
- package/dist/config/oat-config.d.ts.map +1 -1
- package/dist/config/oat-config.js +0 -34
- package/dist/config/resolve.d.ts.map +1 -1
- package/dist/config/resolve.js +0 -8
- package/dist/release/public-package-contract.d.ts.map +1 -1
- package/dist/release/public-package-contract.js +2 -10
- package/dist/validation/project-state.d.ts.map +1 -1
- package/dist/validation/project-state.js +42 -3
- package/package.json +2 -2
- package/assets/docs/contributing/explainer-kit-verification.md +0 -133
- package/assets/docs/workflows/skills/explainer-kit-providers.md +0 -155
- package/assets/skills/explainer-kit/briefs/deep-dive.md +0 -35
- package/assets/skills/explainer-kit/briefs/project-page.md +0 -38
- package/assets/skills/explainer-kit/briefs/supporting-diagram.md +0 -28
- package/assets/skills/explainer-kit/briefs/walkthrough-deck.md +0 -35
- package/assets/skills/explainer-kit/examples/project-explainer/content.md +0 -31
- package/assets/skills/explainer-kit/examples/project-explainer/fact-base.md +0 -22
- package/assets/skills/explainer-kit/examples/project-recap/content.md +0 -77
- package/assets/skills/explainer-kit/examples/project-recap/fact-base.json +0 -104
- package/assets/skills/explainer-kit/examples/project-recap/fact-base.md +0 -44
- package/assets/skills/explainer-kit/examples/theme-bundle.json +0 -87
- package/assets/skills/explainer-kit/recipes/project-recap.v1.json +0 -93
- package/assets/skills/explainer-kit/references/contracts.md +0 -324
- package/assets/skills/explainer-kit/references/destination-contract.md +0 -210
- package/assets/skills/explainer-kit/references/extension-contract.md +0 -80
- package/assets/skills/explainer-kit/references/golden-conformance.md +0 -80
- package/assets/skills/explainer-kit/references/visual-review.md +0 -71
- package/assets/skills/explainer-kit/schemas/author-request.v2.schema.json +0 -212
- package/assets/skills/explainer-kit/schemas/author-request.v3.schema.json +0 -241
- package/assets/skills/explainer-kit/schemas/author-result.v2.schema.json +0 -52
- package/assets/skills/explainer-kit/schemas/build-record.schema.json +0 -98
- package/assets/skills/explainer-kit/schemas/durability-evidence.schema.json +0 -53
- package/assets/skills/explainer-kit/schemas/publish-receipt.v1.schema.json +0 -97
- package/assets/skills/explainer-kit/schemas/publish-receipt.v2.schema.json +0 -215
- package/assets/skills/explainer-kit/schemas/publish-request.v1.schema.json +0 -32
- package/assets/skills/explainer-kit/schemas/publish-request.v2.schema.json +0 -34
- package/assets/skills/explainer-kit/schemas/run-request.schema.json +0 -147
- package/assets/skills/explainer-kit/schemas/set-plan.v1.schema.json +0 -149
- package/assets/skills/explainer-kit/schemas/terminal-evidence.v1.schema.json +0 -81
- package/assets/skills/explainer-kit/schemas/visual-review-evidence.v1.schema.json +0 -66
- package/assets/skills/explainer-kit/schemas/visual-review-request.v1.schema.json +0 -117
- package/assets/skills/explainer-kit/schemas/visual-review-result.v1.schema.json +0 -80
- package/assets/skills/explainer-kit/scripts/lib/catalog.mjs +0 -349
- package/assets/skills/explainer-kit/scripts/lib/content-approval.mjs +0 -418
- package/assets/skills/explainer-kit/scripts/lib/diagram.mjs +0 -514
- package/assets/skills/explainer-kit/scripts/lib/durability.mjs +0 -643
- package/assets/skills/explainer-kit/scripts/lib/fact-base.mjs +0 -664
- package/assets/skills/explainer-kit/scripts/lib/internal-references.mjs +0 -538
- package/assets/skills/explainer-kit/scripts/lib/markdown.mjs +0 -414
- package/assets/skills/explainer-kit/scripts/lib/publication-policy.mjs +0 -54
- package/assets/skills/explainer-kit/scripts/lib/records.mjs +0 -954
- package/assets/skills/explainer-kit/scripts/lib/render.mjs +0 -703
- package/assets/skills/explainer-kit/scripts/lib/s3-roots.mjs +0 -353
- package/assets/skills/explainer-kit/scripts/lib/s3-static.mjs +0 -759
- package/assets/skills/explainer-kit/scripts/lib/set-plan.mjs +0 -209
- package/assets/skills/explainer-kit/scripts/lib/source-backlinks.mjs +0 -218
- package/assets/skills/explainer-kit/scripts/lib/terminal-evidence.mjs +0 -157
- package/assets/skills/explainer-kit/scripts/lib/visual-review.mjs +0 -400
- package/assets/skills/explainer-kit/scripts/publish.mjs +0 -76
- package/assets/skills/explainer-kit/scripts/record-durability.mjs +0 -64
- package/assets/skills/explainer-kit/scripts/render-qa.mjs +0 -461
- package/assets/skills/explainer-kit/scripts/run.mjs +0 -3038
- package/assets/skills/explainer-kit/scripts/validate.mjs +0 -59
- package/assets/skills/oat-explainer-kit/references/author-callback.md +0 -53
- package/assets/skills/oat-explainer-kit/references/migration.md +0 -144
- package/assets/skills/oat-explainer-kit/references/visual-review-callback.md +0 -83
- package/assets/skills/oat-explainer-kit/scripts/derive-destination.mjs +0 -91
- package/assets/skills/oat-explainer-kit/scripts/finalize-tracked-run.mjs +0 -531
- package/assets/skills/oat-explainer-kit/scripts/probe-recap-seams.mjs +0 -371
- package/assets/skills/oat-explainer-kit/scripts/run.mjs +0 -905
- package/dist/commands/project/archive/explainer-source-backlinks.d.ts +0 -18
- package/dist/commands/project/archive/explainer-source-backlinks.d.ts.map +0 -1
- package/dist/commands/project/archive/explainer-source-backlinks.js +0 -27
- package/dist/commands/project/archive/explainer-terminal-evidence.d.ts +0 -29
- package/dist/commands/project/archive/explainer-terminal-evidence.d.ts.map +0 -1
- package/dist/commands/project/archive/explainer-terminal-evidence.js +0 -37
|
@@ -5,7 +5,7 @@ disable-model-invocation: false
|
|
|
5
5
|
user-invocable: true
|
|
6
6
|
allowed-tools: Read, Write, Bash(git:*), Bash(oat:*), Glob, Grep, AskUserQuestion
|
|
7
7
|
metadata:
|
|
8
|
-
version: 1.6.
|
|
8
|
+
version: 1.6.6
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
# Receive Review
|
|
@@ -82,6 +82,19 @@ When executing this skill, provide lightweight progress feedback so the user can
|
|
|
82
82
|
- Routing to oat-project-implement
|
|
83
83
|
- For `artifact` reviews: updating reviewed artifact files directly after user confirmation
|
|
84
84
|
|
|
85
|
+
## Review Artifact Ownership
|
|
86
|
+
|
|
87
|
+
The receiving/root agent reads the selected review artifact completely and
|
|
88
|
+
interprets every finding. Do not delegate review-artifact reading, parsing,
|
|
89
|
+
finding analysis, disposition judgment, or artifact edits to an explorer or
|
|
90
|
+
reconnaissance worker.
|
|
91
|
+
|
|
92
|
+
After the root has read the artifact, it may delegate a bounded inspection of
|
|
93
|
+
explicitly scoped related code or evidence when corroboration is useful. That
|
|
94
|
+
assignment must exclude the review artifact, return exact `file:line` evidence,
|
|
95
|
+
and leave finding analysis, disposition, and all lifecycle mutations with the
|
|
96
|
+
receiving/root agent.
|
|
97
|
+
|
|
85
98
|
## Artifact Hygiene
|
|
86
99
|
|
|
87
100
|
Artifact hygiene contract: Before finishing or committing, format every file you created or edited. Use the concrete write/fix formatting command supplied by the governing plan, task, or brief. If none is usable, discover the repository's documented write/fix command from applicable `AGENTS.md`/`CLAUDE.md` instructions and relevant package manifests; do not infer or hardcode a formatter. Prefer a file-scoped invocation when supported, and avoid rewriting unrelated files. If no command is discoverable, warn once with `no format command discovered in repo instructions; skipping`, then continue.
|
|
@@ -5,7 +5,7 @@ disable-model-invocation: false
|
|
|
5
5
|
user-invocable: true
|
|
6
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
|
|
7
7
|
metadata:
|
|
8
|
-
version: 1.5.
|
|
8
|
+
version: 1.5.6
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
# Project Summary
|
|
@@ -258,21 +258,21 @@ spec, or design artifacts.
|
|
|
258
258
|
|
|
259
259
|
**Non-lite section sources:**
|
|
260
260
|
|
|
261
|
-
| Section | Primary Sources
|
|
262
|
-
| ------------------------------ |
|
|
263
|
-
| Overview | discovery.md initial request, spec.md problem statement
|
|
264
|
-
| What Was Implemented | implementation.md task outcomes, plan.md phase structure
|
|
265
|
-
| Key Decisions | design.md decisions, implementation.md notes/decisions
|
|
266
|
-
| Design Deltas | implementation.md deviations table; review-received design drift notes
|
|
267
|
-
| Notable Challenges | implementation.md issues/blockers in task notes
|
|
268
|
-
| Tradeoffs Made | implementation.md decisions, design.md tradeoff sections
|
|
269
|
-
| Integration Notes | implementation.md notes about cross-cutting concerns
|
|
270
|
-
| Revision History | plan.md p-revN phases, implementation.md revision notes
|
|
271
|
-
| Follow-up Items | implementation.md deferred findings, plan.md deferred items
|
|
272
|
-
| Associated Issues | state.md `associated_issues` field
|
|
273
|
-
| Workflow Observations | project-log.md via `oat project log rollup` only
|
|
274
|
-
| Autonomous Execution Learnings | oat-execution-learnings.md dated entries
|
|
275
|
-
| Explainer Outcome | project-recap `manifest.json` and `
|
|
261
|
+
| Section | Primary Sources |
|
|
262
|
+
| ------------------------------ | ------------------------------------------------------------------------------ |
|
|
263
|
+
| Overview | discovery.md initial request, spec.md problem statement |
|
|
264
|
+
| What Was Implemented | implementation.md task outcomes, plan.md phase structure |
|
|
265
|
+
| Key Decisions | design.md decisions, implementation.md notes/decisions |
|
|
266
|
+
| Design Deltas | implementation.md deviations table; review-received design drift notes |
|
|
267
|
+
| Notable Challenges | implementation.md issues/blockers in task notes |
|
|
268
|
+
| Tradeoffs Made | implementation.md decisions, design.md tradeoff sections |
|
|
269
|
+
| Integration Notes | implementation.md notes about cross-cutting concerns |
|
|
270
|
+
| Revision History | plan.md p-revN phases, implementation.md revision notes |
|
|
271
|
+
| Follow-up Items | implementation.md deferred findings, plan.md deferred items |
|
|
272
|
+
| Associated Issues | state.md `associated_issues` field |
|
|
273
|
+
| Workflow Observations | project-log.md via `oat project log rollup` only |
|
|
274
|
+
| Autonomous Execution Learnings | oat-execution-learnings.md dated entries |
|
|
275
|
+
| Explainer Outcome | project-recap `manifest.json` and `qa/result.json`, or the recorded recap skip |
|
|
276
276
|
|
|
277
277
|
**Explainer Outcome (conditional):**
|
|
278
278
|
|
|
@@ -282,11 +282,11 @@ section with exactly one item. A run that happened uses the first form:
|
|
|
282
282
|
```markdown
|
|
283
283
|
## Explainer Outcome
|
|
284
284
|
|
|
285
|
-
- **project-recap:** {generated |
|
|
285
|
+
- **project-recap:** {generated | generated — needs review | failed} — `{run path}`{optional reason or cause}
|
|
286
286
|
```
|
|
287
287
|
|
|
288
|
-
A recap that
|
|
289
|
-
form, which has a reason and no run path:
|
|
288
|
+
A recap that did not run because persisted intent records a skip uses the
|
|
289
|
+
second form, which has a reason and no run path:
|
|
290
290
|
|
|
291
291
|
```markdown
|
|
292
292
|
## Explainer Outcome
|
|
@@ -294,11 +294,21 @@ form, which has a reason and no run path:
|
|
|
294
294
|
- **project-recap:** skipped — {skip reason}
|
|
295
295
|
```
|
|
296
296
|
|
|
297
|
-
Include exactly one concise item with its recipe
|
|
297
|
+
Include exactly one concise item with its recipe and run path or skip reason:
|
|
298
298
|
|
|
299
|
-
|
|
299
|
+
- `generated` for manifest outcome `built`;
|
|
300
|
+
- `generated — needs review` for `built-needs-review`, including the reason
|
|
301
|
+
from `qa/result.json`;
|
|
302
|
+
- `failed` for `failed` or `incomplete`, including the sanitized cause; and
|
|
303
|
+
- `skipped` only when persisted recap intent resolves to skip.
|
|
300
304
|
|
|
301
|
-
|
|
305
|
+
Use `manifest.json` and `qa/result.json` as the source of truth for a run, and
|
|
306
|
+
the persisted recap intent for a skip. Refresh the existing item instead of
|
|
307
|
+
appending a duplicate.
|
|
308
|
+
|
|
309
|
+
Omit `Explainer Outcome` only when no project-recap attempt and no persisted
|
|
310
|
+
recap skip exist. A failed or skipped recap remains visible as its own product
|
|
311
|
+
outcome; do not reinterpret it as project implementation failure.
|
|
302
312
|
|
|
303
313
|
**Autonomous Execution Learnings (conditional):**
|
|
304
314
|
|
|
@@ -652,6 +662,6 @@ Summary tracks: last task {task_id}, {N} revision phases
|
|
|
652
662
|
ledger graduation
|
|
653
663
|
- When the PJM tool pack is available, each Key Decision is promoted to a canonical `reference/decisions/DR-YYMMDD-slug` record via `oat decision new` (status `accepted`), deduped on the date-independent slug so re-runs never create duplicate records
|
|
654
664
|
- When the PJM tool pack is unavailable, decision promotion is skipped silently with no prompt
|
|
655
|
-
- A project-recap attempt or recorded
|
|
656
|
-
|
|
657
|
-
|
|
665
|
+
- A project-recap attempt or recorded skip appears once in a concise Explainer
|
|
666
|
+
Outcome section sourced from `manifest.json` and `qa/result.json`, or from the
|
|
667
|
+
persisted recap intent
|
|
@@ -6,7 +6,7 @@ disable-model-invocation: false
|
|
|
6
6
|
user-invocable: true
|
|
7
7
|
allowed-tools: Read, Write, Edit, Bash, Grep, Glob, Task
|
|
8
8
|
metadata:
|
|
9
|
-
version: 1.9.
|
|
9
|
+
version: 1.9.4
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# Execute a Wave of External Plans
|
|
@@ -460,41 +460,16 @@ archive anything first.
|
|
|
460
460
|
|
|
461
461
|
#### Program-close recap explainer caller
|
|
462
462
|
|
|
463
|
-
|
|
464
|
-
`
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
callback; JSON/CLI callers supply `authorModulePath` naming a module with an
|
|
474
|
-
`author` function export. The core invokes it for every floor and accepted
|
|
475
|
-
expansion artifact with `author-request/v2`: the artifact brief is inlined,
|
|
476
|
-
the fact base is attached, and artistic requests include the resolved theme
|
|
477
|
-
and hash-pinned shell. Authors may propose only recipe-declared expansion
|
|
478
|
-
profiles and return `author-result/v2`; runs fail on absent or invalid author
|
|
479
|
-
results or excessive verbatim source copying. Callbacks and module paths never
|
|
480
|
-
enter persisted run requests.
|
|
481
|
-
|
|
482
|
-
The mechanical caller constructs an `explainer-kit.run-request/v1` document whose
|
|
483
|
-
required keys are exactly:
|
|
484
|
-
`schemaVersion, recipe, slug, outputRoot, factBase, mode`. Set `recipe` to
|
|
485
|
-
`{ "id": "program-recap", "version": "1" }`; this is an object with exactly
|
|
486
|
-
`id` and `version`. Set `outputRoot` to
|
|
487
|
-
`.oat/repo/reference/explainers/<slug>/`. Bind the
|
|
488
|
-
synthesized fact-base file through `factBase` with the required keys
|
|
489
|
-
`mode, freshnessPolicy`, set `mode` to `"supplied"`, set `freshnessPolicy` to
|
|
490
|
-
`"live-wins"`, and set `path` to that file.
|
|
491
|
-
|
|
492
|
-
After the run, read the `explainer-kit.manifest/v1` document. Its required keys
|
|
493
|
-
are exactly:
|
|
494
|
-
`schemaVersion, runId, slug, recipe, createdAt, source, theme, artifacts, immutableHashes, outcome, buildRecord, warnings`.
|
|
495
|
-
Record the default program recap's manifest `runId` and `outcome` in the
|
|
496
|
-
program ledger; use a wave ledger row only for an explicitly requested per-wave
|
|
497
|
-
recap. Publishing is human-gated; this caller never invokes publish.
|
|
463
|
+
At program close, invoke `oat-explainer-kit` § Generate with recipe
|
|
464
|
+
`program-recap` over the reconciled execution-program artifact and the selected
|
|
465
|
+
wave summaries and completion records. The adapter resolves approved inputs,
|
|
466
|
+
theme, and the repository output root, then runs bundle, host-agent authoring,
|
|
467
|
+
verification, and recording in unattended mode.
|
|
468
|
+
|
|
469
|
+
Record the resulting manifest `runId` and `outcome` in the program ledger; use
|
|
470
|
+
a wave ledger row only for an explicitly requested per-wave recap. If the flow
|
|
471
|
+
fails before recording, preserve the sanitized cause and record the explicit
|
|
472
|
+
retry or skip disposition.
|
|
498
473
|
|
|
499
474
|
## Success Criteria
|
|
500
475
|
|
|
@@ -6,7 +6,7 @@ disable-model-invocation: false
|
|
|
6
6
|
user-invocable: true
|
|
7
7
|
allowed-tools: Read, Write, Edit, Bash, Grep, Glob, Task
|
|
8
8
|
metadata:
|
|
9
|
-
version: 1.5.
|
|
9
|
+
version: 1.5.3
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# Program a Corpus of External Plans into Waves
|
|
@@ -129,46 +129,22 @@ target (same disclaimer as the plan indexes).
|
|
|
129
129
|
`SKILL.md` as a document until then, and flip every
|
|
130
130
|
`completion tail: deferred to program close` ledger disposition to `done`. On
|
|
131
131
|
no or defer, record the standing deferral and its owner in the program ledger.
|
|
132
|
-
This is the program completion gate
|
|
133
|
-
|
|
132
|
+
This is the program completion gate; never answer it autonomously or repeat
|
|
133
|
+
it once per wave.
|
|
134
134
|
|
|
135
135
|
### Program-close explainer caller
|
|
136
136
|
|
|
137
137
|
At program close by default, or for a per-wave recap explicitly requested by the
|
|
138
|
-
operator,
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
callback; JSON/CLI callers supply `authorModulePath` naming a module with an
|
|
149
|
-
`author` function export. The core invokes it for every floor and accepted
|
|
150
|
-
expansion artifact with `author-request/v2`: the artifact brief is inlined,
|
|
151
|
-
the fact base is attached, and artistic requests include the resolved theme
|
|
152
|
-
and hash-pinned shell. Authors may propose only recipe-declared expansion
|
|
153
|
-
profiles and return `author-result/v2`; runs fail on absent or invalid author
|
|
154
|
-
results or excessive verbatim source copying. Callbacks and module paths never
|
|
155
|
-
enter persisted run requests.
|
|
156
|
-
|
|
157
|
-
The mechanical caller constructs an `explainer-kit.run-request/v1` document whose
|
|
158
|
-
required keys are exactly:
|
|
159
|
-
`schemaVersion, recipe, slug, outputRoot, factBase, mode`. Set `recipe` to
|
|
160
|
-
`{ "id": "program-recap", "version": "1" }`; this is an object with exactly
|
|
161
|
-
`id` and `version`. Set `outputRoot` to
|
|
162
|
-
`.oat/repo/reference/explainers/<slug>/`. Bind the
|
|
163
|
-
synthesized fact-base file through `factBase` with the required keys
|
|
164
|
-
`mode, freshnessPolicy`, set `mode` to `"supplied"`, set `freshnessPolicy` to
|
|
165
|
-
`"live-wins"`, and set `path` to that file.
|
|
166
|
-
|
|
167
|
-
After the run, read the `explainer-kit.manifest/v1` document. Its required keys
|
|
168
|
-
are exactly:
|
|
169
|
-
`schemaVersion, runId, slug, recipe, createdAt, source, theme, artifacts, immutableHashes, outcome, buildRecord, warnings`.
|
|
170
|
-
Record the manifest's `runId` and `outcome` in the wave or program ledger row.
|
|
171
|
-
Publishing is human-gated; this caller never invokes publish.
|
|
138
|
+
operator, invoke `oat-explainer-kit` § Generate with recipe `program-recap`
|
|
139
|
+
over the reconciled execution-program artifact and the selected wave summaries
|
|
140
|
+
and completion records. The adapter resolves the approved inputs, theme, and
|
|
141
|
+
repository output root, then runs bundle, host-agent authoring, verification,
|
|
142
|
+
and recording in unattended mode.
|
|
143
|
+
|
|
144
|
+
Record the resulting manifest `runId` and `outcome` in the program ledger. Use
|
|
145
|
+
a wave ledger row only for an explicitly requested per-wave recap. If the flow
|
|
146
|
+
fails before recording, preserve the sanitized cause and record the explicit
|
|
147
|
+
retry or skip disposition.
|
|
172
148
|
|
|
173
149
|
## Integration with `oat-wave-execute`
|
|
174
150
|
|
|
@@ -6,15 +6,18 @@ 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.
|
|
9
|
+
version: 1.1.2
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# Recon
|
|
13
13
|
|
|
14
14
|
Compile a bounded investigation into a durable, validated evidence-packet
|
|
15
|
-
directory. `recon` is a provider-neutral controller: it owns
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
directory. `recon` is a provider-neutral controller: it owns profile topology,
|
|
16
|
+
routing proposals, evidence flow, artifact boundaries, and assurance.
|
|
17
|
+
`subagent-orchestration` owns task-class and qualification guidance;
|
|
18
|
+
`oat-dispatch-subagents` owns live target resolution and launch mechanics. The
|
|
19
|
+
calling agent owns scope, approval dialogue, evidence-sufficiency judgment, and
|
|
20
|
+
all downstream conclusions.
|
|
18
21
|
|
|
19
22
|
## When to Use
|
|
20
23
|
|
|
@@ -115,12 +118,19 @@ Initialize `manifest.json` and the directory skeleton, but do not create
|
|
|
115
118
|
|
|
116
119
|
Read `references/profiles.md`. Partition the scope into non-overlapping,
|
|
117
120
|
adaptive lanes within the profile's hard caps. Classify every required and
|
|
118
|
-
conditionally allowed wave
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
121
|
+
conditionally allowed wave from its concrete bounded assignment, not its phase
|
|
122
|
+
label. Start with the economical provider-qualified route for the actual work;
|
|
123
|
+
narrow the assignment before escalating, and preserve stronger capability when
|
|
124
|
+
the work itself requires judgment.
|
|
125
|
+
|
|
126
|
+
Use the complete mode policy from `references/profiles.md` and
|
|
127
|
+
`scripts/lib/routing.mjs`. Map manifest wave modes to the worker's closed
|
|
128
|
+
assignment vocabulary: `redundant-gather` to `gather`;
|
|
129
|
+
`semantic-verification` and `redundant-verification` to `verify`; `adversarial`
|
|
130
|
+
and `contradiction-resolution` to `adversary`; and only `reconciliation` to
|
|
131
|
+
`reconcile`. The remaining modes keep their same-named assignment. All lanes
|
|
132
|
+
within one launch are a homogeneous wave. Select each wave independently; a
|
|
133
|
+
stronger wave never raises unrelated waves' targets or effort.
|
|
124
134
|
|
|
125
135
|
### Step 4: Prepare One Exact Dispatch Manifest
|
|
126
136
|
|
|
@@ -141,34 +151,55 @@ pack is already installed, `oat tools update --pack utility --scope
|
|
|
141
151
|
|
|
142
152
|
Read `${UTILITY_SKILLS_ROOT}/oat-dispatch-subagents/SKILL.md` and perform
|
|
143
153
|
only the selection steps of its Full-Information Selection: observe the
|
|
144
|
-
catalog, resolve
|
|
145
|
-
launch step; nothing launches until Step 5 runs after approval. From
|
|
146
|
-
root, read
|
|
154
|
+
catalog, resolve each wave's exact target, and record each selection. Stop
|
|
155
|
+
before its launch step; nothing launches until Step 5 runs after approval. From
|
|
156
|
+
the same root, read
|
|
147
157
|
`subagent-orchestration/references/model-selection-principles.md`, exactly one
|
|
148
158
|
active-provider selection reference, and the matching
|
|
149
159
|
`oat-dispatch-subagents` provider mechanics reference. Do not copy provider
|
|
150
160
|
catalogs or exact launch construction into this skill.
|
|
151
161
|
|
|
152
|
-
Resolve every planned and conditional wave against
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
162
|
+
Resolve every planned and conditional wave independently against its recorded
|
|
163
|
+
task class and class floor. Preserve provider, route, role, model, effort,
|
|
164
|
+
reasoning mode, and service tier as separate provider-native axes. A null axis
|
|
165
|
+
means the adapter exposes no independently requested control; never translate
|
|
166
|
+
effort between harnesses or normalize an opaque selector. Prefer the canonical
|
|
167
|
+
`recon-worker` role. If that role is unavailable, plan the generic role with the
|
|
168
|
+
complete worker contract as a visible generic role fallback before approval. A
|
|
169
|
+
fallback after approval is forbidden.
|
|
170
|
+
|
|
171
|
+
Prepare a `schemaVersion: 2` draft manifest. Its execution object contains a
|
|
172
|
+
complete inherited `target`, limits, waves, conditions, and later the approval.
|
|
173
|
+
Every wave records `taskClass`, `classFloor`, a substantive
|
|
174
|
+
`selectionReason`, its lanes and conditional flag, and an optional complete
|
|
175
|
+
replacement `target`. Partial target overrides are invalid. Use the production
|
|
176
|
+
proposal helper rather than manually reinterpreting the manifest:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
node scripts/prepare-routing.mjs --manifest manifest.json --format markdown
|
|
180
|
+
```
|
|
157
181
|
|
|
158
|
-
|
|
182
|
+
The proposal shown for approval includes:
|
|
159
183
|
|
|
160
|
-
- provider, route, role, model, effort, reasoning
|
|
184
|
+
- every wave's exact effective provider, route, role, model, effort, reasoning
|
|
185
|
+
mode, and service tier;
|
|
161
186
|
- authority level, maximum concurrency, per-lane deadline, and retry limit; and
|
|
162
|
-
- every wave with its mode, task class,
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
Present
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
187
|
+
- every wave with its mode, task class, class floor, selection reason, target,
|
|
188
|
+
and conditional flag; every condition with its predecessor, destination,
|
|
189
|
+
predicate, and single-activation cap; and every lane with its identity, read
|
|
190
|
+
scope, and worker-owned write root.
|
|
191
|
+
|
|
192
|
+
Present every wave's exact supported target axes, class/floor, lane count,
|
|
193
|
+
selection rationale, conditions, and finite worst-case concurrency, deadline,
|
|
194
|
+
retry, lane, and condition limits for explicit approval before any worker
|
|
195
|
+
launch. Name unsupported controls as null instead of inventing them. Named
|
|
196
|
+
model examples are illustrative and non-normative; never route from an example.
|
|
197
|
+
Declining approval leaves the run at `awaiting-approval` and launches nothing.
|
|
198
|
+
Approval records `explicit-user-approval` and the approval time. Approval is
|
|
199
|
+
session-local: it authorizes only the exact proposal shown in the same
|
|
200
|
+
uninterrupted control flow. If the run is resumed, reloaded, or changed before
|
|
201
|
+
launch, remove the approval, return to `awaiting-approval`, render the current
|
|
202
|
+
proposal again, and obtain fresh approval.
|
|
172
203
|
|
|
173
204
|
**Deadlines.** Choose the per-lane deadline from the expected task class and
|
|
174
205
|
scope, and show it in the approval envelope; it is an approved execution limit,
|
|
@@ -187,18 +218,30 @@ result. If any approved axis cannot be satisfied, stop with a
|
|
|
187
218
|
launch nothing. Never substitute a different axis to make the launch fit.
|
|
188
219
|
|
|
189
220
|
Launch each wave through the dispatch dependency with exactly the approved
|
|
190
|
-
axes. Immediately before each launch,
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
221
|
+
axes. Immediately before each launch, check the constructed target through the
|
|
222
|
+
same production helper used by preview:
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
node scripts/prepare-routing.mjs --manifest manifest.json --wave <wave-id> --check-target <candidate-target.json>
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
Any constructed-target mismatch returns the complete manifest for renewed
|
|
229
|
+
approval. This check proves invocation intent, not actual runtime
|
|
230
|
+
identity. Launch acceptance is distinct from worker completion. After
|
|
231
|
+
acceptance there is no replacement child, alternate route, target substitution,
|
|
232
|
+
and no silent retry. If an accepted lane fails, is cancelled, or times out,
|
|
233
|
+
record that lane as failed with a material `PASS_FAILED` gap carrying its exact
|
|
234
|
+
approved `waveId` and `laneId`. This structured identity is required for
|
|
235
|
+
conditional and non-conditional lanes alike; prose is descriptive, not
|
|
236
|
+
identity.
|
|
197
237
|
|
|
198
238
|
Run the passes in this order:
|
|
199
239
|
|
|
200
240
|
1. `map` and `gather` workers write unique dossiers under `raw/dossiers/`.
|
|
201
|
-
|
|
241
|
+
Thorough runs complete their independent `redundant-gather` wave here too.
|
|
242
|
+
2. `compile` writes a candidate canonical claim ledger. A thorough candidate
|
|
243
|
+
directly references a complete dossier from every approved primary and
|
|
244
|
+
redundant gather lane before any review brief is created.
|
|
202
245
|
3. Source preflight: run `scripts/validate-artifact.mjs` on the candidate
|
|
203
246
|
manifest and ledger, then reopen every declared source and evidence locator
|
|
204
247
|
with the checks in `scripts/validate-packet.mjs`. Resolve source roots to
|
|
@@ -206,10 +249,26 @@ Run the passes in this order:
|
|
|
206
249
|
mark them unavailable, and add a material gap for every ineligible source
|
|
207
250
|
and each affected claim. Do not create review briefs until the candidate
|
|
208
251
|
manifest and ledger pair validates.
|
|
209
|
-
4.
|
|
252
|
+
4. Profile-required `verify`, `adversary`, and `coverage` workers consume only
|
|
210
253
|
immutable selectively blind briefs created by
|
|
211
254
|
`scripts/create-review-brief.mjs` at unique paths.
|
|
212
|
-
5.
|
|
255
|
+
5. Evaluate each predeclared evidence condition only after its completed
|
|
256
|
+
predecessor artifacts exist. Record exactly one root-authored condition
|
|
257
|
+
outcome. A triggered `contradiction-resolution` wave runs once as an
|
|
258
|
+
`adversary` evidence assignment; a not-triggered or unresolved wave supplies
|
|
259
|
+
no artifact. Accepted failure, cancellation, timeout, or missing output never
|
|
260
|
+
authorizes replacement work.
|
|
261
|
+
6. Standard and thorough execute exactly one terminal `reconciliation` wave,
|
|
262
|
+
mapped to `reconcile`, after required review evidence and any triggered
|
|
263
|
+
contradiction investigation. It writes a new candidate ledger without
|
|
264
|
+
mutating the prior ledger.
|
|
265
|
+
|
|
266
|
+
If `reconciliation-needs-judgment` is foreseeable, select an adequate target
|
|
267
|
+
for that one terminal wave before approval. If it appears after approval and
|
|
268
|
+
the approved target is inadequate, preserve completed evidence and return an
|
|
269
|
+
explicit unresolved, out-of-envelope gap for renewed approval or a new run.
|
|
270
|
+
Never mutate the target, launch a second reconciliation, or substitute a
|
|
271
|
+
contradiction search for synthesis.
|
|
213
272
|
|
|
214
273
|
Use `references/worker-contract.md` for every assignment. Never allow two
|
|
215
274
|
workers to share a write path. Every dossier records its approved wave and lane;
|
|
@@ -247,6 +306,10 @@ refer to a different canonical generation.
|
|
|
247
306
|
Derive the achieved profile from complete, typed, digest-bound same-run
|
|
248
307
|
artifacts written by approved lanes. Do not accept a worker or manifest
|
|
249
308
|
assertion of achievement. A `quick` run can reach `supported` but never `verified`.
|
|
309
|
+
Quick is deliberately an evidence packet for an intelligent consumer and has
|
|
310
|
+
no independent semantic pass. Its consumer, not the packet, judges sufficiency
|
|
311
|
+
and conclusions. Standard and thorough retain their independent typed semantic,
|
|
312
|
+
adversarial, coverage, and single-terminal reconciliation requirements.
|
|
250
313
|
`verified` claims require unique complete semantic, adversarial, and coverage
|
|
251
314
|
results bound to immutable briefs and correct claim dispositions. Unresolved
|
|
252
315
|
material challenge prevents verification. A run with contested claims may
|