Files
khadhroony-bobot/TODO.md
2026-04-19 17:58:33 +02:00

10 KiB

Khadhroony Bobot — Global TODO / Roadmap

This roadmap is a living document.
Completed versions reflect the current implemented state.
Planned versions are indicative and may evolve as architecture and product needs become clearer.


Project goals

The project is split into several major applications sharing khbb_lib:

  • khbb_listener_app

    • listen to Solana data sources,
    • detect token / mint / token-account / bootstrap / pair / pool related activity,
    • enrich and store observed data.
  • khbb_pattern_analyser_app

    • analyze recurring patterns on tokens, mints, pools, names, lifetimes, scam patterns, bootstrap flows, early activity.
  • khbb_trader_app

    • consume early detections and pattern outputs,
    • take automated trading decisions,
    • apply entry/exit logic based on price, duration, confidence, and risk.

Current architectural direction

Current implementation started with a simple inline listener loop in order to validate:

  • Solana HTTP RPC transport,
  • Solana WebSocket transport,
  • raw data storage,
  • event normalization,
  • early domain classification,
  • heuristic signals,
  • HTTP enrichment,
  • candidate tracking.

This is considered a bootstrap architecture.

Target architecture direction

The target architecture should progressively move toward:

  • multiple concurrent data sources,
  • autonomous source clients,
  • async task-based source runtimes,
  • command/event channels,
  • source aggregation hub,
  • separation between:
    • transport,
    • normalization,
    • enrichment,
    • correlation,
    • persistence,
    • strategy/trading.

This especially applies to:

  • multiple WebSocket clients,
  • Yellowstone gRPC client(s),
  • HTTP enrichment workers,
  • future external data sources.

Completed versions

v0.1.x

  • initial project skeleton
  • workspace setup
  • strict coding conventions
  • config loading
  • tracing bootstrap
  • SQLite bootstrap

v0.2.x

  • basic listener runtime
  • listener session creation
  • SQLite connectivity validation
  • initial runtime loop
  • first persistence primitives

v0.3.0

  • HTTP JSON-RPC client foundation
  • manual request ids
  • use of official Solana RPC request/response types where applicable
  • basic getSlot support
  • raw HTTP RPC storage

v0.3.1

  • tests added around config and storage
  • tests added around HTTP RPC request/response parsing
  • stronger validation of config and SQLite helpers

v0.3.2

  • HTTP polling integrated into listener runtime
  • getSlot polling stored as raw RPC traffic

v0.4.1

  • initial Solana WebSocket RPC support
  • subscription primitives
  • support for:
    • slotSubscribe
    • logsSubscribe
    • programSubscribe
  • raw WS message storage

v0.4.3

  • centralized WebSocket read loop improvements
  • safe unsubscribe handling
  • shutdown flow improvements
  • Rustls provider initialization fixes

v0.4.4

  • centralized WS dispatch between:
    • JSON-RPC responses
    • notifications
  • better separation of response wait logic and notification flow

v0.4.5

  • active WS subscription registry
  • source metadata attached to subscriptions
  • cleaner handling of multiple subscription kinds

v0.4.6

  • WS notification normalization layer
  • normalized events introduced for:
    • slot
    • logs
    • program notifications

v0.5.0

  • first domain event layer
  • normalized WS events converted into domain events

v0.5.1

  • known program registry
  • first known-program classification layer
  • SPL Token / Token-2022 / System / ComputeBudget / ATA recognition

v0.5.2

  • official ids.rs module added
  • heuristic signal layer introduced
  • first weak signals around:
    • token account activity
    • mint activity
    • initial token activity
    • bootstrap-style activity

v0.5.3

  • heuristic refinement
  • associated token account style signals
  • stronger bootstrap-oriented heuristics from known logs

v0.5.4

  • targeted HTTP enrichment via getAccountInfo
  • enriched account snapshot
  • first distinction between:
    • potential token account
    • potential mint account
    • unknown account

v0.5.5

  • enriched classification layer
  • confirmed enriched events introduced:
    • confirmed token account activity
    • confirmed mint account activity
    • unknown token-program-owned account activity

v0.5.6

  • local correlation layer between:
    • enriched events
    • heuristics
  • correlated signals introduced:
    • confirmed token account update
    • potential new token mint
    • potential token bootstrap flow

v0.5.7

  • candidate layer introduced
  • first domain candidates:
    • token account candidate
    • mint candidate
    • bootstrap flow candidate
  • listener maximum tick count made configurable

v0.5.8

  • in-memory session candidate tracker
  • session-local deduplication
  • lightweight score and confidence
  • per-session candidate upsert flow

v0.5.9

  • session candidate snapshots
  • sorted candidate summaries
  • confidence-based filtering
  • end-of-session summary logs

Current status summary

