Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
df01e75
ci: re-pin PR Hygiene so the sweep reaches every pull request (#4771)
shumkov Sep 16, 2026
bbddd4f
ci: re-pin PR Hygiene so its runs queue instead of cancelling (#4774)
shumkov Sep 16, 2026
1ac9755
ci: re-pin PR Hygiene to read each pull request once (#4779)
shumkov Sep 16, 2026
56a5f7f
ci: wake PR Hygiene only for a comment that can change the answer (#4…
shumkov Sep 16, 2026
58cff51
ci: re-pin PR Hygiene to clone this repository only on its sweep (#4786)
shumkov Sep 16, 2026
3ec43f9
chore(skills): rename review-prs to prs (#4788)
shumkov Sep 16, 2026
d6e4f30
ci: re-pin PR Hygiene to require a green build before asking a human …
shumkov Sep 17, 2026
c21aef8
ci: re-pin PR Hygiene so it can verify access granted by the organisa…
shumkov Sep 17, 2026
75d2dea
ci: PR Hygiene is the merge gate; CODEOWNERS carries no rules (#4840)
shumkov Sep 19, 2026
d3de958
ci: re-pin PR Hygiene for state labels and /skip-bots (#4862)
shumkov Sep 20, 2026
064c846
Merge branch 'v4.2-dev' into v4.3-dev
QuantumExplorer Sep 21, 2026
93cc0ce
ci: re-pin PR Hygiene for the checklist in the description (#4889)
shumkov Sep 21, 2026
0b1ffa3
ci: re-pin PR Hygiene so a bot line says everything about that bot (#…
shumkov Sep 21, 2026
b1f837d
ci: re-pin PR Hygiene to ask a flaky read once more (#4895)
shumkov Sep 21, 2026
cd2710f
ci: re-pin PR Hygiene for one name for the author limit (#4903)
shumkov Sep 21, 2026
9f7ed16
fix(platform-wallet): select available signing keys across identity o…
lklimek Sep 22, 2026
779944d
Merge branch 'v4.2-dev' into v4.3-dev
QuantumExplorer Sep 22, 2026
09ba09c
ci: re-pin PR Hygiene (#4936)
shumkov Sep 23, 2026
43711ed
ci: re-pin PR Hygiene (#4946)
shumkov Sep 23, 2026
524eac1
ci: re-pin PR Hygiene (#4976)
shumkov Sep 24, 2026
7fa2c51
ci: re-pin PR Hygiene (#4980)
shumkov Sep 24, 2026
6641104
Merge remote-tracking branch 'origin/v4.2-dev' into v4.3-dev
PastaPastaPasta Sep 24, 2026
d8be103
Merge/v4.2 dev into 4.3 dev (#4988)
PastaPastaPasta Sep 24, 2026
b1a4f35
ci: re-pin PR Hygiene (#4990)
shumkov Sep 24, 2026
3af3d9f
ci: re-pin PR Hygiene (#5017)
shumkov Sep 26, 2026
b1353ae
ci: re-pin PR Hygiene and wake it on a hand-over (#5021)
shumkov Sep 26, 2026
f3b2b21
ci: re-pin PR Hygiene (#5024)
shumkov Sep 26, 2026
b64c454
Merge remote-tracking branch 'origin/v4.2-dev' into v4.3-dev
PastaPastaPasta Sep 26, 2026
f24c2f6
fix: merge v4.2-dev into v4.3-dev (#5027)
PastaPastaPasta Sep 26, 2026
e52344c
feat(platform-wallet): invitation claim status for the invitee, idemp…
romchornyi Sep 27, 2026
e38241d
feat(platform): introduce protocol version 15 (#5043)
QuantumExplorer Sep 27, 2026
37e59d2
ci: deploy isolated PR Hygiene engine on v4.3
infraclaw-dash Sep 28, 2026
67340ad
ci: deploy isolated PR Hygiene engine on v4.3 (#5143)
ktechmidas Sep 28, 2026
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
2 changes: 1 addition & 1 deletion .github/workflows/pr-review-policy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,6 @@ jobs:
(contains(fromJSON('["coderabbitai", "coderabbitai[bot]"]'), github.event.comment.user.login) &&
(contains(github.event.comment.body, 'final_review_risk_coverage') ||
contains(github.event.comment.body, 'rate limited by coderabbit.ai')))
uses: dashpay/stale_prs_are_bad/.github/workflows/pr-review-reusable.yml@5e561c705a09eb80782557d57e905d444b03dffd
uses: dashpay/stale_prs_are_bad/.github/workflows/pr-review-reusable.yml@b9ec4fbd5bbd3ac4bdb164a09f03bff89114fc46
with:
scope: ${{ inputs.scope || 'batch' }}
5 changes: 3 additions & 2 deletions packages/rs-platform-version/src/version/mod.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
mod protocol_version;

use crate::version::v14::PROTOCOL_VERSION_14;
use crate::version::v15::PROTOCOL_VERSION_15;
pub use protocol_version::*;
use std::ops::RangeInclusive;

Expand All @@ -20,6 +20,7 @@ pub mod v11;
pub mod v12;
pub mod v13;
pub mod v14;
pub mod v15;
pub mod v2;
pub mod v3;
pub mod v4;
Expand All @@ -33,5 +34,5 @@ pub type ProtocolVersion = u32;

pub const ALL_VERSIONS: RangeInclusive<ProtocolVersion> = 1..=LATEST_VERSION;

pub const LATEST_VERSION: ProtocolVersion = PROTOCOL_VERSION_14;
pub const LATEST_VERSION: ProtocolVersion = PROTOCOL_VERSION_15;
pub const INITIAL_PROTOCOL_VERSION: ProtocolVersion = 1;
4 changes: 3 additions & 1 deletion packages/rs-platform-version/src/version/protocol_version.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ use crate::version::v11::PLATFORM_V11;
use crate::version::v12::PLATFORM_V12;
use crate::version::v13::PLATFORM_V13;
use crate::version::v14::PLATFORM_V14;
use crate::version::v15::PLATFORM_V15;
use crate::version::v2::PLATFORM_V2;
use crate::version::v3::PLATFORM_V3;
use crate::version::v4::PLATFORM_V4;
Expand Down Expand Up @@ -61,6 +62,7 @@ pub const PLATFORM_VERSIONS: &[PlatformVersion] = &[
PLATFORM_V12,
PLATFORM_V13,
PLATFORM_V14,
PLATFORM_V15,
];

#[cfg(feature = "mock-versions")]
Expand All @@ -69,7 +71,7 @@ pub static PLATFORM_TEST_VERSIONS: OnceLock<Vec<PlatformVersion>> = OnceLock::ne
#[cfg(feature = "mock-versions")]
const DEFAULT_PLATFORM_TEST_VERSIONS: &[PlatformVersion] = &[TEST_PLATFORM_V2, TEST_PLATFORM_V3];

pub const LATEST_PLATFORM_VERSION: &PlatformVersion = &PLATFORM_V14;
pub const LATEST_PLATFORM_VERSION: &PlatformVersion = &PLATFORM_V15;

pub const DESIRED_PLATFORM_VERSION: &PlatformVersion = LATEST_PLATFORM_VERSION;

Expand Down
71 changes: 71 additions & 0 deletions packages/rs-platform-version/src/version/v15.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
use crate::version::consensus_versions::ConsensusVersions;
use crate::version::dpp_versions::dpp_asset_lock_versions::v1::DPP_ASSET_LOCK_VERSIONS_V1;
use crate::version::dpp_versions::dpp_contract_versions::v6::CONTRACT_VERSIONS_V6;
use crate::version::dpp_versions::dpp_costs_versions::v1::DPP_COSTS_VERSIONS_V1;
use crate::version::dpp_versions::dpp_document_versions::v4::DOCUMENT_VERSIONS_V4;
use crate::version::dpp_versions::dpp_factory_versions::v1::DPP_FACTORY_VERSIONS_V1;
use crate::version::dpp_versions::dpp_identity_versions::v1::IDENTITY_VERSIONS_V1;
use crate::version::dpp_versions::dpp_method_versions::v3::DPP_METHOD_VERSIONS_V3;
use crate::version::dpp_versions::dpp_state_transition_conversion_versions::v2::STATE_TRANSITION_CONVERSION_VERSIONS_V2;
use crate::version::dpp_versions::dpp_state_transition_method_versions::v2::STATE_TRANSITION_METHOD_VERSIONS_V2;
use crate::version::dpp_versions::dpp_state_transition_serialization_versions::v3::STATE_TRANSITION_SERIALIZATION_VERSIONS_V3;
use crate::version::dpp_versions::dpp_state_transition_versions::v4::STATE_TRANSITION_VERSIONS_V4;
use crate::version::dpp_versions::dpp_token_versions::v3::TOKEN_VERSIONS_V3;
use crate::version::dpp_versions::dpp_validation_versions::v5::DPP_VALIDATION_VERSIONS_V5;
use crate::version::dpp_versions::dpp_voting_versions::v2::VOTING_VERSION_V2;
use crate::version::dpp_versions::DPPVersion;
use crate::version::drive_abci_versions::drive_abci_checkpoint_parameters::v1::DRIVE_ABCI_CHECKPOINT_PARAMETERS_V1;
use crate::version::drive_abci_versions::drive_abci_method_versions::v10::DRIVE_ABCI_METHOD_VERSIONS_V10;
use crate::version::drive_abci_versions::drive_abci_query_versions::v3::DRIVE_ABCI_QUERY_VERSIONS_V3;
use crate::version::drive_abci_versions::drive_abci_structure_versions::v2::DRIVE_ABCI_STRUCTURE_VERSIONS_V2;
use crate::version::drive_abci_versions::drive_abci_validation_versions::v10::DRIVE_ABCI_VALIDATION_VERSIONS_V10;
use crate::version::drive_abci_versions::drive_abci_withdrawal_constants::v3::DRIVE_ABCI_WITHDRAWAL_CONSTANTS_V3;
use crate::version::drive_abci_versions::DriveAbciVersion;
use crate::version::drive_versions::v9::DRIVE_VERSION_V9;
use crate::version::fee::v3::FEE_VERSION3;
use crate::version::protocol_version::PlatformVersion;
use crate::version::system_data_contract_versions::v3::SYSTEM_DATA_CONTRACT_VERSIONS_V3;
use crate::version::system_limits::v4::SYSTEM_LIMITS_V4;
use crate::version::ProtocolVersion;

pub const PROTOCOL_VERSION_15: ProtocolVersion = 15;

/// Introduced as the activation gate for the consensus changes of the 4.3
/// line. Functionally identical to v14 at introduction: the same component
/// version structs, no behavior change. Each change that needs this gate
/// lands in its own follow-up and bumps the component table it consumes here;
/// keeping v15 == v14 until then lets mixed-version validators agree.
pub const PLATFORM_V15: PlatformVersion = PlatformVersion {
protocol_version: PROTOCOL_VERSION_15,
drive: DRIVE_VERSION_V9,
drive_abci: DriveAbciVersion {
structs: DRIVE_ABCI_STRUCTURE_VERSIONS_V2,
methods: DRIVE_ABCI_METHOD_VERSIONS_V10,
validation_and_processing: DRIVE_ABCI_VALIDATION_VERSIONS_V10,
withdrawal_constants: DRIVE_ABCI_WITHDRAWAL_CONSTANTS_V3,
query: DRIVE_ABCI_QUERY_VERSIONS_V3,
checkpoints: DRIVE_ABCI_CHECKPOINT_PARAMETERS_V1,
},
dpp: DPPVersion {
costs: DPP_COSTS_VERSIONS_V1,
validation: DPP_VALIDATION_VERSIONS_V5,
state_transition_serialization_versions: STATE_TRANSITION_SERIALIZATION_VERSIONS_V3,
state_transition_conversion_versions: STATE_TRANSITION_CONVERSION_VERSIONS_V2,
state_transition_method_versions: STATE_TRANSITION_METHOD_VERSIONS_V2,
state_transitions: STATE_TRANSITION_VERSIONS_V4,
contract_versions: CONTRACT_VERSIONS_V6,
document_versions: DOCUMENT_VERSIONS_V4,
identity_versions: IDENTITY_VERSIONS_V1,
voting_versions: VOTING_VERSION_V2,
token_versions: TOKEN_VERSIONS_V3,
asset_lock_versions: DPP_ASSET_LOCK_VERSIONS_V1,
methods: DPP_METHOD_VERSIONS_V3,
factory_versions: DPP_FACTORY_VERSIONS_V1,
},
system_data_contracts: SYSTEM_DATA_CONTRACT_VERSIONS_V3,
fee_version: FEE_VERSION3,
system_limits: SYSTEM_LIMITS_V4,
consensus: ConsensusVersions {
tenderdash_consensus_version: 1,
},
};
5 changes: 5 additions & 0 deletions packages/rs-platform-wallet-ffi/src/error.rs
Original file line number Diff line number Diff line change
Expand Up @@ -977,6 +977,11 @@ impl From<PlatformWalletError> for PlatformWalletFFIResult {
PlatformWalletError::AssetLockNotTracked(..) => {
PlatformWalletFFIResultCode::ErrorAssetLockNotTracked
}
// A DashPay invitation link for the other network: definitive, so
// hosts can say so instead of treating it as undetermined.
PlatformWalletError::InvitationNetworkMismatch { .. } => {
PlatformWalletFFIResultCode::ErrorInvalidNetwork
}
PlatformWalletError::AssetLockAlreadyConsumed(..) => {
PlatformWalletFFIResultCode::ErrorAssetLockAlreadyConsumed
}
Expand Down
Loading
Loading