Commit Graph

15 Commits

Author SHA1 Message Date
AskaEth dd79194179 fix: add PageRegistry.clear() and getAll(), fix BrowserManager.cleanup() to clear registry 2026-08-12 20:56:16 +08:00
AskaEth ac503a5ca3 feat(daemon): implement page CRUD routes (Task 8)
- Add routes/pages.ts with pageRoutes handler for POST/GET/DELETE /pages
- Handle POST /pages (create), GET /pages (list), GET /pages/:id, DELETE /pages/:id
- Use safeStringify for all JSON output, proper error codes for 400/404/409/500
- Update server.ts to accept optional BrowserManager and register pageRoutes
- Add 13 unit tests with mock BrowserManager covering all endpoints
2026-08-12 20:55:36 +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
AskaEth 513da621c6 feat: add pidfile management for daemon process tracking 2026-08-12 20:47:34 +08:00
AskaEth 7c70063d95 docs: set license to Apache-2.0 2026-08-12 20:45:57 +08:00
AskaEth 19d67cfda9 feat: add daemon server skeleton with health check endpoint 2026-08-12 20:45:25 +08:00
AskaEth 3810661098 feat: add VisionLClient HTTP client for daemon communication 2026-08-12 20:43:53 +08:00
AskaEth 8b83fb5c53 feat: add JSON escape utility with comprehensive edge case tests 2026-08-12 20:41:12 +08:00
AskaEth e3fe330745 feat: add core type definitions (PageInfo, ApiResponse, WsEvent, FingerprintProfile) 2026-08-12 20:38:34 +08:00
AskaEth 01701e461a fix: align daemon package.json main field with source placeholder 2026-08-12 20:37:26 +08:00
AskaEth 1392357dc1 chore: initialize monorepo scaffold with npm workspaces 2026-08-12 20:36:12 +08:00
AskaEth f5791906e2 docs: add v1 implementation plan (25 tasks) 2026-08-12 20:32:07 +08:00
AskaEth 985860b2a2 docs: 将反检测作为核心设计原则,全面更新架构和文档
- architecture.md: 新增反检测为核心第一性原理,新增 §3 反检测设计(13 个指纹维度全覆盖)
- anti-detection.md: 新增反检测专项文档(14 节,详尽列举检测方式和应对策略)
- api.md: POST /pages 新增 profile 参数,新增 GET /profiles 端点
- cli.md: 新增 --profile 全局选项,新增 visionl profiles 命令
- contributing.md: 新增反检测开发规范、检测站点验证要求
- README.md: 更新项目定位和特性描述
2026-08-12 20:21:53 +08:00
AskaEth 0c437a96f1 docs: 项目架构设计文档(中文)及使用指南
- architecture.md: 完整架构设计(技术栈、API、CLI、生命周期、测试策略)
- api.md: REST + WebSocket 接口文档
- cli.md: CLI 命令参考
- contributing.md: 开发规范与 JSON 转义要求
- quickstart.md: 快速开始指南
- llm-integration.md: 智能体集成指南
- examples.md: 8 个典型使用场景
2026-08-12 20:14:54 +08:00
AskaEth 4f7854ab6e Initial commit 2026-08-12 20:09:49 +08:00