Home / Input Output / cardano-api
Mar 13, 3-4 AM (3)
Mar 13, 4-5 AM (0)
Mar 13, 5-6 AM (0)
Mar 13, 6-7 AM (0)
Mar 13, 7-8 AM (0)
Mar 13, 8-9 AM (1)
Mar 13, 9-10 AM (1)
Mar 13, 10-11 AM (0)
Mar 13, 11-12 PM (2)
Mar 13, 12-1 PM (1)
Mar 13, 1-2 PM (5)
Mar 13, 2-3 PM (0)
Mar 13, 3-4 PM (1)
Mar 13, 4-5 PM (0)
Mar 13, 5-6 PM (2)
Mar 13, 6-7 PM (0)
Mar 13, 7-8 PM (6)
Mar 13, 8-9 PM (0)
Mar 13, 9-10 PM (0)
Mar 13, 10-11 PM (0)
Mar 13, 11-12 AM (0)
Mar 14, 12-1 AM (0)
Mar 14, 1-2 AM (0)
Mar 14, 2-3 AM (0)
Mar 14, 3-4 AM (0)
Mar 14, 4-5 AM (0)
Mar 14, 5-6 AM (0)
Mar 14, 6-7 AM (0)
Mar 14, 7-8 AM (0)
Mar 14, 8-9 AM (0)
Mar 14, 9-10 AM (0)
Mar 14, 10-11 AM (0)
Mar 14, 11-12 PM (0)
Mar 14, 12-1 PM (0)
Mar 14, 1-2 PM (0)
Mar 14, 2-3 PM (0)
Mar 14, 3-4 PM (0)
Mar 14, 4-5 PM (0)
Mar 14, 5-6 PM (0)
Mar 14, 6-7 PM (0)
Mar 14, 7-8 PM (0)
Mar 14, 8-9 PM (0)
Mar 14, 9-10 PM (0)
Mar 14, 10-11 PM (0)
Mar 14, 11-12 AM (0)
Mar 15, 12-1 AM (0)
Mar 15, 1-2 AM (0)
Mar 15, 2-3 AM (0)
Mar 15, 3-4 AM (0)
Mar 15, 4-5 AM (0)
Mar 15, 5-6 AM (0)
Mar 15, 6-7 AM (0)
Mar 15, 7-8 AM (0)
Mar 15, 8-9 AM (0)
Mar 15, 9-10 AM (0)
Mar 15, 10-11 AM (0)
Mar 15, 11-12 PM (0)
Mar 15, 12-1 PM (0)
Mar 15, 1-2 PM (0)
Mar 15, 2-3 PM (0)
Mar 15, 3-4 PM (0)
Mar 15, 4-5 PM (0)
Mar 15, 5-6 PM (0)
Mar 15, 6-7 PM (0)
Mar 15, 7-8 PM (0)
Mar 15, 8-9 PM (0)
Mar 15, 9-10 PM (0)
Mar 15, 10-11 PM (0)
Mar 15, 11-12 AM (0)
Mar 16, 12-1 AM (0)
Mar 16, 1-2 AM (0)
Mar 16, 2-3 AM (0)
Mar 16, 3-4 AM (0)
Mar 16, 4-5 AM (0)
Mar 16, 5-6 AM (0)
Mar 16, 6-7 AM (0)
Mar 16, 7-8 AM (1)
Mar 16, 8-9 AM (0)
Mar 16, 9-10 AM (0)
Mar 16, 10-11 AM (0)
Mar 16, 11-12 PM (10)
Mar 16, 12-1 PM (0)
Mar 16, 1-2 PM (5)
Mar 16, 2-3 PM (0)
Mar 16, 3-4 PM (1)
Mar 16, 4-5 PM (14)
Mar 16, 5-6 PM (0)
Mar 16, 6-7 PM (0)
Mar 16, 7-8 PM (0)
Mar 16, 8-9 PM (1)
Mar 16, 9-10 PM (1)
Mar 16, 10-11 PM (0)
Mar 16, 11-12 AM (0)
Mar 17, 12-1 AM (0)
Mar 17, 1-2 AM (0)
Mar 17, 2-3 AM (0)
Mar 17, 3-4 AM (0)
Mar 17, 4-5 AM (0)
Mar 17, 5-6 AM (0)
Mar 17, 6-7 AM (0)
Mar 17, 7-8 AM (0)
Mar 17, 8-9 AM (13)
Mar 17, 9-10 AM (0)
Mar 17, 10-11 AM (0)
Mar 17, 11-12 PM (0)
Mar 17, 12-1 PM (29)
Mar 17, 1-2 PM (5)
Mar 17, 2-3 PM (0)
Mar 17, 3-4 PM (0)
Mar 17, 4-5 PM (0)
Mar 17, 5-6 PM (1)
Mar 17, 6-7 PM (1)
Mar 17, 7-8 PM (0)
Mar 17, 8-9 PM (6)
Mar 17, 9-10 PM (1)
Mar 17, 10-11 PM (0)
Mar 17, 11-12 AM (0)
Mar 18, 12-1 AM (0)
Mar 18, 1-2 AM (0)
Mar 18, 2-3 AM (0)
Mar 18, 3-4 AM (0)
Mar 18, 4-5 AM (0)
Mar 18, 5-6 AM (0)
Mar 18, 6-7 AM (0)
Mar 18, 7-8 AM (0)
Mar 18, 8-9 AM (0)
Mar 18, 9-10 AM (0)
Mar 18, 10-11 AM (0)
Mar 18, 11-12 PM (1)
Mar 18, 12-1 PM (16)
Mar 18, 1-2 PM (1)
Mar 18, 2-3 PM (1)
Mar 18, 3-4 PM (0)
Mar 18, 4-5 PM (1)
Mar 18, 5-6 PM (4)
Mar 18, 6-7 PM (0)
Mar 18, 7-8 PM (0)
Mar 18, 8-9 PM (0)
Mar 18, 9-10 PM (0)
Mar 18, 10-11 PM (0)
Mar 18, 11-12 AM (0)
Mar 19, 12-1 AM (1)
Mar 19, 1-2 AM (0)
Mar 19, 2-3 AM (0)
Mar 19, 3-4 AM (0)
Mar 19, 4-5 AM (0)
Mar 19, 5-6 AM (0)
Mar 19, 6-7 AM (0)
Mar 19, 7-8 AM (0)
Mar 19, 8-9 AM (0)
Mar 19, 9-10 AM (2)
Mar 19, 10-11 AM (3)
Mar 19, 11-12 PM (2)
Mar 19, 12-1 PM (0)
Mar 19, 1-2 PM (6)
Mar 19, 2-3 PM (0)
Mar 19, 3-4 PM (0)
Mar 19, 4-5 PM (0)
Mar 19, 5-6 PM (0)
Mar 19, 6-7 PM (0)
Mar 19, 7-8 PM (0)
Mar 19, 8-9 PM (0)
Mar 19, 9-10 PM (0)
Mar 19, 10-11 PM (0)
Mar 19, 11-12 AM (0)
Mar 20, 12-1 AM (0)
Mar 20, 1-2 AM (1)
Mar 20, 2-3 AM (0)
Mar 20, 3-4 AM (0)
150 commits this week Mar 13, 2026 - Mar 20, 2026
Add indexCertificatesWith and fix indexTxCertificates to preserve unwitnessed certs
Introduce indexCertificatesWith, a shared helper that associates each
certificate with its position-based ScriptWitnessIndex while preserving
unwitnessed certificates (those stored with a Nothing witness).

