Skip to content

[DONT MERGE] Umbrella: ledger-cbor reader, Dijkstra models and Amaru removal — merge plan - #243

Draft
satran004 wants to merge 1 commit into
mainfrom
tracking/ledger-cbor-merge-plan
Draft

satran004 wants to merge 1 commit into
mainfrom
tracking/ledger-cbor-merge-plan

Conversation

@satran004

@satran004 satran004 commented Nov 7, 2026 •

Copy link
Copy Markdown
Member

DONT MERGE. Tracking PR for the ledger-cbor reader, the Dijkstra models and the Amaru removal across CCL (bloxbean/cardano-client-lib), Yaci and Yano. Tick items as they land.

Status (2026-11-09)

  • Conformance on the ledger-cbor branches, newest pins (dataset 4fd977b2, NDC 01d11b7c), with the type-6 fix: CBOR 43,365/43,434, ledger rules 290 scenarios, UPLC 1,064, turbo 3,997 budgets — identical per sample to the previous run.
  • Holistic review (Fable and Codex, independent): ledger-format reading is in CCL's ledger-cbor for CCL's models, Yaci's serializers and Yano's strict package; leftovers listed under "Follow-ups".
  • Fixed: Yano accepted a Conway native script of type 6 (Dijkstra's guard) on the ledger-cbor branch; 8811854a6 on feat/ledger-cbor-reader, reviewed by both.

Decisions needed before release

  • ADR 0004: status Proposed → Accepted (Dijkstra experimental); its code ships in #748
  • Approve the listed differences in ADR 0003 sections 7.2 (M7a) and 7.3 (M7c)
  • Indefinite-length headers: Yano accepts them (ledger 6176e413); released nodes read headers definite-only
  • I10: Yano's strict reading at +30% per Conway block (about 40 µs)
  • CCL #748 SonarCloud gate: 11 records with byte[] fields (array equality by reference) + 1 minor: fix, or accept in Sonar
  • Yaci metadata CBOR: source bytes always (yaci-store#1215), as yaci#243 on main; done on the reader in yaci#244 (32726dc5), ADR 0003 r11
  • Byron wide-head address: the harness writer fix
  • ADR 0005 (CCL #750): accept, Q1–Q4 (does not block pre8)

Phase A — can merge now

Phase B — the release chain

Follow-ups (not blocking; issues to file on approval)

CCL

  • One public reference-script reader: NativeScript.deserializeScriptRef, PlutusScript.deserializeScriptRef, ReferenceScriptUtil.deserializeScriptRef each read [type, script] (V4 accepted by one, rejected by another) — candidate for pre8, as it adds public API
  • RawItems.indefiniteRecordsAllowed compares eras outside EraSpec (ADR 0003 I2)
  • tools/reader-diff OutcomeDiff recursion on deep unequal inputs
  • #749 (aux V3 scripts with metadata; bignum/negative rationals)

Yaci

  • BlockSerializer Dijkstra tx parts by position; AnchorSerializer.deserializeDI; Redeemer/Credential/StakeCredential model readers (tag 6 → null; intValue() wrap); placeholder BlockSerializerTest
  • yaci#240, yaci#242

Yano (all pre-existing on main)

Reported upstream offline: NDC 00280's expected name; dataset label bootstrap-witnesses-empty; the 64 aux-data samples.

…u removal (do not merge)

Tracking only: the umbrella PR's single file.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MJrQUDVVQMG6z1k4eszgth
@satran004 satran004 added the DONT MERGE Tracking or umbrella PR; never merge label Nov 7, 2026

Copy link
Copy Markdown

Initial automated review · Aster

Hi @satran004, thanks for the PR! 🙏 This is an automatic first check by an AI reviewer. It does not replace maintainer review and may be wrong.

Reviewed commit: 8eff3d70505a42bb9402a5b6fc66dfb42e3e595e

I reviewed this draft as a tracking plan.

Issues found:

  • docs/tracking/ledger-cbor-merge-plan.md:13 — Editing chore: remove the Amaru WebAssembly validator (ADR-062) #241’s base alone won’t trigger the main-targeted build, so the existing green checks can still be from the stacked base. Could we trigger fresh checks against main before merging?
  • docs/tracking/ledger-cbor-merge-plan.md:23 — CCL #748’s corpus check fails because CI expects three tests and the suite now has four. Could we make a green corpus check explicit before releasing pre8?

Suggestions:

  • docs/tracking/ledger-cbor-merge-plan.md:27 — Could we update corpora.env before fetching newer inputs, so the CBOR report records the dataset commit it actually tested?

Not tested: I checked the plan, source, and CI logs without running builds, tests, or reports.

This branch has not been deployed

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

Labels

DONT MERGE Tracking or umbrella PR; never merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants