Skip to content

Draft/extensible tx format (local version)#133

Draft
vivek-arte wants to merge 63 commits intoQED-it:mainfrom
zcash:draft/extensible_tx_format
Draft

Draft/extensible tx format (local version)#133
vivek-arte wants to merge 63 commits intoQED-it:mainfrom
zcash:draft/extensible_tx_format

Conversation

@vivek-arte
Copy link
Copy Markdown

No description provided.

@netlify
Copy link
Copy Markdown

netlify bot commented Feb 3, 2026

Deploy Preview for zcash-zips-qedit ready!

Name Link
🔨 Latest commit e325e71
🔍 Latest deploy log https://app.netlify.com/projects/zcash-zips-qedit/deploys/69c2fc05e95b0c0007e214de
😎 Deploy Preview https://deploy-preview-133--zcash-zips-qedit.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@vivek-arte vivek-arte marked this pull request as draft February 3, 2026 12:13
aphelionz and others added 2 commits February 4, 2026 14:16
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
@nuttycom nuttycom force-pushed the draft/extensible_tx_format branch 5 times, most recently from a0020fe to 986b087 Compare February 6, 2026 03:57
@nuttycom nuttycom force-pushed the draft/extensible_tx_format branch from 986b087 to 346b40d Compare February 19, 2026 16:44
nuttycom and others added 17 commits February 25, 2026 16:20
…savings.

In the aftermath of the recent coinholder vote, it became clear that
the data-saving motivations for separating memos from transaction
outputs had not been clearly represented in the draft ZIP. This alters
the abstract and motivation sections to clarify this point.
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
Co-authored-by: Jack Grigg <thestr4d@gmail.com>
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
…-11.12.3

Update to katex 0.16.33 and mermaid 11.12.3
[zip-template] Adjust the title and regenerate README.rst
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
Pin multimarkdown to the zcash fork (commit 543434c9) instead of
the nixpkgs package, ensuring the same version used by the
Docker-based build.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace Docker-based GitHub Actions with composite actions that use
cachix/install-nix-action and `nix develop` to run builds. This
eliminates Docker flakiness in CI and uses the same reproducible
Nix environment defined in flake.nix.

Changes:
- Convert render and render-protocol actions from Docker to composite
- Remove safe.directory workarounds (only needed for Docker UID mismatch)
- Use `make all` directly instead of `make all-docker`

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use DeterminateSystems/magic-nix-cache-action to cache the Nix store
across CI runs via GitHub Actions cache, avoiding repeated downloads
of texlive and other large dependencies.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Jack Grigg <thestr4d@gmail.com>
Co-authored-by: Kris Nuttycombe <kris@nutty.land>
[ZIP 231] Update abstract and motivation to clarify memo bundle data savings.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
ZIP 32: clarify the entropy requirement for wallet seeds
@nuttycom nuttycom force-pushed the draft/extensible_tx_format branch from 346b40d to 68f3ef9 Compare March 6, 2026 02:19
…in rst2html5

The Nix flake was providing docutils' built-in rst2html5 (the html5_polyglot
writer), but render.sh expects the separate PyPI package rst2html5 2.0.1 by
André Felipe Dias, which has different math handling. This mismatch (introduced
by the switch to Nix-based CI rendering) caused warnings for math commands like
\underline and \mathbin, and for syntax highlighting of code blocks.

This adds a custom derivation for rst2html5 2.0.1 from PyPI with its
dependencies (docutils, Genshi, Pygments), matching the versions specified in
zip-guide.rst.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
daira and others added 23 commits March 24, 2026 14:21
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
… and Orchard.

Specifies the effecting and authorizing data structures for each bundle type,
with value balance moved to mValuePoolDeltas as per the extensible tx format design.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…ment.

Specifies the V6 transaction digest algorithms:
- TxId digest with separate value_pool_deltas_digest and dynamic effects_bundles_digest
- Signature digest for transparent input signing with hash_type support
- Authorizing data commitment for witness data

Key design decisions:
- Value balances committed via top-level value_pool_deltas_digest (not per-bundle)
- effects_bundles_digest uses tagged concatenation (bundle_type_id || root_hash)
- Unknown bundle types supported by accepting their root hash externally

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…tion process.

Restructure the specification to begin with a comprehensive introduction to
protocol bundles, explaining effecting data, authorizing data, and the
transparent transaction value pool concepts. Define the bundle type
registration process that ZIPs must follow when introducing new bundle types.
Move the bundle type registry to appear before the transaction format
specification for better readability.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Update PR URL to 1156 and fix email addresses
- Use conformance language (MAY/MUST NOT) for registry column descriptions
- Add constraint that map keys must be in increasing order
- Change "ordered by" to "in increasing order of" throughout
- Fix "transparent transaction value pool" terminology
- Change AssetUuid subscript notation to function notation
- Add registry update mechanism language
- Add "Defining ZIP" column to bundle type registry table
- Rephrase consensus rules section to clarify modifications to protocol spec
- Add clarifying text for fee bundle semantics (coinbase collects, others pay)
- Add mutual exclusion consensus rule for Sapling/Orchard bundle variants

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register bundle type 4 (Transaction fee) in the V6 bundle registry
- Update consensus rules to use mValuePoolDeltas terminology
- Replace header_digest modification with value_pool_deltas_digest reference
- Add reference to extensible transaction format ZIP

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register bundle type 5 (NSM field) in the V6 bundle registry
- Update consensus rules to use mValuePoolDeltas terminology
- Replace header_digest modification with value_pool_deltas_digest reference
- Add reference to extensible transaction format ZIP

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register Memos, Sapling-post-ZIP 231, and Orchard-post-ZIP 231 bundle types
- Update encoding section to clarify it describes effecting data
- Replace Transaction sighash section with Transaction Digest referencing ZIP XXX
- Specify BLAKE2b-256 personalization strings for memo digest computation
- Add reference to extensible transaction format ZIP
- Fix zip-0230-note-plaintexts reference

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register ZSA Issuance bundle type in the V6 bundle registry
- Update digest section to reference effects_bundles_digest and auth_bundles_digest
- Add reference to extensible transaction format ZIP
- Remove unused ZIP 244 and ZIP 246 references

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register OrchardZSA bundle type in the V6 bundle registry
- Update digest section to reference effects_bundles_digest and auth_bundles_digest
- Add reference to extensible transaction format ZIP
- Remove unused ZIP 244 and ZIP 246 references

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…uples.

This makes the mutual exclusivity of bundle variants (e.g. Orchard vs
OrchardZSA) implicit in the map structure, and allows clients that do
not recognize a specific bundleVersion to still identify which pool
is affected.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add a section to ZIP 248 describing wallet requirements for handling
unknown bundle types and versions. Update ZIP 226 to reference ZIP 248
instead of ZIP 230 for transaction format and wallet implications.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@nuttycom nuttycom force-pushed the draft/extensible_tx_format branch from 2397384 to d345f8a Compare March 24, 2026 20:53
@nuttycom nuttycom force-pushed the draft/extensible_tx_format branch from d345f8a to bd6f621 Compare March 24, 2026 20:56
@nuttycom nuttycom force-pushed the draft/extensible_tx_format branch from bd6f621 to e325e71 Compare March 24, 2026 21:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants