Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Coordinated 0.1.2 delivery

Enclosing Jujutsu change: qurnqqnu. Requirements: LTERM-RELEASE-001, LTERM-RELEASE-004, LTERM-RELEASE-006, LTERM-RELEASE-007, LTERM-GOV-100 and LTERM-GOV-103. M5/M6 review distinguishes version preparation, actual registry publication and original application acceptance.

Protected source and version delivery

  • Delivery PR #7 merged 6a8dc1bd5009581e2bd740436da2339003f01e25 after full CI 41144766057 and spec 41144765950.

  • Ordered-capture PR #8 merged b38ab2076f0a45359776e4642e5f496162df1ecf. Full source CI 41146209977 and spec 41146209921 passed. Its cold native receipt includes the idle initial prompt before any input, all existing lifecycle checks, normal exit and zero survivors. The deterministic regression failed 1/1 before repair and passed 1/1 afterward; engine/runtime widening passed 105 cases with zero failures and one separately ignored performance gate.

  • Version PR #5 consumed all three patch changesets and was approved at exact head cd2e0aac6d269bbb12269eeaa3ced8f5bc542fa3. Dispatched checks passed, then GitHub required maintainer approval for the PR-event workflows. Approval was granted; full required PR CI 41146798073 and spec 41146797902 passed. The protected merge is b235b4189fc6c0eccfc8a01285002c21a235fca1.

  • Publication-gate PR #9 merged 2523a0b50a77e22f3b6400b73bf2e3096756c454 after full CI 41148588997 and spec 41148589015. It corrects actual Sigstore policy enforcement and the Cargo provider event restriction, with 22 release tests. Exact-main CI 41149183151 and spec 41149183181 also passed.

  • GitHub metadata PR #10 merged 9575ac0d0cf02ddf1dea660c2cc3409ba64f7928 after full CI 41150598922 and spec 41150598890. The exact-main CI 41150958051 and spec 41150957987 also passed. All 24 release regressions include the real rejected signed artifact and npm-required GitHub internal fields.

No branch bypass, weakened assertion, new audit exception or baseline mutation was used. The default workspace’s separate Docker/catalog tooling stack remains untouched. There were no open Dependabot PRs at release preflight.

Actual Cargo delivery

The automatic run 41148121586 failed before token acquisition/upload because crates.io rejects workflow-run OIDC. All three versions were confirmed absent before the supported manual dispatch. Run 41148378559 completed real OIDC authentication, coordinated dependency-order publication and token revocation from qualified source b235b4189fc6c0eccfc8a01285002c21a235fca1. The new read-only workflow-run relay uses a supported main workflow dispatch for future missing versions; current-main run 41149562914 confirmed all versions present and skipped authentication/upload.

All three 0.1.2 versions were verified non-yanked, downloaded and matched to their registry SHA-256 checksums:

CrateSHA-256
lapis-terminal-engine487388052891090da10a0b8870f07afa60fdf64f228a582c493219f859dd3446
lapis-terminal-runtime94eff086f98b8823f69dadae9f24bd448adebf29ddf419e18a279545efb747a5
tauri-plugin-lapis-terminal7f0e4c3407f7619b45ac4b63db2e8d11469207d497ab48810ff28b8d7e4e3bc0

Publication timestamps are October 31, 00:10:02–06 UTC. A fresh isolated Cargo consumer copied the published runtime archive’s examples/basic.rs, resolved engine/runtime exactly 0.1.2 from crates.io, generated a lockfile and ran: pnpm dev:cargo -- run --locked --manifest-path .local/cargo-registry-0.1.2/consumer/Cargo.toml --target-dir target. It passed a real PTY. Lockfile registry sources and checksums match the verified archives; no path patches or sibling checkout dependencies were used.

Qualified npm bootstrap artifact

The first signed bundle from run 41149587175, source 2523a0b5, passed cryptography but was rejected before stage creation with npm HTTP422 because GitHub internal metadata was absent. No placeholder, staged version or package was created. The initial registry probe remained 404 and the authenticated stage list was empty. The failed bundle remains a real regression fixture.

