-
Notifications
You must be signed in to change notification settings - Fork 884
feat(autobahn): Add epoch.Registry to maintain committee/stake (CON-358) #3632
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
Open
wen-coding
wants to merge
68
commits into
main
Choose a base branch
from
wen/autobahn_epoch_registry
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
68 commits
Select commit
Hold shift + click to select a range
f7d5ac1
feat(autobahn): introduce epoch.Registry as single source of truth fo…
wen-coding 29bbe85
feat(autobahn): bake firstBlock into Proposal so GlobalRange() is abs…
wen-coding 44a64af
fix(autobahn): reproposal must use epoch firstBlock, not GlobalRange(…
wen-coding 4a229bf
nit: inline GlobalFirst alloc, fix error message, randomize firstBloc…
wen-coding b7c404d
refactor(epoch): introduce Epoch type with index/start/end/timestamp,…
wen-coding c48ac8c
fix: replace remaining LatestCommittee() call sites with LatestEpoch(…
wen-coding 16b592b
refactor(types): add EpochTimestamp to ViewSpec; drop genesisTimestam…
wen-coding 007cbba
fix: update blocksim NewProposal call site for new signature
wen-coding 4525d76
fix: gofmt proposal_test.go alignment
wen-coding b131531
refactor(types): introduce EpochInfo; remove epoch fields from ViewSpec
wen-coding 5e333d0
fix: update blocksim and proto format for EpochInfo refactor
wen-coding 5018935
chore(proto): regenerate wireguard for Proposal fields 7+8
wen-coding 70550fd
chore(proto): fix cascading MaxSize in autobahn.wireguard.go
wen-coding 93e1d0c
refactor(types): fold flat epoch fields into epochInfo EpochInfo on P…
wen-coding 5224d3b
chore(proto): regenerate autobahn.pb.go with buf v1.58.0
wen-coding 7384fa1
refactor(types): move Epoch into types pkg; fold into ViewSpec and Pr…
wen-coding d6c48c2
refactor(types): move Epoch struct to its own file epoch.go
wen-coding b3880ab
refactor(epoch): make Epoch.FirstBlock the first block of each epoch
wen-coding 00a7b13
docs(types): remove redundant wire comment from ViewSpec
wen-coding 293f53b
refactor(types): drop Start/End from wireEpoch in newProposal
wen-coding 854d64f
refactor(types): remove wireEpoch copy in newProposal
wen-coding 66c6b13
refactor(types): rename vs → viewSpec in NewProposal and Verify
wen-coding 7ea9e48
refactor(types): rename viewSpec → vs in FullProposal.Verify
wen-coding a849604
simplify: use DecodeReq for epoch_timestamp in ProposalConv.Decode
wen-coding 9e2dabb
revert: simplify block vote accumulation back to single-committee
wen-coding 582e42d
fix(avail): compare CommitQCs by proto encoding in tests
wen-coding 6aadef5
simplify: drop unused firstBlock param from inner.prune
wen-coding 43c8b8b
simplify: drop redundant firstBlock param from newInner
wen-coding 395d4b1
simplify: hoist ep := data.Registry().LatestEpoch() in NewState
wen-coding c3f163c
feat(consensus): cache ep in inner, populate ViewSpec.Epoch from it
wen-coding 3a7ab7f
fix(persist): replace go-cmp CommitQC comparison with proto.Equal
wen-coding 3d4ca8b
fix(giga): compare FullCommitQC via proto.Equal in TestDataClientServer
wen-coding 139c114
fix(types): add Equal methods to CommitQC, FullCommitQC, Proposal for…
wen-coding 4773c02
fix(utils): export all unexported fields in TestDiff to avoid panic
wen-coding b0bb2e8
revert(types): remove Equal methods from CommitQC, FullCommitQC, Prop…
wen-coding 412ea86
refactor(consensus): use cached Epoch.Committee instead of Registry.C…
wen-coding 250cf6e
refactor(epoch): ReadOnly Epoch type, RoadRange, utils.RWMutex, drop …
wen-coding 68d56dd
refactor(proposal): store epochIndex/firstBlock as wire fields, not *…
wen-coding afb324c
refactor(types): Proposal.Verify(ep), ProposalAt, GenEpochWithCommitt…
wen-coding 68d4631
fix(types): restore MaxLaneRangeInProposal check in FullProposal.Verify
wen-coding b8700e8
chore: remove committed test binary and ignore *.test files
wen-coding 5828931
refactor(proto): rename global_first → first_block in Proposal
wen-coding 56d67e2
doc(types): clarify why Proposal.Verify skips lane-range checks
wen-coding 66934ec
doc(epoch): explain epoch window concept in VerifyInWindow
wen-coding 35dcdeb
refactor(epoch): replace EpochFor(roadIndex) with EpochForProposal(p)
wen-coding d399716
regen(wireguard): update StreamAppQCsResp MaxSize after first_block r…
wen-coding d886dcd
nit(data): drop unused registry param from globalBlockAt
wen-coding 7c8bf25
feat(autobahn): add epoch_index to AppProposal, LaneQC, TimeoutVote
wen-coding 6e91151
refactor(epoch): drop EpochFor, fix nil QC guard in PushBlock
wen-coding e2361ca
doc(autobahn): mark LaneQC.epochIndex as advisory, verified in FullPr…
wen-coding b98c4b0
fix(avail): cross-check AppProposal epoch_index against CommitQC in P…
wen-coding ed2a4a6
fix(epoch): remove dead makeRegistry helper from registry_test.go
wen-coding b8a2664
fix(autobahn): tighten epoch_index validation in proposal and QC decode
wen-coding 538de3f
fix(autobahn): reject TimeoutVote on decode when epoch_index is missing
wen-coding d460c75
fix(autobahn): strengthen epoch_index cross-validation across verify …
wen-coding 176ad8a
fix(proto): remove advisory comment from autobahn.proto to keep pb.go…
wen-coding 32c6c22
fix(data): skip redundant block.Verify when authoritative epoch alrea…
wen-coding 9bb19e1
fix(data): reject block if authoritative epoch not in pre-lock verifi…
wen-coding 3316902
fix(blocksim): use OpenRoadRange() instead of zero RoadRange in build…
wen-coding e057aa8
fix(testonly): delete dead isReadOnly, document unconditional cmp exp…
wen-coding 9423daa
fix(epoch): trim VerifyInWindow doc to match implementation; note har…
wen-coding f3ebc6f
fix(epoch): note missing committed-road-watermark check in AddEpoch
wen-coding ae92ce1
revert(testonly): restore isReadOnly exporter to match main
wen-coding a4f736c
fix(proposal): add structural lane-range checks to Proposal.Verify
wen-coding d0e59a6
fix(testonly): derive epochIndex from Epoch in TestCommitQC instead o…
wen-coding aef198e
test(epoch): move NewCommittee test to types pkg, add Registry coverage
wen-coding 7e37fac
refactor(autobahn): remove epochIndex from LaneQC
wen-coding f4d9248
fix(sei-db): remove epochIndex arg from NewLaneQC call sites
wen-coding File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.