@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,41 +5,28 @@ disable-model-invocation: false
|
|
|
5
5
|
user-invocable: true
|
|
6
6
|
allowed-tools: Read, Write, Edit, Bash, Grep, Glob, AskUserQuestion
|
|
7
7
|
metadata:
|
|
8
|
-
version: 1.0.
|
|
8
|
+
version: 1.0.9
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
# OAT Explainer Kit
|
|
12
12
|
|
|
13
|
-
Adapt OAT project context into the
|
|
14
|
-
`explainer-kit` core.
|
|
13
|
+
Adapt OAT project and program context into the agent-authored flow provided by
|
|
14
|
+
the canonical `explainer-kit` core.
|
|
15
15
|
|
|
16
16
|
## Responsibilities
|
|
17
17
|
|
|
18
18
|
- Require a compatible installed `explainer-kit` core.
|
|
19
|
-
- Resolve
|
|
20
|
-
- Derive canonical project or repository output roots
|
|
19
|
+
- Resolve explainer defaults and preserve their source attribution.
|
|
20
|
+
- Derive canonical project or repository output roots with
|
|
21
|
+
`scripts/resolve-paths.mjs`.
|
|
21
22
|
- Bind OAT lifecycle artifacts to generic recipe source roles.
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
- Require lifecycle callers to construct a brief-aware author seam.
|
|
26
|
-
- Require first-class browser-evidence and whole-set visual-review providers
|
|
27
|
-
for unattended project recaps.
|
|
23
|
+
- Resolve and persist project-explainer and project-recap intent.
|
|
24
|
+
- Run the core's bundle, agent-authoring, verification, and recording stages.
|
|
25
|
+
- Return the terminal outcome and run path to the lifecycle caller.
|
|
28
26
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
This adapter depends on `explainer-kit`; the core never depends on this adapter.
|
|
32
|
-
Fail closed when the compatible installed core is unavailable. Do not copy core
|
|
33
|
-
runtime logic into the adapter.
|
|
34
|
-
|
|
35
|
-
Private wrappers use the core's frozen pre-resolution/request/core-run/manifest/
|
|
36
|
-
post-run seam directly; they do not route presets, vaults, Google Docs, Stoa, or
|
|
37
|
-
personal destinations through this adapter. For the release-candidate sequence,
|
|
38
|
-
rollback, and operator-owned real-wrapper gate, use `references/migration.md`.
|
|
39
|
-
|
|
40
|
-
Before reading OAT config or invoking the core, call
|
|
27
|
+
Before reading OAT config or preparing a bundle, call
|
|
41
28
|
`scripts/check-core.mjs#checkCoreCompatibility` with this installed skill
|
|
42
|
-
directory and
|
|
29
|
+
directory and the exported `MINIMUM_CORE_VERSION`. Continue only when it returns
|
|
43
30
|
`ok: true`.
|
|
44
31
|
|
|
45
32
|
- Missing core: stop and show
|
|
@@ -54,97 +41,49 @@ Resolve adapter scripts and references relative to this installed skill
|
|
|
54
41
|
directory. Resolve the core only from its installed canonical skill path. Never
|
|
55
42
|
fall back to a repository source checkout.
|
|
56
43
|
|
|
57
|
-
##
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
`project-explainer`
|
|
72
|
-
`
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
source
|
|
81
|
-
`
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
`scripts/
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
adapter resolves this executable capability and passes only the callback to the
|
|
101
|
-
core. It never persists provider configuration or module paths.
|
|
102
|
-
|
|
103
|
-
Construct exactly one provider-neutral author seam in both modes: in-process
|
|
104
|
-
callers supply `author`, while JSON/CLI callers supply `authorModulePath` naming
|
|
105
|
-
a module with an `author` function export. The core invokes that callback once
|
|
106
|
-
per planned artifact. Every request carries the immutable shared `setContext`,
|
|
107
|
-
the matching `plannedArtifact`, the recipe brief, theme, and any
|
|
108
|
-
recipe-selected artistic shell. Those bundled inputs are the required
|
|
109
|
-
medium-specific guidance; an optional visual-explainer installation may enhance
|
|
110
|
-
provider execution but is never required. The adapter validates and resolves
|
|
111
|
-
executable inputs before passing them to `core.runExplainer`; callbacks and
|
|
112
|
-
module paths never enter the persisted run request.
|
|
113
|
-
|
|
114
|
-
Also read `references/visual-review-callback.md`. Unattended `project-recap`
|
|
115
|
-
runs require exactly one trusted launched-Chromium browser session and one
|
|
116
|
-
whole-set visual critic. In-process callers supply a branded `browserSession`
|
|
117
|
-
created by the compatible core and `visualCritic`; JSON/CLI callers supply
|
|
118
|
-
`browserSessionModulePath` and `visualCriticModulePath`, naming modules with
|
|
119
|
-
matching exports. Bare browser callbacks and caller-authored runtime metadata
|
|
120
|
-
are rejected. These are first-class adapter inputs; do not place either
|
|
121
|
-
provider in `coreOptions`.
|
|
122
|
-
|
|
123
|
-
The critic judges typography, hierarchy, composition, density, medium leverage,
|
|
124
|
-
template repetition, diagram semantics, and cross-artifact cohesion from the
|
|
125
|
-
bound rendered evidence. Keep those criteria in prose. Preserve the core's
|
|
126
|
-
existing `visual-review-result/v1` contract and actionable `pass`/`correct`
|
|
127
|
-
behavior; do not add adapter-owned scores, layout thresholds, or result fields.
|
|
128
|
-
|
|
129
|
-
The adapter resolves all executable providers before core invocation, enforces
|
|
130
|
-
direct-versus-module mutual exclusion, and requires distinct identities for
|
|
131
|
-
authoring, fact criticism, browser evidence, and visual criticism. A missing,
|
|
132
|
-
forged, or deterministic fixture session fails production validation before the
|
|
133
|
-
core runs. A runtime browser or visual-review failure is retained by the core
|
|
134
|
-
as `built-needs-review`, never as a successful durability or publication
|
|
135
|
-
outcome.
|
|
136
|
-
|
|
137
|
-
Unattended project runs pass `approved-oat-artifacts` provenance to the core's
|
|
138
|
-
content-approval seam and never prompt. Automated completion and
|
|
139
|
-
implementation-tail recaps always use `mode: unattended`.
|
|
140
|
-
|
|
141
|
-
Federated runs still require an explicit provider-neutral critic callback.
|
|
142
|
-
In-process callers may supply `critic` (or `coreOptions.critic` for
|
|
143
|
-
compatibility); JSON/CLI callers supply `criticModulePath` naming a module whose
|
|
144
|
-
`critic` export implements the same provider-neutral request/result contract.
|
|
145
|
-
Supply exactly one critic seam. Approval provenance does not bypass fact
|
|
146
|
-
reconciliation. Do not read private presets, vault files, provider
|
|
147
|
-
configuration, or ambient destination configuration.
|
|
44
|
+
## Generate
|
|
45
|
+
|
|
46
|
+
Use this flow for `project-recap`, `program-recap`, or `project-explainer`.
|
|
47
|
+
Lifecycle callers use `mode: unattended` and never prompt.
|
|
48
|
+
|
|
49
|
+
1. Check the installed core as described above.
|
|
50
|
+
2. Resolve intent with `scripts/resolve-intent.mjs`. Persist a returned record
|
|
51
|
+
with `scripts/persist-intent.mjs` before generation. A persisted `skip`
|
|
52
|
+
ends the flow without bundling or authoring.
|
|
53
|
+
3. Resolve only the `explainers.defaults.*` theme values with
|
|
54
|
+
`scripts/resolve-config.mjs`.
|
|
55
|
+
4. Resolve the parent output root with
|
|
56
|
+
`scripts/resolve-paths.mjs#resolveExplainerOutputRoot`.
|
|
57
|
+
5. Resolve approved inputs with
|
|
58
|
+
`scripts/bind-project-sources.mjs`. `project-explainer` uses `plan.md`,
|
|
59
|
+
`design.md`, `spec.md`, and optional `discovery.md`. `project-recap` also
|
|
60
|
+
uses completion, summary, project-log, and optional orchestration material.
|
|
61
|
+
`program-recap` uses the program record and its reconciled summaries.
|
|
62
|
+
6. Run the installed core's `scripts/bundle.mjs` with the selected recipe,
|
|
63
|
+
input mode, resolved theme JSON, and run root. If it reports `reuse: true`,
|
|
64
|
+
return that satisfied run without authoring or recording again.
|
|
65
|
+
7. The host agent reads the recipe's `briefRef`, the core's
|
|
66
|
+
`references/recap-authoring.md`, `source/fact-base.json`,
|
|
67
|
+
`source/ledger.json`, and `theme.resolved.json`, then authors exactly one
|
|
68
|
+
`site/index.html` from the recipe shell.
|
|
69
|
+
8. Run `scripts/verify.mjs`. Use the first available rung: host browser capture
|
|
70
|
+
and inspection at 320, 768, and 1440 pixels; the Playwright probe; or the
|
|
71
|
+
browser-free `none` rung. Browser-free checks always run.
|
|
72
|
+
9. Run `scripts/record.mjs` with the recipe, slug, `mode: unattended`, and
|
|
73
|
+
resolved theme. Do not write into the run root after recording.
|
|
74
|
+
10. Return the run path, `runId`, and outcome from
|
|
75
|
+
`explainer-kit.manifest/v2`. `built` and `built-needs-review` satisfy a
|
|
76
|
+
`generate` intent; `failed` and `incomplete` do not.
|
|
77
|
+
|
|
78
|
+
On `failed` or `incomplete`, show the sanitized cause and require retry or an
|
|
79
|
+
explicit skip. A skip after an attempted run must be persisted as
|
|
80
|
+
`skip/failed_attempt` with `failed_attempt_evidence` set to the project-relative
|
|
81
|
+
`explainers/<run-slug>/manifest.json`, or to that run's `failure.json` when
|
|
82
|
+
recording never occurred. The deployed completion consumer validates canonical
|
|
83
|
+
project/run containment and the terminal evidence contract before returning
|
|
84
|
+
the trusted path to `scripts/check-terminal-outcome.mjs`.
|
|
85
|
+
`skip/capability_probe` remains readable only for an existing legacy intent and
|
|
86
|
+
must not be newly written.
|
|
148
87
|
|
|
149
88
|
## Progress Indicators (User-Facing)
|
|
150
89
|
|
|
@@ -156,5 +95,6 @@ OAT ▸ EXPLAINER KIT
|
|
|
156
95
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
157
96
|
```
|
|
158
97
|
|
|
159
|
-
Report compatibility,
|
|
160
|
-
stages. Lifecycle-triggered unattended runs must not
|
|
98
|
+
Report compatibility, intent, source binding, bundle, authoring, verification,
|
|
99
|
+
recording, and outcome stages. Lifecycle-triggered unattended runs must not
|
|
100
|
+
prompt.
|
|
@@ -3,41 +3,21 @@
|
|
|
3
3
|
`oat-explainer-kit` is the OAT-aware boundary around the config-blind
|
|
4
4
|
`explainer-kit` core. The adapter reads each supported stored value with
|
|
5
5
|
`oat config get <key> --json` and preserves its `source` metadata while
|
|
6
|
-
|
|
6
|
+
resolving the theme used by `bundle.mjs`.
|
|
7
7
|
|
|
8
|
-
## Supported
|
|
8
|
+
## Supported explainer defaults
|
|
9
9
|
|
|
10
|
-
| Key
|
|
11
|
-
|
|
|
12
|
-
| `explainers.defaults.style`
|
|
13
|
-
| `explainers.defaults.palette`
|
|
14
|
-
| `explainers.defaults.visualProfile`
|
|
15
|
-
| `explainers.defaults.themeBundlePath`
|
|
16
|
-
| `explainers.publish.provider` | shared | unset |
|
|
17
|
-
| `explainers.publish.s3Uri` | shared | unset |
|
|
18
|
-
| `explainers.publish.publicBaseUrl` | shared | unset |
|
|
19
|
-
| `explainers.publish.awsRegion` | shared | unset |
|
|
20
|
-
| `explainers.publish.publicAccess` | shared | `public` |
|
|
21
|
-
| `explainers.publish.awsProfile` | local, user | unset |
|
|
22
|
-
| `workflow.explainers.projectExplainer` | local, shared, user | `ask` |
|
|
23
|
-
| `workflow.explainers.projectRecap` | local, shared, user | `ask` |
|
|
10
|
+
| Key | Stored scopes | Built-in default |
|
|
11
|
+
| ------------------------------------- | ------------------- | ---------------- |
|
|
12
|
+
| `explainers.defaults.style` | local, shared, user | `clean-neutral` |
|
|
13
|
+
| `explainers.defaults.palette` | local, shared, user | unset |
|
|
14
|
+
| `explainers.defaults.visualProfile` | local, shared, user | unset |
|
|
15
|
+
| `explainers.defaults.themeBundlePath` | local, shared | unset |
|
|
24
16
|
|
|
25
|
-
Explicit runtime inputs may override these
|
|
26
|
-
do not write config. Recipe, slug, fact-base path, output root,
|
|
27
|
-
direction
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
## Seams are invocation inputs, not configuration
|
|
31
|
-
|
|
32
|
-
No supported key names an author, fact critic, browser session, visual critic,
|
|
33
|
-
or set planner. Every seam is supplied per invocation as a callback or a module
|
|
34
|
-
entry point, so seam availability is discovered by
|
|
35
|
-
`scripts/probe-recap-seams.mjs#probeRecapSeams` against the inputs a caller is
|
|
36
|
-
about to pass, not read from stored config. A host on which those inputs are
|
|
37
|
-
absent has no configuration to correct: the probe reports `seams-unavailable`
|
|
38
|
-
and the lifecycle caller records a `skip / capability_probe` recap intent. The
|
|
39
|
-
`workflow.explainers.projectRecap` preference expresses whether a host _wants_
|
|
40
|
-
a recap and cannot make an unavailable seam available.
|
|
17
|
+
Explicit runtime inputs may override these four keys for one invocation. They
|
|
18
|
+
do not write config. Recipe, slug, fact-base path, output root, and art
|
|
19
|
+
direction are invocation inputs rather than config keys and are rejected from
|
|
20
|
+
the runtime config-override map.
|
|
41
21
|
|
|
42
22
|
## Source-sensitive paths
|
|
43
23
|
|
|
@@ -51,39 +31,15 @@ The four curated styles are `clean-neutral`, `business-corporate`,
|
|
|
51
31
|
`navy-ocean`, and `dark-edgy`. A theme bundle path has highest precedence,
|
|
52
32
|
followed by an explicit style. Legacy palette and visual-profile fields remain
|
|
53
33
|
accepted as an advanced compatibility path and produce deprecation warnings.
|
|
54
|
-
When no source explicitly configures
|
|
55
|
-
|
|
56
|
-
warning. The adapter passes a resolved bundle as `theme.suppliedBundlePath`.
|
|
57
|
-
|
|
58
|
-
## Publish block
|
|
59
|
-
|
|
60
|
-
`provider`, `s3Uri`, `publicBaseUrl`, and `awsRegion` form one complete publish
|
|
61
|
-
block. If any field is absent, the adapter returns a structured build-only
|
|
62
|
-
report listing every missing field and does not construct publish config.
|
|
63
|
-
`awsProfile` is optional and uses the normal AWS credential chain when absent.
|
|
64
|
-
`publicAccess` accepts `public` or `protected` and defaults to `public`;
|
|
65
|
-
source metadata is retained and the resolved mode is carried explicitly in the
|
|
66
|
-
versioned core publish request. Destination roots are normalized without trailing
|
|
67
|
-
slashes. Lifecycle callers must explicitly select publish durability; complete
|
|
68
|
-
configuration only makes publication available and never authorizes it. The
|
|
69
|
-
existing human gate remains mandatory.
|
|
34
|
+
When no source explicitly configures a selection, the core records its visible
|
|
35
|
+
`clean-neutral` fallback.
|
|
70
36
|
|
|
71
37
|
## Canonical output roots
|
|
72
38
|
|
|
73
|
-
- Active project: `<resolved-project-path>/explainers
|
|
74
|
-
|
|
75
|
-
-
|
|
76
|
-
- Direct core caller: an explicit `outputRoot`; the OAT adapter does not infer
|
|
77
|
-
one.
|
|
78
|
-
|
|
79
|
-
Derived OAT roots reject traversal and must remain inside their canonical root
|
|
80
|
-
after symlink resolution. The adapter validates all config and paths before the
|
|
81
|
-
core creates output.
|
|
82
|
-
|
|
83
|
-
## Run-request translation
|
|
39
|
+
- Active project: `<resolved-project-path>/explainers/`.
|
|
40
|
+
- Program or repository run: `.oat/repo/reference/explainers/`.
|
|
41
|
+
- Direct core caller: an explicit parent output root.
|
|
84
42
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
complete `explainer-kit.publish-request/v2` whose `siteRoot` and
|
|
89
|
-
`manifestPath` point inside `<outputRoot>/<slug>/`.
|
|
43
|
+
Derived OAT roots reject traversal and remain inside their canonical root after
|
|
44
|
+
symlink resolution. The adapter validates config and paths before the core
|
|
45
|
+
creates output.
|