Operational Synthesis — 2026-09-08T04:11:04Z

Summary

• Memory restore and model heartbeat are healthy: restore `ok=true`, 7,528 entries; model heartbeat `rc=0`, `acpx_rc=0`, `NO_CHANGE`.

• Main direct ACP is healthy at 283,998 provider tokens (27.0%), stage `normal`, no reload/compaction pressure. The preferred model log is current through 2026-09-05T10:13:16Z; no newer user turn is evidenced.

• Material unresolved work remains: scheduled-worker model selection drift, isolated durable polling-control-plane design, stale decision/generated memory state, and candidate review.

Evidence reviewed

• `memory-heartbeat.json`, `model-heartbeat.json`, `context-guard.json`, `restore-packet.json`

• Recent tail of `model-conversation-log.jsonl` (latest activity: Hamburg coffee search, 2026-09-05)

• `actions.jsonl`, `findings.jsonl`, `hypotheses.jsonl`, `notices.jsonl`

• `recent-topics.md`, `decision-state.json`, `semantic-memory.json`, `semantic-candidates.jsonl`, directed synthesis index

Findings

1. **Runtime healthy, activity quiet.** Restore is successful and the model heartbeat completed without a durable-memory change. The direct ACP guard is normal; there is no basis for a reload.

2. **Generated model identity is still wrong.** continuity-summary.txt says kimi-for-coding/k2p6, while context-guard.json identifies the live/configured model as openai/gpt-5.6-terra. This is persistent generated-state drift; repair the source/helper, not the generated file.

3. **Candidate lifecycle still needs curator ownership.** The latest prior synthesis recorded 13 open memory candidates and one semantic candidate needing more evidence. Current semantic-candidate inspection confirms the latter is a one-off cultural-events request and should remain unpromoted. A direct status recount of the memory-candidate pool was not available from the permitted search surface.

4. **Current durable architecture direction remains open.** The user-approved direction is an isolated, model-agnostic polling control plane before the native backend: arbitrary per-watch timing, durable queue, dedupe/debounce, retry/backoff, deadlines, wake budgets, shadow mode, and visible subagent lifecycle. Current ACP resume is only transitional.

5. **State freshness debt persists.** decision-state.json has not been updated since 2026-05-27, and the directed synthesis index has no new directed report since May. These are maintenance gaps, not evidence of missing conversations.

Hypotheses

• The recurring obsolete model string is likely in scheduled-worker source/configuration rather than a current runtime packet, because the live context and heartbeat succeed on GPT-5.6 Terra while only generated continuity output remains stale. Verify with source inspection and two clean worker runs.

• The remaining semantic candidate is noise/transient context, not a durable preference; curator should mark it ignored or stale using its normal helper rather than promoting it.

Actions for main agent/infrastructure

• Repair scheduled-worker model/config selection and verify two consecutive clean runs.

• Review/close the 13 memory candidates (if still open) and mark the one `needs_more_evidence` semantic candidate as ignored/stale if curator agrees.

• Stage the isolated polling control plane in shadow mode; do not extend the ACP-coupled timer dispatcher or replace the live backend in this maintenance cycle.

• Refresh `decision-state.json` and harden directed-index notice repopulation so resolved/obsolete reports do not re-inflate notices.

Missing tools / blockers

• Native Matrix-lite timer, subagent, approval, backlog, and observability status tools were not exposed in this worker; no independent control-plane health proof is possible.

• `/home/matrix-lite/state/turns.jsonl` and `observability.jsonl` were not independently verified here. Do not infer backlog from canonical-vs-model log line counts.

• No subagents were spawned; no approvals were requested.

Operational risk / robustness recommendation

The largest operational risk is silent stale generated context: a healthy worker can repeatedly inject an obsolete model identity. Add a startup/source-vs-generated consistency check that fails visibly (without blocking user turns), and expose read-only timer/subagent/backlog diagnostics to scheduled workers.

Curation

No curated-memory edit is proposed. The candidate review and model-identity repair should be handled by the owning curator/main-agent workflows.