ctx v0.21.0
v0.21.0 — created_at als Meta-Anker (multiple anchors per block)
Architektur-Prinzip: ein Block kann mehrere temporale Anker haben.
Content-mentioned times (semantic) + created_at (meta) koexistieren
als Union.
Vorher: Bloecke ohne Datums-Erwaehnung im Content hatten nur _none
Sentinel → temporal unauffindbar. Jetzt: jeder aktive Block hat 8
Dimensionen aus seinem created_at.
Ein Block "Meeting am Dienstag" erstellt am Freitag bekommt:
- weekday=2 (content)
- weekday=5 (created_at)
Beide Signale tragen unabhaengig bei. SQL ON CONFLICT handelt Overlap.
Migration 021 backfillt 8 Dimensionen pro aktivem Block aus
created_at. Coverage: 158 → 603 Dimensionen pro Typ (+281%).
Archivierte Bloecke bleiben mit _none Sentinel (werden nicht retrieved).
Go: PopulateTemporal bekommt createdAt als Pflicht-Parameter. Alle
3 Handler-Caller (context_store, ingest, context_manage) passen
block.CreatedAt durch. BackfillTemporal selektiert created_at aus DB.
Tests: 16/16 test.sh, 43/43 eval.sh, keine Regression.
Live: "abends"-Query blocks_with_dims 46 → 98 (alle aktiven Bloecke).
Installation
With Go:
go install github.com/GottZ/ctx/cmd/ctx@v0.21.0Binary download:
Download the binary for your platform, make it executable, move to PATH:
chmod +x ctx-*
sudo mv ctx-* /usr/local/bin/ctx