|
13 | 13 | - `get_result_schema` — explicit schema descriptor for SLA result encoding (status, payment type, rating symbols) |
14 | 14 | - `calculate_sla_view` — read-only simulation of SLA calculation without state mutation or auth requirement |
15 | 15 | - `get_config_snapshot` — ordered snapshot of all severity configs with version tag |
| 16 | +- `migrate` — admin-only migration function to bump the storage schema version (SC-021) |
| 17 | +- `get_admin` — read the current admin address |
| 18 | +- Two-step admin transfer governance functions: `propose_admin`, `accept_admin`, `cancel_admin_proposal`, and `get_pending_admin` (SC-024, SC-063) |
| 19 | +- Two-step operator handoff governance functions: `propose_operator`, `accept_operator`, `cancel_operator_proposal`, and `get_pending_operator` (SC-024, SC-064) |
| 20 | +- `renounce_admin` — admin-only irreversible governance renouncement (SC-065) |
| 21 | +- `is_paused` — query if the contract is paused |
| 22 | +- `get_pause_info` — query pause reason, timestamp, and initiator metadata |
| 23 | +- `list_configs` — read all severity configurations as a Map |
| 24 | +- `get_last_config_update` — cheap invalidation check returning metadata (ledger sequence) on the most recent configuration update (#4) |
| 25 | +- `get_failure_schema` — returns the full catalogue of typed failure codes mapping numeric error codes to machine-readable labels and descriptions (SC-W5-046) |
| 26 | +- `get_config_bundle` — combines configuration snapshot and result schema in a single read for one-shot backend bootstrapping (#1) |
| 27 | +- `get_contract_metadata` — returns static contract capabilities including features, supported severities, storage/result schema versions (SC-060) |
| 28 | +- `prune_history_by_age` — admin-only history compaction removing entries older than a specified duration (SC-063) |
| 29 | +- Paginated history access: `get_history_page` returning bounded history page (SC-059) |
| 30 | +- `get_history_by_outage` — query all history entries matching a given outage identifier (SC-060) |
| 31 | +- `get_latest_by_outage` — query the most recent history entry for a given outage identifier (SC-061) |
| 32 | +- `get_config_count` — read total number of configured severity tiers (SC-079) |
| 33 | +- `get_storage_version` — query the current storage version stamped in storage |
| 34 | +- Configurable retention limit functions: `set_retention_limit` and `get_retention_limit` (SC-013) |
| 35 | +- `get_migration_state` — query storage version and migration posture (SC-021) |
| 36 | +- `get_version_info` — version negotiation snapshot for backend startup handshake (SC-W5-029) |
| 37 | +- Event Correlation IDs — cross-contract tracing via deterministic correlation IDs generated by `generate_correlation_id` from ledger sequence and formatted with `correlation_event_topics` (SC-W5-079) |
| 38 | +- Settlement Intent Event (`set_int`) — Published on every `calculate_sla` call alongside `sla_calc` event for backend reconciliation. It uses topics `(set_int, v1, severity)` and payload `(outage_id: Symbol, status: Symbol, payment_type: Symbol, amount: i128, config_version_hash: u64, recorded_at: u64)` (SC-W5-041) |
16 | 39 |
|
17 | 40 | ### Changed |
| 41 | +- `pause` now requires a `reason: String` parameter, records pause metadata (reason, timestamp, initiator), and emits an event payload with the paused status (breaking) |
| 42 | +- `calculate_sla` now: |
| 43 | + - Emits a settlement intent event (`set_int`) alongside the SLA calculation event |
| 44 | + - Enforces a configurable retention limit (SC-013) and drops the oldest entry when the limit is exceeded (SC-062) |
| 45 | + - Performs configuration parameter validation (SC-W5-046) |
18 | 46 | - `get_stats` now returns a `SLAStats` struct; callers should use field access rather than tuple destructuring |
19 | 47 | - History entries returned by `get_history` include `schema_version` for result envelope versioning |
20 | 48 |
|
|
0 commit comments