Description
Dashboards and monitoring tools need a comprehensive snapshot of contract state without making 10+ separate calls. A summary view reduces latency and simplifies client code.
What to do
Create ContractSummary { name: String, symbol: String, decimal: u32, total_supply: i128, max_supply: i128, total_holders: u32, escrow_count: u32, split_count: u32, recurring_count: u32, dispute_count: u32, is_paused: bool, admin: Address, version: String } struct
- Add
fn contract_summary(e: Env) -> ContractSummary to contract.rs
- Add test asserting all fields are correct after various operations
Files touched
src/contract.rs
src/test.rs
PR requirement
Closes #[issue_id] — Timeframe: 48 hours
Description
Dashboards and monitoring tools need a comprehensive snapshot of contract state without making 10+ separate calls. A summary view reduces latency and simplifies client code.
What to do
Create
ContractSummary { name: String, symbol: String, decimal: u32, total_supply: i128, max_supply: i128, total_holders: u32, escrow_count: u32, split_count: u32, recurring_count: u32, dispute_count: u32, is_paused: bool, admin: Address, version: String }structfn contract_summary(e: Env) -> ContractSummarytocontract.rsFiles touched
src/contract.rssrc/test.rsPR requirement
Closes #[issue_id]— Timeframe: 48 hours