fix: extend local cluster bootstrap tx ttl
Home /
Input Output /
cardano-wallet
May 02, 10-11 AM (0)
May 02, 11-12 PM (0)
May 02, 12-1 PM (0)
May 02, 1-2 PM (0)
May 02, 2-3 PM (0)
May 02, 3-4 PM (0)
May 02, 4-5 PM (0)
May 02, 5-6 PM (0)
May 02, 6-7 PM (0)
May 02, 7-8 PM (0)
May 02, 8-9 PM (0)
May 02, 9-10 PM (0)
May 02, 10-11 PM (0)
May 02, 11-12 AM (0)
May 03, 12-1 AM (0)
May 03, 1-2 AM (0)
May 03, 2-3 AM (0)
May 03, 3-4 AM (4)
May 03, 4-5 AM (0)
May 03, 5-6 AM (0)
May 03, 6-7 AM (0)
May 03, 7-8 AM (0)
May 03, 8-9 AM (0)
May 03, 9-10 AM (0)
May 03, 10-11 AM (0)
May 03, 11-12 PM (0)
May 03, 12-1 PM (0)
May 03, 1-2 PM (0)
May 03, 2-3 PM (0)
May 03, 3-4 PM (0)
May 03, 4-5 PM (0)
May 03, 5-6 PM (0)
May 03, 6-7 PM (0)
May 03, 7-8 PM (0)
May 03, 8-9 PM (0)
May 03, 9-10 PM (0)
May 03, 10-11 PM (0)
May 03, 11-12 AM (0)
May 04, 12-1 AM (0)
May 04, 1-2 AM (0)
May 04, 2-3 AM (0)
May 04, 3-4 AM (0)
May 04, 4-5 AM (0)
May 04, 5-6 AM (0)
May 04, 6-7 AM (0)
May 04, 7-8 AM (0)
May 04, 8-9 AM (0)
May 04, 9-10 AM (0)
May 04, 10-11 AM (0)
May 04, 11-12 PM (0)
May 04, 12-1 PM (0)
May 04, 1-2 PM (0)
May 04, 2-3 PM (0)
May 04, 3-4 PM (0)
May 04, 4-5 PM (0)
May 04, 5-6 PM (0)
May 04, 6-7 PM (0)
May 04, 7-8 PM (0)
May 04, 8-9 PM (0)
May 04, 9-10 PM (0)
May 04, 10-11 PM (0)
May 04, 11-12 AM (0)
May 05, 12-1 AM (0)
May 05, 1-2 AM (0)
May 05, 2-3 AM (0)
May 05, 3-4 AM (0)
May 05, 4-5 AM (0)
May 05, 5-6 AM (0)
May 05, 6-7 AM (0)
May 05, 7-8 AM (0)
May 05, 8-9 AM (0)
May 05, 9-10 AM (0)
May 05, 10-11 AM (0)
May 05, 11-12 PM (0)
May 05, 12-1 PM (0)
May 05, 1-2 PM (0)
May 05, 2-3 PM (0)
May 05, 3-4 PM (0)
May 05, 4-5 PM (0)
May 05, 5-6 PM (0)
May 05, 6-7 PM (0)
May 05, 7-8 PM (0)
May 05, 8-9 PM (0)
May 05, 9-10 PM (0)
May 05, 10-11 PM (0)
May 05, 11-12 AM (0)
May 06, 12-1 AM (0)
May 06, 1-2 AM (0)
May 06, 2-3 AM (0)
May 06, 3-4 AM (4)
May 06, 4-5 AM (0)
May 06, 5-6 AM (0)
May 06, 6-7 AM (0)
May 06, 7-8 AM (0)
May 06, 8-9 AM (0)
May 06, 9-10 AM (0)
May 06, 10-11 AM (0)
May 06, 11-12 PM (0)
May 06, 12-1 PM (0)
May 06, 1-2 PM (0)
May 06, 2-3 PM (0)
May 06, 3-4 PM (0)
May 06, 4-5 PM (0)
May 06, 5-6 PM (0)
May 06, 6-7 PM (0)
May 06, 7-8 PM (0)
May 06, 8-9 PM (0)
May 06, 9-10 PM (0)
May 06, 10-11 PM (0)
May 06, 11-12 AM (0)
May 07, 12-1 AM (0)
May 07, 1-2 AM (0)
May 07, 2-3 AM (0)
May 07, 3-4 AM (0)
May 07, 4-5 AM (0)
May 07, 5-6 AM (0)
May 07, 6-7 AM (0)
May 07, 7-8 AM (0)
May 07, 8-9 AM (0)
May 07, 9-10 AM (0)
May 07, 10-11 AM (0)
May 07, 11-12 PM (0)
May 07, 12-1 PM (0)
May 07, 1-2 PM (0)
May 07, 2-3 PM (0)
May 07, 3-4 PM (0)
May 07, 4-5 PM (0)
May 07, 5-6 PM (0)
May 07, 6-7 PM (0)
May 07, 7-8 PM (0)
May 07, 8-9 PM (0)
May 07, 9-10 PM (0)
May 07, 10-11 PM (0)
May 07, 11-12 AM (0)
May 08, 12-1 AM (0)
May 08, 1-2 AM (0)
May 08, 2-3 AM (0)
May 08, 3-4 AM (4)
May 08, 4-5 AM (0)
May 08, 5-6 AM (0)
May 08, 6-7 AM (0)
May 08, 7-8 AM (0)
May 08, 8-9 AM (0)
May 08, 9-10 AM (0)
May 08, 10-11 AM (10)
May 08, 11-12 PM (1)
May 08, 12-1 PM (2)
May 08, 1-2 PM (2)
May 08, 2-3 PM (0)
May 08, 3-4 PM (0)
May 08, 4-5 PM (0)
May 08, 5-6 PM (0)
May 08, 6-7 PM (0)
May 08, 7-8 PM (0)
May 08, 8-9 PM (0)
May 08, 9-10 PM (0)
May 08, 10-11 PM (0)
May 08, 11-12 AM (0)
May 09, 12-1 AM (0)
May 09, 1-2 AM (0)
May 09, 2-3 AM (0)
May 09, 3-4 AM (0)
May 09, 4-5 AM (0)
May 09, 5-6 AM (0)
May 09, 6-7 AM (0)
May 09, 7-8 AM (0)
May 09, 8-9 AM (0)
May 09, 9-10 AM (1)
May 09, 10-11 AM (0)
28 commits this week
May 02, 2026
-
May 09, 2026
fix: bump local cluster shelley ProtVer 10 -> 12 for cardano-node 11.0
chore: bump cardano-node-runtime flake input to 11.0.1
feat: finish SealedTx cardano-api decommission (follow-up to #5271) (#5272)
## Summary Follow-up to #5271. This PR finishes the `Cardano.Wallet.Primitive.Types.Tx.SealedTx` cardano-api decommission: the primitive `SealedTx` module no longer imports `Cardano.Api`, and the deprecated cardano-api-facing SealedTx exports are removed. Base branch: `feat/drop-cardano-api-sealedtx` (#5271). Rebased after #5270 merged, #5236 was rebased onto `master`, and #5271 was rebased onto #5236. ## What changed | # | SHA | Purpose | |---|---|---| | 1 | `734f624` | Plan for finishing the SealedTx cardano-api decommission | | 2 | `80a3de4` | Port metadata extraction in `Shared/Transactions` to ledger-native | | 3 | `8faf76e` | Drop the dead cardano-api body in `addRequiredSigners` | | 4 | `a929e8e` | Migrate `buildAndSignTransactionPure` to ledger-native seal | | 5 | `e2e72af` | Drop the local `sealWriteTx` cardano-api bridge in Server.hs | | 6 | `0b619dd` | Remove the `SealedTx` cardano-api surface and move remaining unit-test adapters local to tests | | 7 | `b4da418` | Keep default sealed transaction byte decoding capped at the supported Conway era, and make signing/decoding re-read sealed bytes with the caller's preferred latest era | ## SealedTx surface removed Removed from `Cardano.Wallet.Primitive.Types.Tx.SealedTx` and the umbrella `Cardano.Wallet.Primitive.Types.Tx` export list: - `cardanoTxIdeallyNoLaterThan` - `sealedTxFromCardano` - `sealedTxFromCardano'` - `sealedTxFromCardanoBody` - `getSealedTxBody` - `getSealedTxWitnesses` - internal `cardanoTxFromBytes` - internal `cardanoApiTxToReadTx` `sealedTxFromBytes'` now takes `Read.EraValue Read.Era` instead of `AnyCardanoEra`, which lets the primitive module avoid `Cardano.Api` entirely. ## CI fix after rerun The first rerun of #5272 exposed a real Conway integration failure: sealed Conway transaction bytes could be decoded as Dijkstra by the new ledger-native default path, after which downstream code hit the still-incomplete Dijkstra transaction support. This PR now keeps the public `sealedTxFromBytes` default capped at Conway, and the transaction layer re-decodes sealed bytes with the preferred latest era supplied by the caller before signing or decoding. That preserves the old "no later than current era" behavior without restoring the cardano-api bridge. ## Remaining out of scope - Removing `cardano-api` from `cardano-wallet-primitive.cabal`; other primitive modules still import it. - Removing `lib/cardano-api-extra/`. - Full deletion of the old `Shelley/Transaction.hs` module. ## Test plan - [x] `nix develop --command fourmolu --mode inplace ...` on touched Haskell files - [x] `git diff --check` - [x] `nix develop --command just build 'cardano-wallet-primitive cardano-wallet cardano-wallet-unit:unit'` - [x] `nix develop --command cabal test cardano-wallet-unit:unit -O0 -v0 --test-options '--match="TransactionSpec"'` - [x] `nix develop --command cabal test cardano-wallet-unit:unit -O0 -v0 --test-options '--match="SealedTx serialisation/deserialisation"'` - [x] `nix develop --command cabal build cardano-wallet cardano-wallet-api cardano-wallet-unit:unit --enable-tests --enable-benchmarks --minimize-conflict-set -O0 -v0` - [x] `rg 'Cardano\.Api|qualified Cardano.Api' lib/primitive/lib/Cardano/Wallet/Primitive/Types/Tx/SealedTx.hs` returns no matches - [x] CI green on the rebased tip
fix(release): smoke-test built artifacts before upload (#5274)
Closes #5273. ## Why Last night's nightly Release [run #25536061161](https://github.com/cardano-foundation/cardano-wallet/actions/runs/25536061161) shipped a Linux artifact built from the previous RC: tarball named `cardano-wallet-v2026-05-05-linux64.tar.gz`, embedded `git revision: 1129e3a6…` (HEAD of `release-candidate/v2026-05-05`), even though the runner had checked out `release-candidate/v2026-05-08` at `f4bdf3b54f…`. macOS and Windows builds packaged the right revision; only the Linux build went stale. `Verify Linux` caught the discrepancy in the smoke test, but only *after* the broken artifact had already been uploaded. The root cause is not yet fully identified (issue #5273 has the analysis). This PR doesn't try to fix the root cause — it makes the failure mode more diagnosable and stops the broken artifact at the build job rather than the verify job. ## What Two new steps in the `build-artifacts` job in `.github/workflows/release.yml`. ### 1. `Sanity-check checkout` — runs after `actions/checkout` Asserts that: - `git rev-parse HEAD` matches `needs.prepare.outputs.release-candidate-commit` - `lib/wallet/cardano-wallet.cabal`'s `version:` field (with the leading `0.` stripped, matching `scripts/release/release-candidate.sh:42`) matches `needs.prepare.outputs.release-cabal-version` If either differs, the job fails before invoking `nix build`. ### 2. `Smoke test built artifact` — runs after `nix build`, before `Upload artifact` For Linux and macOS: - Locate the archive in `result/` - Assert its filename contains the expected git tag (e.g. `v2026-05-08`) - Extract and run `cardano-wallet version`; assert the output contains the expected git tag For Windows: only the filename check runs (no wine on the build host; `verify-artifacts` still does the wine-based version check). For the Docker Image entry: matrix fields `extract: ''` and `binary: ''` are empty, so the smoke-test step's `if: matrix.binary != ''` skip kicks in. ## What I deliberately did *not* change I considered but rejected three other proposals (full reasoning in #5273): - **Folding `gitrev` into the release-build derivation hash** — already done. `gitrev` is interpolated into the `installPhase` string in `nix/release-build.nix`. - **Adding a `version` env attr in `nix/release-package.nix`** — already done. The cabal version is embedded in the derivation `name` via `walletLib.gitTagFromCabalVersion exe.meta.name`. - **Hardening the `self.rev or "0000…"` fallback in `flake.nix`** — last night's failure had a real-but-stale gitrev (`1129e3a6…`), not the all-zeros fallback. ## Test evidence Self-tested before requesting review. **Negative control** ([run #25552326078](https://github.com/cardano-foundation/cardano-wallet/actions/runs/25552326078)): a throwaway branch deliberately patched `scripts/release/release-candidate.sh` to skip the cabal-version sed, so the resulting test-rc branch had the stale `0.2026.4.17` version while prepare reported `release-cabal-version=2026.5.8`. The new `Sanity-check checkout` step caught it on every platform with the expected error: ``` ERROR: cabal version (0.2026.4.17) does not match release-cabal-version (2026.5.8) ``` **Positive control** ([run #25552442853](https://github.com/cardano-foundation/cardano-wallet/actions/runs/25552442853)): clean `workflow_dispatch` on this PR's branch (`release_type: nightly`) — should reach `Verify *` end-to-end without tripping the new steps. The first attempt ([#25552279258](https://github.com/cardano-foundation/cardano-wallet/actions/runs/25552279258)) tripped the cabal check on a leading-`0.` formatting issue in the comparison itself; that's the second commit on this branch. ## Test plan for reviewer - [ ] CI on this PR is green - [ ] Linked positive-control run reaches `Verify *` end-to-end - [ ] Linked negative-control run fails at `Sanity-check checkout` with the cabal-version error above
fix(release): assert embedded commit SHA in built artifact
Binary's `version` output prints "<tag> (git revision: <sha>)". Greppping for the tag alone is insufficient because a stale same-day build can carry the right tag but a different commit. Cross-check against `release-candidate-commit` so a substituted binary from a prior in-day prep state is rejected before upload. Per review on cardano-foundation/cardano-wallet#5274.
Update cardano-wallet version in *.cabal files
Update cardano-wallet version in run/common/docker/run.sh
Update wallet version in swagger.yaml
Update cardano-wallet version in README.md
fix(release): strip leading 0. when comparing cabal version
release-cabal-version (set by scripts/release/release-candidate.sh:42) strips the leading 0. from the cabal version field, so the sanity check needs to do the same to avoid spuriously failing every run. Caught by self-test against PR #5274.
Update cardano-wallet version in README.md
Update cardano-wallet version in run/common/docker/run.sh
Update wallet version in swagger.yaml
test(release): negative control — skip cabal version sed
Deliberate desync to verify the new Sanity-check step in build-artifacts catches a runner whose cabal version doesn't match prepare's release-cabal-version output. Not for merging. Refs cardano-foundation/cardano-wallet#5273.
feat: decommission SealedTx cardano-api surface (follow-up to #5236) (#5271)
## Summary Progress toward removing `Cardano.Api*` from `Cardano.Wallet.Primitive.Types.Tx.SealedTx`. Moves the first set of production and test call sites off the deprecated surface. Follow-up #5272 now finishes the remaining SealedTx cleanup. Base branch: `001-drop-cardano-api` (#5236). Rebased after #5270 merged and #5236 was rebased onto `master`. ## What this PR does Eight bisect-safe commits: | # | SHA | Effect | |---|---|---| | 1 | `04d65b2` | `docs`: plan document for the decommission series | | 2 | `b4b87af` | Test helper `compareOnCBOR` -> raw `serialisedTx` bytes, avoiding a cardano-api roundtrip | | 3 | `282807d` | Submission path `_postSealedTx` -> `EraValue Read.Tx` + `consensusGenTxFromTxRecent`; deletes `unsealShelleyTx` / `UnsealException` | | 4 | `a6d0c9d` | `parsePartialTx` -> `deserializeTx :: Either DecoderError (Read.Tx era)` per era | | 5 | `f1ba908` | Delete `cardanoTxInExactEra` after the callers are gone | | 6 | `55f2bd9` | Add `sealedTxFromLedgerTx :: Read.IsEra era => Read.Tx era -> SealedTx`; migrate `sealWriteTx` off `toCardanoApiTx`/`sealedTxFromCardano'` | | 7 | `e6feabc` | Add `sealedTxWitnessCount :: SealedTx -> Int` via ledger witnesses; migrate Server.hs away from `getSealedTxWitnesses` | | 8 | `c2ca434` | Integration test `getMetadataFromTx` -> `Meta.getMetadata . Meta.getEraMetadata` on `EraValue Read.Tx` | New ledger-native surface added to `SealedTx`: - `sealedTxFromLedgerTx :: Read.IsEra era => Read.Tx era -> SealedTx` - `sealedTxWitnessCount :: SealedTx -> Int` Deleted: - `cardanoTxInExactEra` - `Cardano.Wallet.Primitive.Ledger.Shelley.unsealShelleyTx` / `UnsealException` ## What this PR does not do The deprecated SealedTx cardano-api exports are removed in #5272, not here. Out of scope: - Removing `cardano-api` from `cardano-wallet-primitive.cabal`. - Removing `lib/cardano-api-extra/`. ## Test plan - [x] Rebased cleanly onto updated #5236 after #5270 merged (2026-04-25). - [ ] CI green on the rebased tip.
Update cardano-wallet version in *.cabal files
Update cardano-wallet version in README.md
Update cardano-wallet version in run/common/docker/run.sh
Update wallet version in swagger.yaml
Update cardano-wallet version in README.md
Update cardano-wallet version in *.cabal files
Update wallet version in swagger.yaml
Update cardano-wallet version in run/common/docker/run.sh
Update cardano-wallet version in *.cabal files