246 lines
7.8 KiB
Markdown
246 lines
7.8 KiB
Markdown
<!-- file: deltas/0.2.11/pre.013.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta `0.2.11-pre.013` — préparation de publication minimale
|
|
|
|
## 1. Base
|
|
|
|
```text
|
|
0.2.11-pre.012
|
|
```
|
|
|
|
Cette tranche est exclusivement le couloir de préparation de publication. Conformément à `docs/rules/PROMPT_STRUCTURE.md` et `docs/rules/FILE_CONTRACTS.md`, elle ne modifie aucun code fonctionnel, test, schema, Config, README, USAGE, plan, validation, architecture ou règle normative.
|
|
|
|
Le payload fonctionnel est limité à :
|
|
|
|
```text
|
|
prompt de démarrage 0.2.12
|
|
CHANGELOG.md
|
|
ROADMAP.md
|
|
```
|
|
|
|
avec les deux fichiers mécaniques autorisés :
|
|
|
|
```text
|
|
Cargo.toml
|
|
deltas/0.2.11/pre.013.md
|
|
```
|
|
|
|
## 2. Gate `pre.012`
|
|
|
|
Le gate opérateur `pre.012` du `2026-08-26` est entièrement vert :
|
|
|
|
```text
|
|
cargo fmt --all PASS
|
|
Rust workspace audit PASS / 0 export candidate
|
|
Markdown audit PASS / 127 tables / 122 files
|
|
cargo check --workspace PASS
|
|
cargo clippy --workspace --all-targets PASS
|
|
cargo test --workspace PASS
|
|
```
|
|
|
|
Les suites directement concernées conservent notamment :
|
|
|
|
```text
|
|
Off-chain Transport unit 58/58 PASS
|
|
Off-chain dependency boundary 6/6 PASS
|
|
Off-chain public API 7/7 PASS
|
|
Off-chain release completeness 2/2 PASS
|
|
Off-chain security hardening 3/3 PASS
|
|
Config unit 120/120 PASS
|
|
Config ownership 5/5 PASS
|
|
Config public API 16/16 PASS
|
|
```
|
|
|
|
Les smokes live restent `ignored` dans le workspace normal. Le re-smoke keyless `pre.011-fix.001` acquis avant la réconciliation documentaire reste la preuve live finale :
|
|
|
|
```text
|
|
7/7 providers keyless PASS
|
|
```
|
|
|
|
Le smoke keyed reste explicitement `SKIP opérateur` et n'est pas requalifié.
|
|
|
|
## 3. Version technique
|
|
|
|
```text
|
|
workspace.package.version = 0.2.11-pre.13
|
|
commit attendu = v0.2.11-pre.013
|
|
aucun tag prerelease
|
|
```
|
|
|
|
Le changement Cargo est mécanique ; aucune sémantique runtime ne change.
|
|
|
|
## 4. Relecture préalable au prompt `0.2.12`
|
|
|
|
Avant rédaction du prompt, les sources normatives ont été relues, notamment :
|
|
|
|
```text
|
|
docs/rules/PROMPT_STRUCTURE.md
|
|
docs/rules/VERSION_WORKFLOW.md
|
|
docs/rules/RULES_DOCUMENTATION.md
|
|
docs/rules/RULES_GENERAL.md
|
|
docs/rules/RULES_DEPENDENCIES.md
|
|
docs/rules/RULES_KSP.md
|
|
docs/rules/FILE_CONTRACTS.md
|
|
|
|
docs/architecture/000-README.md
|
|
docs/architecture/002-LAYERS_AND_DEPENDENCIES.md
|
|
docs/architecture/003-COMPONENT_CONTRACTS.md
|
|
docs/architecture/004-COMPONENT_INVENTORY.md
|
|
docs/architecture/005-DEPENDENCY_GRAPH.md
|
|
docs/architecture/009-ACQUISITION_WORKERS_AND_JOBS.md
|
|
docs/architecture/010-APPS_SERVICES_SCENARIOS_AND_CONTROL.md
|
|
```
|
|
|
|
La rédaction a aussi confronté :
|
|
|
|
```text
|
|
prompts/011-V0_2_6_START_PROMPT.md
|
|
prompts/015-V0_2_10_START_PROMPT.md
|
|
prompts/016-V0_2_11_START_PROMPT.md
|
|
|
|
docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md
|
|
docs/plans/018-V0_2_11_OFFCHAIN_PRICE_TRANSPORT_PLAN.md
|
|
docs/validation/014-V0_2_11_OFFCHAIN_PRICE_TRANSPORT.md
|
|
|
|
crates/ksp-offchain-transport-lib public API
|
|
ksp-config-lib Off-chain adapter/composite/packaging
|
|
ksp-app-config-desk gabarit Tauri actuel
|
|
ksp-app-wallet-desk composition/runtime actuel
|
|
```
|
|
|
|
Les sources officielles Tauri 2 actuelles sur configuration, sécurité et capabilities ainsi que la référence TS-RS sont inscrites dans le prompt comme sources externes à réauditer en `0.2.12-pre.001`. Aucune version historique n'est transformée en pin.
|
|
|
|
## 5. Prompt `0.2.12`
|
|
|
|
Ajout de :
|
|
|
|
```text
|
|
prompts/017-V0_2_12_START_PROMPT.md
|
|
```
|
|
|
|
Le prompt ouvre exclusivement :
|
|
|
|
```text
|
|
v0.2.11 -> 0.2.12-pre.001
|
|
```
|
|
|
|
Mission :
|
|
|
|
```text
|
|
1. créer ksp-app-solprices-desk comme HID provider-agnostic
|
|
2. valider inventory/price/availability/freshness + refresh single/many/all
|
|
3. intégrer ensuite la même capacité générique dans ksp-app-wallet-desk
|
|
4. ne dupliquer aucune récupération/normalisation provider dans les applications
|
|
```
|
|
|
|
Les décisions acquises sont reprises depuis l'architecture et la clôture `0.2.11` :
|
|
|
|
```text
|
|
SOL/USD V1 existant
|
|
8 providers sous Off-chain Transport
|
|
aucun provider concret hardcodé dans l'app
|
|
Config propriétaire des credentials
|
|
Off-chain Transport propriétaire des rate limits/cooldowns
|
|
provider_id opaque autorisé comme identifiant générique
|
|
ports SOL Prices Desk attendus 1434/1435
|
|
Tauri lancé crate-local
|
|
aucun fetch provider frontend
|
|
aucune API key/URL/header provider dans les DTOs
|
|
Wallet Desk réutilise MarketPriceService
|
|
```
|
|
|
|
Le prompt ne transforme pas les questions d'UI/composition encore ouvertes en décisions arbitraires. `pre.001` doit notamment trancher screen map, command/DTO map, composite dédié, ownership de l'état de présentation, UX refresh, capabilities Tauri, insertion Wallet Desk et stratégie de gate fonctionnel/live.
|
|
|
|
## 6. Prévision souple `0.2.12`
|
|
|
|
Le prompt fournit un forecast initial détaillé allant de l'audit/sizing au scaffold SOL Prices Desk, composition Config, table/refresh, stabilisation standalone, intégration Wallet Desk, hardening, puis trois couloirs distincts :
|
|
|
|
```text
|
|
gate technique/live final
|
|
réconciliation documentaire finale
|
|
préparation minimale de publication
|
|
```
|
|
|
|
Le forecast est explicitement recalibrable par `0.2.12-pre.001`. Si SOL Prices Desk + intégration Wallet Desk apparaît surdimensionné pour une release concrète clôturable dans la session, la frontière doit être rediscutée avant implémentation lourde plutôt que de supprimer silencieusement une partie de la mission.
|
|
|
|
## 7. `CHANGELOG.md`
|
|
|
|
Le changelog stable est préparé pour `0.2.11 — Off-chain price transport` avec les faits consolidés :
|
|
|
|
```text
|
|
SOL/USD V1
|
|
8 adapters REST sans SDK provider
|
|
MarketPriceDecimal exact
|
|
sémantiques/provenance/timestamps explicites
|
|
registry + availability + rate limits/cooldowns
|
|
refresh single/many/all séquentiel et déterministe
|
|
Config std.offchain_transport V1
|
|
origines provider fixes et secrets Config-owned
|
|
DexScreener pair explicite sans discovery
|
|
aucun consensus/fallback/moyenne KSP
|
|
CoinMarketCap ids -> id corrigé au gate live
|
|
re-smoke keyless final 7/7 PASS
|
|
smoke keyed SKIP opérateur
|
|
prompt 0.2.12 préparé
|
|
```
|
|
|
|
## 8. `ROADMAP.md`
|
|
|
|
`0.2.11` passe à l'état réalisé avec une synthèse stable correspondant au contrat réellement livré et au smoke keyless final `7/7`.
|
|
|
|
La suite active reste :
|
|
|
|
```text
|
|
0.2.12 SOL Prices Desk + intégration prix Wallet Desk
|
|
0.2.13 Interface foundation
|
|
0.2.14 Program API foundation
|
|
```
|
|
|
|
Aucune renumérotation supplémentaire n'est introduite.
|
|
|
|
## 9. Fichiers modifiés/ajoutés
|
|
|
|
```text
|
|
Cargo.toml
|
|
CHANGELOG.md
|
|
ROADMAP.md
|
|
prompts/017-V0_2_12_START_PROMPT.md
|
|
deltas/0.2.11/pre.013.md
|
|
```
|
|
|
|
Aucun autre fichier ne doit changer dans cette tranche. En particulier, `prompts/000-README.md` n'est pas mis à jour ici : c'est un README et la lane de publication minimale interdit de rouvrir les README après la réconciliation documentaire.
|
|
|
|
## 10. Gate opérateur
|
|
|
|
Comme cette tranche ne modifie aucun code/runtime/config/schema :
|
|
|
|
```bash
|
|
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.11
|
|
cargo check --workspace
|
|
cargo clippy --workspace --all-targets
|
|
cargo test --workspace
|
|
```
|
|
|
|
Aucun smoke live ni `cargo tree` n'est à rejouer si le delta est appliqué exactement.
|
|
|
|
## 11. Suite
|
|
|
|
Si ce gate est vert, la seule étape restante est :
|
|
|
|
```text
|
|
0.2.11-rel.001
|
|
```
|
|
|
|
Elle est limitée à la mécanique de publication stable : version Cargo `0.2.11`, delta `rel.001`, commit final et tag stable `v0.2.11`, sans rattrapage technique ou documentaire.
|
|
|
|
Après publication du tag stable, la session suivante ouvre :
|
|
|
|
```text
|
|
0.2.12-pre.001
|
|
```
|
|
|
|
avec `prompts/017-V0_2_12_START_PROMPT.md` et commence impérativement par l'audit/sizing défini dans ce prompt.
|