Skip to content
Open
Show file tree
Hide file tree
Changes from 150 commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
261df78
perf: vote state view
jstarry Feb 6, 2025
c1a91d8
ci: add alpenglow pipeline (#21)
yihau Feb 3, 2025
fffc60a
ci: removed dependabot.yml (#37)
yihau Feb 10, 2025
9a84ed7
Add basic skeleton of certificate tracking (#36)
carllin Feb 18, 2025
3b66c8b
Add alpenglow poh (#43)
carllin Feb 27, 2025
883a8ea
Add alpenglow push vote path (#44)
carllin Feb 28, 2025
1cbc348
Add Alpenglow start leader logic to ReplayStage (#45)
carllin Mar 3, 2025
3526021
Handle set new root on new frozen slots (#66)
carllin Mar 4, 2025
0b79a8f
integrate aspenglow vote program (#63)
AshwinSekar Mar 5, 2025
fe91667
Notify rpc of new root and supermajority roots (#70)
carllin Mar 6, 2025
eeb1be0
Fix skip pool bugs (#75)
carllin Mar 8, 2025
399f9d1
skip_pool: add skip_certified check, multi cert support & fix bugs (#78)
AshwinSekar Mar 11, 2025
41a6c60
Add AlpenglowVoteState to VoteAccount. (#84)
wen-coding Mar 13, 2025
6770619
feat(validator): add persistent storage for votes. (#74)
ksn6 Mar 13, 2025
d1b091f
chore,fix(cargo): updating alpenglow-vote to incorporate fixes. (#93)
ksn6 Mar 17, 2025
efc48d5
Fix some panicking code (#88)
carllin Mar 17, 2025
391639a
Parse out alpenglow votes in vote_parser.rs (#95)
carllin Mar 18, 2025
bd1b54c
feat(voting_service): broadcast votes to all validators in an all-to-…
ksn6 Mar 18, 2025
30b37d8
Allow Alpenglow accounts in StakesCache (#87)
wen-coding Mar 19, 2025
a0e8dbb
Add alpenglow to rewards calculation (#92)
wen-coding Mar 19, 2025
513335c
Make skip pool generic (#99)
carllin Mar 20, 2025
be2be25
Update commitment cache in alpenglow (#94)
carllin Mar 20, 2025
d1e1067
Modify ticks and hashes_per_tick check for alpenglow blocks (#98)
carllin Mar 20, 2025
7b7f671
Fix some panics (#100)
carllin Mar 21, 2025
dd41117
Ingest gossip alpenglow votes into replay (#101)
carllin Mar 21, 2025
71efb1e
Verify certs in bank (#97)
wen-coding Mar 21, 2025
7739349
Enable leader alpenglow vote account creation in genesis (#105)
carllin Mar 23, 2025
22a1daf
Move AlpenglowVoteSender and rename ingest_gossip_alpenglow_votes (#106)
wen-coding Mar 23, 2025
054f67a
Ingest replayed Alpenglow votes into cert pool (#107)
wen-coding Mar 23, 2025
b15b9b1
Add utility to add alpenglow vote program to genesis (#109)
carllin Mar 26, 2025
ff2e18d
Fix Tower initialization panics before migration of vote accounts (#111)
carllin Mar 26, 2025
7184896
Make parse_epoch_vote_accounts work for Alpenglow. (#113)
wen-coding Mar 26, 2025
33dda56
Ingest all-to-all Alpenglow votes into the cert pool. (#110)
wen-coding Mar 27, 2025
a49e899
Bump to vote program with credits fix (#114)
carllin Mar 27, 2025
805e43f
feat: auto-build alpenglow-vote (#108)
ksn6 Mar 28, 2025
04cae6e
Make get_timestamp_estimate work for Alpenglow (#115)
wen-coding Mar 28, 2025
5b74ac7
Alpenglow local cluster test (#117)
carllin Mar 28, 2025
a15366d
add alpenglow partition tests (#119)
carllin Mar 31, 2025
ed47e80
Make check_for_simple_vote_transaction for Alpenglow. (#125)
wen-coding Apr 1, 2025
4d70dc8
Add metrics for sending Alpenglow all-to-all votes. (#124)
wen-coding Apr 1, 2025
6d04641
poh: always process record receiver (#128)
AshwinSekar Apr 2, 2025
d2786c6
feat: create alpenglow vote accounts in GCE test cluster (#104)
ksn6 Apr 3, 2025
03ab63b
replay: separate voting loop, leader, root, and add skip logic (#118)
AshwinSekar Apr 3, 2025
800ee31
Make supermajority root the root (#136)
carllin Apr 4, 2025
18343f9
bump openssl to 0.10.72 and openssl-sys to 0.9.107 (#142)
AshwinSekar Apr 4, 2025
03d42a3
Fixup rpc health check (#137)
carllin Apr 5, 2025
8c562e6
Factor out tower-specific data structures (#143)
carllin Apr 5, 2025
980df39
replay: adjust cert reqs for consecutive and optimistic leader blocks…
AshwinSekar Apr 7, 2025
ee91d48
[bls] add BLS crate for signing and verification (#127)
samkim-crypto Apr 9, 2025
f5b4c38
build(deps): bump crossbeam-channel from 0.5.14 to 0.5.15 (#151)
AshwinSekar Apr 11, 2025
b763e0c
[bls] Add proof of possession proof for bls pubkeys (#150)
samkim-crypto Apr 13, 2025
6a29080
Move skip cert to per-slot pool and fix epoch stakes in cert pool (#123)
wen-coding Apr 16, 2025
7f57448
upgrade vote-program rev and rework certificate validation (#157)
AshwinSekar Apr 18, 2025
32eadf8
replay: handle set-root happening at anytime (#153)
AshwinSekar Apr 18, 2025
46125d1
Use NullVoteHistoryStorage when initializing the default config (#160)
wen-coding Apr 18, 2025
9418bb8
Fix rewards calculation for Alpenglow. (#161)
wen-coding Apr 18, 2025
30c1652
[curves] Add initial version of BLS syscalls (#152)
samkim-crypto Apr 19, 2025
1086aa5
[bls] Add BLS affine and compressed point representation types (#163)
samkim-crypto Apr 21, 2025
176bd79
Certificate Pool changes for 2-delta. (#164)
wen-coding Apr 22, 2025
c1a613c
feat: generalize `GossipVoter` to support Alpenglow (#162)
ksn6 Apr 22, 2025
03800f5
Add Bls transaction and certificate format (#166)
samkim-crypto Apr 25, 2025
d150d55
cert_pool: rework root notifications to improve local-cluster speed (…
AshwinSekar Apr 26, 2025
e2ac1dd
Remove unnecessary has_same_prev_vote. (#170)
wen-coding Apr 28, 2025
5a2ce20
[core] Implement `VoteCertificate` trait for `BlsCertificate` (#172)
samkim-crypto Apr 29, 2025
18df385
feat: support additional all-to-all listeners (#173)
ksn6 Apr 30, 2025
54d84df
Fix handle_new_root, forgot to actually update root. (#176)
wen-coding Apr 30, 2025
d38df46
[bls] Add serialization for bls (#175)
samkim-crypto May 2, 2025
0afa729
[core] Extend certificate pool tests for BLS certificates (#174)
samkim-crypto May 2, 2025
5ec064e
block creation loop: split from voting loop, cert only on first block…
AshwinSekar May 2, 2025
d55981d
prepare vote history and cert pool for voting loop and repair changes…
AshwinSekar May 2, 2025
ced6af5
[bls] Implement `PodInOption` and `ZeroableInOption` for bls types (#…
samkim-crypto May 4, 2025
11faa43
blockstore: store critical certs to enable certificate repair (#178)
AshwinSekar May 6, 2025
0b1db3b
[bls] Update bls dependency to solana-sdk (#187)
samkim-crypto May 8, 2025
46ca9e7
Add bls_pubkey to VoteAccount and EpochStakes (#188)
wen-coding May 13, 2025
41eb774
voting loop: add fallback vote variants (#189)
AshwinSekar May 15, 2025
1334a8b
Use the bls_pubkey_to_rank_map in EpochStakes. (#191)
wen-coding May 15, 2025
9956223
Re-enable conflicting vote type check. (#192)
wen-coding May 15, 2025
67257c7
[zk-keygen] Add bls keypair support (#193)
samkim-crypto May 18, 2025
db25964
Add sorted_pubkeys to BLSPubkeyToRankMap. (#194)
wen-coding May 18, 2025
077a15b
Add BLSSigverifier. (#196)
wen-coding May 20, 2025
04217d2
[core] Implement `AlpenglowVoteTransaction` and `VoteCertificate` tra…
samkim-crypto May 23, 2025
cfcbbec
add restart from blockstore and catchup when behind logic (#190)
AshwinSekar May 28, 2025
9d148b6
local-cluster: minor cleanup (#201)
ksn6 May 30, 2025
9254a59
local-cluster: ensure liveness after single notar fallback (#200)
ksn6 Jun 4, 2025
c7f6d9d
feat: optionally remove self from staked validators cache (#204)
ksn6 Jun 10, 2025
e3399df
Add alpenglow port and alpenglow sigverify stage. (#202)
wen-coding Jun 10, 2025
98d1a0f
feat: support u64 metrics (#209)
ksn6 Jun 14, 2025
96fb7d0
Add error handling to BLS Sigverifier. (#206)
wen-coding Jun 14, 2025
8e3a696
Add option to push BLS message to Alpenglow sockets in voting service…
wen-coding Jun 15, 2025
5364c02
In BLSSigverifier, reset stats after reporting, do not panic when cha…
wen-coding Jun 17, 2025
8b4df08
Switch from copy_out_transactions to add_to_certificate. (#208)
wen-coding Jun 17, 2025
7eb953e
voting_loop: add parent ready tracker, fix WFSM / snapshot hack (#199)
AshwinSekar Jun 18, 2025
9817516
parent_ready: only update highest parent ready if a parent was added …
AshwinSekar Jun 20, 2025
006b54a
parent_ready: check if we've already certified passed our leader slot…
AshwinSekar Jun 20, 2025
e8bdb27
Gossip host upstream (#219)
bw-solana Jun 20, 2025
1be9900
voting_loop: use sender from replay rather than bank forks lock (#215)
AshwinSekar Jun 20, 2025
832ceb6
block_creation_loop: split out record and receive to separate thread …
AshwinSekar Jun 20, 2025
a73ecea
Vote Fetch Dependency (#213)
bw-solana Jun 21, 2025
8090626
block_creation_loop: adjust blocktime to always be 400ms (#221)
AshwinSekar Jun 21, 2025
76d0438
free parent ready tracker (#223)
bw-solana Jun 23, 2025
da25505
pending blocks orphaning (#224)
bw-solana Jun 23, 2025
e09e900
replay: stop sending to tower bft related crossbeam channels (#225)
AshwinSekar Jun 24, 2025
95e2f79
replay: do not grab bank forks write lock if no banks to insert (#226)
AshwinSekar Jun 25, 2025
968ada1
replay: remove reentrant locking in prune program cache (#227)
AshwinSekar Jun 25, 2025
e2a4bed
blockstore: purge slot_certificates column (#229)
AshwinSekar Jun 25, 2025
34d86a1
replay: handle set_root of progress map in replay (#230)
AshwinSekar Jun 26, 2025
5d7b7e2
vote_history: use serde_bytes when serializing to file (#232)
AshwinSekar Jun 30, 2025
46233f7
test(local-cluster): ensure liveness after double notar fallback (#211)
ksn6 Jul 5, 2025
90d550d
voting_loop: save vote even if tx generation fails (#239)
AshwinSekar Jul 6, 2025
49a3bfb
voting_loop: send optimistically confirmed BankNotification (#238)
AshwinSekar Jul 6, 2025
34ee046
Handle set-identity in voting loop (#236)
fahimahmedx Jul 7, 2025
e2064ef
certificate pool: fix conflicting vote check for notarize fallback (#…
AshwinSekar Jul 9, 2025
cdc479b
increase DELTA in skip timeout to 200ms (#255)
AshwinSekar Jul 9, 2025
b51f255
only send block to voting loop once block_id is available (#251)
AshwinSekar Jul 9, 2025
0a92950
local-cluster: ignore liveness_after_double_notar_fallback for now (#…
AshwinSekar Jul 10, 2025
86d4a92
Upgrade to `solana-signature` v2.3.0 and `solana-bls-signatures` (#254)
samkim-crypto Jul 10, 2025
8fac45c
Fix BLSKeypair in genesis config. (#256)
wen-coding Jul 10, 2025
bf349ac
serve_repair: refactor repair responder and add malicious variant (#257)
AshwinSekar Jul 11, 2025
022b393
Switch Alpenglow Vote from Transaction to BLS Message. (#214)
wen-coding Jul 11, 2025
cef67b5
refactor: move core::alpenglow_consensus -> votor crate (#261)
AshwinSekar Jul 12, 2025
c12cec2
InfluxDB doesn't understand u64 yet. (#266)
wen-coding Jul 12, 2025
479fcef
Make create_custom_leader_schedule give all slots in one leader windo…
wen-coding Jul 14, 2025
14b5b09
Send verified votes from BLSSigverifier to repair service. (#265)
wen-coding Jul 15, 2025
2650b65
smuggle voting_loop and block_creation loop out of solana_core::alpen…
AshwinSekar Jul 16, 2025
08d2ab1
votor: separate out voting_utils (#272)
AshwinSekar Jul 16, 2025
ba91aaa
certificate_pool: use prev vote instead of VoteHistory in safe_to_* (…
AshwinSekar Jul 16, 2025
5120df6
vote history: add block notarized and parent ready (#275)
AshwinSekar Jul 17, 2025
4f4db20
votor: add VotorEvent (#278)
AshwinSekar Jul 17, 2025
1ad0173
vote_history: add bad window, and refactor votes_cast_since (#277)
AshwinSekar Jul 17, 2025
331c3bd
Statically type vote pools (#264)
carllin Jul 18, 2025
fbb25b3
votor: event driven voting loop to handle all slots concurrently (#279)
AshwinSekar Jul 19, 2025
5b5c49f
refactor: move `BlsSigVerifierStats` into its own module and clean it…
akhi3030 Jul 21, 2025
db832de
BLS cert all to all. (#300)
wen-coding Jul 22, 2025
01c5215
Add CertificatepoolServiceStats. (#307)
wen-coding Jul 23, 2025
5f852da
event_handler: unify the completed_block_sender and event_sender (#301)
AshwinSekar Jul 23, 2025
5bceeb2
feat: Introduce a EpochStakesService (#306)
akhi3030 Jul 23, 2025
11360a7
votor: unify own vote sender with bls receiver, unify skip receiver (…
AshwinSekar Jul 23, 2025
34865f1
test(local-cluster): liveness after intertwined skip-fallback and not…
ksn6 Jul 24, 2025
8e081aa
refactor: move add_message_and_maybe_update_commitment out of vote_ut…
AshwinSekar Jul 24, 2025
dd360f5
test(local-cluster): ensure liveness after second notar fallback cond…
ksn6 Jul 24, 2025
1b625ff
Reject certificates older than root and add certificate pool stats (#…
wen-coding Jul 24, 2025
65ca6d5
feat: migrate `alpenglow-vote` structures to `alpenglow` (#313)
ksn6 Jul 25, 2025
b172224
Remove AlpenglowVoteSender and related functions. (#314)
wen-coding Jul 25, 2025
fb2a035
Remove bank hash from Alpenglow structures (#282)
carllin Jul 25, 2025
686e33b
refactor: remove alpenglow from gossip
ksn6 Jul 25, 2025
91990bc
cleanup
ksn6 Jul 25, 2025
2ac8a3b
fixing test
ksn6 Jul 25, 2025
cbeba23
refactor: remove unused `alpenglow-vote` items (#315)
ksn6 Jul 26, 2025
df6777c
refactor: minor cleanups (#320)
akhi3030 Jul 26, 2025
f390c9f
fix: standardize arithmetic ops in votor
0xahzam Jul 27, 2025
70e4858
[votor] Replace `VoteCertificate` with either `VoteCertificateBuilder…
samkim-crypto Jul 28, 2025
f95163f
Refresh certs during standstill. (#318)
wen-coding Jul 28, 2025
e3944ae
Replace local highest_finalized_slot with pool.highest_finalized_slot…
wen-coding Jul 28, 2025
e84f02b
Handle commitment sender disconnect and unify exit code in Certificat…
wen-coding Jul 29, 2025
0b4c71d
Remove MAX_SLOT_AGE check. (#326)
wen-coding Jul 29, 2025
8995797
use expect for slot arithmetic in event_handler.rs
0xahzam Jul 29, 2025
07866dc
Remove bank hash from votes and certificates (#323)
carllin Jul 29, 2025
6720812
block_creation: add blockstore check for leader blocks (#327)
AshwinSekar Jul 30, 2025
1c29824
Add remaining window slots util (#330)
carllin Jul 30, 2025
dc8a331
refactor: introducing votor-messages crate (#328)
ksn6 Jul 30, 2025
cecd2c3
improve ci (#332)
yihau Jul 31, 2025
9920531
Fix test, some certs have no hash. (#331)
wen-coding Jul 31, 2025
385d5a1
Turn off all to all during partition test (#329)
wen-coding Jul 31, 2025
ac6c4db
Sort resulting sockets so test test_alpenglow_port_override is determ…
wen-coding Jul 31, 2025
c4c6576
Refactor safe_to_notar and safe_to_skip into SlotStakeCounters. (#333)
wen-coding Aug 2, 2025
57c7253
Merge branch 'master' into ahzam/fix-arithmetic-operations
0xahzam Aug 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions .buildkite/alpenglow/pipeline.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
#!/usr/bin/env bash

cat <<EOF | tee /dev/tty | buildkite-agent pipeline upload
steps:
- name: "checks"
command: "ci/docker-run-default-image.sh ci/test-checks.sh"
timeout_in_minutes: 20
agents:
queue: "default"

- name: "frozen-abi"
command: "ci/docker-run-default-image.sh ./test-abi.sh"
timeout_in_minutes: 15
agents:
queue: "default"

- wait

- group: "stable"
steps:
- name: "partitions"
command: "ci/docker-run-default-image.sh ci/stable/run-partition.sh"
timeout_in_minutes: 40
agents:
queue: "default"
parallelism: 2
retry:
automatic:
- limit: 3

- name: "local-cluster"
command: "ci/docker-run-default-image.sh ci/stable/run-local-cluster-partially.sh"
timeout_in_minutes: 30
agents:
queue: "default"
parallelism: 4
retry:
automatic:
- limit: 3

- name: "localnet"
command: "ci/docker-run-default-image.sh ci/stable/run-localnet.sh"
timeout_in_minutes: 30
agents:
queue: "default"
EOF
16 changes: 0 additions & 16 deletions .github/dependabot.yml

This file was deleted.

Loading