Files
khadhroony-solana-project/deltas/0.2.7/pre.014-fix.001.md

7.5 KiB
Raw Permalink Blame History

Delta 0.2.7-pre.014-fix.001 — complétude du prompt de démarrage 0.2.8

1. Base requise

Base directe attendue :

0.2.7-pre.014
workspace.package.version = 0.2.7-pre.14

Ce correctif intervient avant 0.2.7-rel.001 et corrige uniquement le prompt de reprise de la release suivante.

La livraison est :

0.2.7-pre.014-fix.001
commit = v0.2.7-pre.014-fix.001
tag    = aucun

2. Nature du fix et signal Cargo

Le fix est strictement documentaire :

aucun fichier Rust
aucun Cargo.toml
aucune configuration runtime
aucun schema
aucune dépendance
aucun comportement HTTP/WebSocket

Conformément à VERSION_WORKFLOW.md, la version Cargo de la base directe est conservée :

workspace.package.version = 0.2.7-pre.14

Le prompt modifié incrémente son header :

prompts/013-V0_2_8_START_PROMPT.md
version: 1 -> 2

3. Diagnostic

Le prompt produit par pre.014 contenait déjà une section :

## 12. Prévision souple initiale des prereleases

avec un forecast nominal pre.001 -> pre.007.

Le défaut n'est donc pas l'absence littérale du forecast, mais sa granularité et son niveau de prescription insuffisants par rapport :

docs/rules/PROMPT_STRUCTURE.md
aux prompts de démarrage récents
au mode de travail réellement appliqué pendant 0.2.7

Le 0.2.7-pre.001 avait notamment recalibré son forecast jusqu'à pre.014 et rendu explicites :

le sizing avant implémentation
le budget nominal d'environ 1520 minutes par tranche
la possibilité de scinder toute tranche trop large
l'insertion libre de fixes
le fait que le dernier numéro prévu n'est jamais une deadline

Le prompt 0.2.8 regroupait encore trop de responsabilités dans pre.002 à pre.007, ce qui pouvait faire perdre cette discipline au démarrage de la nouvelle session.

4. Renforcement de la structure du prompt

Le prompt 0.2.8 version 2 renforce la reprise stable :

  • interdit explicitement l'ouverture depuis une prerelease 0.2.7-pre.* ou un ZIP intermédiaire ;
  • conserve l'archive stable v0.2.7 fournie par l'opérateur comme première autorité ;
  • exige la vérification du signal Cargo stable et du delta rel.001.

L'ordre de lecture est complété avec :

docs/architecture/010-APPS_SERVICES_SCENARIOS_AND_CONTROL.md
docs/validation/005-V0_2_3_KSP_TRANSPORT_007_RETRO_AUDIT.md
docs/IDEAS.md
.env.example

Ces ajouts servent respectivement à préserver :

les frontières app/service/smoke
la règle KSP-TRANSPORT-007
les travaux explicitement différés, dont le metering
la discipline d'inventaire Config/env pour les futurs credentials Helius

5. Baseline pre.001 rendue explicite

Le gate d'ouverture doit désormais enregistrer avant modification, lorsque l'environnement le permet :

cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
cargo check --workspace
cargo clippy --workspace --all-targets
cargo tree -p ksp-onchain-transport-lib
cargo tree -p ksp-onchain-transport-lib --duplicates

Une commande indisponible ou non exécutée ne peut jamais être déclarée verte.

Le résultat de cette baseline doit vivre dans le plan/delta pre.001, comme cela a été pratiqué pendant 0.2.7.

6. Sizing et forecast corrigés

pre.001 doit désormais produire pour chaque tranche prévue :

objectif précis
principaux contrats/fichiers attendus
preuves/tests/gates attendus
budget nominal <= environ 1520 minutes
critères de split

Le forecast initial passe de sept prereleases très agrégées à onze tranches nominales :

