This repository was archived by the owner on Mar 8, 2023. It is now read-only.
Ankr network#1
Open
ghost wants to merge 267 commits into
Open
Conversation
Co-authored-by: suyu <huangsuyu@huangsuyudeMacBook-Pro.local>
Fix a typo
[R4R]add bep93: Diff Sync Protocol on BSC
BEP-95: Introduce Real-Time Burning Mechanism
update bep index
[R4R] BEP-128: Improvement on BNB Smart Chain Staking Reward Distribution
[R4R] update index
[R4R] BEP-127: Temporary Maintenance Mode for Validators
* BEP-658: Hardfork Meta-Osaka/Mendel * add summary * adjust format * EIPs-->BEPs * change type of bep-658 to Information * fix readme * Reject --> Rejected * add BEP-657 * fix Description
Corrected links in the motivation section for clarity.
* feat: support bep-652 analysis doc * fix: fix table of distribution
* BEP-670: Short Block Interval Phase Four: 250ms * BEP-670: Short Block Interval Phase Four: 250ms
* BEP-667.md: update finality analysis * BEP-667.md: update finality analysis * BEP-667.md: update finality analysis * BEP-667.md: update finality analysis * BEP-667.md: update finality analysis
* BEP-675: Builder-Proposed Block with Validator Blind Signing * fix: fix validator description * fix: adjust bid header * fix: improve bep description * fix: add new slash mechanism * improve bep description
* feat: add improve bep-675 perforamce analysiså * fix: fix the improve rate
…or on Precompile (#682) * BEP-682.md: Enforce Unique Validators in CometBFT Light Block Validation Precompile * BEP-682.md: Enforce Unique Validators in CometBFT Light Block Validation Precompile * BEP-682.md: Enforce Unique Validators in CometBFT Light Block Validation Precompile
Promote TransferWithUIAmount from OPTIONAL to REQUIRED in the core IScaledUIAmount interface, ensuring indexers can always record UI-adjusted transfer amounts without a separate multiplier lookup.
…escriptions - Add EIP-8056 vs BEP-677 scope boundary statement and source-of-requirements table - Define return values for newUIMultiplier()/effectiveAt() when no pending change exists - Define return values for pendingMultiplier() when hasPendingMultiplier() is false - Correct mulDiv overflow and precision-loss characterization in §7.1 and §7.5 Made-with: Cursor
…able variants Update §4.7 to reflect the current recommended deployment path: ERC8056TokenUpgradeable (BeaconProxy) replaces the deprecated ScaledUIToken. Also correct Solidity version (^0.8.24 not ^0.8.20) and add rounding direction and extreme-multiplier sentinel notes inline with the reference impl description.
…try in §7.5 Refs PashovAuditGroup/BNBChain_April26_MERGED#2 Append a paragraph to §7.5 warning that fromUIAmount(toUIAmount(x)) <= x and that conversion helpers must not be used for internal accounting. The upstream EIP-8056 §4.3 interface does not specify rounding; this note sits in BSC Security Considerations where implementation guidance is appropriate.
…nale and §7.2 Refs PashovAuditGroup/BNBChain_April26_MERGED#3 EIP-8056 leaves scheduling entirely to the implementer, so acceleration is implementation-defined behavior — appropriate for BEP-677 Security Considerations. - §5 Rationale: append advisory note that the notice window can be shortened by a subsequent overwrite; integrators must react to UIMultiplierChangeOverwritten - §7.2: add "Pending change acceleration" sub-section with the _beforeMultiplierUpdate override pattern that rejects acceleration, consistent with the contract NatDoc
…sentinel pattern in §6 Refs PashovAuditGroup/BNBChain_April26_MERGED#4 Restates in BSC adoption language the EIP-8056 backwards-compatibility requirement that emitting TransferWithUIAmount must never cause the underlying transfer to revert. Recommends the uiAmount=0 sentinel pattern for extreme-multiplier overflow, cross-referencing §4.7 for the reference implementation details. This does not add new normative requirements to upstream EIP-8056 §4.1; it only makes the existing backwards-compat MUST explicit for BSC adopters.
Refs PashovAuditGroup/BNBChain_April26_MERGED#1 The reference implementation emits UIMultiplierUpdated(0, 1e18, block.timestamp) once during initialization to give indexers a deterministic event-stream anchor. The oldMultiplier == 0 sentinel is safe because the runtime _validateMultiplier invariant (> 0) prevents 0 from appearing in any post-init emission. Documented in §4.7 (Reference Implementation) only, not in upstream EIP-8056 §4.1, to respect the upstream/downstream relationship (BEP-677 §2 Abstract). Future work: propose this init-emission clarification to ethereum/ERCs upstream.
Refs review 2.1: remove the §4.7 line referencing the ERC8056Base / ScaledUIToken non-upgradeable variants. These contracts have been deleted from the reference implementation repository (bep-677-contracts d343f15) and the line is now stale. Refs review 2.2: add §7.6 "Storage Layout and Upgrade-Collision Risk" with inheritor-facing guidance for upgradeable deployments — covering layout-preservation MUSTs, the OZ validateUpgrade workflow shipped with the reference implementation, and re-validation when the upstream base consumes gap slots.
Since setUIMultiplier requires effectiveAtTimestamp > block.timestamp, no genuine pending state has effectiveAt == 0. The (0, 0) tuple is therefore an unambiguous "no pending" signal — clients MAY check it directly, or call hasPendingMultiplier() for an explicit boolean check.
BEP-677: Implement EIP-8056 Scaled UI Amount
docs: add BEP-677 to README table
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
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Ankr network