Skip to content

Persist Electron logs and recover from renderer death across all window views#2428

Merged
joshalbrecht merged 17 commits into
mainfrom
gabriel/archetypal-mouse
Jul 14, 2026
Merged

Persist Electron logs and recover from renderer death across all window views#2428
joshalbrecht merged 17 commits into
mainfrom
gabriel/archetypal-mouse

Merge remote-tracking branch 'origin/main' into gabriel/archetypal-mouse

45c1a55
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
GitHub Actions / Minds Snapshot Resume Tests completed Jul 13, 2026 in 0s

Tests passed after flaky retries

One or more tests failed on first attempt but passed on retry. See the workflow run summary and job logs for the failed-attempt annotations and details.

Minds Snapshot Resume Tests: retry + flaky summary

  • Unique tests: 9
  • Total runs (attempts across retries): 16
  • Tests that ran more than once: 6
  • Tests marked @pytest.mark.flaky: 0
  • Flaky-recovered (failed then passed): 1
  • Failing (final): 0

Failures

apps/minds/test_snapshot_resume.py::test_backup_update_gate_blocks_on_live_chat_and_stop_chats_clears_it (attempt 2/3) — failure: AssertionError: `mngr message` failed for the chat agent: ERROR: TUI ready timeout -- remote pane content: root@2567a2c686e0:/mngr/code# ( $MNGR_AGENT_STATE_DIR/commands/claude_background_tasks.sh m...
/code/mngr/apps/minds/test_snapshot_resume.py:663: in test_backup_update_gate_blocks_on_live_chat_and_stop_chats_clears_it
    assert messaged.returncode == 0, f"`mngr message` failed for the chat agent: {messaged.stderr}"
E   AssertionError: `mngr message` failed for the chat agent: ERROR: TUI ready timeout -- remote pane content:
E     root@2567a2c686e0:/mngr/code# ( $MNGR_AGENT_STATE_DIR/commands/claude_background_tasks.sh minds-staging-forever-eae2629b agent ) & _MNGR_READ_SID=$(cat "$MNGR_AGENT_STATE_DIR/claude_session_id" 2>/dev
E     /null || true); export MAIN_CLAUDE_SESSION_ID="${_MNGR_READ_SID:-9e476c1a-747c-4012-98ee-9622824a4b6f}" && rm -rf $MNGR_AGENT_STATE_DIR/session_started && ( ( find "${CLAUDE_CONFIG_DIR:-$HOME/.claude}
E     " -name "$MAIN_CLAUDE_SESSION_ID.jsonl" | grep . ) && claude --settings "$MNGR_AGENT_STATE_DIR/plugin/claude/mngr_managed_settings.json" --resume "$MAIN_CLAUDE_SESSION_ID" --dangerously-skip-permissio
E     ns --disallowed-tools AskUserQuestion,ExitPlanMode,TodoWrite,TaskCreate,TaskList,TaskUpdate ) || claude --settings "$MNGR_AGENT_STATE_DIR/plugin/claude/mngr_managed_settings.json" --session-id 9e476c1
E     a-747c-4012-98ee-9622824a4b6f --dangerously-skip-permissions --disallowed-tools AskUserQuestion,ExitPlanMode,TodoWrite,TaskCreate,TaskList,TaskUpdate
E     [1] 1904
E     /mngr/agents/agent-78ecc1af88074485bc260d0b87ae4cc0/plugin/claude/anthropic/projects/-mngr-code/9e476c1a-747c-4012-98ee-9622824a4b6f.jsonl
E     ERROR: Failed to send message to forever-eae2629b: Failed to send message to agent forever-eae2629b: Timeout waiting for TUI to be ready (waited 30.0s)
E     Pane content:
E     root@2567a2c686e0:/mngr/code# ( $MNGR_AGENT_STATE_DIR/commands/claude_background_tasks.sh minds-staging-forever-eae2629b agent ) & _MNGR_READ_SID=$(cat "$MNGR_AGENT_STATE_DIR/claude_session_id" 2>/dev
E     /null || true); export MAIN_CLAUDE_SESSION_ID="${_MNGR_READ_SID:-9e476c1a-747c-4012-98ee-9622824a4b6f}" && rm -rf $MNGR_AGENT_STATE
... [truncated to 2000 chars]
Test Runs Final @flaky
apps/minds/test_snapshot_resume.py::test_backup_update_gate_blocks_on_live_chat_and_stop_chats_clears_it 3 flaked 1, passed 2 no
apps/minds/test_snapshot_resume.py::test_backup_service_check_update_and_force_update_converge 2 passed no
apps/minds/test_snapshot_resume.py::test_resumed_workspace_registered_expected_services 2 passed no
apps/minds/test_snapshot_resume.py::test_resumed_workspace_serves_system_interface 2 passed no
apps/minds/test_snapshot_resume.py::test_resumed_workspace_system_services_agent_is_alive 2 passed no
apps/minds/test_snapshot_resume.py::test_workspace_docker_container_is_present_and_stopped 2 passed no
apps/minds/test_snapshot_resume.py::test_backup_enable_repair_and_destination_change_on_resumed_workspace 1 passed no
apps/minds/test_snapshot_resume.py::test_create_apikey_workspace_and_chat_via_electron 1 passed no
apps/minds/test_snapshot_resume.py::test_minds_recovery_restores_dead_system_interface 1 passed no