operational-synthesis-hypotheses.jsonl

Structured speculative but relevant thoughts and open hypotheses

/home/matrix-lite/state/persistent-chat/operational-synthesis/hypotheses.jsonl

{
  "rows": 13,
  "dates": {
    "2026-05-16": 2,
    "2026-05-17": 2,
    "2026-05-21": 2,
    "2026-05-26": 4,
    "2026-05-29": 1,
    "2026-05-30": 2
  },
  "roles": {
    "": 13
  },
  "kinds": {
    "": 13
  },
  "sources": {
    "": 13
  },
  "first_ts": "2026-05-17T22:27:58Z",
  "last_ts": "2026-05-30T04:11:14Z"
}
{"ts":"2026-05-17T22:27:58Z","type":"hypothesis","status":"confirmed_true","summary":"Gateway was intentionally stopped/restarted — hypothesis confirmed","next_check":"Resolved — gateway healthy, session recovered","evidence":"User manually triggered controlled reload at 11:54Z; earlier hypothesis that gateway was intentionally stopped is consistent with recovery sequence (hardened reloads at 02:05Z/02:07Z then controlled reload at 11:54Z)","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-17T22-27-58Z.md"}
{"ts":"2026-05-17T22:27:58Z","type":"hypothesis","status":"untested","summary":"Candidates pipeline gap may be caused by packet restructuring — script needs new candidate generation trigger","next_check":"Inspect persistent-chat-memory script for candidate generation logic; verify if the unified packet structure changed the input format","evidence":"memory-candidates.jsonl last updated May 16; no new candidates since packet restructuring at 11:54Z May 17","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-17T22-27-58Z.md"}
{"ts":"2026-05-16T23:53:03Z","type":"hypothesis","status":"untested","summary":"Stale candidates pool (21 entries, oldest May 11) may be acceptable — user prefers restore packs over structured memory","next_check":"If user explicitly rejects curated memory in favor of restore packs again, archive candidates pool","evidence":"User criticized persistency mechanism at 18:32Z May 16; prefers restore-pack workflow docs","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-16T23-53-03Z.md"}
{"ts":"2026-05-16T23:53:03Z","type":"hypothesis","status":"untested","summary":"Active_metric scale includes embeddings/cached tokens/tool outputs — understanding formula could improve reload predictability","next_check":"Review ACPX config or source code for metric calculation","evidence":"active_metric=315423 triggered reload at max=200K on May 16 18:46Z; metric_kind='estimated_full_context_tokens'","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-16T23-53-03Z.md"}
{"ts":"2026-05-21T13:02:59Z","type":"hypothesis","status":"untested","summary":"ACPX set model override is session-level only and does not persist to opencode.json config file","next_check":"Verify whether model switch survives session reload or if opencode.json needs manual update","evidence":"Context usage report shows configured_model_context from opencode.json still deepseek-v4-flash:thinking while system prompt shows kimi-for-coding/k2p6; no reload since model set at 12:58Z","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/directed/reports/2026-05-21T13-02-59Z.md"}
{"ts":"2026-05-21T13:02:59Z","type":"hypothesis","status":"untested","summary":"Curator journal model identity resolution was premature — confusion persists between configured and actual model","next_check":"Next curator run should verify model identity independently rather than trusting prior resolution","evidence":"Curator journal 13:00Z tail claimed 'session model identity confusion now resolved (big-pickle, not Kimi)' but system prompt at 13:02Z shows kimi-for-coding/k2p6","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/directed/reports/2026-05-21T13-02-59Z.md"}
{"ts":"2026-05-26T17:13:07Z","type":"hypothesis","status":"untested","summary":"Model heartbeat acpx_rc=5 failure may be caused by stale model config in heartbeat script invocation","next_check":"Inspect persistent-chat-model-heartbeat script for hardcoded model or config mismatch between opencode.json and actual serving model","evidence":"acpx_rc=5 is an ACPX session error, not bash denial. opencode.json still shows DeepSeek V4 Flash. Actual model is GPT-5.4. Session-level config mismatch may break ACPX session creation for heartbeat.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/directed/reports/2026-05-26T17-13-07Z.md"}
{"ts":"2026-05-26T17:13:07Z","type":"hypothesis","status":"untested","summary":"Synthesis cascading failures may be caused by report-validation race or strict expectation check","next_check":"Review synthesis report-validation logic in daemon or script for timeout/strictness causing rejection of valid reports","evidence":"4 failures in 3 minutes (16:49-16:52) with 'Internal error' and 'expected report was not written'. Report file may be written but validation check runs before filesystem sync.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/directed/reports/2026-05-26T17-13-07Z.md"}
{"ts":"2026-05-26T17:13:07Z","type":"hypothesis","status":"untested","summary":"Semantic memory garbage may be caused by curator fallback-no-change dumping raw prompt context into explicit_memories","next_check":"Inspect persistent-chat-memory script or heartbeat logic for how explicit_memories keys are generated when curation fails","evidence":"Many semantic-memory.json keys contain raw 'Turn metadata' or assistant trace text. These look like prompt packet fragments written as memory keys when the curator cannot produce real facts.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/directed/reports/2026-05-26T17-13-07Z.md"}
{"ts":"2026-05-26T19:07:39Z","type":"hypothesis","status":"confirmed_true","summary":"Heartbeat acpx_rc=5 cascade was caused by transient ACPX session congestion or a stuck backend that cleared at 18:33Z","next_check":"Confirmed — 15+ consecutive successes from 18:33Z May 26 through 09:36Z May 27 with no config changes. Minor acpx_rc=1 sentinel issue remains.","evidence":"Recovery sustained without intervention. Fast heartbeat remained healthy throughout. No root cause deeper than transient ACPX issue identified.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-27T10-11-04Z.md"}
{"ts":"2026-05-29T22:11:18Z","type":"hypothesis","status":"untested","summary":"Direct ACP truncation bug is in daemon text extraction/stream capture, not OpenCode generation","next_check":"Inspect daemon.py direct ACP client for buffer limits, stream flush timing, or regex extraction issues that clip assistant final text.","evidence":"OpenCode runtime log contains full 293-token reply. turns.jsonl and Matrix events contain truncated version. Daemon assistant_text capture is the common truncated source.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-29T22-11-18Z.md"}
{"ts":"2026-05-30T04:11:14Z","type":"hypothesis","status":"untested","summary":"Truncation bug fix failed because direct-ACP pipeline is fragile for complex multi-tool turns involving daemon code inspection","next_check":"On next user turn, retry with simpler approach: grep exact function name in daemon.py, then single Edit tool call. Avoid long explore+read+edit sequences in one turn.","evidence":"Turn at 22:22Z with tool sequence read→grep→edit was interrupted. Similar pattern to May 28 13:06Z/13:45Z failures during bulk semantic candidate processing.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-30T04-11-14Z.md"}
{"ts":"2026-05-30T04:11:14Z","type":"hypothesis","status":"untested","summary":"Heartbeat sentinel blind spot is caused by curator emitting sentinel inside markdown code block or thinking trace, preventing wrapper regex match","next_check":"Inspect wrapper validation regex and compare with actual curator output tail from curator-log.jsonl entries 163-164.","evidence":"Every successful run since May 28 reports 'UPDATED sentinel was missing' or 'durable heartbeat activity detected without sentinel'. Curator consistently does real work.","source_report":"/home/matrix-lite/state/persistent-chat/operational-synthesis/reports/2026-05-30T04-11-14Z.md"}