Skip to content

Commit 3167892

Browse files
Merge pull request #90 from engineeredsoftware/v35/gate-2-documentation-surface-catalog
V35 Gate 2: Documentation Surface Catalog
2 parents 445bc80 + e2d7f7e commit 3167892

19 files changed

Lines changed: 2346 additions & 12 deletions

.bitcode/v35-documentation-surface-catalog.json

Lines changed: 1377 additions & 0 deletions
Large diffs are not rendered by default.

.github/workflows/bitcode-gate-quality.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,9 @@ jobs:
164164
if [ -f BITCODE_SPEC_V35.md ]; then
165165
node scripts/check-bitcode-spec-family.mjs --version V35 --mode draft --current-target V34
166166
node scripts/check-v35-gate1-telemetry-docs-roadmap-opening.mjs --skip-branch-check
167+
if [ -f scripts/check-v35-gate2-documentation-surface-catalog.mjs ]; then
168+
node scripts/check-v35-gate2-documentation-surface-catalog.mjs --skip-branch-check
169+
fi
167170
fi
168171
node scripts/check-v34-gate10-promotion-readiness.mjs --promotion-mode --skip-branch-check
169172
else
@@ -211,6 +214,7 @@ jobs:
211214
pnpm --filter @bitcode/btd test -- --runTestsByPath __tests__/deployment-promotion-readiness-report.test.ts
212215
pnpm --filter @bitcode/btd test -- --runTestsByPath __tests__/v32-testnet-mainnet-readiness-rehearsal.test.ts
213216
pnpm --dir packages/protocol exec node --test --test-force-exit test/v32-promotion-proof-generation.test.js
217+
pnpm --dir packages/protocol exec node --test --test-force-exit test/v35-documentation-surface-catalog.test.js
214218
pnpm --filter @bitcode/api exec jest --config jest.config.cjs --runTestsByPath src/routes/__tests__/btd-crypto.test.ts --runInBand
215219
pnpm --filter @bitcode/api exec jest --config jest.config.cjs --runTestsByPath src/routes/__tests__/auxillaries-contract.test.ts --runInBand
216220
pnpm --dir packages/executions-mcp/src/mcp-server run test:mcp -- --runTestsByPath src/__tests__/unit/auth.test.ts --runInBand

