Problem
Pool-asset status can change without proving issuer, distributor, contract, metadata, supply, network, and pool identity match the live Stellar deployment.
Scope
- Define allowed and terminal state transitions.
- Before activation verify network, accounts, flags, trustlines, contract/WASM, asset code, metadata, supply, and pool identity.
- Store an immutable ledger-bound activation snapshot and evidence hashes.
- Require maker-checker approval for activation, identity changes, and retirement.
- Make active identity fields immutable; use versioned replacement.
- Block retirement while positions, supply, payouts, disputes, or archives remain.
- Add optimistic versioning and audit/domain events.
Acceptance criteria
- Mismatched deployments cannot become active.
- Validation is centralized server-side.
- Active identity is immutable and evidence reproducible.
- Retirement cannot strand balances or claims.
- Concurrent transitions resolve deterministically.
Required tests
Transition table, wrong network/account/contract/metadata/supply, stale evidence, concurrent approvals, retirement blockers, and snapshot re-verification.
Non-goals
Do not automate regulated issuance or legal eligibility.
Problem
Pool-asset status can change without proving issuer, distributor, contract, metadata, supply, network, and pool identity match the live Stellar deployment.
Scope
Acceptance criteria
Required tests
Transition table, wrong network/account/contract/metadata/supply, stale evidence, concurrent approvals, retirement blockers, and snapshot re-verification.
Non-goals
Do not automate regulated issuance or legal eligibility.