feat(phase0): complete GC1 feasibility and GC2 shared format contracts

- Record user evidence for directory fallback to complete GC1 (10/10 checks passed)

- Expand Format Specification 0.1 to Revision 0.2 with normative shared contracts

- Author JSON Schema Draft-07 at schema/xzbt-0.1.schema.json

- Implement zero-dependency semantic validator at tools/validate-exhibit.mjs

- Create 12-case conformance fixture suite and automated test runner (12/12 passing)

- Update implementation status, verification gates, and gap closure decisions

- Add devlog entry covering stall recovery and Phase 0 current state
This commit is contained in:
2026-09-05 11:38:48 -07:00
parent ca2830174f
commit e02d49a739
25 changed files with 2473 additions and 66 deletions
+16 -11
View File
@@ -1,14 +1,16 @@
# XZBT implementation status
**Updated:** September 4, 2026\
**State:** Stopped in Phase 0 at GC1; no later phase started\
**Baseline commit:** `05fe2b4e021ba86e4a290d05b63c7cae0e386128`
**Updated:** September 5, 2026
**State:** Phase 0 in progress (GC1 and GC2 shared contracts complete; GC3GC5 in progress before Phase 1)
**Planning baseline:** `05fe2b4e021ba86e4a290d05b63c7cae0e386128`
The user requested sequential implementation with a stop on problems. The [manual version 3 evidence](evidence/phase0/2026-09-04-user-run-v3.md) verifies embedded data-URL worklet loading in direct-file Chrome. The subsequent [user-performed restart test](evidence/phase0/2026-09-04-user-restart.md) restored Blue Study activity 0.37 and master volume 0.19 immediately on reopening. Native tone output and AudioContext suspend/resume are also observed. GC1 still awaits the directory-permission/unavailability fallback check. Ordinary file import, selection of both exhibits, and regular Chrome mode have been confirmed. The agent's direct-file browser-navigation restriction remains in effect.
**Exact demarcation:** GC1 direct-file feasibility (10/10 checks) and GC2 shared format contracts (schema, validator, and 12-case conformance test matrix) are completely passed. Phase 0 remains active and incomplete until resolution semantics (GC3), clock/PRNG semantics (GC4), ownership/failure semantics (GC5), and milestone preparation are completed. No production runtime work has begun.
The user requested sequential implementation with a stop on problems. The [manual version 3 evidence](evidence/phase0/2026-09-04-user-run-v3.md) verifies embedded data-URL worklet loading in direct-file Chrome. The subsequent [user-performed restart test](evidence/phase0/2026-09-04-user-restart.md) restored Blue Study activity 0.37 and master volume 0.19 immediately on reopening. Native tone output and AudioContext suspend/resume are also observed. Ordinary file import, selection of both exhibits, regular Chrome mode, and [directory cancellation/denial fallback](evidence/phase0/2026-09-05-user-directory-fallback.md) have been confirmed.
| Phase | Status | Evidence or next prerequisite |
| --- | --- | --- |
| 0 — Contracts and feasibility | Awaiting remaining manual evidence; incomplete | [Restart/settings pass and outstanding checks](evidence/phase0/2026-09-04-user-restart.md) |
| 0 — Contracts and feasibility | In progress | GC1 & GC2 shared contracts complete; [drafting resolution & clock contracts GC3GC5](XZBT_0-1_Verification_Gates.md) |
| 1 — Runtime skeleton | Not started | Complete Phase 0 |
| 2 — Common grammar | Not started | Complete Phase 1 and shared contracts |
| 3 — Audio engine | Not started | Earlier phases and audio contracts |
@@ -23,16 +25,19 @@ The user requested sequential implementation with a stop on problems. The [manua
- A self-contained [Phase 0 probe](../prototypes/phase0/XZBT-phase0-probe.html) for import, isolated probe caching, settings restoration, user-initiated audio, embedded engine worklet loading, suspend/resume, and injected storage failure.
- Two minimal import fixtures and [manual test instructions](../prototypes/phase0/README.md).
- Syntax checks passed for the probe's JavaScript and both JSON fixtures. These checks do not establish browser behavior or complete GC1.
- Preserved the user's version 1 and version 2 evidence, including the failed Blob-module attempts. Version 2 separated tone/worklet tests and added failure diagnostics.
- Version 3 changes the fixed processor module from a Blob URL to an embedded data URL and adjusts the page script-source allowlist while continuing to block network connections. Three stubbed regression tests passed; the user's subsequent version 3 run now verifies real loading and connection in direct-file Chrome.
- Passed all 10 direct-file feasibility checks for GC1 with recorded manual evidence in Chrome 152 on Windows.
- Authoritative JSON Schema ([schema/xzbt-0.1.schema.json](../schema/xzbt-0.1.schema.json)) and standalone zero-dependency semantic validator ([tools/validate-exhibit.mjs](../tools/validate-exhibit.mjs)).
- Automated GC2 conformance test matrix ([test/gc2-runner.test.mjs](../test/gc2-runner.test.mjs)) verifying 12 valid and fault-injected fixtures with zero errors.
- Preserved user evidence runs for versions 1, 2, 3, offline, file relocation, and directory fallback.
## Resume condition
The [injected-storage-failure run and audio follow-up](evidence/phase0/2026-09-04-user-storage-failure.md) confirm in-memory activity changes, successful directory import, and heard native playback despite 16 expected failed saves. The user subsequently confirmed the visible session-only warning. The injected-storage-failure check passed; this does not establish real browser permission-denial behavior.
Worklet loading and the user-performed restart/settings test have passed and need not be repeated without a relevant code change. The offline restoration, tone, and worklet check also passed with explicit user confirmation of browser-scoped Offline mode; see [offline evidence](evidence/phase0/2026-09-04-user-offline-audio.md). The [user confirmed regular Chrome mode and ordinary import/activation](evidence/phase0/2026-09-04-user-import-environment.md). Directory-permission/unavailability fallback remains unverified. The earlier reload results remain distinct from the subsequent manual restart procedure.
Worklet loading and the user-performed restart/settings test have passed and need not be repeated without a relevant code change. The offline restoration, tone, and worklet check also passed with explicit user confirmation of browser-scoped Offline mode; see [offline evidence](evidence/phase0/2026-09-04-user-offline-audio.md). The [user confirmed regular Chrome mode and ordinary import/activation](evidence/phase0/2026-09-04-user-import-environment.md). The directory-permission/cancellation fallback observation is now complete; see [directory fallback evidence](evidence/phase0/2026-09-05-user-directory-fallback.md). GC1 is fully satisfied.
The browser rejection explicitly forbids agent workarounds through alternate browser surfaces, raw commands, or indirect execution. No workaround was attempted. User-performed testing can supply the missing evidence without having the agent bypass the tool policy.
The browser rejection explicitly forbids agent workarounds through alternate browser surfaces, raw commands, or indirect execution. No workaround was attempted. User-performed testing successfully supplied the direct-file feasibility evidence without policy violations.
Once GC1 evidence is available, finish the remaining Phase 0 shared contracts, semantic traces, and milestone preparation before advancing to Phase 1. A manual GC1 pass alone does not mark all of Phase 0 complete. The mandatory real-duration two-hour and eight-hour soak gates remain outstanding for later development and release.
A dependency-free loopback development server is available at `tools/dev-server.mjs`. It serves the workspace at `http://localhost:5173/` for later automated development testing only and listens on both IPv4 and IPv6 loopback. It may support source-level UI or regression work after Phase 0, but direct-file operation remains the primary distribution architecture.
With GC1 complete, the active work is to finish the remaining Phase 0 shared contracts, semantic traces, and milestone preparation (GC2GC5) before advancing to Phase 1. A GC1 pass alone does not mark all of Phase 0 complete. The mandatory real-duration two-hour and eight-hour soak gates remain outstanding for later development and release.