BITCODE_SPEC_V35.md

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
- Current canonical/latest target: `V34`
88
- Prior canonical anchor: `BITCODE_SPEC_V34.md`
99
- Prior generated proof appendix: `BITCODE_SPEC_V34_PROVEN.md`
10-
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
10+
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, source-safe `.bitcode/v35-documentation-surface-catalog.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
1111
- Source parity state: V35 source parity opens with Gate 1 and will close telemetry taxonomy, documentation surface, dashboard/runbook, documentation QA, onboarding, integration, rehearsal, and promotion-readiness gates before canonical promotion
1212
- Active canonical pointer during draft opening: `BITCODE_SPEC.txt` -> `V34`
1313
- Notes companion: `BITCODE_SPEC_V35_NOTES.md`
@@ -212,6 +212,28 @@ V35 closes through ten gates:
212212
9. **Gate 9: Local Staging Telemetry Documentation Rehearsal** rehearses local and staging-testnet telemetry/docs visibility, dashboard/runbook paths, docs QA, and source-safe proof roots.
213213
10. **Gate 10: V35 Promotion Readiness** generates V35 telemetry/documentation proof artifacts, promotion readiness, active V35 / draft V36 posture, and canonical promotion support.
214214

215+
## V35 DocumentationSurfaceCatalog canon
216+
217+
Gate 2 materializes `DocumentationSurfaceCatalog` as package-owned protocol truth.
218+
The deterministic artifact `.bitcode/v35-documentation-surface-catalog.json` carries `source-safe-documentation-surface-metadata` and proves twelve required documentation surface rows:
219+
220+
- `canonical_spec_family`
221+
- `roadmap_contributor_governance`
222+
- `internal_codebase_docs`
223+
- `public_docs_surface`
224+
- `package_readmes`
225+
- `route_api_docs`
226+
- `api_interface_docs`
227+
- `generated_artifact_docs`
228+
- `deployment_operations_docs`
229+
- `telemetry_observability_docs`
230+
- `demonstration_docs`
231+
- `security_boundary_docs`
232+
233+
Every row names audience, owner, disclosure class, source roots, linked spec sections, linked generated artifacts, route or package bindings, proof coverage, forbidden content, freshness checks, and deterministic row root.
234+
The catalog fails closed on missing source roots, stale source roots, `_legacy/` source roots, secret-shaped values, unsupported public disclosure, protected source, wallet private material, provider tokens, raw protected prompts, and unpaid AssetPack source.
235+
The artifact is generated by `pnpm run generate:v35-documentation-surface-catalog`, checked by `pnpm run check:v35-documentation-surface-catalog`, closed by `pnpm run check:v35-gate2`, and exported by `@bitcode/protocol` through `buildDocumentationSurfaceCatalog`.
236+
215237
## V35 whole Bitcode operator chain
216238

217239
The V35 operator chain keeps V34 behavior and adds source-safe documentation and telemetry visibility:

BITCODE_SPEC_V35_DELTA.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
- Current canonical/latest target: `V34`
88
- Prior canonical anchor: `BITCODE_SPEC_V34.md`
99
- Prior generated proof appendix: `BITCODE_SPEC_V34_PROVEN.md`
10-
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
10+
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, source-safe `.bitcode/v35-documentation-surface-catalog.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
1111
- Source parity state: V35 opens source parity for telemetry taxonomy, documentation surfaces, dashboard/runbook, documentation QA, onboarding, integration, rehearsal, and promotion-readiness gates
1212
- Spec companion: `BITCODE_SPEC_V35.md`
1313
- Notes companion: `BITCODE_SPEC_V35_NOTES.md`
@@ -82,6 +82,13 @@ Closure acceptance:
8282
- every docs surface names audience, owner, disclosure class, source roots, generated artifacts, spec links, test coverage, and freshness checks;
8383
- source-bearing material, secrets, wallet private material, and unpaid AssetPack contents remain blocked from public docs.
8484

85+
Gate 2 closure implementation:
86+
87+
- `@bitcode/protocol` exports `DocumentationSurfaceCatalog` support through `buildDocumentationSurfaceCatalog`;
88+
- `.bitcode/v35-documentation-surface-catalog.json` records twelve source-safe documentation rows under `source-safe-documentation-surface-metadata`;
89+
- `pnpm run check:v35-documentation-surface-catalog` verifies artifact freshness and source roots;
90+
- `pnpm run check:v35-gate2` verifies package source, generated artifact, package tests, workflows, docs, parity, and roadmap advancement.
91+
8592
### Gate 3: Telemetry Taxonomy Event Schema And Redaction
8693

8794
Gate 3 defines source-safe event law.

