Repository navigation
Release v0.24.0 - #24
Merged
Merged
Conversation
- create_tx `pubkey` given as compressed hex is never checked to be on the curve, so chunk-lane and sweep outputs can be locked to a key that cannot exi - Unresolvable params.pubkey identity is rejected with a plain Error deep in the build, returning -32603 internal instead of -32602 - create_tx comment says build faults "stay retryable" but the SDK never retries any JSON-RPC error body - Encoder promises retryable -32603 for transient node faults, but the SDK never retries any JSON-RPC body error - Stale comment in anchorRelayFeeRate says getFeePerKilobyte throws on every non-regtest chain when estimatesmartfee has no data, but only mainnet throw - feePerKb has no upper bound in the validator, unlike fee/dust/feeQuote; an oversized rate is quietly clamped instead of rejected - Comments about the container's PID 1 contradict the Dockerfile's tini ENTRYPOINT (compose ends up running two inits)
Add focused coverage for mismatches, unpinned state, and deliberate fail-open behavior.
Retain the connector mismatch reason when the node tier gate refuses a request. Mark the status endpoint unhealthy and publish the reason, with regression coverage for mismatch and normal readiness states.
Compare the complete exported chain-to-network maps so key additions, removals, and value drift fail the encoder suite.
… brace-expansion to resolve security advisories
A mainnet encoder now answers create_tx for any action outside the validator set (STAKE, UNSTAKE, DELEGATE, SLASH, NODEPROOF, ROLLCALL) with -32010 and reason MAINNET_PRELAUNCH until unix time 1798761600. ENCODER_MAINNET_PRELAUNCH_OVERRIDE (1/true/yes/on) lifts it, read live through config.js and documented in the README. Tests drive the real environment variable through the controller factory.
json_rpc_methods.js is back to 400 lines: the gate, its launch time and the validator action set now live in src/common/config.js beside the override it reads, and create_tx makes one call to it. The clock is stubbed through Date.now in the tests, which are split into four describe blocks so none passes 60 lines.
…ull requests Contributors now branch off develop and open pull requests against it, as the docs and PR template say. A new pull_request_target check fails any pull request into master that is not this repository's own develop, release/* or hotfix/* branch, and CI now runs on pull requests into develop.
…l fee and refuse sub-dust payments
…sweep, keep single transactions above the Core relay size, add the DOGE soft-dust fee per sub-limit output, build nested segwit inputs, and copy the caller's custom outputs
Fixes the defects, doc drift and test gaps this repo carried on the review board and the test-gap board, 21 files.
…al that does not spend its funded scripts
Synced from xchain-hub/src/coins by bin/sync-coins.sh: the BTC and DOGE mainnet genesis ledgerHash and dumpHash move after BASE, DASH, HBAR, HOOD, HYPE and NEAR left the genesis manifests. No testnet or regtest value moves. The vendored-file identity pin is re-taken for the new coin file bytes.
Classify transactions through the node mempool and tracker chain index while preserving lookup failures as errors. Publish the OpenRPC contract and cover each status and failure path.
Extract shared txid and status helpers, rewrap retained readiness prose, and split the focused suites into bounded callbacks.
Treat only RPC code -5 as an absent mempool entry, retain all other node errors, and cover misleading error text. Restore pre-existing readiness commentary while keeping transaction lookup helpers within the structure ratchet.
Condense only the new lookup helpers and handlers so the API module remains at the 400-line structure limit without rewriting existing comments or methods.
Floor each faster fee quote at the preceding slower quote. Add focused controller coverage and verify the ordered payload through the real JSON-RPC app.
Fold the cumulative fee floor into the existing tier assignment so the controller remains at the repository line limit.
Treat estimates above the sanity ceiling as unavailable on non-mainnet chains while preserving the mainnet clamp. Add focused regression coverage and refresh the suite-title pin.
Keep the title map limited to the changed fee-estimation suite and the new focused regression file.
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What this release carries
Added
Changed
Fixed
Security
Testnet activation
ORDER_MATCH_PRICE_CROSS_ACTIVATIONonBTC:testnetat height156908ORDER_MATCH_PRICE_CROSS_ACTIVATIONonLTC:testnetat height4927400ORDER_MATCH_PRICE_CROSS_ACTIVATIONonDOGE:testnetat height68005165REMOTE_TOKEN_ADMISSION_ACTIVATIONonBTC:testnetat height156908REMOTE_TOKEN_ADMISSION_ACTIVATIONonLTC:testnetat height4927400REMOTE_TOKEN_ADMISSION_ACTIVATIONonDOGE:testnetat height68005165GAS_CEILING_EXHAUSTED_ACTIVATIONonBTC:testnetat height156908GAS_CEILING_EXHAUSTED_ACTIVATIONonLTC:testnetat height4927400GAS_CEILING_EXHAUSTED_ACTIVATIONonDOGE:testnetat height68005165RESOURCE_FAULT_SIGNAL_ACTIVATIONonBTC:testnetat height156908RESOURCE_FAULT_SIGNAL_ACTIVATIONonLTC:testnetat height4927400RESOURCE_FAULT_SIGNAL_ACTIVATIONonDOGE:testnetat height68005165HOST_ERROR_STACK_STRIP_ACTIVATIONonBTC:testnetat height156908HOST_ERROR_STACK_STRIP_ACTIVATIONonLTC:testnetat height4927400HOST_ERROR_STACK_STRIP_ACTIVATIONonDOGE:testnetat height68005165JSON_STRINGIFY_REENTRY_ACTIVATIONonBTC:testnetat height156908JSON_STRINGIFY_REENTRY_ACTIVATIONonLTC:testnetat height4927400JSON_STRINGIFY_REENTRY_ACTIVATIONonDOGE:testnetat height68005165NATIVE_STACK_TERMINAL_ACTIVATIONonBTC:testnetat height156908NATIVE_STACK_TERMINAL_ACTIVATIONonLTC:testnetat height4927400NATIVE_STACK_TERMINAL_ACTIVATIONonDOGE:testnetat height68005165VOTE_SETTLEMENT_EXACT_ACTIVATIONonBTC:testnetat height156908VOTE_SETTLEMENT_EXACT_ACTIVATIONonLTC:testnetat height4927400VOTE_SETTLEMENT_EXACT_ACTIVATIONonDOGE:testnetat height68005165SETTLEMENT_BOUNDS_ACTIVATIONonBTC:testnetat height156908SETTLEMENT_BOUNDS_ACTIVATIONonLTC:testnetat height4927400SETTLEMENT_BOUNDS_ACTIVATIONonDOGE:testnetat height68005165PASS_PROGRESS_RETIREMENT_ACTIVATIONonBTC:testnetat height156908PASS_PROGRESS_RETIREMENT_ACTIVATIONonLTC:testnetat height4927400PASS_PROGRESS_RETIREMENT_ACTIVATIONonDOGE:testnetat height68005165SLASH_HISTORICAL_SET_ACTIVATIONonBTC:testnetat height156908SLASH_HISTORICAL_SET_ACTIVATIONonLTC:testnetat height4927400SLASH_HISTORICAL_SET_ACTIVATIONonDOGE:testnetat height68005165ANCHOR_REWARD_COPY_SELECTION_ACTIVATIONonBTC:testnetat height156908ANCHOR_REWARD_COPY_SELECTION_ACTIVATIONonLTC:testnetat height4927400ANCHOR_REWARD_COPY_SELECTION_ACTIVATIONonDOGE:testnetat height68005165TOKEN_SUPPLY_REPRESENTATION_ACTIVATIONonBTC:testnetat height156908TOKEN_SUPPLY_REPRESENTATION_ACTIVATIONonLTC:testnetat height4927400TOKEN_SUPPLY_REPRESENTATION_ACTIVATIONonDOGE:testnetat height68005165DISPENSER_FIAT_PRICING_ACTIVATIONonBTC:testnetat height156908DISPENSER_FIAT_PRICING_ACTIVATIONonLTC:testnetat height4927400DISPENSER_FIAT_PRICING_ACTIVATIONonDOGE:testnetat height68005165BRIDGE_POLICY_APPLY_ORDER_ACTIVATIONonBTC:testnetat height156908BRIDGE_POLICY_APPLY_ORDER_ACTIVATIONonLTC:testnetat height4927400BRIDGE_POLICY_APPLY_ORDER_ACTIVATIONonDOGE:testnetat height68005165VM_EMISSION_AMOUNT_FORMAT_ACTIVATIONonBTC:testnetat height156908VM_EMISSION_AMOUNT_FORMAT_ACTIVATIONonLTC:testnetat height4927400VM_EMISSION_AMOUNT_FORMAT_ACTIVATIONonDOGE:testnetat height68005165EXECUTE_FEE_CAP_ACTIVATIONonBTC:testnetat height156908EXECUTE_FEE_CAP_ACTIVATIONonLTC:testnetat height4927400EXECUTE_FEE_CAP_ACTIVATIONonDOGE:testnetat height68005165VOTE_V3_TICK_EXISTENCE_ACTIVATIONonBTC:testnetat height156908VOTE_V3_TICK_EXISTENCE_ACTIVATIONonLTC:testnetat height4927400VOTE_V3_TICK_EXISTENCE_ACTIVATIONonDOGE:testnetat height68005165MATCH_ORIGIN_OPEN_ACTIVATIONonBTC:testnetat height156908MATCH_ORIGIN_OPEN_ACTIVATIONonLTC:testnetat height4927400MATCH_ORIGIN_OPEN_ACTIVATIONonDOGE:testnetat height68005165VM_LINT_SYNTAX_DEPTH_ACTIVATIONonBTC:testnetat height156908VM_LINT_SYNTAX_DEPTH_ACTIVATIONonLTC:testnetat height4927400VM_LINT_SYNTAX_DEPTH_ACTIVATIONonDOGE:testnetat height68005165NESTED_EXECUTE_GAS_SUM_ACTIVATIONonBTC:testnetat height156908NESTED_EXECUTE_GAS_SUM_ACTIVATIONonLTC:testnetat height4927400NESTED_EXECUTE_GAS_SUM_ACTIVATIONonDOGE:testnetat height68005165EMISSION_DEPTH_EXECUTE_ONLYonBTC:testnetat block time1792303200EMISSION_DEPTH_EXECUTE_ONLYonLTC:testnetat block time1792303200EMISSION_DEPTH_EXECUTE_ONLYonDOGE:testnetat block time1792303200ARCHIVE_REPLAY_WRAPPER_WATERMARKonBTC:testnetat block time1792303200ARCHIVE_REPLAY_WRAPPER_WATERMARKonLTC:testnetat block time1792303200ARCHIVE_REPLAY_WRAPPER_WATERMARKonDOGE:testnetat block time1792303200LEGACY_ANCHOR_REWARD_PINonBTC:testnetat block time1792303200LEGACY_ANCHOR_REWARD_PINonLTC:testnetat block time1792303200LEGACY_ANCHOR_REWARD_PINonDOGE:testnetat block time1792303200GUARD_STAKE_SNAPSHOT_DECIMAL_STRINGSonBTC:testnetat block time1792303200GUARD_STAKE_SNAPSHOT_DECIMAL_STRINGSonLTC:testnetat block time1792303200GUARD_STAKE_SNAPSHOT_DECIMAL_STRINGSonDOGE:testnetat block time1792303200HOST_CALL_BOUNDSonBTC:testnetat block time1792303200HOST_CALL_BOUNDSonLTC:testnetat block time1792303200HOST_CALL_BOUNDSonDOGE:testnetat block time1792303200PER_ELEMENT_METERonBTC:testnetat block time1792303200PER_ELEMENT_METERonLTC:testnetat block time1792303200PER_ELEMENT_METERonDOGE:testnetat block time1792303200CALLBACK_ARGS_EXACTonBTC:testnetat block time1792303200CALLBACK_ARGS_EXACTonLTC:testnetat block time1792303200CALLBACK_ARGS_EXACTonDOGE:testnetat block time1792303200GAS_CEILING_EXHAUSTED_ACTIVATIONonBTC:testnetat height156908GAS_CEILING_EXHAUSTED_ACTIVATIONonLTC:testnetat height4927400GAS_CEILING_EXHAUSTED_ACTIVATIONonDOGE:testnetat height68005165LINT_SYNTAX_DEPTH_ACTIVATIONonBTC:testnetat height156908LINT_SYNTAX_DEPTH_ACTIVATIONonLTC:testnetat height4927400LINT_SYNTAX_DEPTH_ACTIVATIONonDOGE:testnetat height68005165RESOURCE_FAULT_SIGNAL_ACTIVATIONonBTC:testnetat height156908RESOURCE_FAULT_SIGNAL_ACTIVATIONonLTC:testnetat height4927400RESOURCE_FAULT_SIGNAL_ACTIVATIONonDOGE:testnetat height68005165HOST_ERROR_STACK_STRIP_ACTIVATIONonBTC:testnetat height156908HOST_ERROR_STACK_STRIP_ACTIVATIONonLTC:testnetat height4927400HOST_ERROR_STACK_STRIP_ACTIVATIONonDOGE:testnetat height68005165JSON_STRINGIFY_REENTRY_ACTIVATIONonBTC:testnetat height156908JSON_STRINGIFY_REENTRY_ACTIVATIONonLTC:testnetat height4927400JSON_STRINGIFY_REENTRY_ACTIVATIONonDOGE:testnetat height68005165NATIVE_STACK_TERMINAL_ACTIVATIONonBTC:testnetat height156908NATIVE_STACK_TERMINAL_ACTIVATIONonLTC:testnetat height4927400NATIVE_STACK_TERMINAL_ACTIVATIONonDOGE:testnetat height68005165Release v0.24.0
Base:
masterat8033833099fbc9a61a15d6ffb8cff7be9c49cb54Head:
release/v0.24.0at83020a0a0e64d5bd75ebc0fd570b5477ec707efaLanded refs