pre.001  audit + matrice + architecture + threat model + dependencies + sizing
pre.002  provider/protocol settings + capability model + secrets/redaction
pre.003  Config V2 provider + mapping Config -> Transport
pre.004  transactionSubscribe/unsubscribe params/filters/options
pre.005  transaction notifications + reconnect/resubscribe/races
pre.006  account/program extensions Helius retenues
pre.007  heartbeat/idle + lifecycle/shutdown
pre.008  capability failures + limits/backpressure/adversarial
pre.009  compliance provider + non-régressions 18/18 et 52/14
pre.010  smoke live sûr + dependency audit + README/USAGE
pre.011  workspace final + docs/matrice/indexes + prompt 0.2.9
rel.001  publication stable

Chaque ligne du prompt contient maintenant également la preuve/gate principal attendu.

Ce forecast reste souple :

pre.001 doit le recalibrer
une tranche > 1520 min doit normalement être scindée
des tranches peuvent être fusionnées si l'audit réduit réellement la surface
des fixes peuvent être insérés librement
pre.011 n'est pas une deadline
aucun numéro de prerelease ne vaut critère de clôture

7. Versionnement et archives d'échange

Le prompt précise maintenant les noms usuels :

ksp-general-0.2.8-pre.001.zip
ksp-general-0.2.8-pre.NNN-fix.MMM.zip
ksp-general-0.2.8-rel.001.zip

L'overlay reste minimal et conserve les chemins depuis la racine du workspace.

8. Critères de clôture renforcés

La clôture 0.2.8 reste pilotée par les gates fonctionnels et de compliance, jamais par le forecast.

Le prompt précise désormais :

si les gates ne sont pas verts à pre.011 -> continuer avec pre.012+ ou fixes
forecast réalisé ou explicitement recalibré sans dette silencieuse
rel.001 seulement après fermeture réelle de la matrice et du workspace

9. Fichiers

Modifié :

prompts/013-V0_2_8_START_PROMPT.md

Ajouté :

deltas/0.2.7/pre.014-fix.001.md

Volontairement inchangés :

Cargo.toml
ROADMAP.md
CHANGELOG.md
docs/plans/014-V0_2_7_ONCHAIN_WEBSOCKET_PLAN.md
docs/validation/010-V0_2_7_ONCHAIN_WEBSOCKET.md
prompts/000-README.md
crates/**
config/**

Le delta pre.014.md publié n'est jamais réécrit.

10. Runtime / API

Aucun contrat runtime ne change.

Les acquis restent exactement ceux de pre.014 :

HTTP 52 current + 14 historical
WebSocket Solana standard 18/18
WsSession/WsSubscription lifecycle inchangé
Config V2 inchangé
dependency graph inchangé
comptages de tests inchangés

11. Validation opérateur

Le fix n'introduit aucun Rust ni aucune configuration exécutable.

Contrôle documentaire minimal :

python3 scripts/audit_rust_workspace_rules.py

Comme cette livraison devient la base directe de rel.001, il est recommandé de rejouer le gate final complet avant clôture :

cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-onchain-transport-lib
cargo test --workspace

Comptages attendus inchangés par rapport à pre.014 :

Transport unit tests            = 309
Transport public API tests      = 36
Transport release completeness  = 24
Transport WebSocket live smoke  = 1 ignored par défaut
Config unit tests               = 109
Core workspace dependency tests = 3

Aucun smoke live ni cargo tree supplémentaire n'est requis par ce fix documentaire si la base appliquée est exactement pre.014 et que le graphe n'a pas changé.

12. Suite

Si 0.2.7-pre.014-fix.001 est appliqué et le gate final reste vert, la suite est :

0.2.7-rel.001
Cargo = 0.2.7
commit = v0.2.7-rel.001
tag stable = v0.2.7

rel.001 devra publier la synthèse stable, fermer le statut du plan/matrice et conserver prompts/013-V0_2_8_START_PROMPT.md version 2 comme prompt autoritaire de la session suivante.