BITCODE_SPEC_V35_NOTES.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
- Current canonical/latest target: `V34`
88
- Prior canonical anchor: `BITCODE_SPEC_V34.md`
99
- Prior generated proof appendix: `BITCODE_SPEC_V34_PROVEN.md`
10-
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
10+
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, source-safe `.bitcode/v35-documentation-surface-catalog.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
1111
- Source parity state: V35 opens source parity for telemetry taxonomy, documentation surfaces, dashboard/runbook, documentation QA, onboarding, integration, rehearsal, and promotion-readiness gates
1212
- Scope: V35 draft notes for telemetry and documentation depth over promoted V34 deployment canon
1313
- Last fully realized canonical target preserved in source: `V34`
@@ -56,6 +56,7 @@ Read the system as:
5656
- `OperatorRunbookCatalog` binds dashboards, alerts, incidents, escalation, repair commands, and post-incident documentation updates to telemetry taxonomy rows.
5757
- `TestnetRolloutReadinessGuide` carries contributor, operator, enterprise reader, depositor, and interface consumer paths for local and staging-testnet use.
5858
- V35 public docs can expose measurements, proof posture, fee/right boundaries, setup steps, and known blockers; they cannot expose secrets, wallet private material, protected source, raw prompts containing protected data, or unpaid AssetPack source.
59+
- Gate 2 closes `DocumentationSurfaceCatalog` with `.bitcode/v35-documentation-surface-catalog.json`, `source-safe-documentation-surface-metadata`, package export `buildDocumentationSurfaceCatalog`, package test coverage, and `check:v35-gate2`.
5960

6061
## Inherited deployment-depth notes
6162

BITCODE_SPEC_V35_PARITY_MATRIX.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
- Current canonical/latest target: `V34`
88
- Prior canonical anchor: `BITCODE_SPEC_V34.md`
99
- Prior generated proof appendix: `BITCODE_SPEC_V34_PROVEN.md`
10-
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
10+
- Generated structured artifact inventory: draft `.bitcode/v35-spec-family-report.json`, draft `.bitcode/v35-canonical-input-report.json`, source-safe `.bitcode/v35-documentation-surface-catalog.json`, future source-safe V35 telemetry/documentation artifacts, and `BITCODE_SPEC_V35_PROVEN.md` only after V35 promotion
1111
- Source parity state: V35 opens source parity for telemetry taxonomy, documentation surfaces, dashboard/runbook, documentation QA, onboarding, integration, rehearsal, and promotion-readiness gates
1212
- Spec companion: `BITCODE_SPEC_V35.md`
1313
- Notes companion: `BITCODE_SPEC_V35_NOTES.md`
@@ -54,7 +54,7 @@ No `_legacy/` source is active source truth.
5454
| --- | --- | --- | --- | --- |
5555
| Draft family and branch posture | Gate 1 | `BITCODE_SPEC_V35.md`, DELTA, NOTES, PARITY, `BITCODE_SPEC.txt`, branch `v35/gate-1-telemetry-docs-roadmap-opening` | drafted | V35 family validates in draft mode over active V34 and `check:v35-gate1` passes. |
5656
| Roadmap truth | Gate 1 | `SPECIFICATIONS_ROADMAP.md`, README, PR template, workflow posture | drafted | Roadmap states V34 active, V35 draft, and coherent V36-V37 responsibilities. |
57-
| Documentation surface catalog | Gate 2 | `DocumentationSurfaceCatalog`, generated docs surface artifact, tests, and `check:v35-gate2` | drafted | Internal codebase docs, public `/docs`, package docs, route docs, generated artifact docs, API/interface docs, owners, freshness checks, and disclosure classes have package-owned rows. |
57+
| Documentation surface catalog | Gate 2 | `DocumentationSurfaceCatalog`, `.bitcode/v35-documentation-surface-catalog.json`, `packages/protocol/src/canonical/documentation-surface-catalog.js`, `packages/protocol/test/v35-documentation-surface-catalog.test.js`, and `check:v35-gate2` | closed | Internal codebase docs, public `/docs`, package docs, route docs, generated artifact docs, API/interface docs, owners, freshness checks, and disclosure classes have package-owned rows. |
5858
| Telemetry taxonomy event schema | Gate 3 | `TelemetryTaxonomyCatalog`, generated telemetry taxonomy artifact, tests, and `check:v35-gate3` | drafted | Pipeline, execution, PTRR agent, ThricifiedGeneration, tool, ledger, wallet, storage, interface, deployment, observer, repair, docs QA, and promotion events are source-safe and proof-rooted. |
5959
| Public docs usage guides | Gate 4 | public `/docs`, internal docs roots, package docs, source-safe examples, and `check:v35-gate4` | drafted | Terminal, Protocol, Auxillaries, MCP API, ChatGPT App, BTD, AssetPack ranges, Reads, fees, and proof posture docs derive from package/SPEC truth. |
6060
| Dashboards alerts runbooks incident escalation | Gate 5 | `OperatorRunbookCatalog`, dashboard/runbook bindings, incident fixtures, and `check:v35-gate5` | drafted | Telemetry events bind to dashboard panels, alert thresholds, incident classes, escalation paths, safe commands, forbidden data, and post-incident docs updates. |
@@ -72,6 +72,7 @@ No `_legacy/` source is active source truth.
7272
| Gate branch pattern | V35 work happens on `version/v35` or `v35/gate-N-*` branches | drafted |
7373
| Spec-family shape | V35 SPEC, DELTA, NOTES, and PARITY satisfy the full spec-family checker | drafted |
7474
| Gate 1 script | `pnpm run check:v35-gate1` fails closed on stale posture, missing roadmap truth, or missing telemetry/documentation scope | drafted |
75+
| Gate 2 script | `pnpm run check:v35-gate2` fails closed on stale documentation surface catalog, missing source roots, source-unsafe disclosure, missing package export, missing package test, missing workflow wiring, or missing generated artifact profile binding | closed |
7576
| Gate-quality workflow | Gate workflow validates V34 active / V35 draft posture and the V35 Gate 1 checker | drafted |
7677
| Canon-quality workflow | Canon workflow validates promoted V34 canon, V35 draft family when present, and V34/V35 posture | drafted |
7778
| Package docs | README, protocol package README, demonstration README, and PR template state V34 active / V35 draft workflow | drafted |
@@ -101,9 +102,11 @@ No `_legacy/` source is active source truth.
101102

102103
| Requirement | Source evidence | Current V35 judgment |
103104
| --- | --- | --- |
104-
| Documentation surface catalog planned | `DocumentationSurfaceCatalog` in SPEC/DELTA/NOTES/PARITY | drafted |
105-
| Public/internal docs scope named | V35 SPEC, README, roadmap, and notes | drafted |
106-
| Disclosure classes planned | V35 Gate 2 acceptance criteria | drafted |
105+
| Documentation surface catalog implemented | `packages/protocol/src/canonical/documentation-surface-catalog.js` exports `buildDocumentationSurfaceCatalog` and required surface ids | closed |
106+
| Generated artifact exists | `.bitcode/v35-documentation-surface-catalog.json` with `source-safe-documentation-surface-metadata` | closed |
107+
| Public/internal docs scope named | Catalog rows include `public_docs_surface`, `internal_codebase_docs`, `package_readmes`, `route_api_docs`, `api_interface_docs`, and `generated_artifact_docs` | closed |
108+
| Disclosure classes enforced | Catalog rows include disclosure classes, forbidden content, freshness checks, source roots, generated artifacts, and row roots | closed |
109+
| Gate 2 package and workflow proof | `packages/protocol/test/v35-documentation-surface-catalog.test.js`, `scripts/check-v35-gate2-documentation-surface-catalog.mjs`, `package.json`, and `.github/workflows/bitcode-gate-quality.yml` | closed |
107110

108111
## Gate 3 Parity
109112

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ V35 closure focuses on telemetry and documentation depth over promoted V34:
1717
internal codebase docs, public `/docs`, telemetry taxonomy, dashboards, alert
1818
runbooks, incident response, operator escalation, documentation QA, developer
1919
onboarding, operator guides, and testnet-rollout readiness.
20+
V35 Gate 2 now anchors documentation surfaces through the package-owned
21+
`DocumentationSurfaceCatalog` and the source-safe generated artifact
22+
`.bitcode/v35-documentation-surface-catalog.json`.
2023

2124
The protocol demonstration remains the minimal deterministic reference for the
2225
same protocol. Commercial code may mount or compare against demonstration

SPECIFICATIONS_ROADMAP.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
- Current active canonical pointer: `BITCODE_SPEC.txt` -> `V34`
66
- Current active canon: `BITCODE_SPEC_V34.md`
77
- Current draft target: `BITCODE_SPEC_V35.md`
8-
- Current working gate: V35 Gate 1 Telemetry Documentation Roadmap And Spec Opening, following promoted V34 Deployment Depth.
8+
- Current working gate: V35 Gate 3 Telemetry Taxonomy Event Schema And Redaction, following the closed V35 Documentation Surface Catalog gate.
99
- Latest closed version: V34 Deployment Depth, which promoted host capabilities, environment lanes, distributed executions, storage posture, secret rotation, migration approvals, observers, repair jobs, rollback/upgrade playbooks, local/staging-testnet deployment rehearsal, and V34 promotion readiness.
1010
- Recent V34 closure anchor: V34 Gate 10 Promotion Readiness generated V34 proof support, promoted `BITCODE_SPEC.txt` to `V34`, prepared V34 active / V35 draft runtime posture, and closed deployment-depth canon.
1111
- V34 Gate 2 closure anchor: deployment-depth now owns package-backed `DeploymentHostCapabilityCatalog` and `EnvironmentLaneContract` source, deterministic `.bitcode/v34-deployment-host-capability-catalog.json` and `.bitcode/v34-environment-lane-contracts.json`, and visible `value-bearing-mainnet` blocking through `blocked_future_canon_required`.
@@ -18,6 +18,7 @@
1818
- V34 Gate 9 closure anchor: deployment-depth now owns package-backed `DeploymentReadinessRehearsal` source, deterministic `.bitcode/v34-local-staging-testnet-deployment-rehearsal.json`, local full-stack deployment rehearsal, staging-testnet full-stack deployment rehearsal, value-bearing mainnet blocked rehearsal, Terminal, public API, MCP API, ChatGPT App, Reading pipeline execution receipts, settlement/finality simulation, storage posture, repair posture, source-safe logs, proof-rooted screenshots or logs, validation commands, proof roots, and no secret values serialization coverage.
1919
- V34 Gate 10 closure anchor: deployment-depth now owns package-backed `DeploymentPromotionReadinessReport` source, deterministic `.bitcode/v34-promotion-readiness-report.json`, V34 promotion command planning, generated appendix support through `BITCODE_SPEC_V34_PROVEN.md`, V34 canon promotion workflow support, gate/canon workflow postures, source-safe deployment artifact evidence, direct-main push denial, and active V34 / draft V35 post-promotion readiness.
2020
- V35 Gate 1 opening anchor: telemetry/documentation depth opens over promoted V34 with V35 SPEC, DELTA, NOTES, and PARITY files, `check:v35-gate1`, V34 active / V35 draft posture, and a ten-gate plan for documentation surfaces, telemetry taxonomy, public docs, dashboards/runbooks/incidents, documentation QA, onboarding/testnet guides, interface integration, rehearsal, and promotion readiness.
21+
- V35 Gate 2 closure anchor: telemetry/documentation depth now owns package-backed `DocumentationSurfaceCatalog` source, deterministic `.bitcode/v35-documentation-surface-catalog.json`, `source-safe-documentation-surface-metadata`, public `/docs`, internal docs, package docs, route docs, generated artifact docs, API/interface docs, owner/freshness/disclosure posture, package tests, workflow wiring, and `check:v35-gate2`.
2122
- Purpose: concise running index of Bitcode/ENGI specification history, current work, and planned work.
2223

2324
This roadmap is not an active system specification.

internal-docs/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
# Bitcode Internal Notes
22

3-
Status: non-canonical scratch documentation. The active canonical system specification is `BITCODE_SPEC_V27.md`; these notes are useful only insofar as they help draft, implement, or verify the active SPEC family or the explicitly opened draft-target family.
3+
Status: non-canonical internal documentation. The active canonical system specification pointer is `BITCODE_SPEC.txt` -> `V34`; V35 is the active draft-target family for telemetry and documentation depth. These notes are useful only insofar as they help draft, implement, or verify the active SPEC family or the explicitly opened draft-target family.
44

55
## Rules
66

77
- Do not treat this directory as canonical truth.
88
- Promote requirements into the active SPEC/PARITY/proof family, or into the explicitly opened draft-target SPEC family, before relying on them as requirements.
9+
- Keep internal docs registered through `DocumentationSurfaceCatalog` when they become gate, operator, route, package, or proof dependencies.
910
- Keep note filenames and content Bitcode-only.
1011
- Prefer Read, fit, AssetPack, shares, Finish, delivery mechanism, Terminal, Exchange, Protocol, proof, and settlement vocabulary.
1112
- Treat compatibility source names as implementation corridors, not product vocabulary.

0 commit comments

Comments
 (0)