Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: complete the Treestate RFC documentation #9340

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

VolodymyrBg
Copy link

@VolodymyrBg VolodymyrBg commented Mar 20, 2025

Motivation

  • Complete the Treestate RFC documentation by addressing all TODO items and filling in missing information
  • Improve documentation clarity and organization for developers implementing the treestate feature

Solution

This PR completes the Treestate RFC documentation in book/src/dev/rfcs/drafts/0005-treestate.md by:

  • Reorganizing the definitions section into separate sections for Common, Sprout, Sapling, and Orchard protocols
  • Adding detailed explanations for Heartwood, Canopy, and NU5 anchor validation rules
  • Completing the section on handling state rollbacks for non-finalized chain tips
  • Adding a comprehensive reference-level explanation with implementation details
  • Adding detailed sections on drawbacks, rationale, alternatives, prior art, and unresolved questions
  • Expanding the future possibilities section with concrete ideas

Tests

  • Documentation changes only, no code modifications requiring tests

Specifications & References

  • Referenced the Zcash Protocol Specification for technical accuracy
  • Based on existing implementation details in the codebase

Follow-up Work

  • Additional documentation improvements for related components might be needed
  • Some implementation details might need to be adjusted as the actual code evolves

PR Checklist

  • The PR name is suitable for the release notes.
  • The solution is tested.
  • The documentation is up to date.
  • The PR has a priority label.
  • If the PR shouldn't be in the release notes, it has the
    C-exclude-from-changelog label.

@VolodymyrBg VolodymyrBg requested a review from a team as a code owner March 20, 2025 19:42
@VolodymyrBg VolodymyrBg requested review from arya2 and removed request for a team March 20, 2025 19:42
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.

1 participant