docs: design record for TransactionPrototype - #839
Open
lisicky wants to merge 1 commit into
Open
Conversation
lisicky
force-pushed
the
docs/tx-prototype-design
branch
from
August 8, 2026 12:01
69b7299 to
210e847
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Design record for
TransactionPrototype. Documentation only — the implementation is #837, this PR adds no code.The prototype is the handoff value between a transaction builder and a serializer: a fully-resolved, backend-agnostic representation of a Cardano transaction — post coin-selection, post witness collection — already in a shape friendly to serialization. It is what the builder should assemble at the end and hand to the serializer, and nothing more: no builder intent, no unresolved references, no partial state.
docs/design/tx-prototype.mdrecords the decisions that are not obvious from reading the types:mesh-commonand not in either serializer packagebigintrather thannumber | bigintmesh-core-cst/mesh-core-cslasymmetry, and whisky's conformance gaps as upstream bugs rather than reasons to narrow the typesAffect components
@meshsdk/common@meshsdk/core-csl@meshsdk/core-cst(documented, not modified)
Type of Change
Related Issues
Documents the design implemented in #837.
Checklist
npm run test) — unaffectednpm run build) — unaffected