Skip to content

ctx v0.18.0

Choose a tag to compare

@github-actions github-actions released this 04 Apr 21:14
· 1609 commits to root since this release
v0.18.0
490add8

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.sh 16/16 PASS
  • eval.sh 43/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.0

Binary download:
Download the binary for your platform, make it executable, move to PATH:

chmod +x ctx-*
sudo mv ctx-* /usr/local/bin/ctx

Full Changelog: v0.17.0...v0.18.0