Coexo/Changelog

Changelog

2026-05-03 (later)

§12 Memory — Sprint C shipped: hybrid retrieval (vector + BM25 + RRF fusion + Voyage rerank-2.5) replaces the vector-only dispatcher; eval harness with a 20-query golden corpus checked in. End-to-end measured lift over the vector-only baseline: +20% recall@5, +4.6% recall@10, +31.5% MRR. Self-RAG retrieval gate dropped from v1 after research surfaced that 2025-26 SOTA (Mem0, MIRIX, Anthropic Contextual Retrieval) converged on unconditional hybrid retrieval at substrates of our scale; self-rewriting prelude bumped to Sprint D pending weeks of write-back hook output to rewrite from.

§12 Memory — Architecture principle locked: Claude is the project manager on every project under coexo.dymont.ai/dymontlabs; Stephan sets outcomes (what + how he uses it), Claude owns the path (research, decide, sequence, ship). Codified as a `mirix_type=core` event in the prelude's working preferences section so the principle survives across model upgrades and surface changes.

2026-05-03

§12 Memory — Sprints A and B both shipped on coexo-memory. Sprint A: write-back hook on Claude Code dymontlabs (every session ends with a Haiku-summarised episodic event), per-type retriever dispatch in /recall, REM-phase A-MEM entity dedup with append-only recall_log Hebbian substrate. Sprint B: deep-phase consolidation worker (tombstone-only active forgetting + HNSW drift reindex), procedural memory tier (Skills section in the prelude with SKILL.md frontmatter convention), HippoRAG-2 graph recall (POST /recall/graph runs Personalized PageRank over the entities + triples graph with vector-seeded reset weights).

§12 Memory — Surface-aware filtering for procedural skills: prelude builder respects optional `applies_to: [surface_a, ...]` frontmatter so per-host skills don't bloat other surfaces' preludes. Six skills now seeded (coexo-memory-api, deploy-coexo-site, restart-coexo-operator, apply-coexo-migration, verify-coexo-substrate-health, query-coexo-recall).

§12 Memory — Postgres upgraded 17.9 → 18.3 via dump+restore (~7 min downtime); audit hash chain preserved byte-equal across the upgrade. Native SQL:2011 application-time temporal constraints now available for any future projection table.

2026-05-01

§12 Memory — v0 substrate live. Hetzner AX102-U bare-metal in Falkenstein-DC7 hosting Postgres 18 with the locked extension stack (pgvector halfvec, pgvectorscale, pg_search, pgcrypto, pgaudit). Operator service exposing bearer-gated POST /events, POST /recall, GET /events, GET /prelude over the tailnet. Hash-chained audit log; encrypted pgBackRest backups (local + off-host Storage Box); off-box Prometheus/Loki/Grafana on dymontlabs; Langfuse Cloud EU traces on Voyage embedding calls. Always-loaded prelude generator wired into Claude Code on dymontlabs via SessionStart hook.

2026-04-14

Added Project Notes as a staging inbox for raw architecture and product ideas that have not been placed into the canonical site structure yet.

Captured the first note: a beautiful read layer on top of the canonical database, with suggested destinations in Strategy, Command Center, and The Database.

2026-03-22

§3 Signal Enrichment — Replaced linear pipeline (Grouping → Context Assembly → Dual Extraction) with dual-lens model (Person Lens + Case Lens). Introduced "nuggets" as atomic units of intelligence. Behavioral extraction operates at signal level per person; content extraction decomposes into independently routable nuggets. Added Preliminary Scan step.

§4 Signal Routing — Routing now operates per nugget instead of per signal. Added Recomposition step to aggregate routing decisions back to signal level for coherent outbound actions.

2026-03-21

Initial project scaffold with layout, auth, and design token system. Overview page, Building Blocks grid with all 11 sections transferred from AA-0957. Arc42-based structure adopted. Site deployed at coexo.dymont.ai.