|
|
70d5f5689e
|
wip
|
2025-12-06 00:17:24 +01:00 |
|
|
|
b7d5551ea7
|
wip
|
2025-12-04 11:54:42 +01:00 |
|
|
|
c0fdae3d3c
|
wip
|
2025-12-03 16:33:12 +01:00 |
|
|
|
747a77cb39
|
website poc
|
2025-12-02 00:19:49 +01:00 |
|
|
|
98a09a3f2b
|
wip
|
2025-12-01 17:27:56 +01:00 |
|
|
|
e7ada8aa23
|
wip
|
2025-12-01 00:48:34 +01:00 |
|
|
|
9a1feb2912
|
wip
|
2025-11-30 14:00:46 +01:00 |
|
|
|
f8a1fbeb50
|
Refactor infra tests, clean E2E step suites, and fix TS in tests
|
2025-11-30 10:58:49 +01:00 |
|
|
|
f552649357
|
wip
|
2025-11-27 18:14:25 +01:00 |
|
|
|
6a0cab6cc6
|
wip
|
2025-11-27 13:26:17 +01:00 |
|
|
|
502d9084e7
|
wip
|
2025-11-27 02:23:59 +01:00 |
|
|
|
fef75008d8
|
wip
|
2025-11-26 17:03:29 +01:00 |
|
|
|
e2bea9a126
|
working companion prototype
|
2025-11-24 23:32:36 +01:00 |
|
|
|
bb8b152b8a
|
feat(e2e): add Docker-based E2E test infrastructure
|
2025-11-22 15:40:23 +01:00 |
|
|
|
81b2fd3cd3
|
feat(ci): add husky pre-commit hook and fix puppeteer-core chrome detection
|
2025-11-22 13:37:39 +01:00 |
|
|
|
38e7c6f60f
|
fix(deps): remove unused pino packages causing Electron tracingChannel error
|
2025-11-22 11:13:39 +01:00 |
|
|
|
3a60ffae91
|
feat(logging): add professional logging with pino and headless E2E tests - Add ILogger port interface in application layer - Implement PinoLogAdapter with Electron-compatible structured logging - Add NoOpLogAdapter for testing - Wire logging into DI container and all adapters - Create 32 E2E tests for automation workflow (headless-only) - Add vitest.e2e.config.ts for E2E test configuration - All tests enforce HEADLESS mode (no headed browser allowed)
|
2025-11-22 01:02:38 +01:00 |
|
|
|
7eae6e3bd4
|
refactor: restructure to monorepo with apps and packages directories - Move companion app to apps/companion with electron-vite - Move domain/application/infrastructure to packages/ - Fix ELECTRON_RUN_AS_NODE env var issue for VS Code terminal - Remove legacy esbuild bundler (replaced by electron-vite) - Update workspace scripts in root package.json
|
2025-11-22 00:25:06 +01:00 |
|
|
|
27dd4b87a5
|
feat(automation): add nut.js OS-level automation adapter per architecture spec - Create NutJsAutomationAdapter implementing IBrowserAutomation with OS-level mouse/keyboard control - Use mouse.move(), mouse.leftClick(), keyboard.type(), keyboard.pressKey() for real OS automation - Cross-platform support (Command key for macOS, Control key for Windows/Linux) - Production mode in DI container now uses NutJsAutomationAdapter - Add mouseSpeed and keyboardDelay configuration options - Add companion:production npm script for production mode - Step 18 (TRACK_CONDITIONS) maintains safety stop before checkout
|
2025-11-21 21:53:46 +01:00 |
|
|
|
a980a288ea
|
feat(automation): implement dual-mode browser automation with DevTools adapter - Add explicit result types for all automation operations (NavigationResult, FormFillResult, ClickResult, WaitResult, ModalResult) - Implement BrowserDevToolsAdapter for real browser automation via Chrome DevTools Protocol - Create IRacingSelectorMap with CSS selectors for all 18 workflow steps - Add AutomationConfig for environment-based adapter selection (mock/dev/production) - Update DI container to support mode switching via AUTOMATION_MODE env var - Add 54 new tests (34 integration + 20 unit), total now 212 passing - Add npm scripts: companion:mock, companion:devtools, chrome:debug
|
2025-11-21 19:54:37 +01:00 |
|
|
|
33b6557eed
|
feat(build): add esbuild bundler for Electron main process
|
2025-11-21 18:22:42 +01:00 |
|
|
|
3ba89fedbd
|
feat(scripts): add convenient npm scripts for companion app execution
|
2025-11-21 17:20:33 +01:00 |
|
|
|
bd60bd6771
|
feat(companion): add Electron presentation layer with React UI, IPC handlers, and automation POC
|
2025-11-21 16:49:14 +01:00 |
|
|
|
098bfc2c11
|
feat(companion): implement hosted session automation POC with TDD approach
|
2025-11-21 16:27:15 +01:00 |
|
|
|
423bd85f94
|
Initial project setup: monorepo structure and documentation
|
2025-11-21 15:23:37 +01:00 |
|