Files
khadhroony-bot3/ks-pipeline/CHANGELOG.md
2026-08-12 14:31:48 +02:00

10 KiB
Raw Permalink Blame History

CHANGELOG — ks-pipeline

0.5.3-pre.004

  • ajoute lorchestrateur générique account_state_normalization pour le replay N1 observation de compte -> N2 état Core, avec identité/version de normalizer, input hash, force replay et persistance déchec bornée ;
  • force la sélection effective à inclure les inputs déjà courants uniquement lorsquun force replay est explicitement demandé ;
  • borne les campagnes Core extraction et decode à 1 000 entrées conformément aux nouveaux contrats de processing ks-store ;
  • consomme le replay Core top-level+CPI et ses contrats cursorisés sans introduire de sémantique Anchor/IDL dans le pipeline générique.

0.5.3-pre.003

  • corrige le premier delta pre.003 en utilisant le nom canonique exporté MdCanonicalInnerInstructionGroup pour la reconstruction des chemins CPI.
  • aligne Core extraction sur le nouveau baseline ks-store : conservation de block_time, stack_height, returnData et persistance du contexte N2 nécessaire au replay ;
  • reconstruit les chemins CPI imbriqués à partir de stackHeight lorsque l'information est disponible et conserve un fallback déterministe vers la top-level lorsque Solana ne fournit pas cette hauteur ;
  • enrichit les inputs N2 -> N3 avec le contexte Core v3 sans modifier le dispatch fonctionnel des décodeurs actuels ;
  • adapte les lectures de matérialisation au contrat MaterializedOutput* renommé avec k_sol_mat_outputs.

0.5.1-pre.006

  • déplace ses fixtures de configuration vers le contrat runtime résolu sous test-fixtures/config/ ;
  • ne modifie aucune orchestration ou qualification réseau.

0.5.1-pre.005

  • aligne les tests de configuration sur le nouveau document général config/app.config.json après extraction du logging ;
  • ne modifie aucune orchestration ou qualification réseau.

0.5.1-pre.004

  • migre les variables des tests Devnet SPL Token vers le namespace interne KS_* ;
  • ne modifie aucune orchestration, opération, simulation ou postcondition.

0.5.1-pre.003

  • aligne les tests d'orchestration sur les nouvelles identités d'exécuteurs ks-lib-executor.* ;
  • ne modifie aucune logique d'exécution, simulation, soumission ou postcondition.

0.5.1-pre.002

  • renomme kb-pipeline en ks-pipeline et kb_pipeline en ks_pipeline ;
  • aligne son target racine de tracing et les descripteurs de crate directement liés au package ;
  • conserve les identités d'exécuteurs/décodeurs kb-lib.* jusqu'à pre.003.

0.4.8-pre.015

  • pre.015-delta-fix-001 retire du TODO les validations Solana Program Metadata déjà closes par le replay mainnet pre.008, la campagne Devnet pre.010 et le desktop pre.014, ainsi que la dette Metaplex Print/Burn/collection/pNFT fermée en pre.013 ;
  • le delta initial ajoute un test dAPI externe dédié à Token-2022 Token Metadata afin de vérifier les exports crate-root des lectures stateful, de la validation de plage Emit, de linspection du returnData et de la postcondition dautorité ;
  • ne modifie aucun contrat dexécution ou de stockage.

0.4.8-pre.013

  • pre.013-delta-fix-031 expose MetaplexTokenMetadataAccountKind::TokenOwnedEscrow dans les lectures stateful et réutilise le décodeur strict déjà présent dans ks-lib, y compris validation du propriétaire, du discriminant, du PDA dautorité et du bump ;
  • ajoute une régression de projection canonique pour un escrow TokenOwner et conserve base_token, authority_kind, creator et stored_bump comme postconditions queryables.
  • pre.013-delta-fix-030 conserve les simulations Metaplex exactes échouées comme résultats observables lorsque submit=false, afin que les probes de disponibilité puissent classifier un refus runtime sans le transformer en erreur d'orchestration ;
  • maintient une barrière stricte pour toute soumission : submit=true exige toujours simulation_succeeded=true, et une simulation négative ne peut jamais produire send_authorized=true ;
  • ajoute une régression dédiée au contrat « failed simulation reportable for probe only ».
  • pre.013-delta-fix-021 ajoute une régression stateful construisant un compte Edition compact de 42 octets et exige sa matérialisation autoritative, afin de couvrir directement lallocation produite par un Print courant ;
  • enrichit metaplex_stateful_decode_failed avec ladresse et le kind de la requête, sans affaiblir le refus des comptes invalides.
  • pre.013-delta-fix-020 réembarque explicitement le variant public MetaplexTokenMetadataAccountKind::EditionMarker { mint, edition } afin quun overlay incomplet de fix-019 ne puisse plus laisser le scénario Print -> Burn compiler contre un contrat stateful ancien ;
  • ajoute un test dAPI externe qui construit et sérialise une requête EditionMarker uniquement via les exports crate-root ;
  • valide également les pubkeys de dérivation mint et token directement dans MetaplexTokenMetadataStatefulReadRequest::validate.
  • pre.013-delta-fix-019 ajoute MetaplexTokenMetadataAccountKind::EditionMarker { mint, edition } aux lectures stateful afin de décoder et matérialiser explicitement EditionMarker/EditionMarkerV2 lors des campagnes déditions imprimées ;
  • la projection stateful conserve le groupe, lindex de bit, le masque, edition_taken, le ledger borné et le payload canonique sans inventer de sémantique de fermeture après burn.

