v0.2.7-pre.014-fix.001
This commit is contained in:
279
deltas/0.2.7/pre.014-fix.001.md
Normal file
279
deltas/0.2.7/pre.014-fix.001.md
Normal file
@@ -0,0 +1,279 @@
|
||||
<!-- file: deltas/0.2.7/pre.014-fix.001.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta `0.2.7-pre.014-fix.001` — complétude du prompt de démarrage `0.2.8`
|
||||
|
||||
## 1. Base requise
|
||||
|
||||
Base directe attendue :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```text
|
||||
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** :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```text
|
||||
workspace.package.version = 0.2.7-pre.14
|
||||
```
|
||||
|
||||
Le prompt modifié incrémente son header :
|
||||
|
||||
```text
|
||||
prompts/013-V0_2_8_START_PROMPT.md
|
||||
version: 1 -> 2
|
||||
```
|
||||
|
||||
## 3. Diagnostic
|
||||
|
||||
Le prompt produit par `pre.014` contenait déjà une section :
|
||||
|
||||
```text
|
||||
## 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 :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```text
|
||||
le sizing avant implémentation
|
||||
le budget nominal d'environ 15–20 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 :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```bash
|
||||
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 :
|
||||
|
||||
```text
|
||||
objectif précis
|
||||
principaux contrats/fichiers attendus
|
||||
preuves/tests/gates attendus
|
||||
budget nominal <= environ 15–20 minutes
|
||||
critères de split
|
||||
```
|
||||
|
||||
Le forecast initial passe de sept prereleases très agrégées à onze tranches nominales :
|
||||
|
||||
```text
|
||||
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** :
|
||||
|
||||
```text
|
||||
pre.001 doit le recalibrer
|
||||
une tranche > 15–20 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 :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```text
|
||||
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é :
|
||||
|
||||
```text
|
||||
prompts/013-V0_2_8_START_PROMPT.md
|
||||
```
|
||||
|
||||
Ajouté :
|
||||
|
||||
```text
|
||||
deltas/0.2.7/pre.014-fix.001.md
|
||||
```
|
||||
|
||||
Volontairement inchangés :
|
||||
|
||||
```text
|
||||
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` :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```bash
|
||||
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 :
|
||||
|
||||
```bash
|
||||
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` :
|
||||
|
||||
```text
|
||||
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 :
|
||||
|
||||
```text
|
||||
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.
|
||||
Reference in New Issue
Block a user