A delegated subagent child (source='subagent' in state.db) usually has no WebUI sidecar but is registered in the WebUI index sharing the parent's lineage. That made GET /api/session -> _claim_or_synthesize_cli_session return 'was_webui' -> 404, so the child pane opened empty despite state.db holding messages. - api/routes.py: add _state_db_session_source() + _is_subagent_child_session_id(); exclude subagent children from the was_webui 404 gate so they recover their state.db transcript (the #2782 self-heal 404 for deleted WebUI sessions is kept). - static/sessions.js: add _isSubagentChildSession() + _sessionNeedsServerImportForLoad() (kept separate from _isExternalSession to avoid widening refresh-gating); the main session-tap, lineage-segment, and child-open handlers now trigger the import/merge path for subagent children. - tests: test_5307_subagent_child_transcript.py (7 tests). Fixes #5307 |
||
|---|---|---|
| .. | ||
| vendor | ||
| apple-touch-icon.png | ||
| assistant_turn_anchors.js | ||
| boot.js | ||
| commands.js | ||
| extension_settings.js | ||
| favicon-32.png | ||
| favicon-192.png | ||
| favicon-512.png | ||
| favicon-512.svg | ||
| favicon.ico | ||
| favicon.svg | ||
| i18n.js | ||
| icons.js | ||
| index.html | ||
| login.js | ||
| manifest.json | ||
| messages.js | ||
| onboarding.js | ||
| outline.js | ||
| panels.js | ||
| pwa-startup.js | ||
| sessions.js | ||
| style.css | ||
| sw.js | ||
| terminal.js | ||
| ui.js | ||
| workspace.js | ||