Skip to content

Adopt released Plumbing recovery and publish git-cas 6.5.11 #131

Description

@flyingrobots

Background

External git gc --prune=now can invalidate a reused mktree process's object database view. A raw EPIPE currently escapes the existing bounded immutable-object retry. Plumbing PR #20 fixes classification; consumers need a published dependency minimum, not git-warp's local patch.

Observable outcome

Published git-cas uses Plumbing >=3.3.2 and recovers once from closed mktree input for single and batch tree writes. Unrelated failures and producer failures retain their identity; retry remains bounded at two process attempts. This unblocks git-warp #923 and node/edge attachment acceptance.

Scope and exclusions

Adopt the published Plumbing dependency and lockfile, add deterministic public-session recovery regressions, validate Node/Bun/Deno and package consumers, and publish git-cas 6.5.11. Execute release tests and examples through COPY-based Docker; remove host test execution from CI/release verification encountered in this path. No new retry policy, graph semantics, mutable-ref retries, recursive attachments, or git-warp API changes.

Prerequisite

Plumbing PR #20 must merge and Plumbing 3.3.2 must be published before the dependency update can pass immutable registry installation. Preparatory design/tests may proceed now.

Acceptance

  • Fault-injected single/batch closed-pipe writes reopen once and return canonical OIDs.
  • Already-closed input also retries once; repeated transport failure stops after two attempts.
  • EACCES and producer EPIPE remain unchanged.
  • All runtimes pass unit/integration and public type checks in Docker, with no host repository mounts.
  • Release lint, examples, package and JSR validation pass; release metadata agrees.
  • Published 6.5.11 registry artifact resolves the repaired Plumbing and passes packed-consumer recovery checks.
  • Design/playback evidence and release publication receipts link exact commits and artifact integrity.

Related

Activity

  1. added this to the v6.5.11 milestone on Oct 2, 2026
  2. flyingrobots commented on Oct 2, 2026

    @flyingrobots
    MemberAuthor

    Design committed in 626df11: docs/design/0062-mktree-transport-recovery/mktree-transport-recovery.md. Preparatory design and recovery proof proceed while the Plumbing 3.3.2 merge/publication prerequisite clears; no registry adoption is claimed yet.

  3. flyingrobots commented on Oct 2, 2026

    @flyingrobots
    MemberAuthor

    Preparation is committed through 0f2567c in draft PR #132, including pinned Docker RED/GREEN and candidate artifact evidence. All three runtimes pass the preparatory unit gate; Node candidate integration passes 207 checks. Plumbing #20 has current-head independent APPROVE and green CI, but GitHub rejects merge until latest-push approval; auto-merge is disabled. Registry adoption and 6.5.11 publication remain blocked on that upstream merge/publication. No local file dependency is committed.

  4. added
    status:blockedBlocked on external dependency or decision
    status:activeWork is actively being implemented or validated
    and removed
    status:blockedBlocked on external dependency or decision
    on Oct 2, 2026
  5. flyingrobots commented on Oct 2, 2026

    @flyingrobots
    MemberAuthor

    Merged-main release gate: 1bcd6311e93ca9782e2f4a25af106af0651813fb matches the independently reviewed candidate tree exactly. Full canonical release verification was rerun on the merged commit inside COPY-based Docker. No stage skipped.

    Release Verification Summary

    • Version: 6.5.11
    • Steps passed: 14/14
    • Total tests observed: 7224
    Step Status Tests
    Lint PASS —
    Unit Tests (Node) PASS 2204
    Example: store-and-restore PASS —
    Example: encrypted-workflow PASS —
    Example: progress-tracking PASS —
    Unit Tests (Bun) PASS 2204
    Unit Tests (Deno) PASS 2195
    Public type compatibility PASS —
    Integration Tests (Node) PASS 207
    Integration Tests (Bun) PASS 207
    Integration Tests (Deno) PASS 207
    Build metadata stamp PASS —
    npm pack dry-run PASS —
    JSR publish dry-run PASS —

    Raw-log SHA-256: cdefc3ed121de8e861b984c31cf5ee48d73aea05eca0632d1de3972864e71e09. Signed annotated tag v6.5.11 was verified locally and pushed normally, peeling to this exact merge. Trusted release workflow 37008258240 is running. Publication and fresh registry consumer validation are not yet claimed.

  6. flyingrobots commented on Oct 2, 2026

    @flyingrobots
    MemberAuthor

    v6.5.11 is published and verified. PR #132 merged as 1bcd6311e93ca9782e2f4a25af106af0651813fb; signed tag v6.5.11 and npm gitHead match that commit. Trusted workflow 37008258240 succeeded. A fresh COPY-based Docker consumer installed git-cas 6.5.11 and Plumbing 3.3.2, passed six recovery checks, public store/restore and CLI version checks, and verified registry signatures and attestations.

    Publication receipts and the required retrospective merged via PR #146 as da9d38b08342df8f0b745734d29479d53f85c235. Historical candidate evidence and the published tarball remain immutable. Current repository documentation corrects candidate wording and unpackaged relative planning links; no artifact rewrite or extra publication occurred.

    Git-warp #923 / PR #925 owns downstream adoption and attachment/GC acceptance. Public Runtime/Lane attachment APIs and bounded streams remain separate issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:storageStorage, Git objects, manifests, or persistencestatus:activeWork is actively being implemented or validatedtype:bugIncorrect behavior or regression

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions