-
Notifications
You must be signed in to change notification settings - Fork 10
Emissions: configurable cadence + epoch-frequency-agnostic gate #281
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
heifner
wants to merge
76
commits into
feature/opp-part3-token-chain-reserve-refactor
Choose a base branch
from
feature/emissions-configurable
base: feature/opp-part3-token-chain-reserve-refactor
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
76 commits
Select commit
Hold shift + click to select a range
d13c3e5
Add T5 treasury emissions with configurable parameters
heifner 14d0cc5
Add setemitcfg to Python test harness bootstrap
heifner 4fe6dfd
Use db.modify for kv_idx_update instead of remove+create
heifner f150e51
Merge remote-tracking branch 'origin/master' into feature/emissions-c…
heifner f3a5639
Merge origin/master into feature/emissions-configurable
heifner 4268b1d
Migrate emissions to kv and integrate with sysio.opreg and sysio.epoch
heifner aaeb7e4
Guard sysio.roa inline addnodeowner call on emitcfg existence
heifner 906f8c8
Port emissions tests to kv API and add opreg/epoch integration tests
heifner a071133
Regenerate sysio.system and sysio.roa WASM+ABI
heifner 41dc051
Address PR review feedback
heifner 27d7f44
Snapshot batch-op group per epoch; pay historical members on catch-up
heifner 12cbd88
fc::variant: delete unused arithmetic operators
heifner 553c243
fc::variant: add microbenchmark scaffold
heifner 076d033
fc::variant: capture benchmark baseline
heifner 9d00ce0
fc::variant: expand test coverage
heifner 4252bc3
fc::variant: as_enum_value uses from_chars instead of stoll
heifner 0ce12d3
fc::variant_object: lazy-allocate the entry vector
heifner 73827fe
fc::variant_object: add non-throwing find_or helper
heifner 32d5d9d
fc::variant: get_string() returns std::string_view, cascade through c…
heifner e069a67
fc::variant: add small-string-optimisation for short strings
heifner 3e4e69a
fc::variant: same-type op=(const variant&) reuses existing heap object
heifner f82cdcb
fc::variant: re-baseline bench at Release (-O3)
heifner a4f1a71
chain_plugin: run read_table_rows inline when called from main thread
heifner 1bf51df
# Achieved memory & on-chain storage stability (`>2400` epochs over `…
jglanz 260fe64
fc::base64_decode: add std::string_view overload
heifner 45882f6
Moved `file:line` to the end of `line-format` for readability in lnav.
jglanz 7a32fe1
# Moved `protoc-gen-<solana|solidity>` plugins and protobuf-bundler i…
jglanz fc257b4
fc::variant: small follow-on tweaks (doc, lifetime, lazy alloc, tests)
heifner e6e198a
fc::variant: fix use-after-free in op=(const&) aliased different-type…
heifner fbdd627
fc::variant: clear() + copy ctor handle int128/uint128/int256/uint256…
heifner c696b55
fc::variant: extend int128/uint128 leak/copy-ctor tests to int256/uin…
heifner 87e418c
Updated OPP generate bundles script
jglanz 7b22e17
Updated OPP generate bundles script
jglanz bc58ab1
Updated OPP generate bundles script
jglanz b3a4bd3
Updated OPP generate bundles script
jglanz ae943f2
Merge remote-tracking branch 'origin/master' into feature/emissions-c…
heifner d743f96
Removed weird leftover dep `z`
jglanz 63e9910
Removed weird leftover dep `z` - updated lockfile
jglanz 2d9f053
emissions: trigger inline from sysio.epoch::advance via readiness gate
heifner ae1ed7f
Merge branch 'feature/opp-part2' into feature/emissions-configurable
heifner abdffcc
contracts: add explicit -I for magic_enum, refresh wasm and reference…
heifner b1786bf
Revert reference files as they should not have been committed
heifner 5363460
Added chunking in order to support large envelopes on SOLANA
jglanz 263d9ed
Merge branch 'feature/opp-part2' into feature/emissions-configurable
heifner 0b3d178
emissions: make config epoch-frequency-agnostic
heifner d5cbb71
Merge branch 'master' into feature/emissions-configurable
heifner 1146c38
Invalidate secondary iterator cached_id before kv_idx_update db.modify
heifner f09ce87
emissions: review follow-ups (round-to-zero guard, prune up to 2)
heifner 2e4ab52
fc::variant: leave op=(const&) aliased self-assign as UB; add debug a…
heifner 659cd5b
fc::variant: as_enum_value documents stricter parsing vs stoll
heifner 947d036
emissions: review polish
heifner cd02d6d
Merge remote-tracking branch 'origin/master' into feature/chainbase-o…
heifner f5b8e9c
fc::variant: use std::less for aliasing-detector comparisons; expose …
heifner 1b583d1
unittests/kv_tests: adapt new tests to table_id namespace isolation API
heifner 39e8562
Merge pull request #282 from Wire-Network/feature/chainbase-optimizat…
heifner 8703ebb
emissions: configurable pay_cadence_epochs
heifner 7644293
tests: align nested_container_multi_index with Wire CDT pair/map fiel…
heifner 401ae25
Merge pull request #329 from Wire-Network/cleanup/nested-container-te…
heifner 62d22c8
kv: split iterator slot pool into independent primary and secondary p…
heifner c881e08
kv: address review -- static_assert handle layout, header helpers, mo…
heifner 02c2401
chain: flip WIRE snapshot magic for hex-dump readability
heifner a335c0f
tests: regenerate snap_v1 fixtures for new WIRE magic
heifner 3d100c1
tests: regenerate consensus_blockchain reference data
heifner 2b25bba
Update block log reference files
heifner dbd75be
Merge feature/opp-part3-operator-management into feature/emissions-co…
heifner 208105d
Regenerate WASM/ABI artifacts after opp-part3 merge
heifner 4750450
Merge pull request #315 from Wire-Network/feature/fc-variant-perf
heifner e7a54bb
Merge pull request #309 from Wire-Network/feature/snapshot-magic-byte…
heifner 4e6dfe5
Merge remote-tracking branch 'origin/master' into feature/emissions-c…
heifner 238c91c
Merge pull request #330 from Wire-Network/refactor/kv-iterator-pool-s…
heifner 59f3b71
Merge remote-tracking branch 'origin/master' into feature/emissions-c…
heifner 734872d
tests: fix CI failures after master merge
heifner 68933e4
tests: regenerate deep-mind + consensus_blockchain refs against curre…
heifner 47625a4
Merge feature/opp-part3-token-chain-reserve-refactor into feature/emi…
heifner 52e89af
contracts: drop magic_enum cmake hack, restructure sysio.token headers
heifner c151993
sysio.epoch: don't abort advance() on batch-operator shortage
heifner 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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -138,4 +138,4 @@ | |
| ] | ||
| } | ||
| ] | ||
| } | ||
| } | ||
Binary file not shown.
Binary file not shown.
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -168,4 +168,4 @@ | |
| ] | ||
| } | ||
| ] | ||
| } | ||
| } | ||
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.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is the table auto-pruned?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes.
blocklogonly holds rows for epochs currently failing the emissions gate:record_gate_blockinserts on a block,clear_gate_blockerases on the next successful gate pass.advance()only ever targetscurrent_epoch_index + 1, so at most the single in-flight blocked epoch is recorded and the table is empty in steady state -- no separate sweep needed.