Mark's Reports

All reports · published 2026-04-20

MAPS/ Audit — 2026-04-19

Audit scope: every file under MAPS/ (including _generators/ and who_is_mark_progress.json), cross-checked against this repo with rg/reads. Apex-only scheduled tasks and processes are verified against committed snapshots (process_map.md, scheduled_task_map.md), not live Windows.

Summary

MetricCount
Files audited21
Accurate concrete claims (spot-checked; not every line enumerated)~85
Stale claims6
Wrong / unverifiable-in-repo claims12
Missing coverage items8
Internal contradictions (within MAPS or MAPS vs code)7

A. Internal contradictions

Heartbeat tag: session_start vs agent_heartbeat

Impact: Agents following different files will use different tags; heartbeat queries and tp3_heartbeat_check.py (tp3_scripts/tp3_heartbeat_check.py uses %agent_heartbeat%) will miss session_start entries.

data_flow_map.md: Bidet edge — DORMANT vs “ACTIVE” in auto block

Impact: Same edge id is simultaneously dormant (hand narrative) and active (freshness query). One of the two sections is out of date or the definitions differ without explanation.

“3-week” ingest narrative vs later correction

Impact: README still leads with the stronger headline; readers must read data_flow_map.md correction note for nuance.

mcp_server_map.md vs mcp_server_map.md onboarding checklist (tool naming)

agent_coordination.md “no dead-man’s switch” vs heartbeat_protocol.md

Impact: Coordination map debt section is outdated relative to heartbeat protocol + code.

process_map.md vs scheduled_task_map.md (duplicates vs tasks)


B. Drift from reality (code vs map)

MAPS/mcp_server_map.md

LocationClaimVerdictEvidence
L17Tools: twin_memory_*, omi_ingest_transcript, slack_post_messageWrong namesMCP registry in tp3_scripts/tp3_mcp_omi_stdio_server.py L990–L1057: omi.ingest_transcript, omi.search_memories, omi.search_memories_unified, omi.get_status, slack.post_message, twin.memory_write, twin.memory_read, twin.memory_search, twin.memory_list, twin.memory_broadcast (dot-separated, not underscores).
L18stdio auth: TP3_OMI_API_KEYNot in stdio serverrg TP3_OMI in repo: only MAPS and mission briefs; tp3_scripts/tp3_mcp_omi_stdio_server.py has no TP3_OMI_API_KEY.
L31See reference_zapier_mcp.mdFile missingrg / glob: no reference_zapier_mcp.md in repo.
L41See reference_chrome_devtools_mcp.mdFile missingNo such file in repo.
L20Biometric: “biometric-specific search/ingest”Vague but code existstp3_scripts/tp3_mcp_biometric_stdio_server.py L395–L427: biometric.ingest_signal, biometric.search_signals, biometric.get_status.

MAPS/agent_coordination.md

LocationClaimVerdictEvidence
L72twin_memory_write + tag session_startWrong tool id + tagMCP tools use twin.memory_* (tp3_scripts/tp3_mcp_omi_stdio_server.py L1059+); heartbeat protocol uses agent_heartbeat (MAPS/heartbeat_protocol.md L15–18).

MAPS/data_flow_map.md

LocationClaimVerdictEvidence
L62–L63Diagram: twin.memory_writeMatches codeSame dotted names in tp3_scripts/tp3_mcp_omi_stdio_server.py tools list.
L38tool_ingest_transcriptMatchestp3_scripts/tp3_mcp_omi_stdio_server.py defines tool_ingest_transcript L212; MCP exposes omi.ingest_transcript.

MAPS/heartbeat_protocol.md

LocationClaimVerdictEvidence
L114Rollout: twin_memory_write with tag agent_heartbeatMisleading nameImplementation is twin.memory_write via MCP (tp3_scripts/tp3_mcp_omi_stdio_server.py); tag agent_heartbeat is correct.

MAPS/README.md

LocationClaimVerdictEvidence
L11–L13Effectiveness checks: tp3_scripts/tp3_effectiveness_checks.pyAccurateFile exists.
L30–L31Both process_map.md and scheduled_task_map.md refreshed Daily 6:55am via "TP3 Map Refresh"Stale / overstatedMAPS/scheduled_task_map.md L49: task TP3 Map Refresh action is MAPS\_generators\gen_process_map.py only — no gen_task_map.py in the same scheduled action line.
L52–L57Manual refresh commands for both generatorsAccurateMatches intent; does not fix the single-task automation gap.

MAPS/credential_map.md

