v0.1.0-pre.060
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: KHADHROONY_BOT3_MIGRATION_CLOSURE_TODO.md -->
|
||||
<!-- version: 8 -->
|
||||
<!-- version: 9 -->
|
||||
|
||||
# Checklist détaillée de clôture de la migration `khadhroony-bot3`
|
||||
|
||||
@@ -105,15 +105,16 @@
|
||||
|
||||
- [x] Garder Program ID librement éditable.
|
||||
- [x] Ajouter un autocomplétion non bloquant depuis le registre public `kb-program-ids`.
|
||||
- [ ] Ajouter le même autocomplétion Program ID au filtre « programme déjà indexé » d’Extraction core.
|
||||
- [ ] Ajouter ultérieurement les autocomplétions Token et Pool lorsque leurs tables de référence existeront.
|
||||
|
||||
### 2.4 Journaux généraux et viewers
|
||||
|
||||
- [x] Vérifier Backfill HTTP en runtime.
|
||||
- [ ] Vérifier Extraction core en runtime après correction du gabarit pleine largeur.
|
||||
- [x] Vérifier Extraction core en runtime après correction du gabarit pleine largeur.
|
||||
- [ ] Vérifier Exécution Solana Core.
|
||||
- [ ] Vérifier Exécution SPL.
|
||||
- [ ] Vérifier Decode replay.
|
||||
- [x] Vérifier Decode replay en runtime et conserver les échecs Loader/Metaplex comme anomalies fonctionnelles à corriger.
|
||||
- [x] Vérifier HTTP en runtime.
|
||||
- [x] Vérifier WebSocket en runtime.
|
||||
- [x] Placer les paramètres d’Extraction core dans les accordéons.
|
||||
@@ -125,6 +126,12 @@
|
||||
|
||||
### 2.5 Fenêtres SQL
|
||||
|
||||
- [x] Relever temporairement le plafond de résultats de 5 000 à 100 000 pour les campagnes de migration.
|
||||
- [ ] Ajouter ultérieurement une pagination SQL/IPC serveur avant les volumes massifs.
|
||||
- [x] Écrire les CSV dans `<workspace>/data/exports_csv`, indépendamment du répertoire courant Tauri.
|
||||
- [ ] Corriger la valeur de repli TypeScript `maximumReplayCandidateLimit = 5_000` vers `100_000`.
|
||||
- [x] Valider qu’un export produit `data/exports_csv/replay_transactions.csv`.
|
||||
|
||||
- [ ] Mettre toutes les fenêtres SQL, sauf Replay Candidates, sur une seule colonne pleine largeur.
|
||||
- [ ] Mettre les tables sur toute la largeur.
|
||||
- [ ] Limiter le scroll horizontal au wrapper de table.
|
||||
@@ -210,7 +217,7 @@
|
||||
- [x] Charger et valider la configuration.
|
||||
- [x] Initialiser le logging.
|
||||
- [x] Initialiser le pool HTTP.
|
||||
- [ ] Se connecter à PostgreSQL.
|
||||
- [x] Se connecter à PostgreSQL et confirmer la disponibilité du profil `mainnet_research`.
|
||||
- [x] Appeler `initialize_postgres_schema_for_startup` après disponibilité du frontend splash.
|
||||
- [x] Appeler `emit_sql_startup_table_report`.
|
||||
- [x] Relier `emit_sql_startup_error`.
|
||||
@@ -221,27 +228,39 @@
|
||||
- [x] Rendre les zones du splash scrollables sans afficher leurs barres de défilement.
|
||||
- [x] Garder automatiquement le dernier log et le dernier message visibles.
|
||||
- [x] Afficher connexion, schéma, nombre de tables, tables manquantes et statut final.
|
||||
- [ ] Valider visuellement le fade-in, les messages intermédiaires, le fade-out et l’ouverture de `main` sur le workspace réel.
|
||||
- [ ] Supprimer l’écrasement artificiel de `auto_initialize_schema` à `false` dans le chemin du splash et respecter la valeur du profil actif.
|
||||
- [x] Valider visuellement les messages intermédiaires, l’ouverture de `main`, l’absence de scrollbar visible et l’auto-scroll ; conserver le fade CSS Tauri/Linux comme limitation visuelle non bloquante.
|
||||
|
||||
## 8. Purge contrôlée des données dérivées
|
||||
|
||||
- [ ] Inventorier les tables via `kb-store`.
|
||||
- [ ] Classer chaque table en raw, nécessaire au replay, dérivée ou ambiguë.
|
||||
- [ ] Bloquer la purge tant qu’une table reste ambiguë.
|
||||
- [ ] Créer un script SQL versionné et idempotent.
|
||||
- [ ] Conserver transactions, signatures et payloads RPC raw.
|
||||
- [ ] Conserver toutes les données nécessaires à l’extraction et au replay.
|
||||
- [ ] Purger core dérivé, décodage, observations, coverage, diagnostics et états de replay dérivés.
|
||||
- [ ] Purger annotations, événements matérialisés, token accounts, lifecycle, admin, fees, risk, compliance et staking dérivés.
|
||||
- [ ] Exécuter la purge dans une transaction.
|
||||
- [ ] Ajouter des vérifications avant/après.
|
||||
- [ ] Documenter précisément les tables conservées.
|
||||
- [ ] Relancer l’extraction core.
|
||||
- [x] Inventorier les tables via les migrations `kb-store` 0001 à 0004.
|
||||
- [x] Classer `kb_sol_raw_transactions` et `kb_sol_obs_transaction_observations` comme acquisition raw ; classer core, ledger, decode, coverage et matérialisation comme dérivés reconstructibles.
|
||||
- [x] Confirmer qu’aucune table actuellement définie par `kb-store` ne reste ambiguë pour cette reconstruction.
|
||||
- [x] Confirmer que le schéma courant est initialisé par les listes SQL idempotentes de `kb-store` et non par une table `_sqlx_migrations` active.
|
||||
- [ ] Corriger `kb-store/maintenance/reset_derived_store_keep_raw.sql` pour conserver explicitement les deux tables d’acquisition et utiliser une stratégie `TRUNCATE ... RESTART IDENTITY` pour les tables dérivées.
|
||||
- [x] Conserver `kb_sol_raw_transactions` avec 4 574 transactions et remettre tous les `processing_state` à `received`.
|
||||
- [ ] Restaurer ou accepter explicitement la perte des anciennes lignes de `kb_sol_obs_transaction_observations` supprimées pendant la reconstruction manuelle.
|
||||
- [x] Recréer manuellement toutes les tables manquantes depuis les scripts SQL de `kb-store`.
|
||||
- [x] Vérifier avant reprise que toutes les tables Core contiennent zéro ligne.
|
||||
- [x] Vérifier avant reprise que `kb_sol_ops_processing_ledger` est vide.
|
||||
- [x] Vérifier avant reprise que les 4 574 raws sont sélectionnables avec l’état `received`.
|
||||
- [x] Purger les tables core, ledger, decode, coverage et matérialisation dérivées.
|
||||
- [x] Encadrer la reconstruction manuelle par une démarche contrôlée sans toucher aux transactions raw.
|
||||
- [x] Ajouter des vérifications avant reprise : compteurs raw, Core et ledger.
|
||||
- [ ] Documenter précisément les tables conservées et la politique de reconstruction dans `kb-store/maintenance/README.md`.
|
||||
- [ ] Relancer l’extraction core sur les 4 574 raws.
|
||||
- [ ] Relancer tous les décodeurs.
|
||||
- [ ] Relancer la matérialisation.
|
||||
- [ ] Valider les compteurs et erreurs.
|
||||
- [ ] Contrôler la reconstruction de chaque projection attendue.
|
||||
|
||||
### 8.1 Anomalies observées avant reconstruction
|
||||
|
||||
- [ ] Auditer les instructions Loader immuables/v4 d’un octet qui échouent actuellement comme `*_tag_truncated`, notamment lorsque la transaction porte `UnsupportedProgramId`.
|
||||
- [ ] Décider, signature réelle à l’appui, si ces formes doivent être `Unsupported`/`Ignored` plutôt que `Failed`.
|
||||
- [ ] Auditer les flags signer/writable Metaplex réels avant d’assouplir les contrats de comptes.
|
||||
- [ ] Comparer les signatures Metaplex en échec avec Bot2 `0.4.7-pre.035` et le contrat officiel.
|
||||
|
||||
## 9. Jalon fonctionnel Bot2 `0.4.6`
|
||||
|
||||
- [ ] Solana Core équivalent et validé.
|
||||
@@ -345,7 +364,7 @@
|
||||
- [x] `cargo check --workspace`.
|
||||
- [ ] `cargo test --workspace`.
|
||||
- [x] `python3 scripts/audit_rust_workspace_rules.py` après `pre.058-fix-002`.
|
||||
- [ ] `cargo tauri dev -c kb-app-demo-desktop/tauri.conf.json`.
|
||||
- [x] `cargo tauri dev -c kb-app-demo-desktop/tauri.conf.json` : démarrage, splash, PostgreSQL, fenêtres et export CSV validés.
|
||||
- [ ] `cargo clippy --all-targets` en dernier.
|
||||
|
||||
## 16. Critères de clôture
|
||||
|
||||
Reference in New Issue
Block a user