Problem & Goal
Add the authorization and precondition checks at the top of apply_dispute_arbitration_split so the function rejects unauthorized callers and illegal source states before it reads or writes any ledger entry.
Context & Components
- Target Repository:
escrow-contract
- Module/Component:
apply_dispute_arbitration_split (Applies an arbiter-decided client/freelancer split)
Implementation Details
- Review the existing codebase inside the
escrow-contract directory.
- Locate the source files relating to
apply_dispute_arbitration_split.
- Implement the feature logic/validation rules step-by-step.
- Ensure code conforms to codebase patterns (lints, formats, types).
Verification & Testing Requirements
- Validation check: Assert an unauthorized caller and an illegal source state each return their specific typed error, and that no storage entry is mutated in either case.
- Add comprehensive test cases matching these validation requirements.
- Ensure all other existing project tests continue to compile and pass.
Note: This issue is completely self-contained and does not block or require any other issues to be resolved.
Problem & Goal
Add the authorization and precondition checks at the top of
apply_dispute_arbitration_splitso the function rejects unauthorized callers and illegal source states before it reads or writes any ledger entry.Context & Components
escrow-contractapply_dispute_arbitration_split(Applies an arbiter-decided client/freelancer split)Implementation Details
escrow-contractdirectory.apply_dispute_arbitration_split.Verification & Testing Requirements
Note: This issue is completely self-contained and does not block or require any other issues to be resolved.