-
Notifications
You must be signed in to change notification settings - Fork 338
release-454 #3143
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
release-454 #3143
Changes from 4 commits
498227a
4b92d4b
30eb895
a550d9d
a089a07
b47a914
76c11ae
81e8c2a
e02fb27
437dd7d
7d6db64
14fe0ad
1e2aec0
976f20a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -235,7 +235,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { | |
| // `spec_version`, and `authoring_version` are the same between Wasm and native. | ||
| // This value is set to 100 to notify Polkadot-JS App (https://polkadot.js.org/apps) to use | ||
| // the compatible custom types. | ||
| spec_version: 453, | ||
| spec_version: 454, | ||
| impl_version: 1, | ||
| apis: RUNTIME_API_VERSIONS, | ||
| transaction_version: 1, | ||
|
|
@@ -1407,6 +1407,16 @@ impl Contains<RuntimeCall> for ContractCallFilter { | |
| fn contains(call: &RuntimeCall) -> bool { | ||
| match call { | ||
| RuntimeCall::Proxy(inner) => matches!(inner, pallet_proxy::Call::proxy { .. }), | ||
| // Since the proxy origin-filter inheritance fix (release 453), calls | ||
| // dispatched *inside* Proxy::proxy must also pass this filter. A | ||
| // contract holding an explicit user proxy delegation could | ||
| // previously execute transfer_stake on the user's behalf; allow | ||
| // that inner call again. Security is unchanged: the transfer still | ||
| // requires the user to have registered the contract as a proxy, | ||
| // and the inherited-filter fix keeps every other call blocked. | ||
|
Comment on lines
1408
to
+1416
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [MEDIUM] Add regression coverage for nested proxy filtering This compatibility fix still lacks a test exercising the complete path: a contract-origin call to
Comment on lines
1409
to
+1416
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [MEDIUM] Add regression coverage for nested proxy filtering The release restores a subtle contract → |
||
| RuntimeCall::SubtensorModule(inner) => { | ||
| matches!(inner, pallet_subtensor::Call::transfer_stake { .. }) | ||
| } | ||
| _ => false, | ||
| } | ||
| } | ||
|
|
||
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.
[MEDIUM] Add regression coverage for nested proxy filtering
This behavioral fix has no test proving that a contract-origin
Proxy::proxy(transfer_stake)succeeds after inherited filtering while unrelated nested calls remain rejected. Add a runtime-level regression test covering both cases; otherwise this compatibility/security boundary can regress unnoticed.