LocationClaimVerdictEvidence
L43–L44TP3_MCP_PUBLIC_TOKEN for omi-mcp.thebarnetts.info/rpcAligned with codetp3_scripts/tp3_mcp_omi_sse_server.py L53–L61: TP3_MCP_PUBLIC_TOKEN, header X-TP3-MCP-TOKEN.
L45Bidet PIN shown as 4653Sensitive literal in repoThis audit does not repeat the value; map should not embed live PINs — rotate and redact in a follow-up.

CLAUDE.md (drift vs MAPS / code)

LocationClaimVerdictEvidence
L230Rule 11: twin_memory_write with tag agent_heartbeatWrong MCP tool idMCP exposes twin.memory_write (tp3_scripts/tp3_mcp_omi_stdio_server.py L1059); tag matches heartbeat_protocol.md.

Ports / paths (spot-check)

Claim sourceClaimVerdictEvidence
MAPS/mcp_server_map.md L17SSE Omi on port 8933Accuratetp3_scripts/tp3_mcp_omi_sse_server.py L409: TP3_MCP_SSE_PORT default 8933.
docker-compose.yml L47–L50MinIO console :9001Accuratecommand: server /data --console-address ":9001" and port mapping.
MAPS/scheduled_task_map.md L48–L48TP3 Launch At Logontp3_launch.ps1Accurate pathtp3_scripts/tp3_launch.ps1 exists; -WaitForDocker switch exists L7–L59.
Mission brief / docsTask name TP3 Backup WeeklyName mismatchCommitted MAPS/scheduled_task_map.md L53: TP3 Weekly Backup.

C. Missing coverage

1. mcp_server_map.md not indexed in MAPS/README.md — “Current maps” table (L28–L34) omits mcp_server_map.md while MAPS/mcp_server_map.md exists; Planned table (L36–L43) still lists mcp_server_map.md as Phase 3 (L40).

2. mcp_server_map.md not indexed — Same README omits agent_coordination.md, heartbeat_protocol.md, hardware_apex.md, today_agenda.md, legacy legacy_soil_*.md, who_is_mark_progress.json.

3. OllamaServe scheduled taskCLAUDE.md L69 references OllamaServe at logon; MAPS/scheduled_task_map.md snapshot (2026-04-18) has no task matching Ollama / OllamaServe in the captured inventory (23 tasks). Either pattern filter excludes it, task name differs, or map snapshot predates install — not documented in MAPS.

4. SSE Omi / biometric HTTP endpointsdata_flow_map.md centers ingest worker + poller; 8933/8934 SSE MCP is not an edge in the data-flow diagram (MCP query path vs ingest).

5. MinIO / Redisdata_flow_map.md focuses on Omi/Bidet/backfill/shared memory; object storage path is implicit in mcp_server_map.md L23 only.

6. Third-party MCP table — No repo verification for Gmail, Calendar, Make.com, etc. (expected; flag as host-config-only).

7. gen_today.py — Present under MAPS/_generators/ but not in README generator table.

8. tp3_heartbeat_check.py — Implements heartbeat_protocol.md but not referenced from README.md or agent_coordination.md “related maps” list.


D. README accuracy

MAPS/README.md

Line(s)Issue
L26–L34Incomplete index — does not list all files in MAPS/ (see §C).
L36–L43Planned table stalemcp_server_map.md is present in repo (MAPS/mcp_server_map.md) but still listed under Planned (Phase 3) L40.
L30–L31Refresh cadence — claims both scheduled_task_map.md and process_map.md via TP3 Map Refresh task; scheduled task row (MAPS/scheduled_task_map.md L49) shows only gen_process_map.py.
L6–L7 vs data_flow_map.mdNarrative — “3-week flatline” vs corrected post-mortem in data_flow_map.md L16–L17.

MAPS/README.md “How to refresh” (L47–L57)


Recommended follow-ups


Top 5 severity (would bite soonest)

1. Wrong MCP tool names (twin_memory_* vs twin.memory_*) in mcp_server_map.md L17 and CLAUDE.md L230 — agents calling tools literally will fail.

2. Heartbeat tag split (session_start vs agent_heartbeat) across agent_coordination.md / mcp_server_map.md vs heartbeat_protocol.md — silent monitoring gaps.

3. TP3 Map Refresh only runs gen_process_map.py (scheduled_task_map.md L49) while README promises both maps on the same cadence — scheduled_task_map drift risk.

4. data_flow_map.md edge 3 DORMANT vs ACTIVE auto row — wrong trust in “is Bidet dead or not?”

5. Committed Bidet PIN in credential_map.md L45 — security hygiene; rotate and redact.


Notes (time-box)