0.4.8-pre.013 — borne stateful Metaplex

  • aligne MAX_METAPLEX_TOKEN_METADATA_ACCOUNT_BYTES sur ks_onchain_transport::MAX_COMPLETE_ACCOUNT_DATA_BYTES, soit 65536 octets pour une lecture complète getAccountInfo ;
  • valide la borne dans MetaplexTokenMetadataStatefulReadRequest avant la construction de la requête RPC ;
  • conserve séparées les bornes de décodage offline et la borne du transport d'exécution ;
  • ajoute une régression empêchant de réintroduire une limite stateful supérieure au contrat du transport.

0.4.8-pre.011 — validation Token-2022 Token Metadata

  • ajoute lextraction bornée du retour base64 produit par Emit ;
  • aligne la fixture de simulation Token-2022 sur le variant canonique ExApiExecutionBlockhashKind::Latest ;
  • refuse les plages Emit ouvertes avec start sans end, en cohérence avec le builder et la limite de retour Solana ;
  • décode uniquement un retour complet et conserve un retour partiel sans inventer un état ;
  • ajoute la postcondition stateful de changement ou suppression de lautorité metadata.

0.4.8-pre.010

  • remplace lassertion runtime sur la relation entre borne RPC et borne de décodage par une assertion const, afin de supprimer le dernier warning clippy::assertions_on_constants ;

  • borne les lectures complètes Solana Program Metadata au maximum réellement accepté par ladaptateur RPC, soit 65536 octets ;

  • conserve séparément la capacité du décodeur à valider des données plus grandes provenant de sources offline ou dun futur lecteur par tranches ;

  • ajoute un test empêchant de réaligner par erreur la borne stateful sur la limite de décodage de 10 MiB ;

0.4.8-pre.008 — orchestration Solana Program Metadata généraliste

  • ajoute les lectures de comptes Buffer et Metadata bornées, avec décodage et projection autoritative délégués à ks-lib ;
  • ajoute le préflight stateful des neuf opérations stables, les preuves de préfinancement rent et lévaluation commune par ExSafetyChecker ;
  • ajoute la readiness simulation-first, la résolution des signers et les postconditions confirmées sans transformer une absence de lecture en succès ;
  • publie la matrice METADATA_SOLANA_PROGRAM_PIPELINE_MATRIX.json et maintient une frontière stricte avec les fixtures et scénarios Devnet de ks-pipeline-demo-scenarios ;
  • renomme les modules internes selon la hiérarchie de domaine : metadata_* pour Metaplex et Solana Program Metadata, spl_* pour ATA, ElGamal Registry, Token et Token-2022, tout en conservant les fonctions publiques existantes ;
  • remplace les assertions runtime sur constantes du test dAPI externe par des assertions const, afin de rester propre sous Clippy.

0.4.7-pre.016 — clôture documentaire Metaplex

  • aligne la documentation du pipeline sur la qualification finale des preuves réseau ;
  • reporte les futures postconditions spécialisées sans introduire de branche Metaplex dans lorchestration généraliste.

0.4.7-pre.011 — réouverture des validations réseau

Documentation

  • réorganisation des quatre documents de crate ;
  • clarification que les campagnes Devnet appartiennent à ks-pipeline-demo-scenarios, tandis que ks-pipeline reste généraliste et indépendant des scénarios.

0.4.7-pre.007 — orchestration Metaplex généraliste

  • ajout des lectures stateful bornées, du préflight, de lorchestration simulation-first et des postconditions ;
  • correction de la rustdoc et ajout dexemples publics ;
  • ajout des diagnostics de dépréciation et de lapprobation opérateur.

0.4.6

  • alignement de la crate sur la version fonctionnelle bot3 0.4.6 ;
  • clôture des tâches de migration applicables et report explicite des évolutions ultérieures dans le TODO.

0.1.0-pre.074

  • suppression du blocant daudit générique après production de V0_4_6_ALIGNMENT_AUDIT.md, désormais archivé sous olddocs/archivekbot3/, aucun écart pipeline concret supplémentaire nayant été démontré ;

0.1.0-pre.073

0.1.0-pre.072

  • reclassement du TODO selon les blocants avant 0.4.6, les travaux 0.4.7, les versions ultérieures et les dépendances conditionnelles.

0.1.0-pre.070

  • enrichissement du USAGE.md avec plusieurs exemples couvrant les principales familles dAPI publiques ;
  • ajout du contrat documentaire de la crate ;
  • classement des APIs publiques par campagnes, replay et inspections stateful ;
  • clarification des invariants de déterminisme, bornage et matérialisation ;
  • inscription des travaux Metaplex et ElGamal restants dans le TODO.

0.1.0-pre.062

  • migration du pipeline bot2 dans larchitecture consolidée bot3 ;
  • reprise du backfill, de lextraction Core, du decode replay et des matérialisations ;
  • migration des préflights, corrélations et orchestrations Token-2022 ;
  • migration des contrats stateful SPL Token, ATA et registre ElGamal ;
  • adaptation aux normes Rust 2024 et Khadhroony bot3.