[
  {
    "prompt": "Create two new Python files by extracting code from app.py for the Timmy-Time-dashboard project. The app.py is at /tmp/timmy-agents/hermes/repo/src/dashboard/app.py (780 lines). Split it into focused modules.\n\nFILE 1: /tmp/timmy-agents/hermes/repo/src/dashboard/schedulers.py\nExtract ALL background task scheduler coroutines from app.py. This includes:\n- _BRIEFING_INTERVAL_HOURS constant (line 142)\n- _briefing_scheduler() async function (lines 145-163)\n- _thinking_scheduler() async function (lines 166-189)\n- _hermes_scheduler() async function (lines 192-216)\n- _loop_qa_scheduler() async function (lines 219-255)\n- _PRESENCE_POLL_SECONDS, _PRESENCE_INITIAL_DELAY constants (lines 258-259)\n- _SYNTHESIZED_STATE dict (lines 261-269)\n- _presence_watcher() async function (lines 272-303)\n- _start_chat_integrations_background() async function (lines 306-338)\n- _discord_token_watcher() async function (lines 341-393)\n\nThe file needs its own imports. Look at what each function uses:\n- asyncio, json, logging from stdlib\n- from pathlib import Path\n- from config import settings\n- from timmy.workshop_state import PRESENCE_FILE\n\nAdd a module docstring: \"\"\"Background scheduler coroutines for the Timmy dashboard.\"\"\"\n\nMake all the previously-private functions public by keeping their underscore names but adding an __all__ list.\n\nFILE 2: /tmp/timmy-agents/hermes/repo/src/dashboard/startup.py\nExtract startup/shutdown lifecycle functions:\n- _startup_init() function (lines 396-409)\n- _startup_background_tasks() function (lines 412-430) \u2014 this needs to import the schedulers from dashboard.schedulers\n- _try_prune() function (lines 433-445)\n- _check_vault_size() function (lines 448-462)\n- _startup_pruning() function (lines 465-504)\n- _shutdown_cleanup() async function (lines 507-532)\n- The lifespan() async context manager (lines 535-578)\n\nImports needed:\n- asyncio, logging from stdlib\n- from pathlib import Path\n- from contextlib import asynccontextmanager\n- from config import settings\n- from fast",
    "chosen": "",
    "session": "session_20260324_150048_b6e86f.json"
  }
]