Skip to content

WebServer concurrent REST and legacy HTML soak coverage

Summary

Run concurrent REST and legacy HTML traffic through the embedded WebServer to find release-blocking hangs, crashes, and shared-state regressions.

Beta 0.7.3 Classification

Release Gate. This is the live proof that the BUG-073 synchronization work and the REST/legacy WebServer split hold under mixed request load. The first release needs a short smoke budget; a longer soak budget can remain an operator option.

Execution Plan

Historical release context: Beta 0.7.3 REST and Arr execution plan.

Acceptance Criteria

  • [x] concurrent REST read traffic covers app, status, snapshot, transfers, shared files, uploads, servers, Kad, and logs
  • [x] safe REST mutations run alongside reads without corrupting app state
  • [x] legacy HTML requests run concurrently with REST requests
  • [x] no WebServer session or bad-login state corruption appears under soak
  • [x] app shutdown remains bounded after the soak

Completion Evidence

  • Test commits: f6cc0f9, 75b4ce7, 331f70d, fe6ee8c.
  • Command: python -m emule_workspace test live-e2e --config Release --platform x64 --suite rest-api --rest-stress-budget soak.
  • Artifacts: repos\emulebb-build-tests\reports\rest-api-smoke\20260506-184530-eMule-main-release; repos\emulebb-build-tests\reports\live-e2e-suite\20260506-184530-eMule-main-release\result.json.
  • Mixed soak completed 10997 requests with 0 failures, 0 timeouts, and 0 non-JSON native REST responses.
  • The app closed cleanly after stress in 5418.439 ms.

Relationship To Other Items

  • validates BUG-073 under live load
  • backs CI-015