cardanoLib: respin leios for 2 hr epoch and 11.0.1 rebase
May 22, 4-5 PM (29)
May 22, 5-6 PM (13)
May 22, 6-7 PM (20)
May 22, 7-8 PM (20)
May 22, 8-9 PM (12)
May 22, 9-10 PM (12)
May 22, 10-11 PM (41)
May 22, 11-12 AM (12)
May 23, 12-1 AM (9)
May 23, 1-2 AM (0)
May 23, 2-3 AM (3)
May 23, 3-4 AM (1)
May 23, 4-5 AM (1)
May 23, 5-6 AM (4)
May 23, 6-7 AM (12)
May 23, 7-8 AM (1)
May 23, 8-9 AM (3)
May 23, 9-10 AM (1)
May 23, 10-11 AM (1)
May 23, 11-12 PM (5)
May 23, 12-1 PM (1)
May 23, 1-2 PM (6)
May 23, 2-3 PM (5)
May 23, 3-4 PM (5)
May 23, 4-5 PM (4)
May 23, 5-6 PM (0)
May 23, 6-7 PM (3)
May 23, 7-8 PM (23)
May 23, 8-9 PM (1)
May 23, 9-10 PM (9)
May 23, 10-11 PM (21)
May 23, 11-12 AM (27)
May 24, 12-1 AM (9)
May 24, 1-2 AM (0)
May 24, 2-3 AM (1)
May 24, 3-4 AM (1)
May 24, 4-5 AM (0)
May 24, 5-6 AM (3)
May 24, 6-7 AM (1)
May 24, 7-8 AM (2)
May 24, 8-9 AM (2)
May 24, 9-10 AM (4)
May 24, 10-11 AM (4)
May 24, 11-12 PM (1)
May 24, 12-1 PM (7)
May 24, 1-2 PM (46)
May 24, 2-3 PM (5)
May 24, 3-4 PM (3)
May 24, 4-5 PM (18)
May 24, 5-6 PM (2)
May 24, 6-7 PM (4)
May 24, 7-8 PM (13)
May 24, 8-9 PM (10)
May 24, 9-10 PM (15)
May 24, 10-11 PM (34)
May 24, 11-12 AM (42)
May 25, 12-1 AM (9)
May 25, 1-2 AM (5)
May 25, 2-3 AM (6)
May 25, 3-4 AM (1)
May 25, 4-5 AM (6)
May 25, 5-6 AM (14)
May 25, 6-7 AM (17)
May 25, 7-8 AM (17)
May 25, 8-9 AM (32)
May 25, 9-10 AM (43)
May 25, 10-11 AM (64)
May 25, 11-12 PM (33)
May 25, 12-1 PM (43)
May 25, 1-2 PM (40)
May 25, 2-3 PM (20)
May 25, 3-4 PM (27)
May 25, 4-5 PM (16)
May 25, 5-6 PM (6)
May 25, 6-7 PM (7)
May 25, 7-8 PM (11)
May 25, 8-9 PM (12)
May 25, 9-10 PM (16)
May 25, 10-11 PM (44)
May 25, 11-12 AM (26)
May 26, 12-1 AM (12)
May 26, 1-2 AM (11)
May 26, 2-3 AM (8)
May 26, 3-4 AM (11)
May 26, 4-5 AM (6)
May 26, 5-6 AM (9)
May 26, 6-7 AM (26)
May 26, 7-8 AM (43)
May 26, 8-9 AM (39)
May 26, 9-10 AM (42)
May 26, 10-11 AM (45)
May 26, 11-12 PM (59)
May 26, 12-1 PM (34)
May 26, 1-2 PM (50)
May 26, 2-3 PM (50)
May 26, 3-4 PM (18)
May 26, 4-5 PM (20)
May 26, 5-6 PM (13)
May 26, 6-7 PM (20)
May 26, 7-8 PM (12)
May 26, 8-9 PM (15)
May 26, 9-10 PM (15)
May 26, 10-11 PM (35)
May 26, 11-12 AM (30)
May 27, 12-1 AM (16)
May 27, 1-2 AM (8)
May 27, 2-3 AM (9)
May 27, 3-4 AM (5)
May 27, 4-5 AM (32)
May 27, 5-6 AM (9)
May 27, 6-7 AM (49)
May 27, 7-8 AM (65)
May 27, 8-9 AM (38)
May 27, 9-10 AM (74)
May 27, 10-11 AM (83)
May 27, 11-12 PM (30)
May 27, 12-1 PM (50)
May 27, 1-2 PM (39)
May 27, 2-3 PM (53)
May 27, 3-4 PM (37)
May 27, 4-5 PM (11)
May 27, 5-6 PM (18)
May 27, 6-7 PM (21)
May 27, 7-8 PM (25)
May 27, 8-9 PM (17)
May 27, 9-10 PM (15)
May 27, 10-11 PM (29)
May 27, 11-12 AM (27)
May 28, 12-1 AM (9)
May 28, 1-2 AM (3)
May 28, 2-3 AM (5)
May 28, 3-4 AM (2)
May 28, 4-5 AM (9)
May 28, 5-6 AM (34)
May 28, 6-7 AM (31)
May 28, 7-8 AM (84)
May 28, 8-9 AM (33)
May 28, 9-10 AM (54)
May 28, 10-11 AM (50)
May 28, 11-12 PM (21)
May 28, 12-1 PM (46)
May 28, 1-2 PM (50)
May 28, 2-3 PM (23)
May 28, 3-4 PM (43)
May 28, 4-5 PM (86)
May 28, 5-6 PM (13)
May 28, 6-7 PM (31)
May 28, 7-8 PM (43)
May 28, 8-9 PM (34)
May 28, 9-10 PM (17)
May 28, 10-11 PM (36)
May 28, 11-12 AM (32)
May 29, 12-1 AM (12)
May 29, 1-2 AM (13)
May 29, 2-3 AM (4)
May 29, 3-4 AM (3)
May 29, 4-5 AM (0)
May 29, 5-6 AM (2)
May 29, 6-7 AM (5)
May 29, 7-8 AM (16)
May 29, 8-9 AM (37)
May 29, 9-10 AM (34)
May 29, 10-11 AM (69)
May 29, 11-12 PM (25)
May 29, 12-1 PM (44)
May 29, 1-2 PM (65)
May 29, 2-3 PM (60)
May 29, 3-4 PM (20)
May 29, 4-5 PM (1)
3,604 commits this week
May 22, 2026
-
May 29, 2026
docs(examples): gov lens using postgres for metadata (#2447)
Signed-off-by: Chris Gianelloni <[email protected]>
fix: gracefully ignore --unrestricted on unsupported targets
Addresses PR review: instead of throwing when --unrestricted is used on a device/app that can't honor it, fall back to the auto-inferred signing mode and log a warning. This keeps callers device-agnostic - a script can always pass --unrestricted without first branching on device kind or app version. - Add downgradeUnsupportedUnrestricted helper (crypto-providers/util.ts). - Trezor and Keystone: warn + ignore instead of erroring. - Ledger: check compatibility.supportsUnrestrictedTransaction from getVersion(); on app v7 and older, warn + fall back. - Remove the now-unused Trezor/Keystone "not supported" errors. - Reword the --unrestricted help (code + README): "Ledger app v8 or newer"; "ignored (with a warning)" on Trezor/Keystone/older apps. - Unit tests for the fallback helper. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
refactor: decide unrestricted support when picking the signing mode
Per review: instead of picking UNRESTRICTED and then undoing it per-provider, decide up front whether unrestricted is actually applicable, so the signing mode is never UNRESTRICTED on a device/app that can't honor it. - Add supportsUnrestrictedTxSigning() to the CryptoProvider interface (Ledger: compatibility.supportsUnrestrictedTransaction from getVersion; Trezor/Keystone: false). - commandExecutor consults it before determineSigningMode and, if --unrestricted was requested but unsupported, warns and ignores it. So validateWitnessing already sees the effective mode. - Remove the per-provider downgrade and the downgradeUnsupportedUnrestricted helper (and its now-redundant tests). Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
test: cover --unrestricted signing mode
Unit tests for the new unrestricted signing mode (no device needed): - command parser sets unrestricted: true when --unrestricted is passed - determineSigningMode returns UNRESTRICTED_TRANSACTION when requested and takes precedence over auto-inference (even over a pool registration tx), and is unaffected when the flag is absent/false - validateWitnessing accepts an ordinary tx in unrestricted mode and rejects a tx carrying a pool registration certificate Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
fix: bundle @ledgerhq/devices/hid-framing in the pkg build
The ledgerjs/transport bump pulled @ledgerhq/devices up to 8.x.
@ledgerhq/hw-transport-node-hid-noevents loads it via the exports-map
subpath `require("@ledgerhq/devices/hid-framing")`, which resolves to
lib/hid-framing.js. pkg's static analysis does not follow that exports
subpath into the snapshot, so the packaged binary failed at startup with
"Cannot find module .../@ledgerhq/devices/lib/hid-framing.js" (CI test-bin).
Add the devices lib to pkg.scripts so it is compiled into the snapshot.
Verified by packaging the macOS arm64 binary and running --help: it now
starts cleanly with no missing-module error.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
docs: document the --unrestricted witness flag
Add --unrestricted to the `transaction witness` command reference in the README: Ledger app v8 + expert mode, relaxed client-side checks, no pool registration certificate, unsupported on Trezor/Keystone. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
feat: add --unrestricted signing mode for Ledger app v8
Expose the new unrestricted transaction signing mode (Ledger app v8 with expert mode) via a `--unrestricted` flag on `transaction witness`. - SigningMode.UNRESTRICTED_TRANSACTION enum value + mapping to the ledgerjs TransactionSigningMode in the Ledger provider. - determineSigningMode takes precedence for unrestricted when requested; it is never auto-inferred (per the lib's contract). - Trezor and Keystone reject it explicitly (Ledger-v8-only). - Expert mode is enabled by ledgerjs itself before signing, so no extra device plumbing is needed here. Security-relevant relaxations (please review): unrestricted mode is a superset of ordinary allowances, so device-owned address params and key-hash credentials are permitted (areAddressParamsAllowed / allowKeyHash), and witnessing validation only enforces the one invariant the Ledger app keeps - no pool registration certificate. The device shows every element for the expert user to review. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
feat: bump ledgerjs to 8.0.0-rc.2 for Ledger app v8 support
Pull in @cardano-foundation/ledgerjs-hw-app-cardano 8.0.0-rc.2 (Ledger app v8: unrestricted signing mode, combined certificates). Sourced from the vacuumlabs GitHub pre-release tarball since 8.x is not yet on npm; repoint to the npm version once published. The 8.x lib requires @ledgerhq/hw-transport ^6.31.2, which adds tracing methods to Transport. Bump hw-transport and the node-hid-noevents / node-speculos impl packages so the whole tree dedupes to a single hw-transport (6.35.2) and the Ledger(transport) type matches. No hw-cli source changes were needed; build, lint and unit tests pass. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
feat: expand address verification to enterprise and reward addresses
docs: document new transform transaction args
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
test: network params and usedCostModelLanguages
feat: pass protocol params to transform transaction to fix script integrity issues
Adopt the eager non-voter pipeline
Under eager, non-voters pre-fetch the EB body and missing closure during the diffusion window in parallel with voter activity (rather than starting from scratch when the certRB arrives, which is the lazy alternative we previously documented). Add a new "Where does p_cert come from?" sub-paragraph in §3.1 between the bug-fix pseudocode and the existing "Why P_cert, not P(EB exists)" subsection.
WIP: implementing a signableBuilder for CardanoNodeLedgerState
WIP: align signer with new artifact builder
WIP: add signed entity type CardanoNodeLedgerState in e2e tests
WIP: implement a minimal artifact builder for the CardanoNodeLedgerState
feat(testnets/adversary): exclude support services from fault injection (#156)
Ports PR #155's compose-label exclusion mechanism to the adversary testnet, including the adversary host. The Cardano nodes remain unlabeled so they stay faultable.
chore: update changelog
chore: upgrade crate versions
* [js] mithril-explorer from `0.7.51` to `0.8.0`
fix(explorer): avoid "Unstable functions are not enabled" errors when validating a chain
refactor(explorer): simplify AddAggregatorModal form state management and input handling
- reduces manual state tracking by using `FormData` to retrieve submitted values - replaces redundant props with destructured parameters - removes unused logic