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:
@@ -1,15 +1,15 @@
|
||||
# XZBT 0.1 Gap Closure Decisions
|
||||
|
||||
**Record version:** 0.1\
|
||||
**Status:** Incorporated into the planning baseline; implementation verification pending\
|
||||
**Record version:** 0.2\
|
||||
**Status:** Incorporated into the planning baseline; GC1 feasibility and GC2 shared contracts verified; remaining subsystem verification pending\
|
||||
**Related resources:** [PRD](../XZBT_0-1_MVP_Product_Requirements_Document.md), [format specification](XZBT_0-1_Format_Specification.md), [verification gates](XZBT_0-1_Verification_Gates.md)
|
||||
|
||||
Numbering preserves the seven gaps discussed during PRD preparation. Recording a decision closes a design question; it does not establish that a browser feature, performance target, or lifecycle guarantee has passed testing.
|
||||
|
||||
| Gap | Primary PRD placement | Supporting verification |
|
||||
| --- | --- | --- |
|
||||
| 1 | 3.4, 109-111, 122, 132, Phase 0 | GC1 |
|
||||
| 2 | Resource preface, 113, Phase 0, 145-146 | GC2 |
|
||||
| 1 | 3.4, 109-111, 122, 132, Phase 0 | GC1 (Passed) |
|
||||
| 2 | Resource preface, 113, Phase 0, 145-146 | GC2 (Shared contracts verified) |
|
||||
| 3 | 31-32, 54, 104 | GC3 |
|
||||
| 4 | 14, 102, 117-118 | GC4 |
|
||||
| 5 | 91, 94, 99-101 | GC5 |
|
||||
@@ -26,7 +26,7 @@ Verify file import, audio unlock, cache writes, browser restart, and cache resto
|
||||
|
||||
Moving or renaming the HTML is a separate compatibility case. Do not promise that browser storage follows it. When storage is unavailable, retain session playback and explain that exhibits must be imported again on a later launch. This fallback does not waive the ordinary-mode persistence acceptance requirement.
|
||||
|
||||
**Gate:** GC1 in the verification checklist. A failure of direct-file persistence in the chosen supported environment reopens the deployment decision; do not silently replace the distribution promise with hosted-only operation.
|
||||
**Gate:** GC1 in the verification checklist. All 10 direct-file feasibility checks are verified with linked empirical evidence; GC1 is passed.
|
||||
|
||||
**Verified packaging refinement:** The [version 3 manual probe](evidence/phase0/2026-09-04-user-run-v3.md) loads and connects the engine-owned worklet from an embedded data URL in direct-file Chrome 152; the earlier Blob URL approach failed in the same user's testing. Use the verified data-URL approach for this packaging path, with an explicit page script-source allowlist and network connections disabled. This does not permit exhibit-authored executable code or declare the remaining GC1 checks complete.
|
||||
|
||||
@@ -40,7 +40,7 @@ For each exposed construct, specify JSON shape, required fields, defaults, units
|
||||
|
||||
Complete valid exhibits and invalid fixtures are required alongside each contract. Reconcile relevant details from the earlier discussion into the local specification. The current format document is a foundation and completeness register, not a claim that all grammar has been formalized.
|
||||
|
||||
**Gate:** GC2. Exact shared contracts precede their implementations; remaining subsystem contracts may be completed in dependency order. Publishing the schema and editor autocomplete remain optional post-MVP work. Maintaining an internal schema is required for 0.1.
|
||||
**Gate:** GC2. Shared contracts, structural schema, semantic validator, and 12-case test suite are verified; see [GC2 evidence](evidence/phase0/2026-09-05-gc2-format-contracts.md). Subsystem-specific contracts will be completed in dependency order before implementing each subsystem. Publishing the schema and editor autocomplete remain optional post-MVP work. Maintaining an internal schema is required for 0.1.
|
||||
|
||||
## 3. Bindings, overrides, and automation
|
||||
|
||||
|
||||
Reference in New Issue
Block a user