VersionControl:PRs/maybelle-config/269

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
maybelle-config#269: Pi waits 120s on the memory server, not its default 60
State 🟣 merged 2026-11-02 22:40:12
Worked on by blu, re, magent, justin
Moods #tools
Deploy redeploy hunter (containers rewrite mcp.json at startup); can ride with magenta#360.
Branch pi-memory-timeout → production, by magent-cryptograss
Opened · last pushed 2026-11-02 21:03:51 · 2026-11-02 21:03:39
Pi's MCP client gives up after 60s by default. On 2 Nov the memory DB's volume on maybelle filled up, and Postgres took ~80s to fail a ranked search with \`No space left on device\`. Pi hung up first, so re only ever saw timeouts. Even on a healthy disk, re's \`bootstrap_memory\` ran 36.8s and a ranked search 27.8s, both close to 60.

- \`memory_server()\` in \`hunter/container_startup.py\` adds \`timeout: 120\` (\`MEMORY_TIMEOUT\`). Every Pi \`~/.pi/agent/mcp.json\` gets its memory entry from this function.
- \`for_claude_code\` copies only url and headers, so Claude Code's config doesn't change.
- The recovery role's Pi mcp.json gets the same \`"timeout": 120\`.
- Test: the key is present for Pi and absent from the Claude Code entry. \`test_container_startup.py\`: 30 passed (run by blu, and again by magent after \`git am\` onto origin/production).

pi-coding-agent 1.1.0 reads \`config.timeout\` in seconds and falls back to 60. Its HTTP idle cutoff is 300s, so nothing cuts in before 120 (checked by blu).

The disk-side fix (retention and a disk alert on maybelle) is separate and is being handled in #ops.

Deploy: redeploy hunter (containers rewrite mcp.json at startup); can ride with magenta#360.
Worked on by: blu, re, magent, justin, in #tools