Files
khadhroony-solana-project/docs/plans/001-V0_0_3_PLAN.md
2026-08-14 00:03:57 +02:00

5.0 KiB

Plan KSP 0.0.3

Mission

Poursuivre la phase fondatrice sans développement fonctionnel afin de transformer le brainstorming KSP en architecture, règles, nomenclature et plan de développement suffisamment précis pour ouvrir 0.1.x.

Décisions structurantes acquises

  • Les bibliothèques d'implémentation utilisent ksp-<role>-lib.
  • Les crates de contrats publics extensibles utilisent ksp-<domain>-api, sans suffixe -lib.
  • Éviter un ksp-api-lib monolithique.
  • Couples API/implémentation retenus : program, materializer, store.
  • ksp-store-lib contient PostgreSQL comme implémentation de référence de ksp-store-api.
  • Les workers continus utilisent ksp-worker-api.
  • Les jobs à la demande utilisent ksp-job-api.
  • Workers et jobs ne partagent pas une abstraction de lifecycle commune.
  • W1 est strictement raw live/quasi-live et ne fait pas de backfill.
  • Le backfill historique est un job séparé, candidat ksp-job-backfill.
  • D'autres jobs pourront exister pour metadata, quotes et autres tâches ponctuelles.
  • Les notifications de données sont normalisées indépendamment de leur producteur ; ksp-store-api est le propriétaire candidat des notifications de données persistées.
  • ksp-worker-control-lib est le candidat pour une implémentation commune de contrôle des workers uniquement.
  • Aucun ksp-pipeline-lib monolithique ; pipelines séparés à la demande.
  • Aucun ksp-scenarios-lib monolithique ; scénarios séparés par crates de domaine.
  • Trading Intelligence précède la couche/application de trading opérationnelle.

Ligne directrice du développement fonctionnel

  • 0.1.xksp-core-lib, ksp-logging-lib, ksp-config-lib, ksp-app-config-desk.
  • 0.2.xksp-onchain-transport-lib, wallet, ksp-interface-lib, ksp-program-api, ksp-program-lib.
  • 0.3.xksp-materializer-api, ksp-materializer-lib, ksp-store-api, ksp-store-lib, W1, ksp-worker-api, ksp-job-api, backfill.
  • 0.4.x — premières surfaces Core/SPL/metadata, matérialisations, off-chain transport selon besoin, jobs/scénarios/demos spécialisés.
  • 0.5.x — Anchor puis protocoles trading par releases bornées.
  • 0.6.x — W2, contrôle workers, managers, orchestrateur et application globale.
  • 0.7.x — Trading Intelligence.
  • 0.8.x+ — couche/application trading, extension continue, explorer Solana et explorer/analyse DEX.

Prévision souple des prereleases 0.0.3

pre.001 — Base de planification

Considérée stabilisée après les fixes de cadrage.

pre.002 — Domaines et crates candidates

  • inventorier les domaines fonctionnels ;
  • fixer les couples *-api / *-lib réellement justifiés ;
  • définir workers vs jobs ;
  • définir les responsabilités des notifications de données ;
  • inventorier les scénarios/pipelines spécialisés ;
  • définir pour chaque crate candidate responsabilité, niveau, entrées/sorties et consommateurs ;
  • mettre à jour le brouillon de prompt 0.1.x.

pre.003 — Graphe de dépendances

  • construire le graphe de dépendances autorisées/interdites ;
  • identifier les propriétaires des dépendances Solana externes ;
  • vérifier les risques de cycles ;
  • positionner précisément les crates *-api ;
  • préciser les dépendances autorisées de ksp-program-api, ksp-materializer-api, ksp-store-api, ksp-worker-api et ksp-job-api.

pre.004 — Programmes, décodage et exécution

  • détailler ksp-program-api et ksp-program-lib ;
  • définir les interfaces wire et leur source de vérité ;
  • cadrer les tests de conformité ;
  • définir le niveau supérieur propriétaire de la sécurité d'exécution ;
  • traiter Metaplex/ElGamal comme exemples architecturaux sans développement fonctionnel.

pre.005 — Données, storage et acquisitions

  • détailler ksp-materializer-api / ksp-materializer-lib ;
  • détailler ksp-store-api / ksp-store-lib ;
  • finaliser W1, ksp-worker-api et ses notifications de données ;
  • détailler ksp-job-api et le backfill ;
  • cadrer W2 sans l'implémenter ;
  • définir les frontières backend et replay/reconstruction.

pre.006 — Applications, workers, jobs, demos et scénarios

  • formaliser config/store/wallet apps ;
  • finaliser la nomenclature réseau/environnement ;
  • détailler les crates de scénarios spécialisées ;
  • détailler managers workers/jobs et trajectoire vers l'orchestrateur ;
  • inventorier les pipelines spécialisés nécessaires sans crate pipeline monolithique.

pre.007 — Plan de développement et contrôle de charge

  • affiner le roadmap fonctionnel 0.1.x+ ;
  • détailler le premier plan 0.1.x ;
  • transformer le brouillon de prompt en quasi-version finale ;
  • vérifier et redécouper la charge de la session suivante si nécessaire.

pre.008 — Clôture fondatrice

  • vérifier la cohérence règles/architecture/plans ;
  • mettre à jour la documentation finale ;
  • nettoyer/archiver les éléments temporaires ;
  • finaliser le prompt de reprise 0.1.x.