Skip to main content

Events and errors

Decode an error using the selected contract's specification. Numeric codes are local to a contract's error enum and can overlap across contracts.

This table is the Stellar ABI. The live Base factory uses Solidity errors and events from evm-contract/.

Launch errors​

CodeVariantMeaning
1InvalidConfigInvalid metadata, allocations, timing, fees, or curve settings
2InvalidSupplyInvalid deposit or asset-accounting invariant
3OverflowArithmetic or counter limit exceeded
4NotOpenTrading unavailable for the current state, or a guarded action is busy
5InvalidTradeInvalid amount, position, or trade input
6SoldOutRequested buy exceeds curve inventory
7SlippagePayment cap or receipt floor is violated
8NoReserveSell has zero gross value or insufficient recorded reserve
9NoClaimNo positive amount is available to claim
10WrongAssetAsset is not an accepted SAC or its metadata/decimals mismatch
11UnknownLabelNonzero label does not exist at launch creation
12ReputationRequiredBuyer does not pass the launch label

Asset transfers, missing authorization, archived data, and failed cross-contract calls can also cause host or nested-contract errors. Not every failure maps to this enum.

Reputation errors​

CodeVariantMeaning
1InvalidLabelInvalid name or empty criteria
2OverflowNext label ID cannot be represented

Unknown labels and missing scores return false from checks rather than one of these label-creation errors.

Reputation events​

EventIndexed fieldPayload
scores_updatedaddressReplacement Scores
label_createdlabel_idFull Label
admin_changedNoneold_admin and new_admin

The source defines these with #[contractevent]. Use the deployed specification to decode exact topics and data. A score update replaces the complete three-field record.

Launch indexing​

The current Stellar factory and curve do not declare custom application-level creation or trade events. Do not invent event names such as launch_created or presale_allocated in a Stellar indexer.

The Base factory emits FactoryConfigured and LaunchCreated. Index those from the live factory on chain ID 8453.

Use factory enumeration, confirmed invocation results, vault reads, and token transfer events as appropriate. Token transfers alone do not prove that a transfer was a registered purchase: unsolicited direct transfers are possible.

For Stellar event-query mechanics, see the Stellar RPC reference. Store network, contract identity, transaction references, and an ingestion cursor when building an indexer.