Previously indexTxCertificates filtered out Nothing-witness certs,
silently dropping them during fee balancing. The return type now
includes Maybe so callers must handle both cases.

Fixes #1138
Expand cert-preservation tests with more cert types and witness kinds
- Cover ConwayRegCert (unwitnessed), ConwayUnRegCert (key-witnessed),
  ConwayDelegCert (simple-script-witnessed), and ConwayRegDelegCert
  (key-witnessed) in the substituteExecutionUnits property.
- Randomize cert ordering via Gen.shuffle for meaningful variation.
- Add property: collectTxBodyScriptWitnesses produces no spurious
  script witnesses from unwitnessed or key-witnessed certs.
- Add property: createCompatibleTx preserves all certs (witnessed and
  unwitnessed) in the resulting ledger transaction body.
- Extract shared genShuffledCertsWithCount generator.
Propagate indexCertificatesWith to all cert-indexing call sites
Update indexTxCertificates in the experimental API and Compatible/Tx
to use the shared indexCertificatesWith helper. Fix
mapScriptWitnessesCertificates in both the legacy and experimental
APIs to handle Nothing-witness certs instead of silently dropping them.
Update collectTxBodyScriptWitnesses and createCompatibleTx callers to
pattern-match on the new Maybe return type.
Add indexCertificatesWith and fix indexTxCertificates to preserve unwitnessed certs
Introduce indexCertificatesWith, a shared helper that associates each
certificate with its position-based ScriptWitnessIndex while preserving
unwitnessed certificates (those stored with a Nothing witness).

Previously indexTxCertificates filtered out Nothing-witness certs,
silently dropping e.g. ConwayRegCert without deposit and RegPool
during fee balancing. The return type now includes Maybe so callers
must handle both cases.

Fixes #1138