Skip to content

Re-pin to macula-go v0.29.0, the release that carries A0 #21

Closed

Description

@rgfaber

Purpose (reliability): a .NET application built on this SDK recovers from a sealed_required refusal by resealing to the key the refusal carries, instead of failing for 5 to 10 minutes on a stale keyless candidate.

macula-go v0.29.0 (9f84784a773914ccb419eb928f78ff7fe12599e4) is the release that carries release A0's reading side (macula-io/macula-go#43): a caller that a keyed provider refuses sealed_required reads seal.kem_key from the refusal's signed tbs, reseals to it, and is answered; a clear client stream that wrote before the refusal replays its writes in order under the sealed reopen. That repo proves it in CI on the released sha, and the release carries the run as sealed-interop-v0.29.0.log.

This SDK pins macula-go v0.27.0-rc.3 today, which predates A0, so it cannot inherit any of that.

Scope

  • Pin libmacula.version from v0.27.0-rc.3 to v0.29.0 / 9f84784a773914ccb419eb928f78ff7fe12599e4.
  • Nothing else changes: no API, no docs beyond the pin line and any version string that names it, no version bump of this package, no tag.
  • Run the full suite and this repo's sealed interop against the new pin.

Done when

  • CI on the exact tip of the re-pin PR is green, with the interop passing in both profiles.
  • The pin line names both the tag and the commit, as it does today.

Refs macula-io/macula-go#43.

Activity

  1. rgfaber commented on Oct 28, 2026

    @rgfaber
    ContributorAuthor

    Landed. libmacula.version is now v0.29.0, which resolves to 9f84784a773914ccb419eb928f78ff7fe12599e4.

    • Main: 798e778df8..265cd6ed81 (PR pin macula-go v0.29.0, the release that carries A0 #22, MERGEABLE/CLEAN; base was the default-branch tip at the push).
    • CI on the exact tip: run 40626973167 (PR), and on main run 40628258084 — test on ubuntu-24.04, ubuntu-24.04-arm, macos-15 and windows-2025, docs snippets, structural floors and advisories, all green.
    • Not run locally: the change is the one-line pin, and CI was its first build.

    Two corrections to this issue's own text, recorded rather than silently met:

    1. The pin this replaced was v0.27.0, not v0.27.0-rc.3 (the diff is -v0.27.0 / +v0.29.0).
    2. "The pin line names both the tag and the commit, as it does today" is not true of this repo and cannot be made true without breaking the tooling: libmacula.version is read as a release tag by scripts/fetch_libmacula.sh, scripts/interop/*.sh and tests/Macula.Tests/TestStations.cs (tr -d '[:space:]' straight into a GitHub release lookup). The tag v0.29.0 is the pin here, and it points at the commit above.

    Also, as with ts and py: no sealed-interop job runs in this repo's CI, so A0 is not exercised end to end here; tests/Macula.Tests/SealingTests.cs runs against the pin, and the released behaviour is proven in macula-go's sealed-interop-v0.29.0.log.

    Purpose met at the pin, with the two text corrections above.

    Refs macula-io/macula-go#43.

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions