0.3.16-pre.009
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md -->
|
||||
<!-- version: 18 -->
|
||||
<!-- version: 19 -->
|
||||
|
||||
# Acquisition et alimentation `RawTransaction`
|
||||
|
||||
@@ -840,16 +840,18 @@ Stop Yellowstone post-half-close : status distant tardif classé Closed, status
|
||||
compatibilité étroite : canonique complet + incoming logMessages avec marqueur exact Log truncated
|
||||
```
|
||||
|
||||
Reste hors de cette verticale et nécessite une tranche dédiée :
|
||||
Après fermeture technique de `0.3.16`, restent hors de cette verticale et nécessitent des versions dédiées :
|
||||
|
||||
```text
|
||||
sources EARLY / pre-execution
|
||||
campagne historique multi-source ou caller-paramétrable
|
||||
variantes RAW durables et résolution générale des conflits
|
||||
promotion canonique d'une représentation moins complète vers une plus complète
|
||||
retry Store et reconnexion Transport configurables au niveau prévu par 0.3.16
|
||||
cycle de vie complet des conflits : résolution/reopen/historique/rétention des variantes
|
||||
retry Store et reconnexion Transport configurables
|
||||
Store Desk conflits/variantes/résolutions opérateur
|
||||
```
|
||||
|
||||
Les variantes RAW durables, la promotion canonique strictement prouvée et le conflit durable minimal non terminal sont, eux, acquis par `0.3.16`.
|
||||
|
||||
### 14.3 Gaps Transport Worker
|
||||
|
||||
| ID | Adaptation | Motif |
|
||||
@@ -882,9 +884,9 @@ La règle générale reste fail-closed : une divergence canonique non reconnue p
|
||||
|
||||
Le sens inverse reste volontairement non résolu en `0.3.15` : un canonique tronqué suivi d'une représentation complète n'est pas promu automatiquement. Deux contenus complets divergents, un préfixe incompatible, une différence hors `logMessages` ou toute relation de troncature non prouvée restent des conflits. Cette asymétrie est précisément le point d'entrée du modèle de variantes/promotion/résolution de `0.3.16`.
|
||||
|
||||
## 14.5 Handoff `0.3.16` : résilience RAW et conflits durables
|
||||
## 14.5 Résultat `0.3.16` : fondations multi-variantes et conflits durables
|
||||
|
||||
`0.3.16` doit déplacer la résolution des divergences RAW dans le contrat Store partagé, afin que Worker live et futurs Jobs historiques convergent avec la même politique. Une divergence de contenu n'est plus assimilée automatiquement à une panne d'acquisition.
|
||||
`0.3.16` déplace l'arbitrage durable des divergences RAW dans le contrat Store partagé, afin que Worker live et Jobs historiques utilisent la même politique de convergence. Une divergence conservable n'est plus assimilée automatiquement à une panne d'acquisition.
|
||||
|
||||
Modèle cible :
|
||||
|
||||
@@ -897,17 +899,17 @@ RawTransaction identity (network, signature)
|
||||
-> historique immutable des promotions/résolutions
|
||||
```
|
||||
|
||||
Classification minimale : `Exact`, `CompatibleLessComplete`, `CompatibleMoreComplete`, `Conflict`. Une représentation prouvée moins complète ne remplace jamais le canonique ; une représentation prouvée plus complète peut le promouvoir atomiquement ; un vrai conflit conserve toutes les variantes sans arrêter l'acquisition. La provenance d'un provider n'établit jamais à elle seule une priorité canonique.
|
||||
Classification livrée : `Exact`, `CompatibleLessComplete`, `CompatibleMoreComplete`, `Conflict`, `Incomparable`. Une représentation prouvée moins complète ne remplace jamais le canonique ; une représentation prouvée plus complète le promeut atomiquement ; `Conflict` et `Incomparable` conservent la variante entrante et ouvrent/mettent à jour un conflict case minimal sans arrêter l'acquisition. La provenance d'un provider n'établit jamais à elle seule une priorité canonique.
|
||||
|
||||
Le Worker doit distinguer les problèmes locaux durablement gérables des pannes externes. Un conflit RAW quarantiné laisse la route active et rend la santé au plus `Degraded`. Une indisponibilité Store impose backpressure/pause et retry sans perte silencieuse. Une indisponibilité Transport déclenche une politique de reconnexion bornée/configurable (`initial_delay`, `max_delay`, backoff, `max_attempts`, reset après stabilité). Un terminal `Faulted` reste réservé aux erreurs irréconciliables ou à l'épuisement explicite d'une politique de retry/reconnect.
|
||||
Le Worker distingue désormais le conflit durable d'une panne externe : `QuarantinedConflict` laisse la route `Running` et projette `Degraded`, tandis qu'un ancien backend qui renvoie encore `ERROR_CODE_RAW_CONFLICT` reste traité comme erreur terminale de compatibilité. Les politiques complètes de retry Store/backpressure `Blocked` et de reconnexion Transport configurable sont reportées à `0.3.17` ; elles ne sont pas implicitement revendiquées par `0.3.16`.
|
||||
|
||||
`ksp-app-store-desk` doit ajouter des vues de conflits/variantes et d'historique. Une résolution manuelle peut promouvoir une variante, conserver le canonique, ou produire une variante de fusion assistée. Toute ancienne valeur canonique reste une variante durable et peut être restaurée ultérieurement ; aucun `UPDATE` destructif ne doit rendre une décision manuelle irréversible.
|
||||
`ksp-app-store-desk` reste inchangé en `0.3.16`. Les contrats d'inspection/résolution complets sont préparés en `0.3.17`, puis les vues/actions opérateur de variantes, conflits et historique sont prévues pour `0.3.18`. Toute future décision manuelle doit rester réversible et ne jamais détruire les variantes nécessaires au rollback.
|
||||
|
||||
Le détail de handoff est fixé dans `docs/plans/037-V0_3_16_RAW_RESILIENCE_CONFLICT_HANDOFF.md`.
|
||||
Le handoff historique est conservé dans `docs/plans/037-V0_3_16_RAW_RESILIENCE_CONFLICT_HANDOFF.md`; le sizing et la répartition actuels sont fixés par `docs/plans/038-V0_3_16_RAW_RESILIENCE_CONFLICT_PLAN.md`.
|
||||
|
||||
## 15. Handoff `0.3.17` : Job Backfill multi-stratégie
|
||||
## 15. Handoff `0.3.17` -> `0.3.20`
|
||||
|
||||
Le Job doit conserver son vertical slice existant puis ajouter des stratégies historiques choisies selon requête + capabilities + configuration.
|
||||
`0.3.17` ferme le cycle de vie complet des variantes/conflits et la résilience opérationnelle Store/Transport. `0.3.18` expose ensuite inspection et résolution dans Store Desk. Le Job Backfill multi-stratégie est reporté par défaut à `0.3.19` : il doit conserver son vertical slice existant puis ajouter des stratégies historiques choisies selon requête + capabilities + configuration. L'adaptation Backfill Desk correspondante est ciblée par défaut sur `0.3.20`.
|
||||
|
||||
| Stratégie | Entrée de campagne typique | Acquisition | Admission |
|
||||
|----------------------------------------|-----------------------------------|----------------------------|------------------|
|
||||
@@ -939,11 +941,12 @@ Ordre conseillé :
|
||||
0.3.14 P0 : gaps run-local, coverage prouvée, repair borné, source-loss et shutdown/fairness cross-layer
|
||||
0.3.15 P0 : Raw Transaction Ingest Desk multi-route + stabilité Mainnet Yellowstone/getBlock/polling
|
||||
0.3.15 P1 : diagnostic/convergence logMessages tronqués + backpressure gRPC soutenue + Stop post-half-close
|
||||
0.3.16 P0 : variantes/conflits RAW durables, promotions/résolutions, retries et Store Desk conflicts
|
||||
0.3.17 P0 : block scan historique
|
||||
0.3.17 P0 : replay Yellowstone borné
|
||||
0.3.17 P1 : provider history/archive
|
||||
0.3.17 P1 : Old Faithful
|
||||
0.3.16 P0 : variantes RAW durables, promotion prouvée, conflit minimal durable, Worker non terminal
|
||||
0.3.17 P0 : résolution/rétention des variantes + retry Store + reconnect Transport configurable
|
||||
0.3.18 P0 : Store Desk conflits/variantes/résolutions opérateur
|
||||
0.3.19 P0 : block scan historique + replay Yellowstone borné
|
||||
0.3.19 P1 : provider history/archive + Old Faithful
|
||||
0.3.20 P0 : Backfill Desk multi-route
|
||||
plus tard : substrats directs et sources vendor-specific sans accès actuel
|
||||
```
|
||||
|
||||
@@ -1065,9 +1068,11 @@ TR-C2 = adapter productif Transport DTO -> common réserv
|
||||
0.3.11 = fondation Worker source-neutral, persistence et observabilité
|
||||
0.3.12 = première verticale Yellowstone + hydration/replay continuity
|
||||
0.3.13 = cinq familles live + convergence/fairness/health/shutdown/completeness
|
||||
0.3.16 = résilience RAW, variantes/conflits/résolutions, retry/reconnect et Store Desk
|
||||
0.3.17 = Job Backfill multi-route/multi-stratégie historique
|
||||
0.3.18 = Backfill Desk multi-route
|
||||
0.3.16 = fondations RAW multi-variantes + conflit durable minimal + Worker non terminal
|
||||
0.3.17 = lifecycle/résolution/rétention variantes + retry Store + reconnect Transport
|
||||
0.3.18 = Store Desk variantes/conflits/résolutions
|
||||
0.3.19 cible = Job Backfill multi-route/multi-stratégie historique
|
||||
0.3.20 cible = Backfill Desk multi-route
|
||||
```
|
||||
|
||||
`0.3.9` n'implémente aucune nouvelle stratégie d'acquisition. Il ferme l'architecture et l'inventaire nécessaires aux releases suivantes.
|
||||
|
||||
Reference in New Issue
Block a user