Files
khadhroony-solana-project/deltas/0.2.14/pre.001.md
2026-08-28 10:50:43 +02:00

5.9 KiB

Delta 0.2.14-pre.001 — audit Program API, héritage kbot3 et sizing

1. Base requise

Base directe attendue :

v0.2.13
workspace.package.version = 0.2.13

Sources obligatoires réellement disponibles à l'ouverture :

archive opérateur khadhroony-solana-project-v0.2.13.zip
archive historique khadhroony-bot3_v0.5.3-pre.005-fix010.zip

La metadata Git n'est pas incluse dans l'archive opérateur; le tag v0.2.13 ne peut donc pas être interrogé localement. La version Cargo, deltas/0.2.13/rel.001.md, le prompt 019 et la surface Interface publiée concordent avec la base stable attendue.

Commit attendu :

v0.2.14-pre.001

2. Objectif

Ouvrir 0.2.14 — Program API foundation uniquement par le gate prévu :

lecture règles + architecture
audit Core + Interface stables
audit historique kbot3 réel
matrice d'héritage
ownership
API candidate
threat/API model
dependency graph
stratégie de tests
sizing et prévision souple recalibrée

Aucun scaffold ksp-program-api, decoder concret, registry runtime ou execution preparer n'est ajouté dans cette livraison.

3. Décisions principales

Le scope est réduit à une foundation instruction-only :

ProgramInstructionRecognition
ProgramInstructionDecodeOutcome<Decoded>
ProgramInstructionDecoder avec associated output

Le candidat trait utilise :

&ProgramInstruction
&[Pubkey]
ksp_core_lib::Result
Send + Sync

L'output concret appartient à l'implémentation externe ou au futur ksp-program-lib.

Sont explicitement reportés :

payload canonique D3
registry runtime hétérogène
identity/version/coverage génériques
diagnostics/proofs Program dédiés
ProgramAccountDecoder / Event / ReturnData
ProgramExecutionPreparer

Le design n'ajoute aucune dépendance externe et ne requiert donc aucun audit web/Solana supplémentaire en pre.001.

4. Héritage kbot3

L'archive historique a été réellement extraite et les contrats prioritaires ont été relus.

Conclusions :

REPRENDRE    séparation recognition/decode, trait instruction, Send+Sync, préparation pure conceptuelle
REDESSINER   recognition, outcomes, execution capability/prepared plan
REPORTER     identity/version, coverage, diagnostics, proofs, replay context, decoded event, registry, preparer
REJETER      Program IDs/Pubkeys String, generic JSON payload, generic protocol monolith, executor, policy dans Program, ks-lib monolithique

Les decoders Solana Core, SPL Token et SPL Token-2022 confirment que l'ancien trait contextualisé dépendait réellement de signature/slot/path/transaction status/hash et JSON. Ces champs appartiennent aux futures couches CORE/DECODE et ne sont pas reconstruits dans Program API.

5. Sizing recalibré

Prévision active :

pre.001 audit/design/sizing
pre.002 scaffold + facade + dependency firewall
pre.003 recognition + outcome
pre.004 decoder trait + external implementation
pre.005 adversarial/API hardening + completeness
pre.006 gate technique final
pre.007 réconciliation documentaire
pre.008 préparation de publication minimale
rel.001 publication stable

Registry, canonical payload et execution preparation ne sont plus des tranches de 0.2.14.

6. Fichiers ajoutés

docs/plans/021-V0_2_14_PROGRAM_API_PLAN.md
docs/validation/017-V0_2_14_PROGRAM_API.md
deltas/0.2.14/pre.001.md

7. Fichiers modifiés

Cargo.toml
docs/plans/000-README.md
docs/validation/000-README.md

8. Fichiers supprimés

aucun

9. Version Cargo

La prerelease non-fix synchronise :

workspace.package.version = 0.2.14-pre.1

Aucune crate Program n'existe encore; le changement Cargo sert uniquement à identifier la tranche pre.001 conformément au workflow.

10. Validations exécutées pendant la préparation

Le journal opérateur fourni à l'ouverture sur la base stable v0.2.13 montre un baseline complet vert avant application de ce delta, notamment audits Rust/Markdown, cargo check --workspace, Clippy, tests ciblés des crates et cargo test --workspace. Cette preuve de base ne remplace pas le gate après application.

Dans l'environnement de génération du présent overlay, les contrôles statiques suivants ont été réellement exécutés après modification :

python3 scripts/audit_rust_workspace_rules.py
  General Rust rule audit: clean
  Rust export completeness audit: 0 candidate(s)
  KSP workspace Rust rule audit: clean

python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.2.14
  Markdown table audit: clean (170 tables, 116 files)

cargo n'est pas installé dans l'environnement de génération utilisé pour préparer l'archive. Les commandes Cargo de validation après application n'ont donc pas été rejouées ici et ne sont pas déclarées PASS.

11. Validations non requises dans cette tranche

cargo test -p ksp-program-api     crate encore absente
cargo tree -p ksp-program-api     crate encore absente
smokes réseau/live                hors scope d'une API déclarative

12. Questions ouvertes

Aucune question ne bloque le passage à pre.002.

Les sujets suivants restent ouverts volontairement pour des releases ultérieures, pas pour compléter 0.2.14 :

canonical DECODE/D3 payload
runtime registry / conflict policy / erased composition
processor identity/version durable
coverage descriptors
contextual proofs/diagnostics
ProgramExecutionPreparer exact

13. Application et validation opérateur

Après application de l'overlay :

cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.2.14
cargo check --workspace
cargo clippy --workspace --all-targets

Aucun développement fonctionnel Program ne doit être ajouté à ce delta.