Commit Graph

4 Commits

Author SHA1 Message Date
AskaEth e79590a6d8 feat(daemon): add WebSocket relay with console/network monitoring
- Add ws-relay.ts: WebSocket server at /ws with broadcast function
- Add network event types (request/response/failed) to core ws.ts types
- Add ConsoleEntry and NetworkEntry types
- Add consoleLog and networkLog buffers to PageRegistry (100/200 max)
- Add console listener in createPage: broadcasts page:console events
- Add network listeners (request/response/requestfailed) in createPage
- Add page crash handler broadcasting page:crashed events
- Add history endpoints: GET /pages/:id/console and GET /pages/:id/network
- Integrate createWsRelay in server.ts startup
- Bump ws from devDependency to full dependency
2026-08-12 21:28:02 +08:00
AskaEth 4f387b5ae7 feat(daemon): add stealth injection orchestrator (Task 17)
- Create stealth/index.ts: applyStealth() calls all 6 injection modules
  in correct order (initScript before nav, page.route after page)
- Update browser-manager.ts: call applyStealth in createPage before goto
- Constructor now accepts profileId (default 'desktop-chrome') or profile object
- Update daemon src/index.ts: re-export stealth orchestrator, getProfile,
  humanClick, humanType, humanScroll, injectHeaderStealth
2026-08-12 21:19:35 +08:00
AskaEth dd79194179 fix: add PageRegistry.clear() and getAll(), fix BrowserManager.cleanup() to clear registry 2026-08-12 20:56:16 +08:00
AskaEth a8fb781a7c feat: add browser manager with page registry and Playwright stealth integration
- PageRegistry: thread-safe in-memory registry for tracking active pages by ID and alias
- BrowserManager: Playwright browser lifecycle with stealth plugin, context creation, and page navigation
- 8 unit tests for PageRegistry (add, get, findByIdOrAlias, hasAlias, remove, list)
- 8 integration tests for BrowserManager (skipped by default, guard: VISIONL_INTEGRATION=1)
- Fix: PageInfo import in core/client.ts (was incorrectly imported from api.js instead of page.js)
2026-08-12 20:51:08 +08:00