178 lines
4.6 KiB
Markdown
178 lines
4.6 KiB
Markdown
<!-- file: deltas/0.3.5/pre.008-fix.001.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta `0.3.5-pre.008-fix.001` — enrichissement du prompt `0.3.6` et trajectoire Job/Worker
|
|
|
|
## Base requise
|
|
|
|
```text
|
|
0.3.5-pre.008
|
|
workspace.package.version = 0.3.5-pre.8
|
|
```
|
|
|
|
Ce fix est **strictement documentaire**. Il ne modifie aucun fichier Rust/build/runtime/config et ne change donc pas `workspace.package.version`.
|
|
|
|
`Cargo.toml` reste exactement celui de `pre.008` :
|
|
|
|
```text
|
|
workspace.package.version = 0.3.5-pre.8
|
|
```
|
|
|
|
## Motif du fix
|
|
|
|
Le prompt `025` de `pre.008` était insuffisamment détaillé par rapport :
|
|
|
|
- aux règles de construction des prompts KSP ;
|
|
- à la portée réelle attendue de `0.3.6` ;
|
|
- aux fonctionnalités de backfill déjà présentes historiquement dans kbot3 ;
|
|
- au besoin d'observabilité par une couche supérieure ;
|
|
- à la trajectoire Worker qui doit reprendre le même pattern de notifications.
|
|
|
|
Il laissait également le nom de la crate concrète à décider alors que la direction est désormais fixée :
|
|
|
|
```text
|
|
ksp-job-backfill-lib
|
|
```
|
|
|
|
## Corrections du prompt `0.3.6`
|
|
|
|
Le prompt version 2 ouvre désormais explicitement :
|
|
|
|
```text
|
|
ksp-job-api
|
|
+
|
|
ksp-job-backfill-lib
|
|
+
|
|
backfill RawTransaction historique fonctionnel
|
|
+
|
|
lifecycle/progression/outcome
|
|
+
|
|
notifications/listeners sûrs pour UI/composition
|
|
```
|
|
|
|
### Archive kbot3
|
|
|
|
L'archive :
|
|
|
|
```text
|
|
khadhroony-bot3_v0.5.3-pre.005-fix010.zip
|
|
```
|
|
|
|
redevient **obligatoire en `0.3.6-pre.001`**, mais uniquement comme inventaire fonctionnel historique.
|
|
|
|
Le plan doit construire une matrice :
|
|
|
|
```text
|
|
REPRENDRE FONCTIONNELLEMENT
|
|
REDESSINER POUR KSP
|
|
REPORTER
|
|
REJETER
|
|
```
|
|
|
|
Le code, les anciennes crates, DTOs, SQL, retries et choix runtime kbot3 ne sont pas à copier.
|
|
|
|
### Parité fonctionnelle minimale à réauditer
|
|
|
|
Le prompt rend explicites les invariants historiquement démontrés :
|
|
|
|
- scans latest/before/after/explicit selon audit ;
|
|
- anchors et directions ;
|
|
- candidats/pages dédupliqués ;
|
|
- nearest-newer/gap-fill si conservé ;
|
|
- frontier de complétion contiguë ;
|
|
- reprise après cancellation sans saut ;
|
|
- cancellation coopérative pendant RPC long et wait/backoff ;
|
|
- ownership séparé du retry Transport et du retry Job ;
|
|
- compteurs de campagne distinguant sélection, complétion, insert/idempotence/existing, missing et observations.
|
|
|
|
### Notifications Job
|
|
|
|
Le prompt exige désormais un vrai contrat d'observabilité `ksp-job-api` :
|
|
|
|
```text
|
|
identity
|
|
state/phase
|
|
progress/snapshot
|
|
checkpoint/frontier
|
|
sequence ou ordre observable
|
|
terminal outcome
|
|
safe error code
|
|
listener isolation/backpressure
|
|
resynchronisation après perte/coalescing
|
|
```
|
|
|
|
Ces notifications sont explicitement distinctes :
|
|
|
|
```text
|
|
Interface acquisition events
|
|
Store KSP-NOTIFY-* post-commit wake-ups
|
|
logging/tracing
|
|
```
|
|
|
|
Aucune dépendance Tokio/channel précise n'est imposée dans `ksp-job-api` avant l'audit `pre.001`.
|
|
|
|
### Alignement Worker futur
|
|
|
|
Le même pattern conceptuel devra être repris par `ksp-worker-api`, sans créer dès `0.3.6` une crate générique spéculative supplémentaire.
|
|
|
|
## Corrections du ROADMAP
|
|
|
|
La trajectoire RAW opérationnelle devient explicitement :
|
|
|
|
```text
|
|
0.3.6 ksp-job-api + ksp-job-backfill-lib + notifications
|
|
0.3.7 application backfill/inspection RAW
|
|
0.3.8 ksp-worker-api
|
|
0.3.9 ksp-worker-live-transactions-retriever-lib
|
|
0.3.10 application monitoring/visualisation Jobs + Workers
|
|
```
|
|
|
|
L'ancien placeholder générique « worker/service live ensuite » est supprimé au profit de releases nommées et ordonnées.
|
|
|
|
## Correction du CHANGELOG
|
|
|
|
Le paragraphe ouvrant `0.3.6` est aligné sur la portée réelle du prompt version 2 et sur la nouvelle trajectoire ROADMAP.
|
|
|
|
Aucune information sur le contenu fonctionnel déjà stabilisé de `0.3.5` n'est changée.
|
|
|
|
## Versions d'en-tête
|
|
|
|
```text
|
|
CHANGELOG.md 24 -> 25
|
|
ROADMAP.md 99 -> 100
|
|
prompts/025-V0_3_6_START_PROMPT.md 1 -> 2
|
|
deltas/0.3.5/pre.008-fix.001.md nouveau -> 1
|
|
```
|
|
|
|
## Fichiers modifiés
|
|
|
|
Exactement :
|
|
|
|
```text
|
|
CHANGELOG.md
|
|
ROADMAP.md
|
|
prompts/025-V0_3_6_START_PROMPT.md
|
|
deltas/0.3.5/pre.008-fix.001.md
|
|
```
|
|
|
|
Explicitement inchangés :
|
|
|
|
```text
|
|
Cargo.toml
|
|
crates/**
|
|
docs/architecture/**
|
|
docs/plans/026-V0_3_5_INTERFACE_ACQUISITION_EVENTS_PLAN.md
|
|
docs/validation/022-V0_3_5_INTERFACE_ACQUISITION_EVENTS.md
|
|
```
|
|
|
|
## Gate demandé
|
|
|
|
Le fix ne modifie aucun Rust. Le gate minimal est :
|
|
|
|
```bash
|
|
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.3.5
|
|
```
|
|
|
|
Aucun rerun Cargo n'est requis par ce fix documentaire lui-même.
|