Skip to content

Commit ba48e4b

Browse files
chore: version packages (rc) (#768)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 7e8575d commit ba48e4b

5 files changed

Lines changed: 43 additions & 3 deletions

File tree

‎.changeset/pre.json‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,18 @@
4848
"boot-check-merged-shape",
4949
"boot-deadlines-and-diagnosability",
5050
"boot-fetch-transient-retry",
51+
"boot-snapshot-boot-rung",
52+
"boot-snapshot-health-provenance",
53+
"boot-snapshot-schema",
5154
"bos-app-ts-canonical-config-form",
5255
"bos-app-ts-operative",
5356
"bos-dev-overlay-command-modules",
5457
"bos-import-workspace",
5558
"bos-kill-escalation-and-adoption",
59+
"bos-lock-producer",
5660
"bos-login-gasless-publish",
5761
"bos-manifest-command",
62+
"bos-promote",
5863
"bos-rollback",
5964
"bos-typecheck-command",
6065
"bos-upgrade-release-sync",
@@ -85,12 +90,14 @@
8590
"compose-drop-degraded-toast",
8691
"compose-failure-isolation",
8792
"compose-shadow-subtree-parentage",
93+
"composition-lockfile-schema",
8894
"concurrent-boot-artifact-race",
8995
"concurrent-migration-ddl-race",
9096
"config-declared-permissions",
9197
"config-discovery-dependencies",
9298
"config-pipeline-effect-native",
9399
"configured-slot-stamping",
100+
"confirm-action-indexed-outcome",
94101
"consolidated-deploy-train",
95102
"consumer-coupling-fixes",
96103
"consumer-release-plane",
@@ -109,6 +116,7 @@
109116
"debrand-naming-sweep",
110117
"degraded-compose-core-only-tree",
111118
"deploy-cdn-origin-guard",
119+
"deploy-confirm-tx-status",
112120
"deploy-folder-form-plugin-uis",
113121
"deploy-image-leg-run-stdout",
114122
"deploy-key-mint",
@@ -119,9 +127,11 @@
119127
"deploy-preflight-schema-guard",
120128
"deploy-prerequisite-build-mode",
121129
"deploy-smoke-digest-and-registry-read",
130+
"deploy-smoke-thin-tag-decode",
122131
"deploy-speed-430",
123132
"deploy-train-service",
124133
"deploy-train-smoke-gate",
134+
"deploy-wallet-rpc-pin",
125135
"deps-catalog-bump-nov",
126136
"dev-bootstrap-effect-program",
127137
"dev-chain-audit",
@@ -182,12 +192,14 @@
182192
"image-leg-split-from-deploy",
183193
"image-native-artifacts",
184194
"import-migration-reconciliation",
195+
"init-auth-types-stale-copy",
185196
"init-prune-unused-ui",
186197
"key-generate-staging-flag",
187198
"lint-zero-warnings",
188199
"local-auth-plugin-client-gen",
189200
"local-stack-base-url-and-lock-timeout",
190201
"locale-negotiation-ssr",
202+
"lockfile-boot-consumes",
191203
"login-redirect-loop-fix",
192204
"lossless-descriptor-round-trip",
193205
"manifest-composition-rework",
@@ -233,7 +245,9 @@
233245
"pnpm-v2-node-image",
234246
"polite-passkey-autofill",
235247
"pr-train-021-hardening",
248+
"preflight-publish-key-health",
236249
"promote-agent-docs",
250+
"publish-balance-gate",
237251
"publish-pin-verification-gate",
238252
"published-exports-src-dangling",
239253
"purge-stale-surface-006",
@@ -332,8 +346,10 @@
332346
"tenant-framework-subpath",
333347
"test-database-isolation",
334348
"test-scripts-if-present-placement",
349+
"train-writes-lockfile",
335350
"transport-neutral-module-hosting",
336351
"two-database-contract",
352+
"two-plane-boot-staging",
337353
"typecheck-plugin-uis",
338354
"typed-effect-errors-host-packages",
339355
"typed-mount-contract",

‎packages/everything-dev/CHANGELOG.md‎

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,29 @@
11
# everything-dev
22

3+
## 2.0.0-rc.38
4+
5+
### Minor Changes
6+
7+
- e633d93: The approved boot snapshot's wire schema ships as the `everything-dev/snapshot` subpath (ADR 0041): a persisted, verified serving state — runtime ref, authorizing manifest tag, pointer fingerprint, the resolved published config, the pinned-remote mirror, and the deploy-record key — written on adopt so a restart can serve the approved composition during a registry/CDN outage. Schema and path helpers only; the coordinator and boot-path wiring follow in the boot-snapshot sprint's next tickets.
8+
- bde5817: `bos lock` — freeze the resolved composition into `bos.lock.json` (ADR 0042). The command resolves the authored config through the full extends chain + release stamping (the same resolution session the deploy train uses) and writes the lockfile atomically; `bos lock --check` re-resolves and exits 1 on drift for CI. The runtime map gains lockfile provenance: when a lockfile exists, the generated map carries its fingerprint, release, and resolved-at, and names every source/backend whose serving digest differs from the frozen one (`lockfile.drift`) — the explainer can no longer drift silently from the frozen composition. `everything-dev/lockfile` gains `readLockfileIfExists` and the shared `writeLockfile` producer seam.
9+
- c797040: `bos promote <block-height>` — activate a recorded deployment without rebuilding (ADR 0042 ticket 05, absorbing the unified-rollback plan): the same SRI-verified, boot-checked, pointer-restoring republish as `bos rollback --version`, framed as promotion — no rolledBackFrom brand on the payload, an already-live target is an idempotent no-op rather than a refusal, and the version is required (promotion targets a record, not "previous"). The lockfile consumption rides the train's ticket-04 leg: the promoted composition is frozen into bos.lock.json atomically after confirm, and the deployment record named its digest all along. The Railway image leg stays in CI's deploy workflow (the CLI holds no Railway credential); the config/pointer/lockfile plane is complete from here.
10+
- e633d93: The composition lockfile's wire schema ships as the `everything-dev/lockfile` subpath (ADR 0042): `bos.lock.json` freezes one runtime's exact composition — the pinned descriptors and bare plugin refs in walk order, optional shared-singleton and contract records, and a fingerprint that equals the pointer fingerprint of the frozen config and recomputes from the stored record alone. Schema and path helpers only; the `bos lock` producer and boot consumer follow in the composition-lockfile sprint's next tickets.
11+
- fc552a6: Registry starts consume `bos.lock.json` (ADR 0042 ticket 03): when a lockfile is present for the booting runtime, its frozen remote coordinates are the boot's authority — missing pins are stamped from the frozen descriptors and drifted coordinates are overridden, with every stamp and disagreement reported as a loud warning in the start summary. The boot never fails because of the lockfile — enforcement lives in CI via `bos lock --check`. The `everything-dev/lockfile` surface gains `applyCompositionLockfile` (pure application: stamping, drift reporting, runtime-ref guard).
12+
- f015cb3: The deploy train freezes the composition it publishes (ADR 0042 ticket 04): every publish composes `bos.lock.json` from the exact publish payload and writes it atomically (healed on already-published idempotent runs), and the per-deploy audit record (`deploys/<ts>.json`) names the lockfile's content digest and fingerprint — a deployment record now answers "what exact composition was live". `everything-dev/lockfile` gains `digestOfLockfile` and the sync `writeLockfileSync` (the train's publish path is sync-fs). The registry's fingerprint module consolidates both identity hashes: `pointerFingerprint` remains THE composition identity (lockfile, deploy records, watch change-detection); `deploymentFingerprint` (the serving-generation payload hash, moved here from the host) is documented as derived from the same remotes after entry resolution — their semantic merge stays a recorded seam, since both sides of every existing comparison must move together.
13+
- 7e8575d: The two-plane boot, staging leg (ADR 0043): the deploy train now writes the approved boot snapshot for the composition it just confirmed live — stamped with the release thin tag (when the release leg ran) and the lockfile's content digest — so restarts of the published runtime boot from the staged state instead of resolving. Non-fatal like every provenance leg. `everything-dev/snapshot`'s `bootSnapshotOf`/`BootSnapshotSchema` gain the optional `lockfileDigest` staging stamp (the identity tying an approved generation to the deployment record that named it — enforcement deferred; the strict-reader downgrade window is accepted per the ADR 0040 posture). The ADR names the contract: the control plane (registry + train + CI) produces and activates; the application runtime starts from a digest-verified artifact, converges through the watch, and stays fail-loud for fresh activations. Remote-tier staging rides the hosting adapter later (recorded seam).
14+
15+
### Patch Changes
16+
17+
- 741fe1a: Registry starts gain the approved-snapshot boot rung (ADR 0041): every verified generation is persisted (`.bos/snapshot/<account>/<gateway>.json`, `BOS_SNAPSHOT_DIR` overrides the root) by the host's snapshot coordinator on adopt — and by `bos start` itself when it resolves the registry cold — so a restart during a registry/CDN outage boots from the last verified composition, with a loud warning in the start summary; the pointer watch adopts the published config the moment the registry returns. A definitive "no config published" still fails loud; a corrupt or fingerprint-mismatched snapshot refuses instead of serving; `BOS_SNAPSHOT_BOOT=never` disables the rung. The `everything-dev/snapshot` subpath gains `readBootSnapshot`, `verifiedBootSnapshot`, and `BootSnapshotIntegrityError`.
18+
- fefd0a0: The host's /health carries composition provenance for the approved-snapshot boot rung (ADR 0041): a `snapshot` block reports whether the process booted from the persisted snapshot, whether the pointer watch has adopted a published generation since boot, and whether the boot is still degraded (snapshot-sourced, not yet adopted). The overall status stays "ready" — degradation is provenance, not readiness — and the marker clears the moment the watch adopts. `bos start` stamps the host process with the marker env only when it actually served the snapshot.
19+
- af52791: Publish confirmation now treats a failed on-chain execution as the designed success state: the registry namespace is codeless, so publishes execute with `CodeDoesNotExist` and the transaction classifier maps near-kit's typed errors (execution failure → included, consumed nonce or missing publish key → terminal with a `bos login --key` repair hint, chain-unknown → grace window) instead of regexing messages. The content read-back also outranks the transaction probe — a "dropped at broadcast" verdict can only be emitted after the registry content check failed to verify in the same iteration, never before a verify.
20+
- 4d16ba1: Publish confirmation now queries the submitted transaction's status: rejected or dropped transactions fail fast with their on-chain fate instead of a generic "registry serves a different value" timeout, and a transaction that will never apply is retried once with identical content (fresh nonce) before the deploy fails.
21+
- 4d16ba1: The release deploy's post-publish smoke now decodes the `manifest.json` pointer through the thin-tag schema (`version`) instead of the pre-cutover field name (`frameworkVersion`), so release trains after the registry wire cutover verify the published pointer instead of always failing with "release pointer serves nothing" and rolling back a good config.
22+
- ebbaaf2: `bos deploy --wallet` now parses (the deploy schema was missing the `wallet` field that publish and rollback already had — the gasless NEP-366 relay path was unreachable from the deploy command). The signing stack also honors `NEAR_RPC_URL`: near-kit's default mainnet RPC (free.rpc.fastnear.com) currently accepts signed broadcasts and silently drops them post-acceptance, so publishes can pin the signing stack to an endpoint with a real transaction pool (set `NEAR_RPC_URL=https://rpc.mainnet.near.org`).
23+
- 2f7902c: Stop the init/sync copy from carrying `*.gen.ts` artifacts into child projects, and make contract-type generation degrade to the `.bos/generated/auth` stubs when auth resolution fails instead of skipping the write. Together these fix child typechecks failing with `TS2307: Cannot find module '.../auth/src/auth-export.ts'` when a stale root-authored `plugins/_template` gen file leaked into the scaffold and a transient auth-registry outage prevented regeneration.
24+
- 64763ca: The deploy preflight verifies the signing key's on-chain health before the build train runs: the key must exist on the publisher account and be scoped to `__fastdata_kv` on the registry namespace with enough remaining allowance for one publish (300 Tgas prepaid). A rotated or exhausted key now fails in seconds with the exact on-chain repair command (`near account add-key …`) instead of surfacing after a full build as a broadcast that never appears on-chain. The confirmation classifier also recognizes the chain's real not-found shape (`UNKNOWN_TRANSACTION`), so a dropped broadcast again reaches the terminal verdict and its one identical resubmit instead of timing out generically.
25+
- abb3596: The deploy preflight checks the publish account's balance before building: a publish whose account cannot cover the gas prepayment now fails in seconds with the exact amounts and a top-up hint, instead of dying hours later as a silent "dropped at broadcast". Broadcasts surface the pool's admission verdict (`NotEnoughBalance`, stale nonce) at submit time instead of fire-and-forget, registry writes attach 30 Tgas instead of 300 Tgas (shrinking the prepayment lock 10×), and the function-call key allowance floor follows.
26+
327
## 2.0.0-rc.37
428

529
### Minor Changes

‎packages/everything-dev/package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "everything-dev",
3-
"version": "2.0.0-rc.37",
3+
"version": "2.0.0-rc.38",
44
"type": "module",
55
"engines": {
66
"node": ">=20.11"

‎packages/everything-dev/src/services/scaffold/upgrade-audit/steps/v2-catalog.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ export const V2_CATALOG: Readonly<Record<string, string>> = {
6666
"drizzle-orm": "^0.45.4",
6767
effect: "4.0.0-rc.118",
6868
"every-plugin": "^3.0.0-rc.15",
69-
"everything-dev": "^2.0.0-rc.37",
69+
"everything-dev": "^2.0.0-rc.38",
7070
"near-kit": "^0.20.2",
7171
pg: "^8.12.0",
7272
react: "19.3.1",

‎pnpm-workspace.yaml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ catalog:
6969
drizzle-orm: ^0.45.4
7070
effect: 4.0.0-rc.118
7171
every-plugin: ^3.0.0-rc.15
72-
everything-dev: ^2.0.0-rc.37
72+
everything-dev: ^2.0.0-rc.38
7373
near-kit: ^0.20.2
7474
pg: ^8.12.0
7575
react: 19.3.1

0 commit comments

Comments
 (0)