πŸ“¨Main topics

Carbon Router Topics

This document defines topics produced by the Carbon Router.

There are two classes of topics:

  • Raw topics: high-frequency deltas used by the UI for realtime rendering.

  • Wasm topics: low-TPS, semantically meaningful events for WASM functions to follow.

Throughput and batching

  • When WASM topics can get high TPS, batch by 2 consecutive slots.

  • Do not have WASM functions follow high-TPS raw topics; it can overload memory.

  • Prefer whitelisting only WASM topics when creating a function.

WASM Topics

This section summarizes what each topic does and when it emits. Values and schemas are intentionally omitted for simplicity.

Token-driven pulses

  • πŸ“€ wasm.token.holder-pulse

    • Purpose: detect meaningful changes in token holders over a short window.

    • Emits when: holder count changes by at least Β±10 and β‰₯ 5% across a 2-slot window.

    • Filters: tokens created after system start; liquidity < 1M.

    • Batch: 2 slots.

  • πŸ“€ wasm.token.liquidity-pulse

    • Purpose: detect meaningful liquidity changes.

    • Emits when: liquidity changes by Β±5% and by β‰₯ 5 SOL across a 2-slot window.

    • Filters: tokens created after system start.

    • Batch: 2 slots.

  • πŸ“€ wasm.token.trade-in-slot

    • Purpose: per-slot trade summary for a token.

    • Emits when: total traded volume in the slot β‰₯ 5 SOL.

    • Filters: tokens created after system start; only while not bonded and up to 5 minutes after bonding.

    • Frequency: per slot.

User-driven actions

  • πŸ“€ wasm.trader.trade-half-sol

    • Purpose: capture individual trades with size β‰₯ 0.5 SOL.

    • Emits when: a qualifying trade occurs.

    • Filters: tokens created after system start; only while not migrated and up to 5 minutes after migration.

  • πŸ“€ wasm.trader.just-funded

    • Purpose: flag addresses that traded β‰₯ 0.5 SOL and received SOL deposits in the last 24 hours.

    • Emits when: an address satisfies both conditions above.

    • Model:

Launchpad events

  • πŸ“€ wasm.launchpad.pumpfun.created and πŸ“€ wasm.launchpad.bonk.created

    • Purpose: token creation events from respective launchpads.

    • Emits when: a new token is created on the launchpad.

    • Filters: tokens created after system start.

  • πŸ“€ wasm.launchpad.pumpfun.completed and πŸ“€ wasm.launchpad.bonk.completed

    • Purpose: token completion/migration events with finalization context.

    • Emits when: token completes/migrates on the launchpad.

    • Filters: tokens created after system start.

Raw Topics

  • raw.token-state-changed

    • Purpose: realtime deltas for UI rendering.

    • Emits when: any token field changes; only changed fields are sent.

  • raw.token_created Merge wasm.launchpad.pumpfun.created and wasm.launchpad.bonk.created for a unified creation feed.

Last updated