Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
584f4a0
feat: add empty block vrf validator module
golddydev Oct 21, 2025
70b3eb4
Merge branch 'main' into golddydev/vrf-validation
golddydev Oct 21, 2025
ec6e5bf
refactor: change module name
golddydev Oct 21, 2025
c130403
fix: move assert_header
golddydev Oct 22, 2025
28f7f5d
fix: merge conflicts
golddydev Oct 22, 2025
6231c47
wip: add tpraos vrf proof validadtion step
golddydev Oct 23, 2025
6119aca
Merge branch 'main' into golddydev/vrf-validation
golddydev Oct 23, 2025
5fa68e9
refactor: move ouroboros to common
golddydev Oct 23, 2025
9d7b9fe
refactor: vrf validation errors
golddydev Oct 23, 2025
570414d
refactor: restructure ouroboros tpraos validation logic
golddydev Oct 23, 2025
cb25214
Merge branch 'main' into golddydev/vrf-validation
golddydev Oct 24, 2025
c2880e5
feat: add stake threshold check
golddydev Oct 24, 2025
6c0124d
revert: omnibus
golddydev Oct 24, 2025
9bec09a
refactor: read epoch nonce in block vrf validator and update types fo…
golddydev Oct 24, 2025
46b3501
refactor: add validation for non obft slots
golddydev Oct 24, 2025
2475252
chore: add spo state subscription
golddydev Oct 28, 2025
fe41c0f
Merge branch 'main' into golddydev/vrf-validation
golddydev Oct 28, 2025
3cdc3c4
feat: implement snapshot state for vrf validation
golddydev Oct 29, 2025
0a07b2c
fix: cargo fmt
golddydev Oct 29, 2025
4fec204
fix: typo
golddydev Oct 29, 2025
0cba1a7
chore: simplify is_tpraos bool check
golddydev Oct 29, 2025
a64ae1f
feat: add vrf validation publisher
golddydev Oct 29, 2025
91c7a87
chore: remove unused var
golddydev Oct 29, 2025
f591f6f
refactor: publish only active epoch nonce
golddydev Oct 29, 2025
7d3d5ee
refactor: check block info sync in vrf validator
golddydev Oct 29, 2025
d968c88
refactor: epoch nonce publisher to publish nonces when there are not …
golddydev Oct 30, 2025
2b5dcd4
refactor: add move test cases to tpraos validation
golddydev Oct 30, 2025
6c148fb
revert: git ignore file
golddydev Oct 30, 2025
d19c1d8
fix: update praos vrf validation to use one vrf
golddydev Oct 30, 2025
10c70c0
fix: typo
golddydev Oct 30, 2025
59aa122
Merge branch 'main' into golddydev/vrf-validation
golddydev Oct 30, 2025
a0c0045
test: add praos test case
golddydev Oct 30, 2025
22fd669
Merge branch 'main' into golddydev/vrf-validation
golddydev Oct 30, 2025
9c6e29d
Merge branch 'main' into golddydev/vrf-validation
golddydev Nov 5, 2025
c82b74b
fix: build errors
golddydev Nov 5, 2025
7604607
fix: clippy
golddydev Nov 5, 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
178 changes: 166 additions & 12 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ members = [
"modules/consensus", # Chooses favoured chain across multiple options
"modules/chain_store", # Tracks historical information about blocks and TXs
"modules/tx_submitter", # Submits TXs to peers
"modules/block_vrf_validator", # Validate the VRF calculation in the block header
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might make sense to have this as a part of the consensus module. Thoughts?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, this approach makes sense that we can pull all consensus logic into one place.


# Process builds
"processes/omnibus", # All-inclusive omnibus process
Expand All @@ -49,6 +50,7 @@ dashmap = "6.1.0"
hex = "0.4"
imbl = { version = "5.0.0", features = ["serde"] }
pallas = "0.33.0"
pallas-math = "0.33.0"
pallas-addresses = "0.33.0"
pallas-crypto = "0.33.0"
pallas-primitives = "0.33.0"
Expand Down
6 changes: 6 additions & 0 deletions common/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,12 @@ thiserror = "2.0.17"
sha2 = "0.10.8"
caryatid_process.workspace = true
config.workspace = true
pallas = { workspace = true }
pallas-math = { workspace = true }
Comment on lines +50 to +51
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets try to keep pallas limited to specific modules which need it.


# The vrf crate has not been fully tested in production environments and still has several upstream issues that are open PRs but not merged yet.
vrf_dalek = { git = "https://github.com/txpipe/vrf", rev = "044b45a1a919ba9d9c2471fc5c4d441f13086676" }
dashu-int = "0.4.1"

[lib]
crate-type = ["rlib"]
Expand Down
Loading
Loading