Skip to content

Commit 905a872

Browse files
Merge pull request #247 from engineeredsoftware/v47/gate-10-promotion-demonstration-posture
V47 Gate 10: Open V48 notes posture
2 parents 2757d33 + 499d336 commit 905a872

13 files changed

Lines changed: 107 additions & 37 deletions

.bitcode/v47-depositor-website-completion.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -367,7 +367,7 @@
367367
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
368368
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
369369
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
370-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
370+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
371371
"depositRouteModel": "uapi/app/deposit/deposit-route-model.ts:6485e388dd745c79907f992c",
372372
"depositClient": "uapi/app/deposit/DepositPageClient.tsx:f01b600f9ef64cd3739460ef",
373373
"depositPage": "uapi/app/deposit/page.tsx:6bab6a9debab3f4350d0ddca",
@@ -389,7 +389,7 @@
389389
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
390390
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
391391
},
392-
"artifactRoot": "v47-depositor-website-completion:2f255b29b5377c600235d0c3",
392+
"artifactRoot": "v47-depositor-website-completion:69db1bf36ab6b8ed5a6a8e07",
393393
"coverage": {
394394
"requiredPredicateCount": 21,
395395
"passedPredicateCount": 21,

.bitcode/v47-e2e-ip-selling-buying-tests.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@
267267
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
268268
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
269269
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
270-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
270+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
271271
"ipExchangeSpec": "uapi/tests/e2e/commercial-mvp.ip-exchange.spec.ts:86af66133e5ede25935ffd9d",
272272
"e2eHelpers": "uapi/tests/e2e/commercial-mvp.helpers.ts:5bb8c28f36170b877e8a467a",
273273
"playwrightConfig": "uapi/playwright.config.ts:0aea6b01fa17b8c0614b2074",
@@ -285,7 +285,7 @@
285285
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
286286
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
287287
},
288-
"artifactRoot": "v47-e2e-ip-selling-buying-tests:41410d8306013276c481f356",
288+
"artifactRoot": "v47-e2e-ip-selling-buying-tests:4ff062c8b668f3b560d68660",
289289
"coverage": {
290290
"requiredPredicateCount": 17,
291291
"passedPredicateCount": 17,

.bitcode/v47-feature-excess-alignment-audit.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"currentTarget": "V46",
66
"sourceSafetyVerdict": "source-safe-launch-scope-metadata",
77
"generatedAt": "deterministic",
8-
"artifactRoot": "v47-feature-excess-alignment-audit:76351ff10deb6505730951c4",
8+
"artifactRoot": "v47-feature-excess-alignment-audit:dab72941b86dd32b989699fa",
99
"passed": true,
1010
"launchRouteIds": [
1111
"/deposit",
@@ -170,7 +170,7 @@
170170
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
171171
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
172172
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
173-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
173+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
174174
"publicCopy": "uapi/components/base/bitcode/layout/bitcode-public-copy.ts:c5be84e7b72e6930dd78f91d",
175175
"nav": "uapi/components/base/bitcode/layout/nav.tsx:2b2eaaf65982969883af8d1e",
176176
"features": "uapi/config/features.ts:6ff2da113ab17dfc468d7461",

.bitcode/v47-landing-public-launch-messaging.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@
292292
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
293293
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
294294
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
295-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
295+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
296296
"publicCopy": "uapi/components/base/bitcode/layout/bitcode-public-copy.ts:c5be84e7b72e6930dd78f91d",
297297
"landingPage": "uapi/app/(root)/components/MarketingLandingPage.tsx:5a7bbc85fa67525dd83127b2",
298298
"testnetSection": "uapi/app/(root)/components/landing/MarketingLandingTestnetSection.tsx:04e5895c15559d4f262335dc",
@@ -309,7 +309,7 @@
309309
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
310310
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
311311
},
312-
"artifactRoot": "v47-landing-public-launch-messaging:57accb8f0e8c1f4a4849e668",
312+
"artifactRoot": "v47-landing-public-launch-messaging:73fe7d4d1b7fd9823bb4039a",
313313
"coverage": {
314314
"requiredPredicateCount": 17,
315315
"passedPredicateCount": 17,

.bitcode/v47-packs-auxillaries-commercial-dashboard.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@
352352
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
353353
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
354354
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
355-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
355+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
356356
"packsClient": "uapi/app/packs/PacksPageClient.tsx:6314e03df5bf7c598e5b7802",
357357
"packsPage": "uapi/app/packs/page.tsx:1b3d7a1cc00500a13042e8dd",
358358
"packActivityModel": "uapi/components/base/bitcode/activity/pack-activity-model.ts:5505d016bb0af42b461d98bb",
@@ -378,7 +378,7 @@
378378
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
379379
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
380380
},
381-
"artifactRoot": "v47-packs-auxillaries-commercial-dashboard:04b0c33edfcbaa5a04c4c79f",
381+
"artifactRoot": "v47-packs-auxillaries-commercial-dashboard:592076dd0d00b8b3ca10582f",
382382
"coverage": {
383383
"requiredPredicateCount": 19,
384384
"passedPredicateCount": 19,

.bitcode/v47-promotion-readiness-report.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
"relativePath": ".bitcode/v47-feature-excess-alignment-audit.json",
4242
"present": true,
4343
"parseable": true,
44-
"digest": "sha256:ec88096fd3a5b362283f3ced4402dde5b36ffd6c8f17b439cab3cdad684d24c2",
44+
"digest": "sha256:da12bec499f25df271e4023287ac4d4486e5a38c4a047e72c9c00122c5096bf5",
4545
"byteLength": 12908,
4646
"sourceSafe": true,
4747
"artifactId": "v47-feature-excess-alignment-audit",
@@ -52,7 +52,7 @@
5252
"relativePath": ".bitcode/v47-seller-buyer-state-machine-law.json",
5353
"present": true,
5454
"parseable": true,
55-
"digest": "sha256:e83504078f8b9339d5791531235dd9a86899e5f2b7e379433c6d0a6466978847",
55+
"digest": "sha256:96700b1ffed189105cbea860dae739d94854074d884674192d92b5501d44f552",
5656
"byteLength": 17843,
5757
"sourceSafe": true,
5858
"artifactId": "v47-seller-buyer-state-machine-law",
@@ -63,7 +63,7 @@
6363
"relativePath": ".bitcode/v47-depositor-website-completion.json",
6464
"present": true,
6565
"parseable": true,
66-
"digest": "sha256:d7388b0964dd1290ff6ade6c4e489e6316f75df0e0047210acecfb4c6434bd01",
66+
"digest": "sha256:f438a1dddfb52bfbc59d5b0c8447ecb5df8b235f5646c25dac675f43ff04029a",
6767
"byteLength": 16010,
6868
"sourceSafe": true,
6969
"artifactId": "v47-depositor-website-completion",
@@ -74,7 +74,7 @@
7474
"relativePath": ".bitcode/v47-reader-website-completion.json",
7575
"present": true,
7676
"parseable": true,
77-
"digest": "sha256:aeab52810017f5318a110fe908a7171e016c4eee5cd1439b5435e69bf89abfcd",
77+
"digest": "sha256:fdcf94dcb3deecb1b9916e92ecf698fca9398ae54d470eebc2483dfe79cb5f43",
7878
"byteLength": 15762,
7979
"sourceSafe": true,
8080
"artifactId": "v47-reader-website-completion",
@@ -85,7 +85,7 @@
8585
"relativePath": ".bitcode/v47-packs-auxillaries-commercial-dashboard.json",
8686
"present": true,
8787
"parseable": true,
88-
"digest": "sha256:af71c0b0048fd00584984c387ecc6b19bfbb6b3400fb7824c066d23e8b9d3f54",
88+
"digest": "sha256:8850b967e3542ac3609235a09e94d63a055471fd3b2a941f9a7c995b2840dfc0",
8989
"byteLength": 15726,
9090
"sourceSafe": true,
9191
"artifactId": "v47-packs-auxillaries-commercial-dashboard",
@@ -96,7 +96,7 @@
9696
"relativePath": ".bitcode/v47-e2e-ip-selling-buying-tests.json",
9797
"present": true,
9898
"parseable": true,
99-
"digest": "sha256:0bef67ac6eb962f0cfbc828b941f3e7e43640ea76203d5de2760efd06614dbea",
99+
"digest": "sha256:9d2abd92b70e9c21e81ab116ede7cd571c24bca682dd65193aad83ae90fdd8fa",
100100
"byteLength": 11931,
101101
"sourceSafe": true,
102102
"artifactId": "v47-e2e-ip-selling-buying-tests",
@@ -107,7 +107,7 @@
107107
"relativePath": ".bitcode/v47-landing-public-launch-messaging.json",
108108
"present": true,
109109
"parseable": true,
110-
"digest": "sha256:60d12bff0913cf10c5ce853747bf28b61555d989f91ea9cb6ab67229165c4e24",
110+
"digest": "sha256:ba2191a79a4310ce34a1081d8bd7abc2cb934ba8a3cbb7fd54e883b79491d198",
111111
"byteLength": 13005,
112112
"sourceSafe": true,
113113
"artifactId": "v47-landing-public-launch-messaging",
@@ -118,7 +118,7 @@
118118
"relativePath": ".bitcode/v47-staging-testnet-deployment-rehearsal.json",
119119
"present": true,
120120
"parseable": true,
121-
"digest": "sha256:141bc3abe7e28c9d2861c17b1c46223677918a979f70f54b33f5fa2459c230d4",
121+
"digest": "sha256:85954ec866c07b3594a495cf55420ca73e2f99d68fe33e43852376b767d54c0c",
122122
"byteLength": 17320,
123123
"sourceSafe": true,
124124
"artifactId": "v47-staging-testnet-deployment-rehearsal",
@@ -348,7 +348,7 @@
348348
{
349349
"relativePath": "packages/protocol/src/canonical/v21-specifying.js",
350350
"present": true,
351-
"digest": "sha256:fcf80c461c17d0dcc4aa60f97a4c0e59fc665016ead08c4478dd870fde870b0b",
351+
"digest": "sha256:c003b3545b9a6b2818bf797017e69ac8442cb157c4142c31d2d6e377bb6e56e1",
352352
"requiredTokens": [
353353
{
354354
"token": ".bitcode/v47-promotion-readiness-report.json",
@@ -456,7 +456,7 @@
456456
{
457457
"relativePath": "SPECIFICATIONS_ROADMAP.md",
458458
"present": true,
459-
"digest": "sha256:dd65b4f247f3f62a2b2ed54720b7169f9fac0be272aca381376497b58bbf2380",
459+
"digest": "sha256:2400ea79d304ff28b7fd8e7a80306290f88d25b729c4bcac635df8e321453b40",
460460
"requiredTokens": [
461461
{
462462
"token": "V47 Gate 10 closure anchor",

.bitcode/v47-reader-website-completion.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@
368368
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
369369
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
370370
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
371-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
371+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
372372
"readRouteModel": "uapi/app/read/read-route-model.ts:d033da8b41b8116c65cbcc7f",
373373
"readClient": "uapi/app/read/ReadPageClient.tsx:71e7c03e77104e9ab995dafb",
374374
"readPage": "uapi/app/read/page.tsx:37a723ed87feac05c0504249",
@@ -390,7 +390,7 @@
390390
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
391391
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
392392
},
393-
"artifactRoot": "v47-reader-website-completion:485bb67fa24ac23eafcf06c3",
393+
"artifactRoot": "v47-reader-website-completion:0e4e896f3a81c72af308c7ca",
394394
"coverage": {
395395
"requiredPredicateCount": 20,
396396
"passedPredicateCount": 20,

.bitcode/v47-seller-buyer-state-machine-law.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@
453453
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
454454
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
455455
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
456-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
456+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
457457
"depositRouteModel": "uapi/app/deposit/deposit-route-model.ts:6485e388dd745c79907f992c",
458458
"readRouteModel": "uapi/app/read/read-route-model.ts:d033da8b41b8116c65cbcc7f",
459459
"packActivityModel": "uapi/components/base/bitcode/activity/pack-activity-model.ts:5505d016bb0af42b461d98bb",
@@ -471,7 +471,7 @@
471471
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
472472
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
473473
},
474-
"artifactRoot": "v47-seller-buyer-state-machine-law:40121031f1834158f610c7ce",
474+
"artifactRoot": "v47-seller-buyer-state-machine-law:aa2e39a8535a5227507c7cba",
475475
"coverage": {
476476
"requiredPredicateCount": 18,
477477
"passedPredicateCount": 18,

.bitcode/v47-staging-testnet-deployment-rehearsal.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -414,7 +414,7 @@
414414
"delta": "BITCODE_SPEC_V47_DELTA.md:40c3a78f1d2502d7b3cdca93",
415415
"notes": "BITCODE_SPEC_V47_NOTES.md:171306fae397cc25ca8de67f",
416416
"parity": "BITCODE_SPEC_V47_PARITY_MATRIX.md:f2ec234455412a4f64c4e743",
417-
"roadmap": "SPECIFICATIONS_ROADMAP.md:dd65b4f247f3f62a2b2ed547",
417+
"roadmap": "SPECIFICATIONS_ROADMAP.md:2400ea79d304ff28b7fd8e7a",
418418
"vercelConfig": "vercel.json:dc37bcc712ffebde92df8ee3",
419419
"supabaseConfig": "supabase/config.toml:326a24c75a5e01be200cbc43",
420420
"baseMigration": "supabase/migrations/001_v26_production.sql:a5a5b7a51d989ebe7fb77d04",
@@ -434,7 +434,7 @@
434434
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:406e0b5c647ecf5d1f1b3097",
435435
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:ab37403273c35c918071e3cd"
436436
},
437-
"artifactRoot": "v47-staging-testnet-deployment-rehearsal:13185422b9bf8daca32a4582",
437+
"artifactRoot": "v47-staging-testnet-deployment-rehearsal:099b055a9530034afffe20d2",
438438
"coverage": {
439439
"requiredPredicateCount": 18,
440440
"passedPredicateCount": 18,

BITCODE_SPEC_V48_NOTES.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Bitcode Spec V48 Notes
2+
3+
## Status
4+
5+
- Version: `V48`
6+
- Canonical pointer: `BITCODE_SPEC.txt` -> `V47`
7+
- Active canonical anchor: `BITCODE_SPEC_V47.md`
8+
- Active generated proof appendix: `BITCODE_SPEC_V47_PROVEN.md`
9+
- Current canonical/latest target: `V47`
10+
- Prior canonical anchor: `BITCODE_SPEC_V46.md`
11+
- Prior generated proof appendix: `BITCODE_SPEC_V46_PROVEN.md`
12+
- V48 state: notes-only draft opening
13+
- Scope: V48 starts as the interactive local experiential QA target over promoted V47 commercial website testnet launch canon.
14+
15+
## Notes-only draft rule
16+
17+
These notes make the V48 draft target visible to strict spec-quality checks
18+
after V47 promotion. They are not first-gate implementation authority, not a
19+
full V48 specification family, and not permission to bypass the V47 canon. V48
20+
work must continue by exercising the live commercial testnet experience
21+
interactively, recording accepted findings, creating an explicit parity
22+
matrix, and then opening scoped gate branches only after the QA-driven
23+
specification intent is clear.
24+
25+
## Deferred from V47
26+
27+
V47 promoted commercial website testnet launch readiness. It launch-froze
28+
`/deposit`, `/read`, `/packs`, and Auxillaries, made measurement law and the
29+
IP seller/buyer state machines exact, completed the depositor and reader
30+
websites, the packs/Auxillaries commercial dashboard, browser-proven E2E IP
31+
selling and buying, landing/public launch messaging, the staging-testnet
32+
deployment rehearsal, and promotion readiness — all over the preserved
33+
Bitcoin/BTC settlement language, BTD scalar-volume and rights language,
34+
GitHub delivery boundaries, compute constraints, storage boundaries, and
35+
build/process validation carried from the promoted V46 comprehension canon.
36+
37+
V48 begins from the remaining question: what does the first live commercial
38+
(testnet) experience still need before real users can walk every core step
39+
without friction. The opening posture is intentionally experiential: run the
40+
deployed staging-testnet system end to end, step by step, and fix what breaks.
41+
42+
## Candidate V48 workstreams
43+
44+
- Environment preparation: staging Supabase database readiness, wallet-fauceted
45+
testnet BTC, local telemetry expectations, and a step-by-step debugging
46+
experience that validates each core user step.
47+
- Identity and authentication: sign up/in, and Auxillaries readiness for
48+
connecting GitHub, wallet(s), and other external surfaces.
49+
- Depositing: connecting knowledge, requesting AssetPack syntheses to review,
50+
reviewing, and depositing.
51+
- Reading: connecting knowledge, requesting a Read, reviewing the synthesized
52+
Need, reviewing potential Fits, and buying Fit(s).
53+
- Ledgerized journaling: replayability, auditability, `/packs` page UX/UI, and
54+
the personal (Auxillaries) history of work.
55+
56+
## Non-goals during V48 opening
57+
58+
- Do not implement V48 product behavior from this notes-only opening.
59+
- Do not rewrite V47 promoted canon except through an explicit addendum.
60+
- Do not expose raw source, unpaid AssetPack source, secrets, wallet private
61+
material, private settlement payloads, raw prompts, or raw provider responses.
62+
- Do not collapse estimate, quote, observed payment, final settlement,
63+
contributor allocation, delivery, compensation, and repair states.
64+
- Do not launch value-bearing mainnet settlement in V48 opening work.
65+
- Do not treat notes-only V48 material as stronger than active V47 protocol law.

0 commit comments

Comments
 (0)