Protected main-only attest run 41151430776 reused the real tarball from successful main CI 41150958051 at source 9575ac0d0cf02ddf1dea660c2cc3409ba64f7928. It signed the corrected statement using GitHub OIDC and verified the exact issuer/workflow SAN with the real Sigstore API. The downloaded artifact was independently checked for coordinated metadata, archive content, checksums, cryptographic identity and decoded source-bound SLSA. The actual signed GitHub internals are event_name=workflow_dispatch, repository_id=1422167487 and repository_owner_id=311425888; all are validated before the renewed handoff.

  • Tarball: lapismd-terminal-0.1.2.tgz, 17,877 bytes.
  • SHA-256: cd8d8360bff06e52cbbc30b9efffa91573a3ede74b65025e24877e0bdbaf0fea.
  • SHA-512 integrity: sha512-0E6mUoG6gycc3G0nxmkuiZQT31DPnZdscWQdeidxiDNnYFDjb/JKCaOuaIbyn2hjSEd6a9UBu6rteeajuIrDcQ==.
  • Bundle SHA-256: e9d15eba0b6e530d4713f254eb289351aaeef33ec1fb787a51514f7120db7023.
  • Issuer: https://token.actions.githubusercontent.com.
  • Verified SAN: https://github.com/lapismd/lapis-terminal/.github/workflows/publish-npm.yml@refs/heads/main.

The protected initial credential probe reported absent; the release coordinator owns the isolated local npm session and final staging/2FA approval. Its credential was never read or copied by this repository or CI.

The renewed exact-artifact submission was accepted as stage 0f01356a-169f-4191-b9cb-eda8a5285771, proving provider schema admission of the corrected statement. The user completed the security-key flow, but npm returned HTTP409 while its automated new-package review was pending. The coordinator monitors that existing stage rather than uploading another copy. The subsequent approval exited successfully after the automated review. The exact 0.1.2 version is public and latest, published October 31 at 00:49:03.639 UTC; no candidate was re-uploaded.

Actual npm and scoped release completion

The public npm 0.1.2 tarball is byte-identical to the governed archive and matches the SHA-256/SHA-512 values above. Registry provenance binds the exact source, subject, workflow, main ref and required numeric GitHub identity. Protected run 41152397561, verify job 124391730477, passed:

  • A fresh public-only exact 0.1.2 consumer generated a lockfile, then installed with npm ci; the retained lock resolves the real registry URL and exact SRI.
  • Generic Node import plus Svelte/Vite compilation resolves every public generic, Svelte, Tauri and testing entrypoint.
  • npm audit signatures verified 41 registry signatures and 21 attestations.
  • The registry receipt, consumer manifest and frozen lockfile are retained in the run’s npm-registry-receipt-9575ac0d0cf02ddf1dea660c2cc3409ba64f7928 artifact.

The npm upload job was correctly skipped because the approved version existed. GitHub also skipped the release job through its implicit success dependency on that skipped ancestor, despite verification passing. Before recovery, the tag and release were confirmed absent. The authorized guarded source helpers then rechecked the real successful consumer run/job, current main/source CI and protected checks, coordinated metadata, qualified archive and live registry provenance. No synthetic trigger, auth context or branch bypass was used. They created the scoped release at the exact source 9575ac0d0cf02ddf1dea660c2cc3409ba64f7928.

The independently read-back release is stable, published October 31 at 00:54:12 UTC, with a commit tag pointing to that exact source. Its tarball asset digest is sha256:cd8d8360bff06e52cbbc30b9efffa91573a3ede74b65025e24877e0bdbaf0fea; its attached manifest digest is sha256:b39cc0ae5369871295c2cf946e3ea1bc50703ae97a93e08aa5521a7f40998e02. The workflow now explicitly runs the release job only after successful plan and verification, even when the already-published upload was skipped.

Trusted publisher registration and independent npm trust list read-back confirmed ID 28f22348-6a3f-4c3c-aa3e-8b68ad014630, GitHub lapismd/lapis-terminal, publish-npm.yml, environment npm-production, and createPackage/createStagedPackage permissions (publish/stage-publish CLI labels). No root npm credential was read, modified or copied into CI or source.

Retained qualification boundaries

Cargo and source-native success do not complete Desktop’s fresh native consumer gate or its unrelated native Close failures. Visual baseline approval, the known-idle-host performance measurement and other platforms remain separate.

The canonical receipt/verification updates and explicit release-job dependency condition passed actionlint and all eight specification-check lanes locally. Repository protection still requires the ordinary full hosted CI before this follow-up merges. No product/runtime source or baselines changed.