@sudobility/testomniac_runner_service 0.1.38 → 0.1.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +69 -7
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,15 +1,77 @@
1
1
  # testomniac_runner_service
2
2
 
3
- To install dependencies:
3
+ Shared scanning and test-generation engine for Testomniac.
4
4
 
5
- ```bash
6
- bun install
7
- ```
5
+ This package owns the browser-automation abstraction and the logic that turns a
6
+ URL or page state into persisted test coverage.
7
+
8
+ ## What It Does
9
+
10
+ The runner service provides:
11
+
12
+ - A `BrowserAdapter` interface used by different runtimes
13
+ - Page discovery and capture
14
+ - DOM/actionable-item extraction
15
+ - Page decomposition into scaffolds and patterns
16
+ - Rule/expertise-based finding generation
17
+ - Test-case and test-action generation
18
+ - Test execution loops
19
+
20
+ It is consumed by the Chrome extension today, and its browser abstraction is
21
+ designed to support server-side runners as well.
22
+
23
+ ## Main Entry Points
24
+
25
+ - [src/adapter.ts](/Users/johnhuang/projects/testomniac_runner_service/src/adapter.ts)
26
+ Browser runtime contract
27
+ - [src/index.ts](/Users/johnhuang/projects/testomniac_runner_service/src/index.ts)
28
+ Package exports
29
+ - [src/orchestrator/orchestrator.ts](/Users/johnhuang/projects/testomniac_runner_service/src/orchestrator/orchestrator.ts)
30
+ Legacy discovery-oriented scan loop exported as `runScan`
31
+ - [src/orchestrator/runner.ts](/Users/johnhuang/projects/testomniac_runner_service/src/orchestrator/runner.ts)
32
+ Suite/bundle execution loop exported as `runTestRun`
33
+ - [src/orchestrator/decomposition.ts](/Users/johnhuang/projects/testomniac_runner_service/src/orchestrator/decomposition.ts)
34
+ Generates coverage from captured page states
35
+ - [src/orchestrator/test-execution.ts](/Users/johnhuang/projects/testomniac_runner_service/src/orchestrator/test-execution.ts)
36
+ Executes generated test cases and captures newly reached states
37
+ - [src/orchestrator/test-case-executor.ts](/Users/johnhuang/projects/testomniac_runner_service/src/orchestrator/test-case-executor.ts)
38
+ Executes a single persisted test case in the newer runner
8
39
 
9
- To run:
40
+ ## Coverage Model
41
+
42
+ The package creates coverage in two complementary ways:
43
+
44
+ 1. Direct navigation coverage
45
+ Every discovered same-origin path gets a navigation case
46
+ 2. Stateful interaction coverage
47
+ Captured page states are decomposed into actionable interactions, forms,
48
+ scaffold-driven flows, and page-content flows
49
+
50
+ As test actions execute, newly reached states are captured and turned into more
51
+ coverage.
52
+
53
+ ## Browser Runtime
54
+
55
+ The browser runtime is intentionally abstracted behind `BrowserAdapter`.
56
+ Current adapter implementations include:
57
+
58
+ - The Chrome extension adapter in `testomniac_extension`
59
+ - Potential server/browser adapters for non-extension execution
60
+
61
+ ## Local Development
10
62
 
11
63
  ```bash
12
- bun run index.ts
64
+ bun install
65
+ bun run typecheck
66
+ bun test
67
+ bun run build
13
68
  ```
14
69
 
15
- This project was created using `bun init` in bun v1.3.10. [Bun](https://bun.com) is a fast all-in-one JavaScript runtime.
70
+ ## Related Repos
71
+
72
+ - `testomniac_api`
73
+ Persistence and run orchestration API
74
+ - `testomniac_extension`
75
+ Chrome extension that invokes this package
76
+ - `testomniac_types`
77
+ Shared request, response, and domain types
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/testomniac_runner_service",
3
- "version": "0.1.38",
3
+ "version": "0.1.39",
4
4
  "description": "Shared scanning logic for Testomniac scanner and Chrome extension",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",