Repository navigation
[0.30][Release] Close product, publication, and deployment evidence #27
Description
Accepted publication closure — 2026-09-25
The accepted GitHub-plus-website scope is complete at signed v0.30.0 / 352b4950. See the publication/readback receipt and current status record. The checklist below is reconciled to that accepted scope. Independent review was waived, not performed. Crates.io, Marketplace and optional production Registry commitment/reproducer activation remain separate and unclaimed. No TAC was invoked. Historical deployment identities are preserved; none establish 0.31 deployment.
Summary
Close the end-to-end CellScript 0.30 product, publication, and deployment boundary for the frozen business corpus in #26. This issue prevents compiler-only or local-VM evidence from being presented as a complete release when builders, language services, browser artifacts, package identities, node admission, or deployment records still describe a smaller or different capability set.
The candidate release path may jump directly from 0.25 to 0.30. The 0.26b branch and unreleased 0.26 implementation record are development evidence and may be folded into 0.30 without a stable 0.26 publication.
Required product closure
Compiler and packages
- set the Cargo/package version only when the release-candidate compatibility contract is accepted;
- assign exact source-semantics, cache, metadata, constraints, typed-semantics, lowering, source-map, witness, output-plan, policy, and target-profile versions;
- enforce package-declared compiler requirements before source loading;
- resolve one canonical package graph with exact source, feature, edition, environment, chain, and deployment identities; and
- provide transactional interface, builder, lockfile, and deployment upgrade reports.
Builders and transaction construction
- generate complete typed TypeScript and Rust-facing builders for every [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 entry;
- materialize complex typed parameters instead of requiring opaque pre-encoded bytes unless the ABI explicitly declares an opaque boundary;
- merge dynamic group indexes, output plans, shared witnesses, CellDeps, header dependencies, fees, capacity, and change through ProtocolBundle;
- preserve standard signing fields and reject post-signing mutation;
- validate the same roles, bounds, ordering, identities, and output correspondence enforced on chain; and
- expose deterministic transaction and evidence hashes.
Language services and browser product
- keep parser diagnostics, formatter, hover, completion, definition, semantic summaries, snippets, and syntax highlighting aligned with the accepted authoring surface;
- rebuild the metadata-only WASM compiler from the exact candidate source;
- pass the tracked gzip budget or introduce an accepted versioned product split rather than reusing a stale bundle;
- expose edition/profile/capability selection without presenting metadata-only output as an ELF; and
- keep the website, CLI, VS Code extension, docs, examples, and Registry surface on the same published compatibility boundary.
Artifact and deployment evidence
- independently validate exact candidate ELF and sidecars;
- reproduce CKB-VM and stateful acceptance from a clean source tree;
- run node dry-run/admission for the declared network and VM/hash-type contract;
- record code Cell, CellDep, Script, package, interface, artifact, deployment, chain, and confirmation identities;
- measure cycles, stack, code size, transaction size, witness bytes, and occupied capacity; and
- retain per-artifact and per-Script-group evidence when composing transactions.
Release-version policy
0.30is an implementation branch until all required gates pass.- No Cargo version or stable package is changed merely because the branch exists.
- A stable 0.26 tag is optional and must not be created solely for sequential numbering.
- If 0.26 is skipped, release notes must clearly identify 0.25 as the predecessor and list every compatibility-axis change absorbed from 0.26b.
- Preview4 and
authoring1retain their recorded meanings; accepted 0.30 semantics receive a new identity rather than silently redefining either. - Existing Data1 deployments are not relabeled as VM2/Data2 artifacts.
- A failed or partial release gate leaves a development identity and cannot be published as capability-complete 0.30.
Implementation phases
Phase 0 — release manifest
- freeze the [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 corpus and all required issue dependencies;
- enumerate every version and compatibility axis;
- decide and record whether stable 0.26 is skipped;
- define exact release artifacts, signing/publishing actors, networks, and evidence outputs; and
- make missing product or deployment evidence machine-readable.
Phase 1 — product parity
- complete builders, ProtocolBundle integration, CLI, LSP, VS Code, WASM, website, Registry, docs, and examples;
- add cross-consumer schema/version tests; and
- reject stale generated assets and stale compatibility summaries.
Phase 2 — clean candidate replay
- run
dev,ci, andbackendon the exact candidate; - rebuild every generated artifact and require a clean tree;
- run the full [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 simulator, CKB-VM, stateful, builder, signing, and differential corpus;
- reproduce pinned external dependencies and Rust references; and
- complete independent security reviews.
Phase 3 — release and deployment evidence
- run the applicable release gate with pinned CKB, SDK, Docker, RISC-V, WASM, Registry, and external-verifier dependencies;
- perform node dry-run/admission and the selected testnet/mainnet deployment workflow;
- verify confirmations and read back exact on-chain identities; and
- publish packages, editor/browser artifacts, documentation, and release records only after all identities agree.
Completion criteria
- All required [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 corpus rows and dependency issues are complete.
- Compiler, packages, builders, CLI, LSP, VS Code, WASM, website, Registry, docs, and checker report one capability boundary.
- Generated builders cover complex parameters, dynamic roles, output plans, shared witnesses, and signing.
- Canonical package graph, compiler requirements, chain identity, build plan, and transactional upgrade behavior are enforced.
- Fresh browser and editor artifacts are rebuilt from the candidate and pass their budgets/checks.
- Exact candidate source, ELF, sidecars, fixtures, external dependencies, and Rust references are reproducible.
-
dev,ci,backend, and applicablereleasegates pass from clean source. - Node admission and selected-network deployment evidence are recorded with exact identities.
- Independent security review: waived for 0.30 by the maintainer, not performed; exclusions remain published.
- Stable version, tag, package publication, and release notes are created only after every prior item passes.
Non-goals
- treating a development branch name as a released version;
- reusing stale WASM, VSIX, builder, evidence, or deployment assets;
- using local CKB-VM execution as a substitute for node or chain evidence;
- publishing a stable 0.26 solely for numbering continuity; or
- claiming arbitrary Rust parity beyond the bounded [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 portfolio.
Dependencies
- [Docs/strategy] Separate executable-surface closure from product capability completeness #14 for capability/product-completeness classification;
- [Toolchain][Workspace][P1] Replace member-loop builds and synthetic workspace locks with a canonical graph #15 through [Toolchain][Upgrade] Add a transactional package, interface, and deployment upgrade plan #20 for package graph, resolver, compiler requirements, build plans, chain identity, and upgrades;
- [0.30][Runtime] Complete typed bounded CKB transaction-view and syscall adapters #24 and [0.30][Security] Define cryptographic capability and authorization-domain contracts #25 for the new runtime and cryptographic contracts;
- [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 for the frozen release corpus; and
- all semantic/runtime issues selected by that corpus.
Activity
a19q3 commentedon Sep 11, 2026
0.30 prerequisite update: commit 7ec38fa completes the last four exact Order/AMM rows, so #26 now has exact per-row artifact/transaction fixtures across all eight frozen families. This does not make #27 release-ready. Remaining blockers are still external/release-grade: restore the unreachable pinned NovaSeal and iCKB reference commits, run a clean candidate replay, complete independent review, record node admission and selected-network deployment identities, then publish only after release acceptance. Local verification passed the new scenario twice, the existing business anchor tests, targeted clippy, and all 46 tool unit tests; full package/corpus execution stops on the missing submodule files. No TAC workflow was invoked.
a19q3 commentedon Sep 11, 2026
Correction/additional clean-replay evidence, recorded in 59ed25b: all five 0.30 gitlinks were checked individually. Only DOB
30709c97…remains retrievable. The pinned VS Code7742a0c5…, website422b9f47…, NovaSealee7dbff2…, and iCKB equivalencec27bac62…commits each returnNo commit foundfrom their configured GitHub repository; commit search and fork enumeration found no backup. The ledger now names all four blockers and requires restoration or explicit re-acceptance—never silent replacement with current remote heads—before clean candidate replay. No TAC workflow was invoked.a19q3 commentedon Sep 12, 2026
0.30 final repository-local release update: root 3cf60a1 is pushed, and every pinned product/evidence commit is remote-retrievable: VS Code 4df04807, website 4d1acbed, NovaSeal 1e7c812, iCKB 53c5078a, and DOB 30709c97.
The clean release gate passes end to end. The canonical WASM compiler rebuilt reproducibly to SHA-256 82e76c029af7647fa206684e023fc95abdfd8e15ea6ce12e8993edb75da91b3b and is 571,519 bytes gzip against the 600 KB budget. VSIX packaging/validation passes. Registry API has 79 passed / 2 skipped tests; website production/testnet builds and parity/deploy-contract checks pass. Editor audit is zero. Website retains 20 low and Registry API retains 3 low elliptic-chain advisories because npm proposes incompatible maintained-connector downgrades; neither graph has moderate/high/critical findings. NovaSeal exact resource checks and fresh pinned CKB 0.207.0 local production admission also pass. Independent review was explicitly waived by the maintainer; it was not performed or claimed as passed.
The issue remains open for selected-network deployment/readback and subsequent stable version, tag, package, editor/browser, docs, and release publication. Per release policy, Cargo/editor identities remain 0.26.0 until that external acceptance is complete. This run intentionally created no v* tag and invoked no TAC, signing, release, publication, or deployment workflow.
a19q3 commentedon Sep 19, 2026
Release status update, 2026-09-19: the previous comment's selected-network, 0.26.0 version, product-pin, and WASM information is superseded.
0.30; website 6a61e49 and VS Code ee0f259a are pushed and read back.0.30.0. Edition 2026 remains default; the opt-in identity iscellscript-source-semantics-2027-0.30-v1. The release notes document the compatibility axes and 0.25 predecessor.dev, fullciwithinrelease,backend, andrelease, including fresh pinned CKB production/stateful acceptance. Canonical WASM SHA-256 is419e8260c3c6acc9f950adf422de90163533c14af96043ebb7429f935b1393d6, with 571,696 gzip bytes under the 600 KiB limit. Website builds and VSIX packaging/validation passed.3cf60a10, separately from candidate reproduction. [0.30][Security] Define cryptographic capability and authorization-domain contracts #25 and [0.30][Acceptance] Build the canonical Rust-comparable CKB business corpus #26 are closed.This issue stays open for public publication. No release tag, GitHub Release workflow, crates.io/extension publication, or production website rollout was performed by this preparation. The maintainer's no-TAC constraint still applies; pushed branches and local packages are not a published stable release.
The all-issue audit records 20 closed issues and four open issues: #27 for publication, plus deferred #22/#28/#29. The follow-up documentation commit corrects stale status text; the full release replay remains attributed to
74cff5fd, not relabeled to that later documentation commit.a19q3 commentedon Sep 23, 2026
0.30.0 is published, and the production and testnet websites have been updated.
v0.30.0tag points to352b4950. The final source passed the full local release and backend gates, tag CI, and the release workflow.cellc 0.30.0. The VSIX and updated checksum file were read back after upload.9f5ed7be566bb865cae1be60310bc5fed32ddaece896ebb89cdcc76996555aa5; the canonical bundle is 571,825 gzip bytes, within the 600 KiB budget.352b4950; all containers and both/readyendpoints pass. The first testnet attempt rolled back because its configuration still named the old Registry code. The corrected configuration uses the already recorded Pudge code Cell at0x49572cfd3258b49ff214c0dc5cd60388826e7f989acf904a9016c4cfbcb2a562:0x7, retaining the custody Lock and canonicaldata1Script template. The corrected candidate passed in isolation before rollout. No new chain transaction was sent.Production's optional on-chain Registry commitment and reproducer policy remain disabled, as before. This deployment does not claim mainnet Registry commitment activation. The selected twelve-artifact Pudge evidence retains its original deployment provenance.
Independent review for 0.30 was waived by the maintainer; it was not performed. No TAC was invoked. Publication here covers the accepted GitHub and website channels; crates.io and VS Code Marketplace publication are not claimed. This issue remains open for any separately required channel work.
a19q3 commentedon Sep 23, 2026
Remaining-work review, 2026-09-23.
The publication/readback record and v0.30.0 release now satisfy the accepted GitHub-plus-website publication scope. The next step is to reconcile this issue's older checklist with that result, not rerun publication or replace the published tag.
Recommendation: close #27 once its checklist and current-status record reflect the accepted, completed scope and explicit waiver. Additional channels should not leave the already published 0.30 release indefinitely marked unfinished. No closure or additional publication is performed by this comment.
a19q3 commentedon Sep 25, 2026
Closing the accepted 0.30 GitHub-plus-website publication scope. The final tag and seven release assets remain intact; the successful tag CI, release workflow, and publication/readback receipt supply the completion evidence.
648bb836 updates current-status documentation while preserving the dated candidate audit. The issue checklist now explicitly records the maintainer’s 0.30 independent-review waiver rather than claiming a completed review. Additional distribution channels and optional mainnet Registry activation are not claimed. No new release or deployment was performed in this closure.