ctx v0.18.0
GottZ Cyclic Phase Model — Multi-Dimensional Cyclic Gravity
Implements ~35% → 70% of the original Temporal Dimensions vision. The EAV table (context_temporal) was populated since Session 11, but no retrieval code read the dimensions. Before this release, the gravity boost was distance-only (power-law p=1.5 on linear time distance).
What's new
Each cyclic dimension is now a gravitational axis with normalized phase [0,1) and Gaussian decay. "Meeting am Dienstag, Ergebnis am Mittwoch" for an "immer dienstags" query: Tuesday block gravity=1.000, Wednesday block gravity=0.128 (8× weaker, non-zero).
4 cyclic dimensions wired:
weekday(7-day cycle, σ=0.07, adjacent-day decay ~0.128)month(12-month cycle, σ=0.10)quarter(4-quarter cycle, σ=0.12)week(ISO 52-week cycle, σ=0.08)
Architecture
4 waves delivered:
- Wave 1:
DimensionWeights+ Recurrence Detection —hasRecurrence(immer/jeden/dienstags-plural), 12 matchers tagged with appropriate dimension weights - Wave 2: Cyclic Gravity Engine —
CyclicDistance,GaussianDecay,DimensionPhase,QueryPhase,ComputeCyclicGravity,ApplyCyclicGravityBoost - Wave 3:
FetchBlockDimensions— EAV data layer for post-RRF reranking - Wave 4: Dual-path wiring — linear (content_dates) + cyclic (EAV), weighted by
DimensionWeights
Parser examples
| Query | DimensionWeights |
|---|---|
| "immer dienstags" | {weekday: 1.0} |
| "am Dienstag" | {linear: 0.6, weekday: 0.4} |
| "letzte Woche" | {linear: 0.7, week: 0.3} |
| "seit März" | {linear: 0.8, month: 0.2} |
| "am 2026-03-27" | {linear: 1.0} |
Walk-through: "immer dienstags" (target Tuesday, phase=1/7, σ=0.07)
- Tuesday block: distance=0 → decay=1.000
- Wednesday block: distance=1/7 → decay=0.128
- Thursday block: distance=2/7 → decay=0.00027
- Saturday block: distance=3/7 → decay=7.25e-9
Testing
- 81 new unit tests
test.sh16/16 PASSeval.sh43/43 PASS- Live: "immer dienstags" → cyclic_dims=weekday, 1ms latency at 200 candidates
Not in this release (follow-up)
M007 SQL dead-function cleanup, 5th RRF channel wiring, Mass formula (Wave 5 optional), daily dimension, pure recurrence matchers ("monatliche Routinen"), quarter abbreviations.
Installation
With Go:
go install github.com/GottZ/ctx/cmd/ctx@v0.18.0Binary download:
Download the binary for your platform, make it executable, move to PATH:
chmod +x ctx-*
sudo mv ctx-* /usr/local/bin/ctxFull Changelog: v0.17.0...v0.18.0