aMuTorrent eMule BB browser smoke coverage
Summary¶
Add a browser smoke lane that runs aMuTorrent against a live eMule BB instance.
Beta 0.7.3 Classification¶
Release Gate. Full E2E-validated integration with aMuTorrent and the Arr suite is part of Release 1. This item owns the aMuTorrent side of that gate: at least one browser smoke against a live instance with request and console artifacts.
Execution Plan¶
Historical release context: Beta 0.7.3 REST and Arr execution plan.
Acceptance Criteria¶
- [x] aMuTorrent can connect to the eMule BB REST API with configured host, port, and API key
- [x] dashboard connection state renders eD2K and Kad status
- [x] transfers, shared files, shared directories, categories, searches, and uploads render without adapter exceptions
- [x] create/delete category and shared-directory reload flows are exercised through the browser smoke where supported
- [x] failures produce browser console and REST request artifacts
Completion Evidence¶
- tests:
affc4d6,11365ca - command:
python -m pytest tests\python\test_amutorrent_browser_smoke.py tests\python\test_live_e2e_suite.py -q - command:
python -m emule_workspace test live-e2e --config Release --platform x64 --suite amutorrent-browser-smoke - artifact:
repos\emulebb-build-tests\reports\amutorrent-browser-smoke\20260506-193606-eMule-main-release\result.json - aggregate:
repos\emulebb-build-tests\reports\live-e2e-suite\20260506-193606-eMule-main-release\result.json - Follow-up debug live proof:
repos\emulebb-build-tests\reports\amutorrent-browser-smoke\20260508-001203-eMule-main-debug\result.json. The run passed with browser workflows covering automatic, server, and Kad search modes twice, and the report now recordslaunch_inputswithp2p_bind_interface_name=hide.meandenable_upnp=true. The isolated profile usedBindInterface=hide.me, empty P2PBindAddr, WebServerBindAddr=127.0.0.1, andEnableUPnP=1. - Test commit:
fa55046keeps the aMuTorrent browser report on native/api/v1and records live-network launch inputs without ever writingBindAddr=hide.me. - Follow-up delete hardening: live browser smoke now adds a synthetic eD2K
transfer, deletes it through aMuTorrent's native
/api/v1/downloads/deletebridge, and verifies the next browser snapshot no longer contains that hash. aMuTorrent commit3c23c1bfixes the stale snapshot cache after mutation refreshes; test commit5a7565dkeeps the browser regression covered. - Debug live artifact after the delete fix:
repos\emulebb-build-tests\reports\amutorrent-browser-smoke\20260508-004347-eMule-main-debug\result.json. The run passed with delete resultDeleted 1/1 files, post-delete item count0, automatic/server/Kad search mode coverage,BindInterface=hide.me, empty P2PBindAddr, andEnableUPnP=1. - Fresh Release x64 revalidation:
repos\emulebb-build-tests\reports\amutorrent-browser-smoke\20260509-081711-eMule-main-release\result.json. The run passed after native REST and Arr adapter revalidation withBindInterface=hide.me, UPnP enabled, eD2K and Kad connected, automatic/server/Kad search modes, category create/delete, shared-files reload, synthetic eD2K add/delete, and post-delete snapshot cleanup. Focused aMuTorrent tests selected byamutorrent or browser_smoke or search_modes or transfer_detail or segment_snapshotalso passed. - Beta 0.7.3 controller replay artifact:
repos\emulebb-build-tests\reports\amutorrent-browser-smoke\20260509-142532-eMule-main-release\result.json. The run passed through the supportedamutorrent-browser-smokesuite with browser workflows, eMule REST readiness,BindInterface=hide.me, empty P2PBindAddr, andEnableUPnP=1evidence.
Pending Revalidation Focus¶
This gate proves the UI target, not native API ownership. The next Release 1
hardening pass should rerun the browser smoke after native /api/v1 and
Arr-adapter validation and confirm:
- [x] aMuTorrent still adapts to final native
/api/v1routes, envelopes, and field names without requiring native compatibility aliases. - [x] dashboard ED2K/Kad status, ED2K Server vs Kad search selection, and download-row delete remain covered.
- [x] progress percentage formatting remains acceptable with the shared native/qBit backend progress ratio helper.
- [x] browser console, page, and request artifacts remain sufficient to distinguish UI adapter failures from native REST failures.
Relationship To Other Items¶
- backs
CI-011 - complements
ARR-001 - consumes the native REST contract owned by
FEAT-013and follow-up items