ci: convert Mithril snapshots for LMDB benchmarks
Home /
Cardano Foundation /
cardano-wallet
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 (4)
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 (0)
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 (4)
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 (0)
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 (9)
May 08, 9-10 AM (1)
May 08, 10-11 AM (9)
May 08, 11-12 PM (0)
May 08, 12-1 PM (0)
May 08, 1-2 PM (0)
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 (4)
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 (1)
May 09, 9-10 AM (0)
May 09, 10-11 AM (0)
May 09, 11-12 PM (0)
May 09, 12-1 PM (0)
May 09, 1-2 PM (0)
May 09, 2-3 PM (1)
May 09, 3-4 PM (0)
May 09, 4-5 PM (0)
May 09, 5-6 PM (0)
May 09, 6-7 PM (0)
May 09, 7-8 PM (0)
May 09, 8-9 PM (0)
May 09, 9-10 PM (0)
May 09, 10-11 PM (0)
May 09, 11-12 AM (0)
May 10, 12-1 AM (0)
May 10, 1-2 AM (0)
May 10, 2-3 AM (0)
May 10, 3-4 AM (4)
May 10, 4-5 AM (0)
May 10, 5-6 AM (0)
May 10, 6-7 AM (0)
May 10, 7-8 AM (0)
May 10, 8-9 AM (0)
May 10, 9-10 AM (0)
May 10, 10-11 AM (0)
May 10, 11-12 PM (0)
May 10, 12-1 PM (0)
May 10, 1-2 PM (0)
May 10, 2-3 PM (0)
May 10, 3-4 PM (0)
May 10, 4-5 PM (0)
May 10, 5-6 PM (0)
May 10, 6-7 PM (0)
May 10, 7-8 PM (0)
May 10, 8-9 PM (0)
May 10, 9-10 PM (0)
May 10, 10-11 PM (0)
May 10, 11-12 AM (0)
May 11, 12-1 AM (0)
May 11, 1-2 AM (0)
May 11, 2-3 AM (0)
May 11, 3-4 AM (4)
May 11, 4-5 AM (0)
May 11, 5-6 AM (0)
May 11, 6-7 AM (0)
May 11, 7-8 AM (1)
May 11, 8-9 AM (1)
May 11, 9-10 AM (2)
May 11, 10-11 AM (3)
May 11, 11-12 PM (8)
May 11, 12-1 PM (3)
May 11, 1-2 PM (5)
May 11, 2-3 PM (4)
May 11, 3-4 PM (0)
May 11, 4-5 PM (0)
May 11, 5-6 PM (0)
68 commits this week
May 04, 2026
-
May 11, 2026
docs(spec): clarify sync signal, timeouts, and DB lifecycle (#5278)
ci: use Mithril snapshots for restoration benchmarks
Closes #5278
docs: spec for mithril-provisioned restoration benchmark runs (#5278)
component: close cardano-wallet-integration
ci: convert Mithril snapshots for LMDB benchmarks
ci: use Mithril snapshots for restoration benchmarks
Closes #5278
docs(spec): clarify sync signal, timeouts, and DB lifecycle (#5278)
docs: spec for mithril-provisioned restoration benchmark runs (#5278)
ci: convert Mithril snapshots for LMDB benchmarks
component: close cardano-wallet-integration
component: close local-cluster
component: close cardano-wallet
Validate the cardano-wallet package as the next dependency-first slice. No owned source changes were required; the patch records formatting, linting, component builds for the library, public sublibrary, executables, and the green wallet-key-export test result.
component: close delta-store
Validate delta-store as the next dependency-first slice. No owned source changes were required; the patch records formatting, linting, Nix package/check builds, and the green unit test result.
component: close cardano-wallet-network-layer
Validate cardano-wallet-network-layer as the next dependency-first slice. No owned source changes were required; the patch records formatting, linting, Nix package/check builds, and the green unit test result.
component: close iohk-monitoring-extra
Validate iohk-monitoring-extra as the next dependency-first slice. The package declares no Cabal test-suite, so the patch records formatting, linting, cabal formatting, and the Nix library build gate.
component: close cardano-api-extra
Validate cardano-api-extra as the next dependency-first slice. The package declares no Cabal test-suite, so the patch records formatting, linting, cabal formatting, and the Nix library build gate.
component: close address-derivation-discovery
Validate address-derivation-discovery as the next dependency-first slice. The package declares no Cabal test-suite, so the patch records formatting, linting, cabal formatting, and the Nix library build gate.
component: close cardano-wallet-secrets
Validate cardano-wallet-secrets as the next dependency-first slice. No owned source changes were required; the patch records formatting, linting, Nix package/check builds, and the green test-suite result.
component: close cardano-wallet-primitive
Validate cardano-wallet-primitive as the next dependency-first slice. No owned source changes were required; the patch records formatting, linting, Nix package/check builds, and the green package-local test result.
component: close cardano-numeric
docs: confirm node 11 topology gate
ci: use Mithril snapshots for restoration benchmarks
Closes #5278
chore: pin node 11 upstream dependencies
fix(release): require manual publish, fix Latest pointer, pin Windows runners, trim signatures (#5282)
Closes #5281.
Three related fixes to the release pipeline, each in its own commit.
## 1. `chore(release): trim signatures template to current maintainers`
`scripts/release/release-template.md` shipped a 6-row signature table.
The
only currently-active wallet maintainers signing releases are Paolo
Veronelli (@paolino) and Pawel Jakubas (@paweljakubas). Removed the
other
rows so the templated release body no longer needs hand-editing for the
signature section.
## 2. `ci: pin Windows runners to windows-2025-vs2026`
Windows jobs emit a deprecation notice on `windows-latest`:
```
NOTICE: windows-2025 requests are being redirected to windows-2025-vs2026 by May 12, 2026
```
Pinned the four Windows job sites to the new explicit label:
- `.github/workflows/release.yml` (release e2e-windows)
- `.github/workflows/verify-release.yml` (verify-windows)
- `.github/workflows/windows-e2e.yml` (e2e-tests)
- `.github/workflows/windows.yml` (unit-tests)
`windows-2025-vs2026` is GA on GitHub-hosted runners (per
`actions/runner-images#14016`, May 7, 2026). `actionlint` does not yet
know the label; the warning it prints is a tooling lag, not a real
problem.
## 3. `fix(release): require manual publish for real releases`
This addresses two distinct bugs that share the same root cause: the
pipeline publishes too eagerly.
### Bug A — releases auto-undrafted before notes are reviewed
The `publish-release` job called `gh release edit --draft=false`
automatically once `verify-assets` passed. That published
v2026-05-11 as a prerelease with the raw template body — Docker link
placeholder still saying `FIX THIS LINK BY INSPECTING DOCKERHUB !`,
`Fixed/Added/Changed/Removed` sections empty, defunct signers
listed. Notes had to be rewritten in place after the release was
already public.
### Bug B — `releases/latest` API followed `nightly`
```
$ gh api repos/cardano-foundation/cardano-wallet/releases/latest --jq .tag_name
nightly
```
`nightly` is published as a non-prerelease, non-draft release. With
the default `make_latest=legacy` rule, GitHub picks the most recently
published non-prerelease release as Latest — which is `nightly`
every morning, until the next real release. So the "Latest" pointer
on the repo silently followed nightly builds.
### Fixes
`release.yml`:
- `create-release`: `gh release create` now passes `--prerelease` when
`IS_RELEASE != 'true'`. Nightly/test stop overtaking semver releases as
GitHub's "Latest".
- `publish-release`: auto-un-drafts only nightly/test. For real
releases it logs a notice ("Edit notes and click Publish in the UI")
and leaves the draft in place. The maintainer reviews + publishes
manually.
- `push-docker`: skipped on the release path. Tags renamed to
reflect it now only handles nightly/test. The `latest` tag push is
removed (it was already conditional on `IS_RELEASE`, which is now
always false here).
- `update-docs`: removed from `release.yml`.
New `.github/workflows/publish-release.yml`:
- Triggered on `release.published` (filter:
`!github.event.release.prerelease`).
- `push-docker`: downloads the `cardano-wallet-<tag>-docker-image.tgz`
asset from the release, pushes `cardanofoundation/cardano-wallet:<tag>`
and `:latest`.
- `update-docs`: checks out `gh-pages`, runs
`releases/make_redirects.sh "<tag>"`, pushes.
### Flow after this PR
- **Nightly cron**: same UX as before — workflow runs end-to-end,
release un-drafts as a prerelease, docker `nightly` tag pushed. No
human action needed. GitHub "Latest" pointer no longer changes.
- **Real release**: workflow builds, verifies, uploads assets to a
draft. Stops there. Maintainer edits the release notes, then
clicks "Publish release" in the GitHub UI. That fires
`release.published`, which runs `publish-release.yml` to push the
docker image (`<tag>` and `latest`) and update gh-pages redirects.
## Test plan
- [ ] Nightly cron run: release is created as draft prerelease,
un-drafted
by publish-release, `releases/latest` still points to the most recent
semver release.
- [ ] Manual release run: draft is created, publish-release logs the
notice URL, draft stays as draft, docker is NOT pushed yet, gh-pages
not updated.
- [ ] Click "Publish release" in the UI: `publish-release.yml` runs,
docker `<tag>` and `:latest` pushed to Docker Hub, gh-pages
redirects added.
- [ ] Windows jobs no longer emit the `windows-2025 -> vs2026` redirect
notice.
- [ ] Templated release body's signature table contains only Paolo and
Pawel.