doc-detective 4.6.0-next.1 → 4.6.0-next.10

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.
package/README.md CHANGED
@@ -37,17 +37,11 @@ Doc Detective has multiple components to integrate with your workflows as you ne
37
37
 
38
38
  ### Lazy-installed runtime
39
39
 
40
- `npm i doc-detective` installs the CLI and a small set of light dependencies. Heavy runtime assets — browsers (Chrome, Firefox), drivers (ChromeDriver, Geckodriver), ffmpeg, and the npm packages that drive them (webdriverio, appium, sharp, etc.) — install lazily into `<os.tmpdir()>/doc-detective/` the first time a test needs them, or up front via `doc-detective install all`.
40
+ `npm i doc-detective` installs the CLI and then, at postinstall, pre-installs the heavy runtime assets — browsers (Chrome, Firefox), drivers (ChromeDriver, Geckodriver), ffmpeg, and the npm packages that drive them (webdriverio, appium, sharp, etc.) — into `<os.tmpdir()>/doc-detective/` (or `DOC_DETECTIVE_CACHE_DIR`). This keeps a fresh install and any Docker image built `FROM` it — ready to run without a separate step. The pre-install runs in a child process whose output is captured, so npm's deprecation warnings from the heavy transitive trees never reach your terminal.
41
41
 
42
- The heavy npm packages live in `optionalDependencies`, which means **npm still installs them by default during `npm i doc-detective`** alongside the light deps. To get a truly lean install only the CLI shim pass `--omit=optional`:
42
+ **Opt out of the heavy pre-install** by setting `DOC_DETECTIVE_AUTOINSTALL=0` (also accepts `false`/`no`/`off`). The CLI install then stays small no browser download, no heavy npm packages and the heavy assets install lazily the first time a test needs them instead, or up front via `doc-detective install all`.
43
43
 
44
- ```bash
45
- npm i doc-detective --omit=optional
46
- # or for CI
47
- npm ci --omit=optional
48
- ```
49
-
50
- With `--omit=optional`, the lazy resolver fetches each heavy dep into the cache on first use; without it you still get the speed-of-startup benefits of lazy loading (no `postinstall` browser download) but pay the on-disk cost up front.
44
+ Either way, the heavy packages are never declared in `dependencies` or `optionalDependencies`, so npm itself never fetches them as part of the dependency tree. Their version constraints live in a custom `ddRuntimeDependencies` field that the resolver reads when it installs each dep into the cache — whether at postinstall or on first use.
51
45
 
52
46
  - **Pre-install everything up front:**
53
47
 
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,wBAAwB,EAAE,aAAa,EAAE,CAAC;AA2ThG;;;;;;GAMG;AACH,iBAAe,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,gBAwLvC;AAED;;;;;;GAMG;AACH,iBAAS,wBAAwB,CAAC,MAAM,EAAE,GAAG,OAO5C;AAyCD,iBAAS,cAAc,QAOtB;AAoBD,iBAAS,aAAa,CAAC,MAAM,CAAC,EAAE,GAAG,QAMlC;AAGD,iBAAe,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,kBAyJ9C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,wBAAwB,EAAE,aAAa,EAAE,CAAC;AA2ThG;;;;;;GAMG;AACH,iBAAe,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,gBA8LvC;AAED;;;;;;GAMG;AACH,iBAAS,wBAAwB,CAAC,MAAM,EAAE,GAAG,OAO5C;AAyCD,iBAAS,cAAc,QAOtB;AAoBD,iBAAS,aAAa,CAAC,MAAM,CAAC,EAAE,GAAG,QAMlC;AAGD,iBAAe,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,kBAyJ9C"}
@@ -473,7 +473,13 @@ async function setConfig({ config }) {
473
473
  });
474
474
  // Detect current environment.
475
475
  config.environment = getEnvironment();
476
- config.environment.apps = await getAvailableApps({ config });
476
+ // Dry runs return the resolved-tests preview without ever executing, and
477
+ // `environment.apps` is only consumed by the runner paths in tests.ts (which
478
+ // re-detect themselves). Skipping the detection avoids the @puppeteer/browsers
479
+ // load, the browser-cache scan, and the unbounded `appium driver list` spawn —
480
+ // the work that pushes dryRun.test.js past its mocha timeout on a starved
481
+ // windows+node22 runner. No effect on resolved output.
482
+ config.environment.apps = config.dryRun ? [] : await getAvailableApps({ config });
477
483
  // Resolve concurrent runners configuration
478
484
  config.concurrentRunners = resolveConcurrentRunners(config);
479
485
  // TODO: Revise loadDescriptions() so it doesn't mutate the input but instead returns an updated object
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"typeKeys.d.ts","sourceRoot":"","sources":["../../../src/core/tests/typeKeys.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,CAAC;AA+DpB,iBAAe,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE;;;GA6HxF"}
1
+ {"version":3,"file":"typeKeys.d.ts","sourceRoot":"","sources":["../../../src/core/tests/typeKeys.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,CAAC;AAqFpB,iBAAe,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE;;;GA+IxF"}
@@ -1,66 +1,77 @@
1
1
  import { validate } from "../../common/src/validate.js";
2
- import { Key } from "webdriverio";
3
2
  import { findElementByCriteria, } from "./findStrategies.js";
3
+ import { loadHeavyDep } from "../../runtime/loader.js";
4
4
  export { typeKeys };
5
- const specialKeyMap = {
6
- $CTRL$: Key.Ctrl,
7
- $NULL$: Key.NULL,
8
- $CANCEL$: Key.Cancel,
9
- $HELP$: Key.Help,
10
- $BACKSPACE$: Key.Backspace,
11
- $TAB$: Key.Tab,
12
- $CLEAR$: Key.Clear,
13
- $RETURN$: Key.Return,
14
- $ENTER$: Key.Enter,
15
- $SHIFT$: Key.Shift,
16
- $CONTROL$: Key.Control,
17
- $ALT$: Key.Alt,
18
- $PAUSE$: Key.Pause,
19
- $ESCAPE$: Key.Escape,
20
- $SPACE$: Key.Space,
21
- $PAGE_UP$: Key.PageUp,
22
- $PAGE_DOWN$: Key.PageDown,
23
- $END$: Key.End,
24
- $HOME$: Key.Home,
25
- $ARROW_LEFT$: Key.ArrowLeft,
26
- $ARROW_UP$: Key.ArrowUp,
27
- $ARROW_RIGHT$: Key.ArrowRight,
28
- $ARROW_DOWN$: Key.ArrowDown,
29
- $INSERT$: Key.Insert,
30
- $DELETE$: Key.Delete,
31
- $SEMICOLON$: Key.Semicolon,
32
- $EQUALS$: Key.Equals,
33
- $NUMPAD_0$: Key.Numpad0,
34
- $NUMPAD_1$: Key.Numpad1,
35
- $NUMPAD_2$: Key.Numpad2,
36
- $NUMPAD_3$: Key.Numpad3,
37
- $NUMPAD_4$: Key.Numpad4,
38
- $NUMPAD_5$: Key.Numpad5,
39
- $NUMPAD_6$: Key.Numpad6,
40
- $NUMPAD_7$: Key.Numpad7,
41
- $NUMPAD_8$: Key.Numpad8,
42
- $NUMPAD_9$: Key.Numpad9,
43
- $MULTIPLY$: Key.Multiply,
44
- $ADD$: Key.Add,
45
- $SEPARATOR$: Key.Separator,
46
- $SUBSTRACT$: Key.Subtract,
47
- $DECIMAL$: Key.Decimal,
48
- $DIVIDE$: Key.Divide,
49
- $F1$: Key.F1,
50
- $F2$: Key.F2,
51
- $F3$: Key.F3,
52
- $F4$: Key.F4,
53
- $F5$: Key.F5,
54
- $F6$: Key.F6,
55
- $F7$: Key.F7,
56
- $F8$: Key.F8,
57
- $F9$: Key.F9,
58
- $F10$: Key.F10,
59
- $F11$: Key.F11,
60
- $F12$: Key.F12,
61
- $COMMAND$: Key.Command,
62
- $ZANKAKU_HANDKAKU$: Key.ZenkakuHankaku,
63
- };
5
+ let _specialKeyMap = null;
6
+ async function getSpecialKeyMap(ctx = {}) {
7
+ if (_specialKeyMap)
8
+ return _specialKeyMap;
9
+ const wdio = await loadHeavyDep("webdriverio", { ctx });
10
+ const { Key } = wdio;
11
+ _specialKeyMap = {
12
+ $CTRL$: Key.Ctrl,
13
+ $NULL$: Key.NULL,
14
+ $CANCEL$: Key.Cancel,
15
+ $HELP$: Key.Help,
16
+ $BACKSPACE$: Key.Backspace,
17
+ $TAB$: Key.Tab,
18
+ $CLEAR$: Key.Clear,
19
+ $RETURN$: Key.Return,
20
+ $ENTER$: Key.Enter,
21
+ $SHIFT$: Key.Shift,
22
+ $CONTROL$: Key.Control,
23
+ $ALT$: Key.Alt,
24
+ $PAUSE$: Key.Pause,
25
+ $ESCAPE$: Key.Escape,
26
+ $SPACE$: Key.Space,
27
+ $PAGE_UP$: Key.PageUp,
28
+ $PAGE_DOWN$: Key.PageDown,
29
+ $END$: Key.End,
30
+ $HOME$: Key.Home,
31
+ $ARROW_LEFT$: Key.ArrowLeft,
32
+ $ARROW_UP$: Key.ArrowUp,
33
+ $ARROW_RIGHT$: Key.ArrowRight,
34
+ $ARROW_DOWN$: Key.ArrowDown,
35
+ $INSERT$: Key.Insert,
36
+ $DELETE$: Key.Delete,
37
+ $SEMICOLON$: Key.Semicolon,
38
+ $EQUALS$: Key.Equals,
39
+ $NUMPAD_0$: Key.Numpad0,
40
+ $NUMPAD_1$: Key.Numpad1,
41
+ $NUMPAD_2$: Key.Numpad2,
42
+ $NUMPAD_3$: Key.Numpad3,
43
+ $NUMPAD_4$: Key.Numpad4,
44
+ $NUMPAD_5$: Key.Numpad5,
45
+ $NUMPAD_6$: Key.Numpad6,
46
+ $NUMPAD_7$: Key.Numpad7,
47
+ $NUMPAD_8$: Key.Numpad8,
48
+ $NUMPAD_9$: Key.Numpad9,
49
+ $MULTIPLY$: Key.Multiply,
50
+ $ADD$: Key.Add,
51
+ $SEPARATOR$: Key.Separator,
52
+ // `$SUBSTRACT$` is a long-standing misspelling kept for backwards
53
+ // compatibility; `$SUBTRACT$` is the correctly-spelled alias.
54
+ $SUBSTRACT$: Key.Subtract,
55
+ $SUBTRACT$: Key.Subtract,
56
+ $DECIMAL$: Key.Decimal,
57
+ $DIVIDE$: Key.Divide,
58
+ $F1$: Key.F1,
59
+ $F2$: Key.F2,
60
+ $F3$: Key.F3,
61
+ $F4$: Key.F4,
62
+ $F5$: Key.F5,
63
+ $F6$: Key.F6,
64
+ $F7$: Key.F7,
65
+ $F8$: Key.F8,
66
+ $F9$: Key.F9,
67
+ $F10$: Key.F10,
68
+ $F11$: Key.F11,
69
+ $F12$: Key.F12,
70
+ $COMMAND$: Key.Command,
71
+ $ZANKAKU_HANDKAKU$: Key.ZenkakuHankaku,
72
+ };
73
+ return _specialKeyMap;
74
+ }
64
75
  // Type a sequence of keys in the active element.
65
76
  async function typeKeys({ config, step, driver }) {
66
77
  let result = { status: "PASS", description: "Typed keys." };
@@ -148,14 +159,31 @@ async function typeKeys({ config, step, driver }) {
148
159
  step.type.keys = keys;
149
160
  }
150
161
  // Substitute special keys
151
- // 1. For each key, identify if it following the escape pattern of `$...$`.
152
- // 2. If it does, replace it with the corresponding `Key` object from `specialKeyMap`.
153
- step.type.keys = step.type.keys.map((key) => {
154
- if (key.startsWith("$") && key.endsWith("$") && specialKeyMap[key]) {
155
- return specialKeyMap[key];
162
+ // 1. For each key, identify if it follows the escape pattern of `$...$`.
163
+ // 2. If it does, replace it with the corresponding `Key` value from `specialKeyMap`.
164
+ // Only load the map (and thus webdriverio) when a sentinel token is actually
165
+ // present plain-text typing must not pull in the heavy dep or risk a
166
+ // load-time FAIL. Loading webdriverio can throw (e.g. the runtime dep isn't
167
+ // installed yet); return a step-level FAIL rather than aborting the whole run,
168
+ // matching how other heavy-dep-backed steps behave.
169
+ const hasSpecialTokens = step.type.keys.some((key) => key.startsWith("$") && key.endsWith("$"));
170
+ if (hasSpecialTokens) {
171
+ let specialKeyMap;
172
+ try {
173
+ specialKeyMap = await getSpecialKeyMap({ cacheDir: config?.cacheDir });
174
+ }
175
+ catch (error) {
176
+ result.status = "FAIL";
177
+ result.description = `Couldn't load key definitions: ${error.message}`;
178
+ return result;
156
179
  }
157
- return key;
158
- });
180
+ step.type.keys = step.type.keys.map((key) => {
181
+ if (key.startsWith("$") && key.endsWith("$") && specialKeyMap[key]) {
182
+ return specialKeyMap[key];
183
+ }
184
+ return key;
185
+ });
186
+ }
159
187
  // Run action
160
188
  try {
161
189
  if (config.recording) {
@@ -1 +1 @@
1
- {"version":3,"file":"typeKeys.js","sourceRoot":"","sources":["../../../src/core/tests/typeKeys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeKeys.js","sourceRoot":"","sources":["../../../src/core/tests/typeKeys.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,17 @@
1
- export { runSpecs, runViaApi, getRunner };
1
+ export { runSpecs, runViaApi, getRunner, ensureChromeAvailable, getDriverCapabilities, getDefaultBrowser, isSupportedContext, };
2
+ declare function getDriverCapabilities({ runnerDetails, name, options }: {
3
+ runnerDetails: any;
4
+ name: any;
5
+ options: any;
6
+ }): any;
7
+ declare function isSupportedContext({ context, apps, platform }: {
8
+ context: any;
9
+ apps: any[];
10
+ platform: any;
11
+ }): boolean;
12
+ declare function getDefaultBrowser({ runnerDetails }: {
13
+ runnerDetails: any;
14
+ }): any;
2
15
  declare function runViaApi({ resolvedTests, apiKey, config }: {
3
16
  resolvedTests: any;
4
17
  apiKey: any;
@@ -32,30 +45,23 @@ declare function runStep({ config, context, step, driver, metaValues, options, }
32
45
  options?: any;
33
46
  }): Promise<any>;
34
47
  /**
35
- * Creates and returns a Chrome WebDriver instance with an Appium server.
36
- * This function is designed for use by external libraries that need a Doc Detective runner.
48
+ * Resolve the available-apps list with Chrome guaranteed present, lazy-
49
+ * installing the browser runtime on a miss before giving up. This is the
50
+ * runtime counterpart to the runTests pre-flight: it runs regardless of
51
+ * DOC_DETECTIVE_AUTOINSTALL (that env var only governs the *eager* postinstall
52
+ * download — first use should still self-provision). A provisioning failure
53
+ * (e.g. offline) is swallowed so the caller sees the clear "not available"
54
+ * error rather than a raw npm/network stack. Deps are injected for testing.
37
55
  *
38
- * @param {Object} options - Configuration options for the runner.
39
- * @param {Object} [options.config={}] - Doc Detective configuration object for logging.
40
- * @param {number} [options.width=1200] - Browser window width in pixels.
41
- * @param {number} [options.height=800] - Browser window height in pixels.
42
- * @param {boolean} [options.headless=true] - Whether to run browser in headless mode.
43
- * @returns {Promise<Object>} Object containing:
44
- * - runner: WebDriver instance for browser automation
45
- * - appium: Appium server process (advanced use; prefer cleanup() for termination)
46
- * - cleanup: Async function to properly cleanup driver and Appium server
47
- * - runStep: Function to execute Doc Detective test steps
48
- * @throws {Error} If Chrome is not available or driver initialization fails
49
- *
50
- * @example
51
- * const { runner, cleanup } = await getRunner({ headless: false });
52
- * try {
53
- * await runner.url('https://example.com');
54
- * // ... perform automation tasks
55
- * } finally {
56
- * await cleanup();
57
- * }
56
+ * @returns the available-apps array, with a chrome entry present.
57
+ * @throws if chrome is still unavailable after a provisioning attempt.
58
58
  */
59
+ declare function ensureChromeAvailable(config: any, deps: {
60
+ detect: (config: any) => Promise<any[]>;
61
+ provision: (config: any) => Promise<void>;
62
+ invalidate: (config: any) => void;
63
+ log?: (config: any, level: string, msg: string) => void;
64
+ }): Promise<any[]>;
59
65
  declare function getRunner(options?: any): Promise<{
60
66
  runner: any;
61
67
  appium: import("node:child_process").ChildProcessWithoutNullStreams;
@@ -1 +1 @@
1
- {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../src/core/tests.ts"],"names":[],"mappings":"AAyCA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAmN1C,iBAAe,SAAS,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,MAAW,EAAE,EAAE;IAAE,aAAa,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAwIhI;AAED;;;;;;;;;;;;;;;GAeG;AACH,iBAAe,QAAQ,CAAC,EAAE,aAAa,EAAE,EAAE;IAAE,aAAa,EAAE,GAAG,CAAA;CAAE,gBAqhBhE;AAGD,iBAAe,OAAO,CAAC,EACrB,MAAW,EACX,OAAY,EACZ,IAAI,EACJ,MAAM,EACN,UAAe,EACf,OAAY,GACb,EAAE;IACD,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,GAAG,OAAO,CAAC,GAAG,CAAC,CAuGf;AA8DD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,iBAAe,SAAS,CAAC,OAAO,GAAE,GAAQ;;;;;GAuHzC"}
1
+ {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../src/core/tests.ts"],"names":[],"mappings":"AAyCA,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,GACnB,CAAC;AAwBF,iBAAS,qBAAqB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;IAAE,aAAa,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,GAAG,CAwGrH;AA8BD,iBAAS,kBAAkB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;IAAE,OAAO,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE,WAwBpG;AAED,iBAAS,iBAAiB,CAAC,EAAE,aAAa,EAAE,EAAE;IAAE,aAAa,EAAE,GAAG,CAAA;CAAE,OAUnE;AA8CD,iBAAe,SAAS,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,MAAW,EAAE,EAAE;IAAE,aAAa,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAwIhI;AAED;;;;;;;;;;;;;;;GAeG;AACH,iBAAe,QAAQ,CAAC,EAAE,aAAa,EAAE,EAAE;IAAE,aAAa,EAAE,GAAG,CAAA;CAAE,gBAsiBhE;AAGD,iBAAe,OAAO,CAAC,EACrB,MAAW,EACX,OAAY,EACZ,IAAI,EACJ,MAAM,EACN,UAAe,EACf,OAAY,GACb,EAAE;IACD,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,GAAG,OAAO,CAAC,GAAG,CAAC,CAuGf;AA8GD;;;;;;;;;;;GAWG;AACH,iBAAe,qBAAqB,CAClC,MAAM,EAAE,GAAG,EACX,IAAI,EAAE;IACJ,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,SAAS,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,UAAU,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD,GACA,OAAO,CAAC,GAAG,EAAE,CAAC,CAmChB;AAED,iBAAe,SAAS,CAAC,OAAO,GAAE,GAAQ;;;;;GAoHzC"}
@@ -31,13 +31,13 @@ import { spawn } from "node:child_process";
31
31
  import { randomUUID } from "node:crypto";
32
32
  import { setAppiumHome } from "./appium.js";
33
33
  import { resolveExpression } from "./expressions.js";
34
- import { getEnvironment, getAvailableApps } from "./config.js";
34
+ import { getEnvironment, getAvailableApps, clearAppCache } from "./config.js";
35
35
  import { uploadChangedFiles } from "./integrations/index.js";
36
36
  import http from "node:http";
37
37
  import https from "node:https";
38
38
  import { fileURLToPath } from "node:url";
39
39
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
40
- export { runSpecs, runViaApi, getRunner };
40
+ export { runSpecs, runViaApi, getRunner, ensureChromeAvailable, getDriverCapabilities, getDefaultBrowser, isSupportedContext, };
41
41
  // exports.appiumStart = appiumStart;
42
42
  // exports.appiumIsReady = appiumIsReady;
43
43
  // exports.driverStart = driverStart;
@@ -54,10 +54,21 @@ const driverActions = [
54
54
  "screenshot",
55
55
  "type",
56
56
  ];
57
+ // Browser names getDriverCapabilities knows how to build caps for. `safari` is
58
+ // rewritten to `webkit` during context resolution, so both appear here.
59
+ const KNOWN_BROWSERS = ["firefox", "chrome", "safari", "webkit"];
57
60
  // Get Appium driver capabilities and apply options.
58
61
  function getDriverCapabilities({ runnerDetails, name, options }) {
59
62
  let capabilities = {};
60
63
  let args = [];
64
+ // Fail loudly on an unknown or missing browser name instead of silently
65
+ // returning empty capabilities. Empty caps used to surface downstream as the
66
+ // cryptic "Failed to start context 'undefined'" driver error, hiding the real
67
+ // problem (no browser was ever resolved for the context).
68
+ if (!name || !KNOWN_BROWSERS.includes(name)) {
69
+ throw new Error(`Cannot build driver capabilities: unknown or missing browser name '${name}'. ` +
70
+ `Expected one of: ${KNOWN_BROWSERS.join(", ")}.`);
71
+ }
61
72
  // Set Firefox capabilities
62
73
  switch (name) {
63
74
  case "firefox": {
@@ -89,6 +100,9 @@ function getDriverCapabilities({ runnerDetails, name, options }) {
89
100
  break;
90
101
  }
91
102
  case "safari":
103
+ // `safari` is rewritten to `webkit` during context resolution, so the
104
+ // runtime browser name is usually `webkit`. Both map to Safari.
105
+ case "webkit":
92
106
  // Set Safari capabilities
93
107
  if (runnerDetails.availableApps.find((app) => app.name === "safari")) {
94
108
  let safari = runnerDetails.availableApps.find((app) => app.name === "safari");
@@ -175,15 +189,25 @@ function isSupportedContext({ context, apps, platform }) {
175
189
  let isSupportedApp = true;
176
190
  // Check platform
177
191
  const isSupportedPlatform = context.platform === platform;
178
- if (context?.browser?.name)
179
- isSupportedApp = apps.find((app) => app.name === context.browser.name);
180
- // Return boolean
181
- if (isSupportedApp && isSupportedPlatform) {
182
- return true;
192
+ if (context?.browser?.name) {
193
+ // `safari` is normalized to `webkit` during context resolution, but
194
+ // getAvailableApps reports Safari as `safari`. Map it back so a Safari
195
+ // context isn't wrongly treated as unsupported (which would skip it before
196
+ // getDriverCapabilities could apply the same alias).
197
+ const appName = context.browser.name === "webkit" ? "safari" : context.browser.name;
198
+ isSupportedApp = apps.find((app) => app.name === appName);
183
199
  }
184
- else {
185
- return false;
200
+ else if (Array.isArray(context?.steps) && isDriverRequired({ test: context })) {
201
+ // A context that needs a browser driver but has no resolvable browser name
202
+ // can't run. Treat it as unsupported so it's cleanly skipped rather than
203
+ // failing later with "Failed to start context 'undefined'". The
204
+ // Array.isArray(steps) guard keeps isDriverRequired (which iterates steps)
205
+ // from throwing on a steps-less context; such a context does no driver work
206
+ // anyway, so leaving it supported here is harmless.
207
+ isSupportedApp = false;
186
208
  }
209
+ // Return boolean
210
+ return Boolean(isSupportedApp && isSupportedPlatform);
187
211
  }
188
212
  function getDefaultBrowser({ runnerDetails }) {
189
213
  let browser = {};
@@ -533,6 +557,22 @@ async function runSpecs({ resolvedTests }) {
533
557
  };
534
558
  // Set meta values
535
559
  metaValues.specs[spec.specId].tests[test.testId].contexts[context.contextId] = { steps: {} };
560
+ // If a driver is required but no browser could be resolved (e.g.
561
+ // getDefaultBrowser found nothing installed, or the context supplied a
562
+ // browser object with no name), skip with an explicit reason instead of
563
+ // letting it fail later as "Failed to start context 'undefined'".
564
+ if (isDriverRequired({ test: context }) && !context.browser?.name) {
565
+ const errorMessage = `Skipping context on '${context.platform}': no supported browser is available in the current environment.`;
566
+ log(config, "warning", errorMessage);
567
+ contextReport = {
568
+ ...contextReport,
569
+ result: "SKIPPED",
570
+ resultDescription: errorMessage,
571
+ };
572
+ report.summary.contexts.skipped++;
573
+ testReport.contexts.push(contextReport);
574
+ continue;
575
+ }
536
576
  // Check if current environment supports given contexts
537
577
  const supportedContext = isSupportedContext({
538
578
  context: context,
@@ -1008,22 +1048,82 @@ async function driverStart(capabilities, port, maxAttempts = 4, ctx = {}) {
1008
1048
  * await cleanup();
1009
1049
  * }
1010
1050
  */
1051
+ /**
1052
+ * Lazy-install the heavy npm runtime + browser binaries needed to drive
1053
+ * Chrome into the doc-detective cache. Mirrors the npm/browser set that
1054
+ * inferRuntimeNeeds() derives for a chrome browser step, and the
1055
+ * ensureBrowserInstalled calls the runTests pre-flight makes. Heavy deps are
1056
+ * imported dynamically so a pure HTTP/CLI consumer never loads them.
1057
+ */
1058
+ async function provisionChromeRuntime(config) {
1059
+ const { ensureRuntimeInstalled } = await import("../runtime/loader.js");
1060
+ const { ensureBrowserInstalled } = await import("../runtime/browsers.js");
1061
+ const ctx = { cacheDir: config?.cacheDir };
1062
+ // Bridge runtime modules' (msg, level) logger to core/utils.ts#log, mapping
1063
+ // "warn" → "warning" the same way the runTests pre-flight does.
1064
+ const logger = (msg, level = "info") => log(config, level === "warn" ? "warning" : level, msg);
1065
+ await ensureRuntimeInstalled(["webdriverio", "appium", "@puppeteer/browsers", "appium-chromium-driver"], { ctx, deps: { logger } });
1066
+ await ensureBrowserInstalled("chrome", { ctx, deps: { logger } });
1067
+ await ensureBrowserInstalled("chromedriver", { ctx, deps: { logger } });
1068
+ }
1069
+ /**
1070
+ * Resolve the available-apps list with Chrome guaranteed present, lazy-
1071
+ * installing the browser runtime on a miss before giving up. This is the
1072
+ * runtime counterpart to the runTests pre-flight: it runs regardless of
1073
+ * DOC_DETECTIVE_AUTOINSTALL (that env var only governs the *eager* postinstall
1074
+ * download — first use should still self-provision). A provisioning failure
1075
+ * (e.g. offline) is swallowed so the caller sees the clear "not available"
1076
+ * error rather than a raw npm/network stack. Deps are injected for testing.
1077
+ *
1078
+ * @returns the available-apps array, with a chrome entry present.
1079
+ * @throws if chrome is still unavailable after a provisioning attempt.
1080
+ */
1081
+ async function ensureChromeAvailable(config, deps) {
1082
+ let availableApps = await deps.detect(config);
1083
+ if (availableApps.some((app) => app.name === "chrome")) {
1084
+ return availableApps;
1085
+ }
1086
+ // Chrome not detected — attempt to provision it, then re-detect.
1087
+ deps.log?.(config, "info", "Chrome not detected; installing browser runtime (note: DOC_DETECTIVE_AUTOINSTALL=0 only suppresses the eager postinstall, not this first-use install)…");
1088
+ try {
1089
+ await deps.provision(config);
1090
+ }
1091
+ catch (err) {
1092
+ deps.log?.(config, "warning", `Browser runtime auto-install failed: ${err?.message ?? err}`);
1093
+ }
1094
+ finally {
1095
+ // Always drop the memoized "no chrome" entry so the re-detect below is a
1096
+ // real re-scan: provisioning installs several assets and may have
1097
+ // partially succeeded even if it ultimately threw, so the cached empty
1098
+ // snapshot can't be trusted on either path. In `finally` (not the try
1099
+ // body) so a bug in `invalidate` surfaces on its own rather than being
1100
+ // mislabeled as a provisioning failure.
1101
+ deps.invalidate(config);
1102
+ }
1103
+ availableApps = await deps.detect(config);
1104
+ if (!availableApps.some((app) => app.name === "chrome")) {
1105
+ throw new Error("Chrome browser is not available. Please ensure Chrome is installed and accessible.");
1106
+ }
1107
+ return availableApps;
1108
+ }
1011
1109
  async function getRunner(options = {}) {
1012
1110
  const environment = getEnvironment();
1013
1111
  const config = { ...options.config, environment };
1014
1112
  const width = options.width || 1200;
1015
1113
  const height = options.height || 800;
1016
1114
  const headless = options.headless !== false;
1017
- // Get runner details
1115
+ // Get runner details, self-provisioning Chrome on a miss (see
1116
+ // ensureChromeAvailable) so a runner started without a pre-warmed cache
1117
+ // installs what it needs instead of failing.
1018
1118
  const runnerDetails = {
1019
1119
  environment,
1020
- availableApps: await getAvailableApps({ config }),
1120
+ availableApps: await ensureChromeAvailable(config, {
1121
+ detect: (c) => getAvailableApps({ config: c }),
1122
+ provision: provisionChromeRuntime,
1123
+ invalidate: clearAppCache,
1124
+ log,
1125
+ }),
1021
1126
  };
1022
- // Check if Chrome is available
1023
- const chrome = runnerDetails.availableApps.find((app) => app.name === "chrome");
1024
- if (!chrome) {
1025
- throw new Error("Chrome browser is not available. Please ensure Chrome is installed and accessible.");
1026
- }
1027
1127
  // Set Appium home directory
1028
1128
  setAppiumHome({ cacheDir: config?.cacheDir });
1029
1129
  // Start Appium server on a free ephemeral port. Same `node <entry>`