opendevbrowser 0.0.18 → 0.0.19
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 +12 -11
- package/dist/browser/screencast-recorder.d.ts.map +1 -1
- package/dist/{chunk-L57D35TB.js → chunk-W4IHGDXV.js} +9 -3
- package/dist/chunk-W4IHGDXV.js.map +1 -0
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/index.js +8 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/opendevbrowser.js +1 -1
- package/extension/manifest.json +1 -1
- package/package.json +1 -1
- package/dist/chunk-L57D35TB.js.map +0 -1
package/README.md
CHANGED
|
@@ -89,9 +89,9 @@ npm install -g opendevbrowser
|
|
|
89
89
|
opendevbrowser --version
|
|
90
90
|
```
|
|
91
91
|
|
|
92
|
-
###
|
|
92
|
+
### Local Package Validation
|
|
93
93
|
|
|
94
|
-
Use this flow to validate first-run
|
|
94
|
+
Use this flow to validate first-run onboarding from a source tarball without relying on the published registry package.
|
|
95
95
|
|
|
96
96
|
```bash
|
|
97
97
|
cd <public-repo-root>
|
|
@@ -100,11 +100,13 @@ npm pack
|
|
|
100
100
|
WORKDIR=$(mktemp -d /tmp/opendevbrowser-first-run-XXXXXX)
|
|
101
101
|
cd "$WORKDIR"
|
|
102
102
|
npm init -y
|
|
103
|
-
npm install <public-repo-root>/opendevbrowser-0.0.
|
|
103
|
+
npm install <public-repo-root>/opendevbrowser-0.0.19.tgz
|
|
104
104
|
npx --no-install opendevbrowser --help
|
|
105
105
|
npx --no-install opendevbrowser help
|
|
106
106
|
```
|
|
107
107
|
|
|
108
|
+
Published npm consumer proof is tracked separately in [docs/RELEASE_RUNBOOK.md](docs/RELEASE_RUNBOOK.md) through `scripts/registry-consumer-smoke.mjs`.
|
|
109
|
+
|
|
108
110
|
See [docs/FIRST_RUN_ONBOARDING.md](docs/FIRST_RUN_ONBOARDING.md) for the full onboarding checklist, [docs/DEPENDENCIES.md](docs/DEPENDENCIES.md) for runtime inventory, and [docs/SURFACE_REFERENCE.md](docs/SURFACE_REFERENCE.md) for the live CLI and tool surface.
|
|
109
111
|
|
|
110
112
|
Successful installs reconcile daemon auto-start on supported platforms so the relay is available on login. If the current CLI entrypoint lives under a transient temp-root path such as a first-run `/tmp` or `/private/tmp` workspace, OpenDevBrowser refuses to persist that path as auto-start. Rerun `opendevbrowser daemon install`, or `npx --no-install opendevbrowser daemon install` from a persistent local package install, from a stable install location if you want login auto-start; remove it later with `opendevbrowser daemon uninstall`.
|
|
@@ -244,7 +246,7 @@ Start every surface check from generated help when you need the current public l
|
|
|
244
246
|
|
|
245
247
|
- `screencast / browser replay`: `screencast-start`, `screencast-stop`
|
|
246
248
|
- `desktop observation`: `desktop-status`, `desktop-windows`, `desktop-active-window`, `desktop-capture-desktop`, `desktop-capture-window`, `desktop-accessibility-snapshot`
|
|
247
|
-
- `computer use / browser-scoped computer use`: `--challenge-automation-mode off|browser|browser_with_helper` on `research run`, `shopping run`, `product-video run`, and `macro-resolve --execute`; `
|
|
249
|
+
- `computer use / browser-scoped computer use`: `--challenge-automation-mode off|browser|browser_with_helper` on `research run`, `shopping run`, `product-video run`, and `macro-resolve --execute`; start with `npx opendevbrowser research run --topic "account recovery flow" --source-selection auto --challenge-automation-mode browser --mode json --output-format json` when you need the first entry point, and use `review` plus `session-inspector` as the quickest proof surfaces while the optional helper stays browser-scoped rather than becoming a desktop agent
|
|
248
250
|
|
|
249
251
|
## Challenge Handling Boundary
|
|
250
252
|
|
|
@@ -262,14 +264,13 @@ Start every surface check from generated help when you need the current public l
|
|
|
262
264
|
|
|
263
265
|
## Recent Features
|
|
264
266
|
|
|
265
|
-
### v0.0.
|
|
267
|
+
### v0.0.19 (Current release prep)
|
|
266
268
|
|
|
267
|
-
-
|
|
268
|
-
- **
|
|
269
|
-
- **
|
|
270
|
-
- **Browser replay
|
|
271
|
-
- **
|
|
272
|
-
- **Release and distribution operations were refreshed for `v0.0.18`** across GitHub release assets, npm packaging, Chrome Web Store prep, regenerated live store assets, and private website sync inputs.
|
|
269
|
+
- npm latest remains `0.0.18` until the next tag is pushed and published.
|
|
270
|
+
- **Registry-consumer release proof is now first-class** with a post-publish smoke lane that installs the published package in a fresh temp workspace, verifies help/version, and captures the resolved consumer dependency graph.
|
|
271
|
+
- **Browser-scoped computer use is easier to discover** because help, onboarding, and release-facing docs now expose a concrete workflow entry command instead of relying only on `--challenge-automation-mode` as a hidden modifier.
|
|
272
|
+
- **Browser replay screencast shutdown is safer under load** because stop requests during the first in-flight capture no longer allow a later scheduled frame to sneak through.
|
|
273
|
+
- **The `0.0.18` npm parity investigation is now explicit about chronology**: the published package matched the release-aligned source, while later local worktree drift and semver-based consumer dependency drift explain the mismatch reports.
|
|
273
274
|
|
|
274
275
|
### v0.0.16
|
|
275
276
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screencast-recorder.d.ts","sourceRoot":"","sources":["../../src/browser/screencast-recorder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,8BAA8B,OAAO,CAAC;AACnD,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD,KAAK,kBAAkB,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,uBAAuB,GAAG,kBAAkB,GAAG;IAClD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAwBF,KAAK,6BAA6B,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,6BAA6B,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAClE,CAAC;AA+JF,qBAAa,yBAAyB;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqD;IACtF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmC;IACrE,OAAO,CAAC,iBAAiB,CAA6C;IACtE,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,UAAU,CAAwC;IAC1D,OAAO,CAAC,mBAAmB,CAAsG;IACjI,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAE5C,IAAI,EAAE,6BAA6B;IAmB/C,IAAI,aAAa,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAEpD;IAED,UAAU,IAAI,OAAO;IAIf,KAAK,IAAI,OAAO,CAAC,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"screencast-recorder.d.ts","sourceRoot":"","sources":["../../src/browser/screencast-recorder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,8BAA8B,OAAO,CAAC;AACnD,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD,KAAK,kBAAkB,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,uBAAuB,GAAG,kBAAkB,GAAG;IAClD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAwBF,KAAK,6BAA6B,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,6BAA6B,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAClE,CAAC;AA+JF,qBAAa,yBAAyB;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqD;IACtF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmC;IACrE,OAAO,CAAC,iBAAiB,CAA6C;IACtE,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,UAAU,CAAwC;IAC1D,OAAO,CAAC,mBAAmB,CAAsG;IACjI,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAE5C,IAAI,EAAE,6BAA6B;IAmB/C,IAAI,aAAa,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAEpD;IAED,UAAU,IAAI,OAAO;IAIf,KAAK,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAc1C,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,4BAA4B,EAAE,SAAS,GAAG,gBAAgB,GAAG,eAAe,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAO3I,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,iBAAiB;YAUX,qBAAqB;YA2BrB,YAAY;IAoC1B,OAAO,CAAC,UAAU;YAWJ,QAAQ;CAmDvB"}
|
|
@@ -6229,7 +6229,9 @@ var BrowserScreencastRecorder = class {
|
|
|
6229
6229
|
await ensureEmptyDirectory(this.outputDir);
|
|
6230
6230
|
await mkdir4(this.framesDir, { recursive: true });
|
|
6231
6231
|
await this.captureFrame();
|
|
6232
|
-
if (this.
|
|
6232
|
+
if (this.requestedStopReason) {
|
|
6233
|
+
await this.finalize(this.requestedStopReason, false);
|
|
6234
|
+
} else if (this.frames.length >= this.maxFrames) {
|
|
6233
6235
|
await this.finalize("max_frames_reached", false);
|
|
6234
6236
|
} else {
|
|
6235
6237
|
this.scheduleNextFrame();
|
|
@@ -6256,7 +6258,7 @@ var BrowserScreencastRecorder = class {
|
|
|
6256
6258
|
};
|
|
6257
6259
|
}
|
|
6258
6260
|
scheduleNextFrame() {
|
|
6259
|
-
if (this.isComplete()) {
|
|
6261
|
+
if (this.isComplete() || this.requestedStopReason) {
|
|
6260
6262
|
return;
|
|
6261
6263
|
}
|
|
6262
6264
|
this.timer = setTimeout(() => {
|
|
@@ -6265,6 +6267,9 @@ var BrowserScreencastRecorder = class {
|
|
|
6265
6267
|
}, this.intervalMs);
|
|
6266
6268
|
}
|
|
6267
6269
|
async captureScheduledFrame() {
|
|
6270
|
+
if (this.requestedStopReason || this.isComplete()) {
|
|
6271
|
+
return;
|
|
6272
|
+
}
|
|
6268
6273
|
const captured = await this.captureFrame().catch(async () => {
|
|
6269
6274
|
if (!this.requestedStopReason) {
|
|
6270
6275
|
await this.finalize("capture_failed", false);
|
|
@@ -31036,6 +31041,7 @@ var onboarding_metadata_default = {
|
|
|
31036
31041
|
validatedLanes: 'opendevbrowser_skill_load opendevbrowser-best-practices "validated capability lanes"',
|
|
31037
31042
|
validatedResearch: 'npx opendevbrowser research run --topic "Chrome extension debugging workflows" --days 30 --source-selection auto --mode json --output-format json',
|
|
31038
31043
|
validatedShopping: 'npx opendevbrowser shopping run --query "wireless ergonomic mouse" --providers shopping/bestbuy,shopping/ebay --budget 150 --browser-mode managed --mode json --output-format json',
|
|
31044
|
+
computerUseEntry: 'npx opendevbrowser research run --topic "account recovery flow" --source-selection auto --challenge-automation-mode browser --mode json --output-format json',
|
|
31039
31045
|
happyPath: "npx opendevbrowser launch --no-extension --headless --start-url https://example.com --output-format json"
|
|
31040
31046
|
},
|
|
31041
31047
|
referencePaths: {
|
|
@@ -33510,4 +33516,4 @@ export {
|
|
|
33510
33516
|
TOOL_SURFACE_ENTRIES
|
|
33511
33517
|
};
|
|
33512
33518
|
/* v8 ignore next -- @preserve */
|
|
33513
|
-
//# sourceMappingURL=chunk-
|
|
33519
|
+
//# sourceMappingURL=chunk-W4IHGDXV.js.map
|