arkavo-org / arkavo-org/arkavo-node
Implement Cross-Contract Communication in Policy Engine and Payment Integration
- Dominant language
- Rust
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Overview
This issue tracks the implementation of cross-contract calls between the smart contracts as documented in `docs/CROSS_CONTRACT_CALLS.md`.
## Background
Currently, `policy_engine` and `payment_integration` contracts have placeholder comments where cross-contract calls should be implemented:
- `policy_engine.evaluate_access` needs to call `access_registry` and `attribute_store`
- `payment_integration.complete_payment` needs to call `access_registry.grant_entitlement`
- `payment_integration.refund_payment` needs to call `access_registry.revoke_entitlement`
## Tasks
- [ ] Phase 1: Define contract trait interfaces
- [ ] Phase 2: Update storage to use contract references
- [ ] Phase 3: Implement policy_engine.evaluate_access logic
- [ ] Phase 4: Implement payment_integration cross-contract calls
- [ ] Phase 5: Write comprehensive tests
- [ ] Phase 6: Deploy and test on development network
## References
- Documentation: `docs/CROSS_CONTRACT_CALLS.md`
- Related code review finding: C1, C2
## Priority
**HIGH** - Critical functionality gap
## Estimated Effort
2-3 days for implementation + testing
Contributor guide
No contributing guide indexed for this repository
Research direction
Read docs/CROSS_CONTRACT_CALLS.md first, then inspect policy_engine.evaluate_access, payment_integration.complete_payment, and payment_integration.refund_payment where the placeholders are described. Define the interfaces, update contract references, implement the calls, add comprehensive tests, and validate deployment on the development network.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, wasm
- Domain
- blockchain
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100