47 crates, 771 tests green (up from 753 at v0.33.0). Zero new features — pure hygiene. ## kei-shared extract (SSoT for DNA format) New crate `kei-shared` consolidates DNA-parse logic that was duplicated across kei-agent-runtime + kei-dna-index. Both consumers migrated to import ParsedDna / parse_dna / is_hex8 from kei_shared. - 12 tests (10 integration + 2 unit) - kei-dna-index LOC reduction: -60 in parsed.rs (body replaced by wrapper) - kei-agent-runtime preserves lenient DnaError (legacy 4-hex parse path) - Format-string SSoT: kei_shared::compose_dna is sole source ## MEDIUM audit residuals closed (kei-entity-store) A. DDL panic coverage — verified exhaustive match across all 12 FieldKind variants; new test ddl_never_panics_on_any_fieldkind compile-time-breaks if a variant added without test update. B. Update FTS reindex invariant — doc + new update_invariant.rs module with debug_assert validating non-input FTS columns don't drift pre/post UPDATE. Zero release-mode cost (cfg-gated). C. WAL fallback — wal_pragma_fallback_keeps_store_usable test (cfg(unix)) verifies read-only-parent dir doesn't brick Store::open. D. Search Unicode edge cases — 4 new tests (punctuation, emoji, zero-width, mixed RTL). has_searchable_token already correct, no source change needed; tests pin current behavior. Added: residual_audit_smoke.rs (8 tests), update_invariant.rs module. kei-entity-store: 57 → 65 tests. ## Docs drift fixed (count claims → reality) - README.md: "36 crates → 47 crates", "500+ tests → 800+ tests" - PLUGIN.md, docs/INSTALL.md, docs/REFERENCE.md, docs/SUBSTRATE-SCHEMA.md all synced to real counts. - CHANGELOG.md: 6 new version blocks (v0.28 → v0.33) consolidated in existing style. - Historical snapshots (HANDOFF-WAKE v0.29, CONVERGENCE-PLAN, etc) deliberately preserved — they're version-scoped, not drift. ## Known deviation from task spec kei-shared's [workspace] table was dropped (Cargo rejected "multiple workspace roots" when parent workspace pulls via path dep). Crate registered in workspace.members instead. Verified cargo check + test clean in both modes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
14 lines
318 B
TOML
14 lines
318 B
TOML
[package]
|
|
name = "kei-shared"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
rust-version = "1.75"
|
|
description = "Shared substrate types — single source of truth for DNA format + small utility types"
|
|
|
|
[lib]
|
|
name = "kei_shared"
|
|
path = "src/lib.rs"
|
|
|
|
[dependencies]
|
|
serde = { version = "1", features = ["derive"] }
|
|
thiserror = "1"
|