102 lines
5.7 KiB
Markdown
102 lines
5.7 KiB
Markdown
<!-- file: kb-lib/CHANGELOG.md -->
|
||
<!-- version: 13 -->
|
||
|
||
# CHANGELOG — kb-lib
|
||
|
||
## 0.4.7-pre.006 — fermeture de l’exécuteur Metaplex
|
||
|
||
- fermeture des 35 opérations officiellement constructibles : 20 courantes et 15 dépréciées ;
|
||
- ajout des éditions historiques constructibles, use authority, escrow, mint, migrate, use, collect, print et resize ;
|
||
- conservation des 22 instructions remplacées en decode-only et de Bubblegum comme frontière externe ;
|
||
- construction des instructions restantes depuis le contrat IDL exact, avec comptes, signers, mutabilité et arguments Borsh officiels ;
|
||
- extension des tests unitaires d’intent, builder et capability ;
|
||
- fermeture de la matrice des 58 discriminants avant l’intégration pipeline.
|
||
|
||
## 0.4.7-pre.005 — programmable NFTs et délégations
|
||
|
||
- ajout des wrappers officiels `Burn`, `Delegate`, `Revoke`, `Lock`, `Unlock`, `Transfer` et `CloseAccounts` ;
|
||
- validation du couplage des comptes Token Authorization Rules et maintien de la simulation obligatoire ;
|
||
- exposition des codes d’opération, bindings TS-RS et capacités exactes correspondantes ;
|
||
- ajout de tests unitaires dans `intent.rs`, `builder.rs` et `executor.rs` ;
|
||
- maintien des versions remplacées en decode-only avec renvoi vers leur wrapper canonique.
|
||
|
||
## 0.4.7-pre.004 — collections, créateurs et autorités
|
||
|
||
- ajout des wrappers courants `Verify` et `Unverify` pour les créateurs et collections ;
|
||
- ajout de `SetCollectionSize` comme opération officiellement constructible mais dépréciée, soumise à approbation opérateur explicite ;
|
||
- validation des combinaisons de comptes creator/collection et des PDA collection metadata/master edition ;
|
||
- ajout des codes d’opération, exports publics, bindings et tests unitaires correspondants ;
|
||
- maintien des anciennes instructions de vérification remplacées en decode-only.
|
||
|
||
## 0.4.7-pre.003 — fondations de l’exécuteur Metaplex
|
||
|
||
### Correctif `0.4.7-pre.003-delta-fix-003`
|
||
|
||
- ajout de tests unitaires dans `intent.rs`, `builder.rs` et `executor.rs` pour la surface Metaplex introduite en `pre.003` ;
|
||
- vérification des codes d’opération, de la partition des opérations dépréciées, des politiques fail-closed, des PDA metadata/edition, du builder `PuffMetadata`, des capacités exactes et de la parité entre dispatch typé et générique.
|
||
|
||
### Correctif `0.4.7-pre.003-delta-fix-002`
|
||
|
||
- suppression de la dépendance directe inutile à `solana-program` dans le workspace et `kb-lib` ;
|
||
- utilisation des types modulaires `solana_instruction::Instruction` et `solana_pubkey::Pubkey` pour le contrat interne ;
|
||
- conversion locale des types de compatibilité retournés par `mpl-token-metadata 5.1.1`, sans exposer ni dépendre directement de `solana-program` ;
|
||
- suppression de tous les opérateurs `?` introduits par la surface Metaplex `pre.003` ;
|
||
- ajout des TODO de réaudit des exécuteurs Solana Core/SPL et de leur orchestration pipeline selon la nouvelle règle des opérations remplacées et obsolètes.
|
||
|
||
- remplacement de l’exécuteur réservé par une surface typée initiale ;
|
||
- builders courants `Create` et `UpdateAsUpdateAuthorityV2` fondés sur `mpl-token-metadata` ;
|
||
- validation des PDA metadata/edition, des signers autorisés, des comptes de rule set et des plafonds de coût ;
|
||
- simulation et dry-run obligatoires pour cette première tranche ;
|
||
- correction de la classification des instructions remplacées et obsolètes.
|
||
|
||
## 0.4.7-pre.002 — contrat Metaplex fermé
|
||
|
||
- classification exhaustive des 58 discriminants Metaplex Token Metadata ;
|
||
- comptes positionnels et signers importés de l’IDL archivée `V1_14_0` ;
|
||
- propriété unique des faits metadata, admin, lifecycle et risk/compliance ;
|
||
- exposition directe des créateurs, collection, uses, token standard et programmable config dans le snapshot metadata autoritatif ;
|
||
- tests contractuels d’exhaustivité, d’unicité et de séparation avec Token-2022.
|
||
|
||
## 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.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 de `USAGE.md` avec plusieurs exemples couvrant les familles d’API publiques significatives.
|
||
|
||
## 0.1.0-pre.069
|
||
|
||
### Documentation
|
||
|
||
- ajout de `README.md`, `TODO.md`, `USAGE.md` et du présent changelog selon les normes bot3 ;
|
||
- suppression de la section `Non publié`, incompatible avec le rôle chronologique du changelog ;
|
||
- retrait des limitations et travaux futurs du changelog ;
|
||
- correction de la frontière entre historique, TODO et limites durables d’utilisation ;
|
||
- réécriture de `TODO.md` sous forme de tâches uniquement ;
|
||
- correction des exemples de `USAGE.md` afin de ne pas utiliser l’opérateur `?`.
|
||
|
||
## 0.1.0
|
||
|
||
### Migré
|
||
|
||
- consolidation des modèles, décodeurs, exécuteurs et matérialisateurs issus de nombreuses crates bot2 dans une façade unique ;
|
||
- migration des surfaces Solana Core, SPL Memo, SPL Token, SPL ATA, Token-2022, registre ElGamal et du décodeur Metaplex Token Metadata ;
|
||
- migration des contrats de replay, de sécurité et de matérialisation.
|
||
|
||
### Modifié
|
||
|
||
- adoption de Rust 2024, de `#![forbid(unsafe_code)]`, `#![deny(unreachable_pub)]` et des conventions strictes d’exports, d’erreurs et de tracing ;
|
||
- remplacement des anciennes frontières de crates par des modules privés et des réexports publics contrôlés.
|
||
|
||
### Validation
|
||
|
||
- tests unitaires des décodeurs, exécuteurs, matérialisateurs et contrats consolidés ;
|
||
- matrices contractuelles chargées par les tests concernés ;
|
||
- validations Devnet conservées pour les scénarios explicitement couverts pendant la migration.
|