Skip to content

KIP-227: Revision#97

Merged
ian0371 merged 7 commits intomainfrom
kip-227
Mar 5, 2026
Merged

KIP-227: Revision#97
ian0371 merged 7 commits intomainfrom
kip-227

Conversation

@ian0371
Copy link
Copy Markdown
Contributor

@ian0371 ian0371 commented Feb 23, 2026

Proposed changes

This PR updates KIP-227 with a more concrete VRank specification: new data structures, protocol behavior, and clearer scoring.

[Terminology]

  • CANDIDATE_READY_TIMEOUT → CANDIDATE_MSG_TIMEOUT (200ms → 500ms)
  • CandidateReady → VRankCandidate
  • crReport → cfReport (Candidate Failure Report)
  • TMFS / CMFS → CFS (Candidate Failure Score)
  • PFS_FAILURE_THRESHOLD → PFS_THRESHOLD = 2
  • CFS_THRESHOLD = 300
  • Messages: VRankPreprepare, VRankCandidate (including signature scheme)

[Parameters]

  • Removed: BLOCK_TIME, DOWNTIME_THRESHOLD, CONSECUTIVE_FAILURE_LENGTH_10_CF, CONSECUTIVE_FAILURE_LENGTH_15_CF
  • Added: CFS_THRESHOLD = 300
  • Updated: PFS_THRESHOLD = 2, CANDIDATE_MSG_TIMEOUT = 500ms
    • The longer timeout (500ms) is intended to better support geographically distributed validators.

[Removed]

  • CMFS and consecutive failure logic

Types of changes

  • Bugfix
  • KIP Proposal
  • KIP Improvement

Checklist

  • Used the suggested template: https://github.com/kaiachain/KIPs/blob/main/kip-template.md
  • I have read the CLA and signed by comment I have read the CLA Document and I hereby sign the CLA in first time contribution
  • I have added necessary documentation (if appropriate)
  • Any dependent changes have been merged and published in downstream modules

Related issues

#27

@ian0371 ian0371 self-assigned this Feb 23, 2026
@ian0371 ian0371 marked this pull request as ready for review March 3, 2026 12:58
@ian0371 ian0371 merged commit c66d7c3 into main Mar 5, 2026
5 of 6 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Mar 5, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants