Files
Michał Pierzchała 63711929d8 refactor(cli): take the CLI's vocabulary off runtime barrels (#2379)
* refactor(cli): read the cloud provider vocabulary from its own subpath

`provider-policy.ts` asks three questions of `@agent-device/provider-webdriver`:
the known-provider map, the predicate over it, and one type. All three live in
`providers.ts`, a leaf with zero imports. Reaching them through the package
barrel loaded 31 modules of WebDriver runtime — session handling, capture,
XML — into every CLI invocation to answer "is this string a known provider
name".

The package predates the subpath-per-file rule and published only `"."`. It
now publishes `./providers` as well (in the gates commit, with the recorded
surface); this points the sole in-closure consumer at it.

`src/cli.ts` eager closure: 325 -> 295 modules.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jqfa11D8QsCMuL17SsLvDz

* chore(gates): publish provider-webdriver/providers and record the surface

The provider vocabulary needs a door of its own so a consumer asking whether
a string names a known cloud provider does not load the WebDriver runtime.
`src/providers.ts` has no imports, so the subpath points straight at it and
costs the package nothing.

R11's recorded export surface for the package grows by exactly that entry;
the assertion is sorted so the list stays order-independent.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jqfa11D8QsCMuL17SsLvDz

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-09-07 18:23:44 +02:00

24 lines
673 B
JSON

{
"name": "@agent-device/provider-webdriver",
"version": "0.0.0",
"private": true,
"type": "module",
"description": "BrowserStack and AWS Device Farm WebDriver providers for agent-device. Internal workspace package bundled into the published artifact.",
"dependencies": {
"@agent-device/capture-kit": "workspace:*",
"@agent-device/contracts": "workspace:*",
"@agent-device/kernel": "workspace:*",
"@agent-device/xml": "workspace:*"
},
"exports": {
".": {
"types": "./src/index.ts",
"default": "./src/index.ts"
},
"./providers": {
"types": "./src/providers.ts",
"default": "./src/providers.ts"
}
}
}