Skip to content

L-6. x/verification module skeleton + settlement helper + invariants #497

@linear

Description

@linear

Scaffold node/x/verification/ per §7 Phase 1.1 layout. Implement the full state and service surface: auditor lifecycle, governance actions, attestation records, audit escrow lifecycle, anti-griefing deposits, provider/auditor bonds with unbonding queues, snapshot records + suspension queue, discrepancy records, grace records with preserved_tier, ProviderTierSummary cache, full Msg/Query handlers, typed events, and all eight time queues (attestation expiry, auditor renewal, snapshot compliance, provider/auditor unbonding, discrepancy timeout, audit escrow expiry, and grace expiry). Include on-chain prerequisite enforcement, including L4 continuous L3+ history; module error codes matching IMPLEMENTATION.md Appendix A; and CLI tx/query commands for the verification service. Build the Settle() helper first with table-driven tests covering every row of the §4.10 disposition matrix. Add validateReasonAttribution(reason, fault) and call it from every handler that accepts a typed reason. Register the named invariants from IMPLEMENTATION.md §8. See §5.1.

Depends on: L-1

DoD: Unit tests pass with >80% coverage on settlement helper; every disposition row exercised; every (reason, fault) bad-pair test asserts ErrInvalidFaultAttribution; invariants pass on synthetic genesis (100 providers, 5 auditors, mixed escrow states); InitGenesis/ExportGenesis rebuild indexes and time queues.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions