v0.5.3-pre.004
This commit is contained in:
@@ -1,8 +1,46 @@
|
||||
<!-- file: ks-store/CHANGELOG.md -->
|
||||
<!-- version: 29 -->
|
||||
<!-- version: 33 -->
|
||||
|
||||
# CHANGELOG — ks-store
|
||||
|
||||
## `0.5.3-pre.004`
|
||||
|
||||
### Fix `pre.004-delta-fix-003`
|
||||
|
||||
- corrige deux canaris de source auto-référentiels : leurs assertions négatives analysaient aussi le bloc `#[cfg(test)]` qui contenait lui-même la chaîne interdite ;
|
||||
- limite désormais les vérifications de source à la partie production précédant `#[cfg(test)]` dans `account_state_queries.rs` et `invalidation_queries.rs` ;
|
||||
- ne modifie aucune requête PostgreSQL ni aucun comportement runtime.
|
||||
|
||||
### Fix `pre.004-delta-fix-002`
|
||||
|
||||
- ajoute les annotations explicites `std::string::String` sur `origin_text` et `status_text` dans le mapper PostgreSQL des observations de compte ;
|
||||
- corrige les deux erreurs `E0282` d'inférence générique `read_row<T>()` apparues après la suppression de l'opérateur `?`, sans modifier le contrat ni le comportement du mapper.
|
||||
|
||||
|
||||
### Fix `pre.004-delta-fix-001`
|
||||
|
||||
- remplace les 53 utilisations accidentelles de l'opérateur `?` introduites dans les nouveaux mappers PostgreSQL account-state/Core replay par une propagation explicite `match` conforme aux règles du workspace ;
|
||||
- ne modifie ni les contrats publics, ni le SQL, ni les règles de replay/pagination/invalidation de `pre.004`.
|
||||
|
||||
### Repositories et replay
|
||||
|
||||
- rend le replay N2 -> N3 symétrique pour les instructions top-level et CPI via une union logique `CoreInstructionScope::{TopLevel, Inner}` sans fusionner les deux tables physiques ;
|
||||
- remplace la pagination `OFFSET` du contrat Core par un curseur stable `(slot, signature, scope_rank, instruction_path)` et borne les lectures interactives à 500 lignes ;
|
||||
- borne séparément les batches Core extraction, decode et account-state à 1 000 entrées afin qu’aucune API publique ne conserve les anciennes limites massives ;
|
||||
- rend opérationnel le flux générique N1 `account observation` -> N2 `account state` avec sélection version-aware, idempotence par processing ledger, force replay et conservation du domaine `u64` pour lamports/rent epoch.
|
||||
|
||||
### Invalidation et lifecycle
|
||||
|
||||
- invalide les descendants N3 decode/coverage/materialization d’une signature dans la même transaction lorsqu’un graphe Core est remplacé ;
|
||||
- invalide les sorties de matérialisation d’un decode remplacé pour l’identité exacte decoder name/version/input et utilise des préfixes de ledger littéraux au lieu de `LIKE` ;
|
||||
- recalcule le lifecycle top-level/CPI depuis les descendants réellement courants et empêche une matérialisation d’une ancienne version de decoder de rendre la nouvelle version artificiellement `materialized`.
|
||||
|
||||
### Index, bornes et observabilité
|
||||
|
||||
- ajoute quatre index non uniques dédiés à l’ordre de replay CPI et aux recherches de descendants coverage/materialization ; le corpus passe à 240 ressources SQL, 63 index explicites et 79 index attendus avec les PK ;
|
||||
- ajoute les canaris de conversion `u64`/`BIGINT` et les limites de batch ;
|
||||
- instrumente les opérations PostgreSQL réécrites sous `target: crate::TRACING_TARGET`, `backend="postgres"`, `domain="ks-store.pg"` avec `action`, durée, lignes et résultat, sans SQL brut ni valeur bindée.
|
||||
|
||||
## `0.5.3-pre.003`
|
||||
|
||||
### Fix `pre.003-delta-fix-005`
|
||||
|
||||
Reference in New Issue
Block a user