kioku-core 0.2.0.0 → 0.3.0.0
raw patch · 2 files changed
+49/−12 lines, 2 filesdep ~keikidep ~keirodep ~keiro-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: keiki, keiro, keiro-core, kioku-api, kioku-core, kioku-migrations
API changes (from Hackage documentation)
Files
- CHANGELOG.md +37/−0
- kioku-core.cabal +12/−12
CHANGELOG.md view
@@ -1,5 +1,42 @@ # Changelog +## 0.3.0.0 — 2026-08-05++### Breaking Changes++- Moved onto the Keiki 0.9 and Keiro 0.11 cohort: `keiki ^>=0.9.0.0`, `keiro ^>=0.11.0.0`, and+ `keiro-core ^>=0.11.0.0`. Kioku no longer builds against Keiki 0.4 or Keiro 0.4, and there is no+ version of `kioku-core` that spans both cohorts.+- A consumer that links `kioku-core` now links Keiki 0.9's sealed constructor API. `InCtor` and+ `WireCtor` construction and record update are behind read-only patterns: manual behavior must go+ through `unavailableInCtor` / `unavailableWireCtor`, and constructors that need trusted+ structural evidence must use Keiki's Generic or Template Haskell producers. `mkWireCtor`,+ `mkWireCtor0`, `mkInCtor` and `mkInCtor0` are deprecated. Kioku's own aggregates already use the+ trusted TH path and needed no change, but a consumer that hand-writes constructors alongside+ Kioku's does.+- Keiki 0.9 classifies replay head identity structurally and rewrites the default+ inversion-ambiguity analysis, so `validateEventStream` and `mkEventStream` may report a+ different conservative warning set after recompilation. `Kioku.Memory.EventStream` and+ `Kioku.Session.EventStream` both assemble through `mkEventStreamOrThrow`, which turns a warning+ into a runtime `error` at first use rather than a compile failure; both still assemble clean+ under 0.9. A consumer that builds its own streams should re-run its startup path, not just+ rebuild.++### Changed++- No Kioku source change was required by the upgrade. Keiro's 0.5–0.11 releases are almost+ entirely `keiro-dsl` work, which Kioku does not depend on; the Keiro runtime surface Kioku+ imports is unchanged across the whole range.+- Event payloads are unaffected. The `keiki-codec-json` wire format is unchanged across 0.4 → 0.9,+ and `Kioku.CodecCompatSpec` continues to decode literal pre-upgrade payloads under the new+ cohort.+- Existing snapshots stay valid. Keiki's `Keiki.Shape` changed only by adding a+ `CanonicalTypeName Natural` instance, and no Kioku register slot uses `Natural`, so+ `regFileShapeHash` and `stateShapeHash` are unchanged and there is no snapshot rebuild.+- The rest of the cohort does not move: `kiroku-store`, `shibuya-core`, `shibuya-kiroku-adapter`,+ `baikai`, `baikai-claude`, `baikai-effectful`, `shikumi` and `shikumi-trace` keep the bounds+ they had in 0.2.0.0.+ ## 0.2.0.0 — 2026-07-30 ### Breaking Changes
kioku-core.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: kioku-core-version: 0.2.0.0+version: 0.3.0.0 synopsis: Reusable agent memory runtime description: Core runtime for kioku. M1 establishes the application effect stack; later@@ -99,10 +99,10 @@ , hasql-pool >=1.2 && <1.5 , hasql-transaction >=1.0 && <1.3 , hs-opentelemetry-api >=1.0 && <1.1- , keiki ^>=0.4.0.0- , keiro ^>=0.4.0.1- , keiro-core ^>=0.4.0.1- , kioku-api ^>=0.2.0.0+ , keiki ^>=0.9.0.0+ , keiro ^>=0.11.0.0+ , keiro-core ^>=0.11.0.0+ , kioku-api ^>=0.3.0.0 , kiroku-store ^>=0.3.0.1 , lens >=5.2 && <5.4 , mmzk-typeid >=0.7 && <0.8@@ -141,7 +141,7 @@ build-depends: , aeson >=2.2 , baikai ^>=0.4.1.0- , base >=4.21 && <5+ , base >=4.21 && <5 , bytestring >=0.11 , containers >=0.6 , contravariant >=1.5@@ -150,14 +150,14 @@ , effectful-core >=2.5 , hasql >=1.6 , hasql-transaction >=1.0- , keiro ^>=0.4.0.1- , keiro-core ^>=0.4.0.1- , kioku-api ^>=0.2.0.0- , kioku-core ^>=0.2.0.0- , kioku-migrations:test-support ^>=0.2.0.0+ , keiro ^>=0.11.0.0+ , keiro-core ^>=0.11.0.0+ , kioku-api ^>=0.3.0.0+ , kioku-core ^>=0.3.0.0+ , kioku-migrations:test-support ^>=0.3.0.0 , kiroku-store ^>=0.3.0.1 , lens >=5.2- , shibuya-core >=0.8.0.1 && <0.9+ , shibuya-core >=0.8.0.1 && <0.9 , shikumi ^>=0.3.0.1 , shikumi-trace ^>=0.2.0.1 , tasty >=1.5