HERMES-GIELIE/api
Qi 598fd4ff83 perf(http): enable HTTP/1.1 keep-alive
Enable HTTP/1.1 on the WebUI server so browsers can reuse TCP
connections across normal API/static requests. Tighten response framing
by adding Content-Length to short manual responses and marking
SSE/streaming responses as Connection: close, keeping HTTP/1.1 message
boundaries unambiguous.

Verified:
- python3 -m py_compile server.py api/auth.py api/routes.py api/kanban_bridge.py
- pytest tests/test_auth_*.py tests/test_*sse*.py tests/test_pr1350_*.py
        tests/test_pr1355_sse_handler_no_deadlock.py tests/test_kanban_bridge.py
        tests/test_logs_ui_static.py tests/test_onboarding_static.py
        tests/test_regressions.py tests/test_1038_pwa_auth_redirect.py
        tests/test_issue1623_sse_heartbeat_alignment.py
  → 239 passed, 1 skipped
2026-05-24 18:26:56 +00:00
..
__init__.py
agent_health.py fix(agent-health): treat stale running gateway as unknown 2026-05-11 23:13:09 +00:00
agent_sessions.py fix: keep resumed CLI sessions in sidebar cap 2026-05-20 15:54:44 -07:00
auth.py perf(http): enable HTTP/1.1 keep-alive 2026-05-24 18:26:56 +00:00
background.py
clarify.py chore: address review notes — dedup comment and 409-path clarification 2026-05-20 19:57:20 +00:00
commands.py fix(security): drop unsafe-eval + add jsdelivr to CSP, sanitize plugin error 2026-05-11 17:53:02 +00:00
compression_anchor.py fix(compression): ignore tool output for compaction cards 2026-05-24 03:55:42 +00:00
config.py Add option to ignore agent updates 2026-05-24 15:52:34 +00:00
dashboard_probe.py fix: preserve IPv6 dashboard link brackets 2026-05-19 21:35:10 -04:00
extensions.py
gateway_watcher.py
goals.py
helpers.py stage-348: apply Opus SHOULD-FIX-pre-merge — add '://' to _SENSITIVE_LOWER_MARKERS 2026-05-13 16:54:36 +00:00
kanban_bridge.py perf(http): enable HTTP/1.1 keep-alive 2026-05-24 18:26:56 +00:00
metering.py
models.py Stage 404: PR #2716 — Performance optimizations by @dobby-d-elf 2026-05-24 18:08:41 +00:00
oauth.py
onboarding.py Classify onboarding DNS probe failures consistently 2026-05-15 08:51:30 +08:00
profiles.py Stage 393: PR #2637 2026-05-20 22:24:40 +00:00
providers.py feat: sort configured/custom providers to top in model picker and settings 2026-05-22 16:13:46 +00:00
request_diagnostics.py
rollback.py
routes.py perf(http): enable HTTP/1.1 keep-alive 2026-05-24 18:26:56 +00:00
run_journal.py Address run journal replay review 2026-05-16 02:58:34 +00:00
runtime_adapter.py Stage 398: PR #2696 — feat(runtime): add runner-local adapter selection (RuntimeAdapter slice 4c, feature-flagged) 2026-05-21 17:43:54 +00:00
session_events.py sync session list from server events 2026-05-20 08:18:56 -06:00
session_lifecycle.py fix: align WebUI memory commits with CLI boundaries 2026-05-17 05:04:57 -06:00
session_ops.py
session_recovery.py fix(session): rebuild missing startup index 2026-05-20 23:43:30 +08:00
startup.py
state_sync.py
streaming.py fix(compression): ignore tool output for compaction cards 2026-05-24 03:55:42 +00:00
system_health.py
terminal.py fix(terminal): drop PR_SET_PDEATHSIG preexec_fn that killed every Linux shell 2026-05-24 17:13:31 +00:00
turn_journal.py fix: lock turn journal appends 2026-05-15 16:39:45 -07:00
updates.py Stage 403: Opus pre-release fixes (1 MUST-FIX + 3 SHOULD-FIX) 2026-05-24 17:42:06 +00:00
upload.py fix(upload): scope archive extraction to per-session attachment dir 2026-05-18 21:22:02 +03:00
usage.py fix: display canonical cache hit percentage 2026-05-19 02:27:12 -06:00
workspace.py feat(workspace): add backend Git operations 2026-05-20 04:51:41 +00:00
workspace_git.py fix(workspace): tighten git subprocess trust boundary 2026-05-20 11:02:45 +00:00
worktrees.py Harden worktree removal safeguards 2026-05-13 09:49:15 +08:00