Skip to content

fix: encoding faithfulness, amend raw_id, dashboard timeline#385

Merged
CalebisGross merged 1 commit intofeat/exp25-faithfulness-probefrom
fix/382-383-encoding-amend
Apr 9, 2026
Merged

fix: encoding faithfulness, amend raw_id, dashboard timeline#385
CalebisGross merged 1 commit intofeat/exp25-faithfulness-probefrom
fix/382-383-encoding-amend

Conversation

@CalebisGross
Copy link
Copy Markdown
Collaborator

Summary

  • bug: amend tool rejects raw_id returned by remember #382: amend tool now accepts raw_id (from remember) in addition to memory_id, mirroring check_memory's resolution pattern
  • bug: encoding agent rewrites memory content instead of faithfully encoding it #383: Removed getRelatedContext() from the encoding pipeline — FTS5 keyword matching was injecting unrelated memory summaries into the LLM compression prompt, causing cross-contamination (e.g., a "V7 dataset pipeline" memory got encoded as "Major architecture pivot"). Also removed dead helper functions (extractKeywords, joinConcepts) and their tests
  • Dashboard: Fixed sticky "Today" header overlapping first timeline entry; fixed time formatting producing single-digit minutes ("12:8" → "12:08 PM")
  • Training scripts: Synced Python build_production_prompt() with Go buildCompressionPrompt() (removed related_ctx parameter and RELATED_MEMORY_STUB)

Test plan

  • make check passes (go fmt + go vet)
  • go test ./internal/agent/encoding/... ./internal/mcp/... — all pass
  • Full make test — only pre-existing TestFormatPrompt failure (ChatML format mismatch, unrelated)
  • ROCM=1 make build-embedded succeeds
  • Daemon restarts cleanly, health OK, LLM loaded
  • No conflict markers in any files
  • Dashboard timeline header and time formatting verified via live daemon

Closes #382, closes #383

🤖 Generated with Claude Code

- Remove getRelatedContext() from encoding pipeline — FTS5 keyword
  matching injected unrelated memory summaries into the LLM prompt,
  causing cross-contamination (#383). Also removes extractKeywords
  and joinConcepts (dead code after removal).

- amend tool now accepts raw_id in addition to memory_id, resolving
  via GetMemoryByRawID when memory_id lookup fails (#382). Mirrors
  the check_memory pattern.

- Dashboard: fix sticky "Today" header overlapping first timeline
  entry (top: 30px → 0, solid background). Fix time formatting
  producing single-digit minutes (manual zero-padding replaces
  locale-dependent toLocaleString).

- Sync Python training_constants.py with Go buildCompressionPrompt
  (remove related_ctx parameter). Remove RELATED_MEMORY_STUB from
  prepare_faithfulness_data.py.

Closes #382, closes #383

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@CalebisGross CalebisGross merged commit 671b1b6 into feat/exp25-faithfulness-probe Apr 9, 2026
@CalebisGross CalebisGross deleted the fix/382-383-encoding-amend branch April 9, 2026 19:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant