Balance Records
Mirage still preserves the idea of a birth record, but soToken objects are also balance/state records.
An object records how it was born while live ownership remains tied to token support and the launch’s LOA/BOA policy.
Birth Record Fields
| Field | Meaning |
|---|---|
originalMinter | Wallet that first claimed the object |
bornAtBlock | Block number where the object was born |
sourceBalanceAtBirth | Source-token balance at the time of birth |
intervalAtBirth | Source-token interval configured for the rule |
objectIndexAtBirth | Owner slot index at birth |
seedModule | Module used to produce the seed |
birthPath | Domain-separated provenance path |
contextHash | Hash of seed context bytes |
Historical versus active
Birth records and seeds remain queryable after an object becomes inactive.
Active ownership is stricter:
ownerOf(objectId)
-> succeeds only if the object is born, active, and supported
If a wallet falls below the required source-token balance through any transfer route, sync reconciles unsupported objects. Mirage and other supported services catch up on resync and update object state in their frontends. LOAs become Dormant. BOAs can unbind or burn depending on launch policy.
Good UI language
Use:
This object is supported by one source-token interval.
Use:
This object’s birth record remains historical even if it becomes unbound.
Avoid:
This object is always active even after selling the source token.