Role and admin delegation state can be left in an inconsistent partial state when a role transfer or multi-admin configuration is partially applied.
Affected areas: app/contract/contracts/Folder/src/admin.rs, app/contract/contracts/Folder/src/roles.rs, app/contract/contracts/Folder/src/storage.rs, app/contract/contracts/Folder/src/test.rs.
Implementation scope:
- Ensure role changes are atomic and validate before persistence.
- Add delegation revocation, transfer acceptance, and role clearing semantics.
- Harden role inheritance and admin access checks for every public method.
- Add regression tests for partial role update failure modes.
Acceptance criteria:
- Role/administrator updates either complete fully or roll back cleanly.
- No public action can proceed with partially applied role metadata.
- Tests cover delegation, role revocation, and cross-role invariants.
Role and admin delegation state can be left in an inconsistent partial state when a role transfer or multi-admin configuration is partially applied.
Affected areas:
app/contract/contracts/Folder/src/admin.rs,app/contract/contracts/Folder/src/roles.rs,app/contract/contracts/Folder/src/storage.rs,app/contract/contracts/Folder/src/test.rs.Implementation scope:
Acceptance criteria: