Skip to content

Commit cbaf01d

Browse files
authored
feat: Week 8 — capability reporting, renderer introspection, contract locks, and bundle validation (#12)
* docs: add Week 8 plan and sync roadmap Add a matching Week 8 planning doc after auditing the design set and repository state. - add design/20260319_agent-terminal-v1/16-week-8-plan.md - update the top-level design entrypoint to point to Week 8 - refresh WEEK2-GAPS.md so the recommended next step matches the new plan --- _Generated with [`mux`](https://github.com/coder/mux) • Model: `openai:gpt-5.4` • Thinking: `xhigh`_ * feat: add week 8 capability scaffold * feat: report runtime capabilities * feat: add inspect renderer runtime summary * feat: validate proof bundles * test: lock week 8 golden envelopes * docs: add week 8 capability-inventory proof bundle * docs: add week 8 contract-locks proof bundle * docs: add week 8 bundle-validation proof bundle * docs: add week 8 inspect-runtime proof bundle * docs: mark week 8 complete in design docs * style: format week 8 files with prettier * fix: degrade version json capability discovery failures * fix: harden inspect renderer runtime derivation * fix: improve capability discovery diagnostics * fix: guard validate-bundle JSON reads * style: format inspect test
1 parent e00b85c commit cbaf01d

99 files changed

Lines changed: 10450 additions & 26 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

WEEK2-GAPS.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,12 @@ Week 1 control-plane work, Week 2 renderer-backed inspection, Week 3 export / re
5454

5555
## Recommended next step
5656

57-
The next milestone can now treat the contract/doc ratification work as closed and focus on the intentionally deferred roadmap:
57+
The next planned milestone is Week 8. It should treat the Week 1–7 contract/doc ratification work as closed and first close the remaining runtime-capability/reporting discipline gaps before moving further down the broader deferred roadmap:
5858

59-
1. native renderers and broader platform parity,
60-
2. mouse input and richer live renderer state,
61-
3. remote/network sessions and an MCP wrapper,
62-
4. and larger model/data redesigns such as dynamic renderer-capability discovery, fuller failure taxonomy, event-log redesign, snapshot-schema expansion, and renderer CSP hardening.
59+
1. runtime renderer capability discovery plus richer live renderer state/reporting,
60+
2. the remaining lower-priority public-envelope locks and proof-bundle validation,
61+
3. native renderers and broader platform parity,
62+
4. mouse input, remote/network sessions, and an MCP wrapper,
63+
5. and larger model/data redesigns such as fuller failure taxonomy, event-log redesign, snapshot-schema expansion, and renderer CSP hardening.
6364

64-
See `design/20260319_agent-terminal-v1/15-week-7-plan.md` for the current Week 7 proof-bundle status and the design docs under `design/20260319_agent-terminal-v1/` for the broader roadmap context.
65+
See `design/20260319_agent-terminal-v1/16-week-8-plan.md` for the current next-step plan, `design/20260319_agent-terminal-v1/15-week-7-plan.md` for the completed Week 7 ratification context, and the design docs under `design/20260319_agent-terminal-v1/` for the broader roadmap context.

design/20260319_agent-terminal-v1.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ The repository now ships the first three milestones of this design plus Weeks 4
3838
- macOS CI validation,
3939
- and proof bundles under `dogfood/`.
4040

41-
Week 7 is the current design-synchronization milestone. The high-value CLI examples now match shipped behavior, the `send-keys` / `destroy` result-shape alignment has landed, and the main remaining Week 7 work is proof-bundle completeness/reviewability. The intentionally deferred platform/runtime work is tracked separately in [`../WEEK2-GAPS.md`](../WEEK2-GAPS.md). See [14-week-6-status.md](./20260319_agent-terminal-v1/14-week-6-status.md), [15-week-7-plan.md](./20260319_agent-terminal-v1/15-week-7-plan.md), and [`../WEEK2-GAPS.md`](../WEEK2-GAPS.md) for the current state.
41+
Week 7 closed the design-synchronization pass for the shipped v1 surface. The next planned milestone is Week 8, which focuses on runtime capability discovery, richer renderer/session introspection, the remaining lower-priority public-envelope locks, and proof-bundle normalization/validation before broader native-renderer/platform expansion. The intentionally deferred platform/runtime work is tracked separately in [`../WEEK2-GAPS.md`](../WEEK2-GAPS.md). See [14-week-6-status.md](./20260319_agent-terminal-v1/14-week-6-status.md), [15-week-7-plan.md](./20260319_agent-terminal-v1/15-week-7-plan.md), [16-week-8-plan.md](./20260319_agent-terminal-v1/16-week-8-plan.md), and [`../WEEK2-GAPS.md`](../WEEK2-GAPS.md) for the current state.
4242

4343
## Executive summary
4444

@@ -210,6 +210,7 @@ This design file is the entry point. Detailed supporting docs live in `design/20
210210
- [13-week-6-plan.md](./20260319_agent-terminal-v1/13-week-6-plan.md)
211211
- [14-week-6-status.md](./20260319_agent-terminal-v1/14-week-6-status.md)
212212
- [15-week-7-plan.md](./20260319_agent-terminal-v1/15-week-7-plan.md)
213+
- [16-week-8-plan.md](./20260319_agent-terminal-v1/16-week-8-plan.md)
213214

214215
## High-level architecture
215216

design/20260319_agent-terminal-v1/05-dogfooding-and-validation.md

Lines changed: 62 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ A follow-up AI coding agent should treat this file as the minimum review protoco
88

99
## Current shipped state (2026-03-25)
1010

11-
This document still describes the broader dogfooding target, but the repository now ships the full core artifact set needed for review bundles plus a local review helper for browsing them.
11+
This document still describes the broader dogfooding target, but the repository now ships the full core artifact set needed for review bundles plus local review and validation helpers for checking them.
1212

1313
Shipped today:
1414

@@ -20,9 +20,10 @@ Shipped today:
2020
- artifact manifests,
2121
- notes / proof bundles under `dogfood/`,
2222
- static bundle review pages generated by `npm run review-bundle -- <bundle-dir>`,
23+
- local bundle validation available via `npm run validate-bundle -- <bundle-dir>`,
2324
- and dedicated Week 6 review pages checked in under `dogfood/20260325-week6-*/index.html`.
2425

25-
The remaining validation gap is no longer missing artifact classes or a missing local review page. It is now **bundle completeness and normalization**: some Week 4–6 bundles still rely mainly on JSON/log outputs or omit committed screenshots, recordings, videos, or generated review pages even though this document's preferred proof format expects them.
26+
The remaining validation gap is no longer missing artifact classes, a local review page, or a repo-supported minimum checker for new bundles. The remaining debt is now mostly consistency across older bundles: some Week 4–6 bundles predate the new validation profiles and still rely mainly on JSON/log outputs or omit committed screenshots, recordings, videos, or generated review pages even though this document's preferred proof format expects them.
2627

2728
Read the remainder of this file as the broader validation target and checklist for keeping future bundles equally concrete, reproducible, and reviewable.
2829

@@ -131,6 +132,63 @@ Those bundles are useful, but they also make the remaining validation debt expli
131132

132133
So the remaining dogfood gap is now consistency rather than capability: the repo has the tooling and artifact types, but not every high-value checked-in bundle yet meets the document's strongest preferred review format.
133134

135+
## Week 8 coverage
136+
137+
As of 2026-03-25, Week 8 closes the explicit bundle-completeness enforcement gap for the targeted bundle classes by adding `src/tools/validate-bundle.ts` and standardizing four dedicated Week 8 proof-bundle paths:
138+
139+
- `dogfood/20260325-week8-capability-inventory/`,
140+
- `dogfood/20260325-week8-contract-locks/`,
141+
- `dogfood/20260325-week8-bundle-validation/`,
142+
- and `dogfood/20260325-week8-inspect-runtime/`.
143+
144+
### Validate-bundle tool
145+
146+
Week 8 adds a standalone validation helper at `src/tools/validate-bundle.ts`.
147+
148+
Run it with either the default profile or an explicit interactive profile:
149+
150+
```sh
151+
npm run validate-bundle -- <bundle-dir>
152+
npm run validate-bundle -- <bundle-dir> --profile interactive-renderer
153+
```
154+
155+
The default profile is `contract-reporting`. `interactive-renderer` extends that minimum for bundles that prove rendered terminal output rather than only CLI/reporting contracts.
156+
157+
`validate-bundle` currently enforces these exact checks:
158+
159+
- `contract-reporting` requires a readable bundle directory, at least one JSON output file, a notes markdown file (`notes.md`, `NOTES.md`, `README.md`, or `index.md`), a generated `index.html` review page, and successfully parsed JSON for every detected JSON output file.
160+
- `interactive-renderer` requires every `contract-reporting` check plus at least one screenshot (`.png`) and at least one recording (`.cast`) artifact.
161+
162+
`validate-bundle` uses the same artifact classification as `review-bundle`: `manifest.json` does not count as a JSON output file, and files under `logs/` are treated as support files rather than contract JSON outputs.
163+
164+
### Minimum bundle contents by profile
165+
166+
| Requirement | `contract-reporting` | `interactive-renderer` |
167+
| --- | --- | --- |
168+
| Readable bundle directory | Required | Required |
169+
| JSON output files | At least 1 | At least 1 |
170+
| Notes markdown file | Required | Required |
171+
| Generated review page (`index.html`) | Required | Required |
172+
| All detected JSON output files parse successfully | Required | Required |
173+
| Screenshot artifact (`.png`) | Not required | At least 1 |
174+
| Recording artifact (`.cast`) | Not required | At least 1 |
175+
| Replay video (`.webm`) | Recommended when helpful, not validator-required | Recommended when helpful, not validator-required |
176+
177+
### Profile selection guidance
178+
179+
Use `contract-reporting` for bundles that only capture CLI JSON output and reviewer notes, such as:
180+
181+
- `dogfood/20260325-week8-capability-inventory/`,
182+
- `dogfood/20260325-week8-contract-locks/`,
183+
- and `dogfood/20260325-week8-bundle-validation/`.
184+
185+
Use `interactive-renderer` for bundles that capture rendered terminal output, such as:
186+
187+
- `dogfood/20260325-week8-inspect-runtime/`,
188+
- and the checked-in cli-parity example `dogfood/20260322-week4-cli-parity/`.
189+
190+
Run `review-bundle` before or alongside `validate-bundle` so the required `index.html` page is present when the validator checks the bundle.
191+
134192
## 1. Dogfooding goals
135193

136194
Dogfooding must prove that an agent can:
@@ -145,15 +203,15 @@ Dogfooding must prove that an agent can:
145203

146204
## 2. Required proof artifacts
147205

148-
Every serious dogfood run must produce:
206+
Every serious dogfood run must satisfy the profile minimum documented in [Week 8 coverage](#week-8-coverage). For interactive renderer scenarios, the stronger default expectation remains:
149207

150208
- at least one semantic snapshot JSON,
151209
- at least one PNG screenshot,
152210
- at least one video recording,
153211
- at least one recording export (`.cast`),
154212
- and a short human-readable notes file.
155213

156-
If any of these are missing, the run is incomplete.
214+
If any profile-required artifacts are missing, or if an interactive renderer run omits the stronger artifacts above, the run is incomplete.
157215

158216
## 3. Recommended artifact bundle layout
159217

0 commit comments

Comments
 (0)