Skip to content

Conversation

insumity
Copy link
Collaborator

@insumity insumity commented Oct 6, 2025

🤖 Generated with Claude Code

Closes: #XXX


PR author checklist

For all contributors

For external contributors

Add lastPrevote tracking and refactor round transitions

- Add last_prevote field to State for rebroadcast support (FaB spec)
- Create start_round() helper function encapsulating StartRound logic
- Update state machine to set last_prevote when broadcasting prevotes
- Refactor NewRound, SkipRound, TimeoutPrevote to use start_round()
- Fix round condition from != to > Round::ZERO for semantic correctness
- Preserve prevoted_value/prevoted_proposal_msg across rounds (not reset)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Copy link

github-actions bot commented Oct 6, 2025

⚠️ Semver Violation Detected ⚠️

This PR introduces breaking changes that violate semantic versioning rules.

Violation type: unknown
Current version: 0.6.0-pre

Required Action

You need to either:

  1. Revert the breaking changes to maintain backward compatibility, OR
  2. Take all of the following steps:
    • Update the version in Cargo.toml to a new version, depending on the type of semver violation
    • Document the breaking changes in BREAKING_CHANGES.md with details about what changed and how users should adapt

Note

Because we are still at version 0.X.Y, major semver violations require only a minor version bump (X), while minor semver violations require only a patch version bump (Y).

Breaking Changes Documentation

If you decide to keep the breaking changes, please make sure to:

  • Update BREAKING_CHANGES.md with a detailed explanation of the changes
  • Include information about how users should migrate their code
  • Specify which version introduces these changes

For more information on semantic versioning in Rust, please consult the Rust API Guidelines and Cargo's SemVer compatibility rules.

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