At the current stage, the project can already:

  • connect to Solana HTTP RPC,
  • connect to Solana WebSocket RPC,
  • subscribe to slot/logs/program streams,
  • store raw HTTP and WS payloads,
  • normalize notifications,
  • derive domain events,
  • classify known programs,
  • emit heuristic signals,
  • enrich accounts with getAccountInfo,
  • confirm token-account-like activity,
  • correlate signals,
  • track session candidates in memory,
  • summarize candidates at the end of a run.

What is still missing is the transition from generic token activity detection to true:

  • mint detection,
  • token bootstrap detection,
  • pool/pair detection,
  • DEX-aware activity detection,
  • persistent candidate storage,
  • pattern analysis,
  • trading integration.

Planned versions

Planned versions are provisional and may change.

v0.6.0

  • persist session candidates to SQLite
  • add dedicated candidate table(s)
  • persist summary-worthy candidates at end of listener session
  • create base persistence model reusable by analyser and trader

v0.6.1

  • refactor WebSocket client into an autonomous async source runtime
  • introduce command/event channel model
  • separate WS transport orchestration from listener business logic

v0.6.2

  • support multiple concurrent WS source clients
  • allow different endpoints/providers simultaneously
  • introduce source identity and source metadata
  • prepare failover / redundancy / specialization by source

v0.6.3

  • introduce Yellowstone gRPC source runtime
  • normalize WS + gRPC source events into a shared event model
  • compare and reconcile overlapping data streams

v0.6.4

  • introduce source aggregation hub
  • merge multi-source events into a unified ingestion pipeline
  • prepare source-level prioritization and deduplication

v0.7.0

  • improve token-account vs mint distinction
  • decode more token-specific account information
  • improve quality of confirmed mint detection
  • reduce weak false candidate generation

v0.7.1

  • introduce first persistent mint candidates
  • introduce first persistent token-account candidates
  • session-to-database promotion logic

v0.7.2

  • begin real bootstrap flow persistence and tracking
  • correlate:
    • token accounts
    • mint accounts
    • bootstrap-like logs
    • source timing

v0.8.0

  • begin DEX-aware detection layer
  • identify relevant program ids for first supported DEXes
  • start with a small prioritized list, likely including:
    • Raydium
    • Meteora
    • Pump-like ecosystems
  • detect pool/pair creation-related activity

v0.8.1

  • add first pair / pool candidate models
  • begin liquidity/bootstrap/pair-side inference
  • distinguish token-only activity from pair/pool activity

v0.8.2

  • add market-related enrichment:
    • liquidity hints
    • price hints
    • pool metadata
  • start preparing listener outputs for trading eligibility

v0.9.0

  • begin khbb_pattern_analyser_app
  • consume persisted candidates/signals from listener
  • define first recurring pattern models:
    • mint lifetime
    • suspicious bootstrap
    • likely scam patterns
    • repeated naming patterns
    • repeated creator behavior

v0.9.1

  • pattern scoring
  • candidate clustering
  • repeated-behavior analysis across sessions

v1.0.0

  • first end-to-end listener milestone
  • persistent candidate ingestion
  • multi-source ingestion foundations
  • DEX-aware first detection
  • pattern analyser initial interoperability

Future trader-oriented roadmap

Trader preparation

  • define normalized outputs consumable by khbb_trader_app
  • define candidate confidence / risk / eligibility model
  • define basic token entry exclusion filters
  • define liquidity / market-cap / bootstrap safety gates

Early trading versions

  • paper-trading mode first
  • wallet integration
  • transaction builder integration
  • buy/sell strategy primitives
  • time-based and price-based exits
  • risk caps and kill switches

Cross-cutting technical TODO

Transport / source runtime

  • move away from single inline WS runtime model
  • introduce autonomous async WS source tasks
  • add multi-WS support
  • add gRPC source runtime
  • unify source event interface

Storage

  • persist session candidates
  • define candidate history tables
  • define mint/pool/pair tables
  • define source tables / provider metadata tables

Classification / heuristics

  • reduce weak token-account/mint ambiguity
  • improve ATA detection
  • refine bootstrap-flow detection
  • correlate logs with program/account enrichment more strongly

DEX support

  • define first supported DEX list
  • list official program ids and account models
  • detect pair creation events
  • detect liquidity initialization
  • enrich pool metadata

Pattern analysis

  • define persistent pattern schema
  • score repeated token behaviors
  • score suspicious creators / repeated rugs / short lifetimes

Trading

  • define trader input schema
  • define safe simulation mode
  • define buy filters
  • define sell rules
  • define risk management rules

Notes

  • Current versions intentionally favored iterative validation over final architecture purity.
  • The current listener runtime is considered a stepping stone, not the final source-runtime model.
  • Candidate/correlation layers may continue to evolve before stabilizing.
  • Future versions may be renumbered, merged, split, or reprioritized depending on what real Solana traffic reveals.