openchrome-mcp 1.12.5 → 1.12.8
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.ko.md +21 -7
- package/README.md +76 -7
- package/dist/broker/auto-elect.d.ts +69 -0
- package/dist/broker/auto-elect.d.ts.map +1 -0
- package/dist/broker/auto-elect.js +77 -0
- package/dist/broker/auto-elect.js.map +1 -0
- package/dist/broker/discovery.d.ts +27 -0
- package/dist/broker/discovery.d.ts.map +1 -0
- package/dist/broker/discovery.js +98 -0
- package/dist/broker/discovery.js.map +1 -0
- package/dist/broker/lifecycle.d.ts +19 -0
- package/dist/broker/lifecycle.d.ts.map +1 -0
- package/dist/broker/lifecycle.js +74 -0
- package/dist/broker/lifecycle.js.map +1 -0
- package/dist/cdp/client.d.ts +1 -0
- package/dist/cdp/client.d.ts.map +1 -1
- package/dist/cdp/client.js +58 -60
- package/dist/cdp/client.js.map +1 -1
- package/dist/chrome/headed-fallback.d.ts +2 -0
- package/dist/chrome/headed-fallback.d.ts.map +1 -1
- package/dist/chrome/headed-fallback.js +29 -0
- package/dist/chrome/headed-fallback.js.map +1 -1
- package/dist/chrome/owner-self-release.d.ts +60 -0
- package/dist/chrome/owner-self-release.d.ts.map +1 -0
- package/dist/chrome/owner-self-release.js +113 -0
- package/dist/chrome/owner-self-release.js.map +1 -0
- package/dist/chrome/process-watchdog.d.ts.map +1 -1
- package/dist/chrome/process-watchdog.js +8 -0
- package/dist/chrome/process-watchdog.js.map +1 -1
- package/dist/cli/doctor/checks/duplicate-controllers.d.ts +7 -0
- package/dist/cli/doctor/checks/duplicate-controllers.d.ts.map +1 -0
- package/dist/cli/doctor/checks/duplicate-controllers.js +30 -0
- package/dist/cli/doctor/checks/duplicate-controllers.js.map +1 -0
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +2 -0
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.js +103 -20
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/mcp-client-config.d.ts +11 -0
- package/dist/cli/mcp-client-config.js +63 -3
- package/dist/cli/mcp-client-config.js.map +1 -1
- package/dist/cli/mcp-config-diagnostics.d.ts +28 -0
- package/dist/cli/mcp-config-diagnostics.js +203 -0
- package/dist/cli/mcp-config-diagnostics.js.map +1 -0
- package/dist/cli/update-command.d.ts +6 -1
- package/dist/cli/update-command.js +12 -0
- package/dist/cli/update-command.js.map +1 -1
- package/dist/contracts/eval-context.d.ts +17 -0
- package/dist/contracts/eval-context.d.ts.map +1 -1
- package/dist/contracts/evaluate.d.ts.map +1 -1
- package/dist/contracts/evaluate.js +3 -0
- package/dist/contracts/evaluate.js.map +1 -1
- package/dist/contracts/evaluators/image-qa.d.ts +14 -0
- package/dist/contracts/evaluators/image-qa.d.ts.map +1 -0
- package/dist/contracts/evaluators/image-qa.js +95 -0
- package/dist/contracts/evaluators/image-qa.js.map +1 -0
- package/dist/contracts/templates/index.d.ts +12 -0
- package/dist/contracts/templates/index.d.ts.map +1 -0
- package/dist/contracts/templates/index.js +18 -0
- package/dist/contracts/templates/index.js.map +1 -0
- package/dist/contracts/templates/public-web/page-meta.d.ts +22 -0
- package/dist/contracts/templates/public-web/page-meta.d.ts.map +1 -0
- package/dist/contracts/templates/public-web/page-meta.js +57 -0
- package/dist/contracts/templates/public-web/page-meta.js.map +1 -0
- package/dist/contracts/templates/registry.d.ts +59 -0
- package/dist/contracts/templates/registry.d.ts.map +1 -0
- package/dist/contracts/templates/registry.js +157 -0
- package/dist/contracts/templates/registry.js.map +1 -0
- package/dist/contracts/templates/types.d.ts +84 -0
- package/dist/contracts/templates/types.d.ts.map +1 -0
- package/dist/contracts/templates/types.js +53 -0
- package/dist/contracts/templates/types.js.map +1 -0
- package/dist/contracts/types.d.ts +15 -1
- package/dist/contracts/types.d.ts.map +1 -1
- package/dist/contracts/validator.d.ts.map +1 -1
- package/dist/contracts/validator.js +15 -0
- package/dist/contracts/validator.js.map +1 -1
- package/dist/core/browser-lanes.d.ts +21 -0
- package/dist/core/browser-lanes.d.ts.map +1 -1
- package/dist/core/browser-lanes.js +94 -8
- package/dist/core/browser-lanes.js.map +1 -1
- package/dist/core/codegen/aggregator.d.ts +1 -0
- package/dist/core/codegen/aggregator.d.ts.map +1 -1
- package/dist/core/codegen/aggregator.js +24 -2
- package/dist/core/codegen/aggregator.js.map +1 -1
- package/dist/core/contracts/evidence-bundle.d.ts +44 -1
- package/dist/core/contracts/evidence-bundle.d.ts.map +1 -1
- package/dist/core/contracts/evidence-bundle.js +32 -1
- package/dist/core/contracts/evidence-bundle.js.map +1 -1
- package/dist/core/contracts/promotion-gate.d.ts +75 -0
- package/dist/core/contracts/promotion-gate.d.ts.map +1 -0
- package/dist/core/contracts/promotion-gate.js +82 -0
- package/dist/core/contracts/promotion-gate.js.map +1 -0
- package/dist/core/contracts/schema-diff.d.ts +89 -0
- package/dist/core/contracts/schema-diff.d.ts.map +1 -0
- package/dist/core/contracts/schema-diff.js +120 -0
- package/dist/core/contracts/schema-diff.js.map +1 -0
- package/dist/core/skill-memory/index.d.ts +2 -2
- package/dist/core/skill-memory/index.d.ts.map +1 -1
- package/dist/core/skill-memory/index.js +2 -1
- package/dist/core/skill-memory/index.js.map +1 -1
- package/dist/core/skill-memory/promote.d.ts +79 -0
- package/dist/core/skill-memory/promote.d.ts.map +1 -0
- package/dist/core/skill-memory/promote.js +83 -0
- package/dist/core/skill-memory/promote.js.map +1 -0
- package/dist/core/skill-memory/store.d.ts +12 -0
- package/dist/core/skill-memory/store.d.ts.map +1 -1
- package/dist/core/skill-memory/store.js +117 -12
- package/dist/core/skill-memory/store.js.map +1 -1
- package/dist/core/skill-memory/types.d.ts +104 -14
- package/dist/core/skill-memory/types.d.ts.map +1 -1
- package/dist/core/skill-memory/types.js +14 -11
- package/dist/core/skill-memory/types.js.map +1 -1
- package/dist/core/task-ledger/budget.d.ts.map +1 -1
- package/dist/core/task-ledger/budget.js +32 -0
- package/dist/core/task-ledger/budget.js.map +1 -1
- package/dist/core/task-ledger/early-stop.d.ts +66 -0
- package/dist/core/task-ledger/early-stop.d.ts.map +1 -0
- package/dist/core/task-ledger/early-stop.js +83 -0
- package/dist/core/task-ledger/early-stop.js.map +1 -0
- package/dist/core/task-ledger/marginal-utility.d.ts +98 -0
- package/dist/core/task-ledger/marginal-utility.d.ts.map +1 -0
- package/dist/core/task-ledger/marginal-utility.js +132 -0
- package/dist/core/task-ledger/marginal-utility.js.map +1 -0
- package/dist/core/task-ledger/types.d.ts +47 -0
- package/dist/core/task-ledger/types.d.ts.map +1 -1
- package/dist/gates/detect-other-gates.d.ts +60 -0
- package/dist/gates/detect-other-gates.d.ts.map +1 -0
- package/dist/gates/detect-other-gates.js +212 -0
- package/dist/gates/detect-other-gates.js.map +1 -0
- package/dist/index.js +244 -12
- package/dist/index.js.map +1 -1
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +34 -3
- package/dist/mcp-server.js.map +1 -1
- package/dist/observability/request-id.d.ts +2 -0
- package/dist/observability/request-id.d.ts.map +1 -1
- package/dist/observability/request-id.js.map +1 -1
- package/dist/orchestration/state-manager.d.ts +2 -0
- package/dist/orchestration/state-manager.d.ts.map +1 -1
- package/dist/orchestration/state-manager.js +56 -32
- package/dist/orchestration/state-manager.js.map +1 -1
- package/dist/pilot/state-graph/factory.d.ts +3 -4
- package/dist/pilot/state-graph/factory.d.ts.map +1 -1
- package/dist/pilot/state-graph/factory.js +3 -4
- package/dist/pilot/state-graph/factory.js.map +1 -1
- package/dist/resources/live-state.d.ts +1 -1
- package/dist/resources/live-state.d.ts.map +1 -1
- package/dist/resources/live-state.js +24 -0
- package/dist/resources/live-state.js.map +1 -1
- package/dist/router/browser-router.d.ts +7 -1
- package/dist/router/browser-router.d.ts.map +1 -1
- package/dist/router/browser-router.js +30 -5
- package/dist/router/browser-router.js.map +1 -1
- package/dist/run-harness/types.d.ts +1 -1
- package/dist/session/target-command-queue.d.ts +62 -0
- package/dist/session/target-command-queue.d.ts.map +1 -0
- package/dist/session/target-command-queue.js +136 -0
- package/dist/session/target-command-queue.js.map +1 -0
- package/dist/session/target-lease-registry.d.ts +47 -0
- package/dist/session/target-lease-registry.d.ts.map +1 -0
- package/dist/session/target-lease-registry.js +118 -0
- package/dist/session/target-lease-registry.js.map +1 -0
- package/dist/session-manager.d.ts +46 -1
- package/dist/session-manager.d.ts.map +1 -1
- package/dist/session-manager.js +187 -3
- package/dist/session-manager.js.map +1 -1
- package/dist/storage-state/fingerprint.d.ts +68 -0
- package/dist/storage-state/fingerprint.d.ts.map +1 -0
- package/dist/storage-state/fingerprint.js +153 -0
- package/dist/storage-state/fingerprint.js.map +1 -0
- package/dist/tools/_shared/path-meta.d.ts +40 -0
- package/dist/tools/_shared/path-meta.d.ts.map +1 -0
- package/dist/tools/_shared/path-meta.js +54 -0
- package/dist/tools/_shared/path-meta.js.map +1 -0
- package/dist/tools/act.d.ts +17 -0
- package/dist/tools/act.d.ts.map +1 -1
- package/dist/tools/act.js +96 -1
- package/dist/tools/act.js.map +1 -1
- package/dist/tools/batch-paginate.d.ts.map +1 -1
- package/dist/tools/batch-paginate.js +4 -7
- package/dist/tools/batch-paginate.js.map +1 -1
- package/dist/tools/computer.d.ts.map +1 -1
- package/dist/tools/computer.js +2 -1
- package/dist/tools/computer.js.map +1 -1
- package/dist/tools/connection-health.d.ts.map +1 -1
- package/dist/tools/connection-health.js +4 -0
- package/dist/tools/connection-health.js.map +1 -1
- package/dist/tools/extract-data.d.ts.map +1 -1
- package/dist/tools/extract-data.js +1 -0
- package/dist/tools/extract-data.js.map +1 -1
- package/dist/tools/find.d.ts.map +1 -1
- package/dist/tools/find.js +2 -5
- package/dist/tools/find.js.map +1 -1
- package/dist/tools/image-qa.d.ts +49 -0
- package/dist/tools/image-qa.d.ts.map +1 -0
- package/dist/tools/image-qa.js +256 -0
- package/dist/tools/image-qa.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +11 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/interact.d.ts.map +1 -1
- package/dist/tools/interact.js +6 -5
- package/dist/tools/interact.js.map +1 -1
- package/dist/tools/navigate.d.ts.map +1 -1
- package/dist/tools/navigate.js +5 -0
- package/dist/tools/navigate.js.map +1 -1
- package/dist/tools/oc-assert.d.ts +20 -0
- package/dist/tools/oc-assert.d.ts.map +1 -1
- package/dist/tools/oc-assert.js +79 -4
- package/dist/tools/oc-assert.js.map +1 -1
- package/dist/tools/oc-evidence-bundle.d.ts.map +1 -1
- package/dist/tools/oc-evidence-bundle.js +74 -6
- package/dist/tools/oc-evidence-bundle.js.map +1 -1
- package/dist/tools/oc-gate-inspect.d.ts +60 -0
- package/dist/tools/oc-gate-inspect.d.ts.map +1 -0
- package/dist/tools/oc-gate-inspect.js +145 -0
- package/dist/tools/oc-gate-inspect.js.map +1 -0
- package/dist/tools/oc-journal-compact.d.ts +25 -0
- package/dist/tools/oc-journal-compact.d.ts.map +1 -0
- package/dist/tools/oc-journal-compact.js +211 -0
- package/dist/tools/oc-journal-compact.js.map +1 -0
- package/dist/tools/oc-lane.d.ts.map +1 -1
- package/dist/tools/oc-lane.js +18 -1
- package/dist/tools/oc-lane.js.map +1 -1
- package/dist/tools/oc-normalize-action.js +2 -2
- package/dist/tools/oc-normalize-action.js.map +1 -1
- package/dist/tools/oc-progress-status.js +2 -2
- package/dist/tools/oc-progress-status.js.map +1 -1
- package/dist/tools/oc-skill-export.js +1 -1
- package/dist/tools/oc-skill-export.js.map +1 -1
- package/dist/tools/oc-skill-recall.d.ts +24 -2
- package/dist/tools/oc-skill-recall.d.ts.map +1 -1
- package/dist/tools/oc-skill-recall.js +105 -7
- package/dist/tools/oc-skill-recall.js.map +1 -1
- package/dist/tools/oc-skill-record.d.ts +7 -0
- package/dist/tools/oc-skill-record.d.ts.map +1 -1
- package/dist/tools/oc-skill-record.js +54 -0
- package/dist/tools/oc-skill-record.js.map +1 -1
- package/dist/tools/page-screenshot.d.ts.map +1 -1
- package/dist/tools/page-screenshot.js +2 -7
- package/dist/tools/page-screenshot.js.map +1 -1
- package/dist/tools/read-page.d.ts.map +1 -1
- package/dist/tools/read-page.js +3 -0
- package/dist/tools/read-page.js.map +1 -1
- package/dist/tools/session-resume.d.ts +4 -0
- package/dist/tools/session-resume.d.ts.map +1 -1
- package/dist/tools/session-resume.js +60 -0
- package/dist/tools/session-resume.js.map +1 -1
- package/dist/tools/shutdown.d.ts.map +1 -1
- package/dist/tools/shutdown.js +5 -2
- package/dist/tools/shutdown.js.map +1 -1
- package/dist/tools/vision-find.d.ts.map +1 -1
- package/dist/tools/vision-find.js +3 -2
- package/dist/tools/vision-find.js.map +1 -1
- package/dist/transports/broker-proxy.d.ts +62 -0
- package/dist/transports/broker-proxy.d.ts.map +1 -0
- package/dist/transports/broker-proxy.js +227 -0
- package/dist/transports/broker-proxy.js.map +1 -0
- package/dist/transports/duplicate-controller-error-server.d.ts +65 -0
- package/dist/transports/duplicate-controller-error-server.d.ts.map +1 -0
- package/dist/transports/duplicate-controller-error-server.js +296 -0
- package/dist/transports/duplicate-controller-error-server.js.map +1 -0
- package/dist/transports/http.d.ts.map +1 -1
- package/dist/transports/http.js +17 -4
- package/dist/transports/http.js.map +1 -1
- package/dist/transports/index.d.ts +2 -0
- package/dist/transports/index.d.ts.map +1 -1
- package/dist/transports/index.js.map +1 -1
- package/dist/types/browser-backend.d.ts +19 -0
- package/dist/types/browser-backend.d.ts.map +1 -1
- package/dist/types/tool-annotations.d.ts +3 -0
- package/dist/types/tool-annotations.d.ts.map +1 -1
- package/dist/types/tool-annotations.js +3 -0
- package/dist/types/tool-annotations.js.map +1 -1
- package/dist/utils/controller-lock.d.ts +109 -0
- package/dist/utils/controller-lock.d.ts.map +1 -0
- package/dist/utils/controller-lock.js +455 -0
- package/dist/utils/controller-lock.js.map +1 -0
- package/dist/utils/duplicate-controller-diagnostics.d.ts +55 -0
- package/dist/utils/duplicate-controller-diagnostics.d.ts.map +1 -0
- package/dist/utils/duplicate-controller-diagnostics.js +227 -0
- package/dist/utils/duplicate-controller-diagnostics.js.map +1 -0
- package/dist/utils/image-mime.d.ts +18 -0
- package/dist/utils/image-mime.d.ts.map +1 -0
- package/dist/utils/image-mime.js +51 -0
- package/dist/utils/image-mime.js.map +1 -0
- package/dist/vision/screenshot-analyzer.d.ts.map +1 -1
- package/dist/vision/screenshot-analyzer.js +2 -1
- package/dist/vision/screenshot-analyzer.js.map +1 -1
- package/dist/watchdog/health-endpoint.d.ts +8 -0
- package/dist/watchdog/health-endpoint.d.ts.map +1 -1
- package/dist/watchdog/health-endpoint.js.map +1 -1
- package/package.json +3 -1
- package/dist/cli/replay-server.d.ts +0 -34
- package/dist/cli/replay-server.js +0 -215
- package/dist/cli/replay-server.js.map +0 -1
- package/dist/cli/skill.d.ts +0 -14
- package/dist/cli/skill.js +0 -179
- package/dist/cli/skill.js.map +0 -1
- package/dist/cli/trace.d.ts +0 -16
- package/dist/cli/trace.js +0 -270
- package/dist/cli/trace.js.map +0 -1
- package/dist/contracts/evaluator.d.ts +0 -58
- package/dist/contracts/evaluator.d.ts.map +0 -1
- package/dist/contracts/evaluator.js +0 -151
- package/dist/contracts/evaluator.js.map +0 -1
- package/dist/contracts/evidence.d.ts +0 -122
- package/dist/contracts/evidence.d.ts.map +0 -1
- package/dist/contracts/evidence.js +0 -276
- package/dist/contracts/evidence.js.map +0 -1
- package/dist/contracts/handoff/banner.d.ts +0 -53
- package/dist/contracts/handoff/banner.d.ts.map +0 -1
- package/dist/contracts/handoff/banner.js +0 -136
- package/dist/contracts/handoff/banner.js.map +0 -1
- package/dist/contracts/handoff/index.d.ts +0 -11
- package/dist/contracts/handoff/index.d.ts.map +0 -1
- package/dist/contracts/handoff/index.js +0 -24
- package/dist/contracts/handoff/index.js.map +0 -1
- package/dist/contracts/handoff/manager.d.ts +0 -104
- package/dist/contracts/handoff/manager.d.ts.map +0 -1
- package/dist/contracts/handoff/manager.js +0 -184
- package/dist/contracts/handoff/manager.js.map +0 -1
- package/dist/contracts/handoff/persistence.d.ts +0 -76
- package/dist/contracts/handoff/persistence.d.ts.map +0 -1
- package/dist/contracts/handoff/persistence.js +0 -251
- package/dist/contracts/handoff/persistence.js.map +0 -1
- package/dist/contracts/handoff/token.d.ts +0 -22
- package/dist/contracts/handoff/token.d.ts.map +0 -1
- package/dist/contracts/handoff/token.js +0 -76
- package/dist/contracts/handoff/token.js.map +0 -1
- package/dist/contracts/idempotency.d.ts +0 -61
- package/dist/contracts/idempotency.d.ts.map +0 -1
- package/dist/contracts/idempotency.js +0 -182
- package/dist/contracts/idempotency.js.map +0 -1
- package/dist/contracts/runtime.d.ts +0 -166
- package/dist/contracts/runtime.d.ts.map +0 -1
- package/dist/contracts/runtime.js +0 -418
- package/dist/contracts/runtime.js.map +0 -1
- package/dist/contracts/screenshot-classes.d.ts +0 -78
- package/dist/contracts/screenshot-classes.d.ts.map +0 -1
- package/dist/contracts/screenshot-classes.js +0 -211
- package/dist/contracts/screenshot-classes.js.map +0 -1
- package/dist/core/codegen/formatters/mcp-replay.d.ts +0 -29
- package/dist/core/codegen/formatters/mcp-replay.d.ts.map +0 -1
- package/dist/core/codegen/formatters/mcp-replay.js +0 -37
- package/dist/core/codegen/formatters/mcp-replay.js.map +0 -1
- package/dist/core/codegen/formatters/playwright.d.ts +0 -13
- package/dist/core/codegen/formatters/playwright.d.ts.map +0 -1
- package/dist/core/codegen/formatters/playwright.js +0 -208
- package/dist/core/codegen/formatters/playwright.js.map +0 -1
- package/dist/core/codegen/formatters/puppeteer.d.ts +0 -39
- package/dist/core/codegen/formatters/puppeteer.d.ts.map +0 -1
- package/dist/core/codegen/formatters/puppeteer.js +0 -260
- package/dist/core/codegen/formatters/puppeteer.js.map +0 -1
- package/dist/core/codegen/formatters/shared.d.ts +0 -22
- package/dist/core/codegen/formatters/shared.d.ts.map +0 -1
- package/dist/core/codegen/formatters/shared.js +0 -41
- package/dist/core/codegen/formatters/shared.js.map +0 -1
- package/dist/core/codegen/secrets-hook.d.ts +0 -59
- package/dist/core/codegen/secrets-hook.d.ts.map +0 -1
- package/dist/core/codegen/secrets-hook.js +0 -73
- package/dist/core/codegen/secrets-hook.js.map +0 -1
- package/dist/harness/irreversible-action.d.ts +0 -20
- package/dist/harness/irreversible-action.d.ts.map +0 -1
- package/dist/harness/irreversible-action.js +0 -150
- package/dist/harness/irreversible-action.js.map +0 -1
- package/dist/perception/cache.d.ts +0 -48
- package/dist/perception/cache.d.ts.map +0 -1
- package/dist/perception/cache.js +0 -74
- package/dist/perception/cache.js.map +0 -1
- package/dist/perception/cross-check.d.ts +0 -55
- package/dist/perception/cross-check.d.ts.map +0 -1
- package/dist/perception/cross-check.js +0 -74
- package/dist/perception/cross-check.js.map +0 -1
- package/dist/perception/image-features.d.ts +0 -58
- package/dist/perception/image-features.d.ts.map +0 -1
- package/dist/perception/image-features.js +0 -148
- package/dist/perception/image-features.js.map +0 -1
- package/dist/perception/index.d.ts +0 -16
- package/dist/perception/index.d.ts.map +0 -1
- package/dist/perception/index.js +0 -32
- package/dist/perception/index.js.map +0 -1
- package/dist/perception/metadata.d.ts +0 -23
- package/dist/perception/metadata.d.ts.map +0 -1
- package/dist/perception/metadata.js +0 -117
- package/dist/perception/metadata.js.map +0 -1
- package/dist/perception/types.d.ts +0 -77
- package/dist/perception/types.d.ts.map +0 -1
- package/dist/perception/types.js +0 -10
- package/dist/perception/types.js.map +0 -1
- package/dist/perception/voting/args-equivalence.d.ts +0 -36
- package/dist/perception/voting/args-equivalence.d.ts.map +0 -1
- package/dist/perception/voting/args-equivalence.js +0 -163
- package/dist/perception/voting/args-equivalence.js.map +0 -1
- package/dist/perception/voting/index.d.ts +0 -9
- package/dist/perception/voting/index.d.ts.map +0 -1
- package/dist/perception/voting/index.js +0 -18
- package/dist/perception/voting/index.js.map +0 -1
- package/dist/perception/voting/orchestrator.d.ts +0 -118
- package/dist/perception/voting/orchestrator.d.ts.map +0 -1
- package/dist/perception/voting/orchestrator.js +0 -200
- package/dist/perception/voting/orchestrator.js.map +0 -1
- package/dist/perception/voting/providers/anthropic.d.ts +0 -40
- package/dist/perception/voting/providers/anthropic.d.ts.map +0 -1
- package/dist/perception/voting/providers/anthropic.js +0 -91
- package/dist/perception/voting/providers/anthropic.js.map +0 -1
- package/dist/perception/voting/providers/http-helpers.d.ts +0 -49
- package/dist/perception/voting/providers/http-helpers.d.ts.map +0 -1
- package/dist/perception/voting/providers/http-helpers.js +0 -131
- package/dist/perception/voting/providers/http-helpers.js.map +0 -1
- package/dist/perception/voting/providers/index.d.ts +0 -13
- package/dist/perception/voting/providers/index.d.ts.map +0 -1
- package/dist/perception/voting/providers/index.js +0 -24
- package/dist/perception/voting/providers/index.js.map +0 -1
- package/dist/perception/voting/providers/openai.d.ts +0 -31
- package/dist/perception/voting/providers/openai.d.ts.map +0 -1
- package/dist/perception/voting/providers/openai.js +0 -88
- package/dist/perception/voting/providers/openai.js.map +0 -1
- package/dist/pilot/handoff/definitions.d.ts +0 -5
- package/dist/pilot/handoff/definitions.d.ts.map +0 -1
- package/dist/pilot/handoff/definitions.js +0 -53
- package/dist/pilot/handoff/definitions.js.map +0 -1
- package/dist/resources/trace-resource.d.ts +0 -50
- package/dist/resources/trace-resource.d.ts.map +0 -1
- package/dist/resources/trace-resource.js +0 -214
- package/dist/resources/trace-resource.js.map +0 -1
- package/dist/skill/audit.d.ts +0 -55
- package/dist/skill/audit.d.ts.map +0 -1
- package/dist/skill/audit.js +0 -70
- package/dist/skill/audit.js.map +0 -1
- package/dist/skill/executor.d.ts +0 -117
- package/dist/skill/executor.d.ts.map +0 -1
- package/dist/skill/executor.js +0 -233
- package/dist/skill/executor.js.map +0 -1
- package/dist/skill/index.d.ts +0 -17
- package/dist/skill/index.d.ts.map +0 -1
- package/dist/skill/index.js +0 -27
- package/dist/skill/index.js.map +0 -1
- package/dist/skill/interactive-filter.d.ts +0 -25
- package/dist/skill/interactive-filter.d.ts.map +0 -1
- package/dist/skill/interactive-filter.js +0 -57
- package/dist/skill/interactive-filter.js.map +0 -1
- package/dist/skill/state.d.ts +0 -73
- package/dist/skill/state.d.ts.map +0 -1
- package/dist/skill/state.js +0 -153
- package/dist/skill/state.js.map +0 -1
- package/dist/skill/storage.d.ts +0 -123
- package/dist/skill/storage.d.ts.map +0 -1
- package/dist/skill/storage.js +0 -316
- package/dist/skill/storage.js.map +0 -1
- package/dist/skill/url-normalizer.d.ts +0 -31
- package/dist/skill/url-normalizer.d.ts.map +0 -1
- package/dist/skill/url-normalizer.js +0 -73
- package/dist/skill/url-normalizer.js.map +0 -1
- package/dist/skill-memory/audit-stats.d.ts +0 -51
- package/dist/skill-memory/audit-stats.d.ts.map +0 -1
- package/dist/skill-memory/audit-stats.js +0 -189
- package/dist/skill-memory/audit-stats.js.map +0 -1
- package/dist/skill-memory/curator-lock.d.ts +0 -56
- package/dist/skill-memory/curator-lock.d.ts.map +0 -1
- package/dist/skill-memory/curator-lock.js +0 -205
- package/dist/skill-memory/curator-lock.js.map +0 -1
- package/dist/skill-memory/curator-pass2.d.ts +0 -81
- package/dist/skill-memory/curator-pass2.d.ts.map +0 -1
- package/dist/skill-memory/curator-pass2.js +0 -256
- package/dist/skill-memory/curator-pass2.js.map +0 -1
- package/dist/skill-memory/curator.d.ts +0 -88
- package/dist/skill-memory/curator.d.ts.map +0 -1
- package/dist/skill-memory/curator.js +0 -253
- package/dist/skill-memory/curator.js.map +0 -1
- package/dist/skill-memory/extractor.d.ts +0 -76
- package/dist/skill-memory/extractor.d.ts.map +0 -1
- package/dist/skill-memory/extractor.js +0 -257
- package/dist/skill-memory/extractor.js.map +0 -1
- package/dist/skill-memory/index.d.ts +0 -26
- package/dist/skill-memory/index.d.ts.map +0 -1
- package/dist/skill-memory/index.js +0 -49
- package/dist/skill-memory/index.js.map +0 -1
- package/dist/skill-memory/llm-merge.d.ts +0 -68
- package/dist/skill-memory/llm-merge.d.ts.map +0 -1
- package/dist/skill-memory/llm-merge.js +0 -170
- package/dist/skill-memory/llm-merge.js.map +0 -1
- package/dist/skill-memory/recall.d.ts +0 -88
- package/dist/skill-memory/recall.d.ts.map +0 -1
- package/dist/skill-memory/recall.js +0 -182
- package/dist/skill-memory/recall.js.map +0 -1
- package/dist/skill-memory/skill-md.d.ts +0 -26
- package/dist/skill-memory/skill-md.d.ts.map +0 -1
- package/dist/skill-memory/skill-md.js +0 -227
- package/dist/skill-memory/skill-md.js.map +0 -1
- package/dist/skill-memory/stop-words.d.ts +0 -10
- package/dist/skill-memory/stop-words.d.ts.map +0 -1
- package/dist/skill-memory/stop-words.js +0 -41
- package/dist/skill-memory/stop-words.js.map +0 -1
- package/dist/skill-memory/types.d.ts +0 -71
- package/dist/skill-memory/types.d.ts.map +0 -1
- package/dist/skill-memory/types.js +0 -19
- package/dist/skill-memory/types.js.map +0 -1
- package/dist/trace/cdp-attach.d.ts +0 -51
- package/dist/trace/cdp-attach.d.ts.map +0 -1
- package/dist/trace/cdp-attach.js +0 -68
- package/dist/trace/cdp-attach.js.map +0 -1
- package/dist/trace/index.d.ts +0 -14
- package/dist/trace/index.d.ts.map +0 -1
- package/dist/trace/index.js +0 -24
- package/dist/trace/index.js.map +0 -1
- package/dist/trace/recorder.d.ts +0 -102
- package/dist/trace/recorder.d.ts.map +0 -1
- package/dist/trace/recorder.js +0 -247
- package/dist/trace/recorder.js.map +0 -1
- package/dist/trace/redactor.d.ts +0 -37
- package/dist/trace/redactor.d.ts.map +0 -1
- package/dist/trace/redactor.js +0 -195
- package/dist/trace/redactor.js.map +0 -1
- package/dist/trace/storage.d.ts +0 -70
- package/dist/trace/storage.d.ts.map +0 -1
- package/dist/trace/storage.js +0 -252
- package/dist/trace/storage.js.map +0 -1
- package/dist/trace/types.d.ts +0 -43
- package/dist/trace/types.d.ts.map +0 -1
- package/dist/trace/types.js +0 -9
- package/dist/trace/types.js.map +0 -1
- package/dist/utils/auth-token.d.ts +0 -18
- package/dist/utils/auth-token.d.ts.map +0 -1
- package/dist/utils/auth-token.js +0 -95
- package/dist/utils/auth-token.js.map +0 -1
package/README.ko.md
CHANGED
|
@@ -37,16 +37,21 @@ Chrome 프로세스 하나에 격리된 탭 여러 개, 20개 병렬 레인이 ~
|
|
|
37
37
|
|
|
38
38
|
AI: [4개 병렬 레인, 모든 사이트 이미 인증됨]
|
|
39
39
|
Best Buy $179 · Amazon $189 · Walmart $185 · eBay $172
|
|
40
|
-
|
|
40
|
+
실시간 페이지 · 이미 인증됨 · 봇 탐지 우회
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
| | 기존 방식 (Playwright 등) | OpenChrome |
|
|
44
44
|
|---|:---:|:---:|
|
|
45
|
-
| 5개 사이트
|
|
46
|
-
|
|
|
45
|
+
| 5개 사이트 작업* | ~250초 (매번 로그인) | **~3초** (병렬) |
|
|
46
|
+
| 메모리* | ~2.5GB (브라우저 5개) | **~300MB** (Chrome 1개) |
|
|
47
47
|
| 재인증 | 매 실행마다 | **불필요** |
|
|
48
48
|
| 봇 탐지 | 차단됨 | **투명** (실제 Chrome) |
|
|
49
49
|
|
|
50
|
+
<sub>\* 인증된 Chrome 1개 vs. 콜드 브라우저 N개라는 아키텍처 차이를 설명하기 위한
|
|
51
|
+
예시이며, 측정된 경쟁 벤치마크 결과가 아닙니다. 정량적 속도/비용 수치는 live 또는
|
|
52
|
+
recorded-real 벤치마크 행으로만 헤드라인 주장이 됩니다 —
|
|
53
|
+
[`docs/benchmarks/benchmark-direction.md`](docs/benchmarks/benchmark-direction.md) 참고.</sub>
|
|
54
|
+
|
|
50
55
|
---
|
|
51
56
|
|
|
52
57
|
## 빠른 시작
|
|
@@ -63,6 +68,13 @@ npx openchrome-mcp setup --client opencode # OpenCode
|
|
|
63
68
|
|
|
64
69
|
MCP 클라이언트를 재시작하세요. 끝입니다 — 첫 도구 호출 시 Chrome이 자동 실행됩니다.
|
|
65
70
|
|
|
71
|
+
**업데이트는 설정 마이그레이션이 아닙니다.** `npm install -g openchrome-mcp@latest`는
|
|
72
|
+
OpenChrome 바이너리를 업데이트하지만, 기존 Claude Code, Codex CLI, OpenCode 또는 기타
|
|
73
|
+
MCP 호스트 등록을 자동으로 다시 쓰지는 않습니다. 릴리스 노트에서 새 토폴로지(예:
|
|
74
|
+
isolated profile, broker mode, 향후 auto-elect mode)로 이동하라고 안내하는 경우,
|
|
75
|
+
`openchrome setup --client <host> ...`를 다시 실행하거나 호스트 설정을 수동으로
|
|
76
|
+
수정한 뒤 해당 호스트 세션을 재시작해야 새 MCP namespace가 로드됩니다.
|
|
77
|
+
|
|
66
78
|
<details>
|
|
67
79
|
<summary>수동 MCP 설정 (Cursor / VS Code / Windsurf 등)</summary>
|
|
68
80
|
|
|
@@ -98,7 +110,7 @@ MCP 클라이언트를 재시작하세요. 끝입니다 — 첫 도구 호출
|
|
|
98
110
|
- **검증 가능한 실행** — `oc_assert`가 페이지 상태를 Outcome Contract로 검증 (pass / fail / inconclusive) — 추측 대신 계약.
|
|
99
111
|
|
|
100
112
|
기본 도구 표면은 내비게이션·상호작용·읽기·추출·병렬 워크플로·계약·스킬·복구·진단에
|
|
101
|
-
걸쳐
|
|
113
|
+
걸쳐 118개입니다. 전체 목록: [`docs/agent/capability-map.md`](docs/agent/capability-map.md).
|
|
102
114
|
|
|
103
115
|
---
|
|
104
116
|
|
|
@@ -180,14 +192,16 @@ query_dom → inspect → interact` 대신 **바로 실행 가능한 번호 목
|
|
|
180
192
|
| **결과 분류기** | 클릭 후 실제로 무슨 일이 일어났는지 보고 (SUCCESS / SILENT_CLICK / WRONG_ELEMENT). |
|
|
181
193
|
| **49개 신뢰성 메커니즘** | 프로세스 수명부터 MCP 게이트웨이까지 8개 방어 계층 — 단일 실패로 서버가 멈추지 않음. [`docs/architecture.md`](docs/architecture.md) 참고. |
|
|
182
194
|
|
|
183
|
-
|
|
184
|
-
비용
|
|
195
|
+
이 하니스는 think-act 루프를 줄이도록 설계됐습니다: LLM 왕복 감소, 실제 소요 시간
|
|
196
|
+
단축, 비용 절감. 구체적인 속도/비용 배수는 live 또는 recorded-real 벤치마크 행으로
|
|
197
|
+
뒷받침될 때에만 헤드라인 주장으로 게시됩니다 —
|
|
198
|
+
[`docs/benchmarks/benchmark-direction.md`](docs/benchmarks/benchmark-direction.md) 참고.
|
|
185
199
|
|
|
186
200
|
---
|
|
187
201
|
|
|
188
202
|
## 알아두면 좋은 그 외 기능
|
|
189
203
|
|
|
190
|
-
- **병렬 세션** — Chrome 1개, 탭/레인 N개; `workerId` + `profileDirectory`로 클라이언트별 격리. 여러 MCP
|
|
204
|
+
- **병렬 세션** — Chrome 1개, 탭/레인 N개; `workerId` + `profileDirectory`로 클라이언트별 격리. 여러 MCP 클라이언트는 단일 broker/HTTP 소유자를 통해 연결할 때(`--broker` / `--connect-broker`) 하나의 Chrome을 안전하게 공유합니다. 독립 stdio 클라이언트는 `--port` / `--user-data-dir` 프로파일을 분리하세요. duplicate-controller 또는 `-32000` 시작 실패를 보고 OpenChrome을 업데이트했다면 MCP 호스트 설정도 마이그레이션하고 호스트를 재시작해야 합니다. 패키지 업데이트만으로 기존 등록은 바뀌지 않습니다. [`docs/mcp/topologies.md`](docs/mcp/topologies.md) 참고.
|
|
191
205
|
- **봇 차단 / Turnstile 대응** — 3단계 자동 폴백 (headless → stealth → 실제 headed Chrome)으로 CDN/WAF 차단 우회. [Turnstile 가이드](docs/turnstile-guide.md).
|
|
192
206
|
- **대화형 로그인** — 런처가 기본적으로 화면에 보이게 실행되므로 2FA/CAPTCHA를 한 번 완료한 뒤 영구 프로필을 재사용.
|
|
193
207
|
- **세션 지속성** — `--persist-storage`로 쿠키 + localStorage를 원자적으로 저장해 headless에서 재사용.
|
package/README.md
CHANGED
|
@@ -37,16 +37,21 @@ You: compare "AirPods Pro" prices across Amazon, eBay, Walmart, Best Buy
|
|
|
37
37
|
|
|
38
38
|
AI: [4 parallel lanes, already authenticated everywhere]
|
|
39
39
|
Best Buy $179 · Amazon $189 · Walmart $185 · eBay $172
|
|
40
|
-
|
|
40
|
+
live pages · already authenticated · past bot detection
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
| | Traditional (Playwright et al.) | OpenChrome |
|
|
44
44
|
|---|:---:|:---:|
|
|
45
|
-
| 5-site task | ~250s (login each) | **~3s** (parallel) |
|
|
46
|
-
| Memory | ~2.5 GB (5 browsers) | **~300 MB** (1 Chrome) |
|
|
45
|
+
| 5-site task* | ~250s (login each) | **~3s** (parallel) |
|
|
46
|
+
| Memory* | ~2.5 GB (5 browsers) | **~300 MB** (1 Chrome) |
|
|
47
47
|
| Re-auth | every run | **never** |
|
|
48
48
|
| Bot detection | flagged | **invisible** (real Chrome) |
|
|
49
49
|
|
|
50
|
+
<sub>\* Illustrative of the architectural difference (one authenticated Chrome vs. N cold
|
|
51
|
+
browsers), not benchmarked competitive results. Quantitative speed/cost figures become
|
|
52
|
+
headline claims only as live or recorded-real benchmark rows — see
|
|
53
|
+
[`docs/benchmarks/benchmark-direction.md`](docs/benchmarks/benchmark-direction.md).</sub>
|
|
54
|
+
|
|
50
55
|
---
|
|
51
56
|
|
|
52
57
|
## Quick start
|
|
@@ -63,6 +68,17 @@ npx openchrome-mcp setup --client opencode # OpenCode
|
|
|
63
68
|
|
|
64
69
|
Restart your MCP client. That's it — Chrome auto-launches on first tool call.
|
|
65
70
|
|
|
71
|
+
**Updating is not configuration migration.** `npm install -g openchrome-mcp@latest`
|
|
72
|
+
updates the OpenChrome binary, but it does not rewrite existing Claude Code,
|
|
73
|
+
Codex CLI, OpenCode, or other MCP host registrations. If a release note asks you
|
|
74
|
+
to move to a new topology (for example isolated profiles, broker mode, or a
|
|
75
|
+
future auto-elect mode), rerun `openchrome setup --client <host> ...` or update
|
|
76
|
+
the host config manually, then restart that host session so the MCP namespace is
|
|
77
|
+
loaded from the new config.
|
|
78
|
+
|
|
79
|
+
For manual Codex CLI configuration, run `openchrome config --client codex`
|
|
80
|
+
and add the printed `[mcp_servers.openchrome]` block to `~/.codex/config.toml`.
|
|
81
|
+
|
|
66
82
|
<details>
|
|
67
83
|
<summary>Manual MCP config (Cursor / VS Code / Windsurf / others)</summary>
|
|
68
84
|
|
|
@@ -97,7 +113,7 @@ Ask your agent in plain language — these all map to OpenChrome tools:
|
|
|
97
113
|
- **Crawling** — async `crawl_start` / `crawl_status` / `crawl_cancel` jobs with cursor pagination.
|
|
98
114
|
- **Verifiable runs** — `oc_assert` checks page state against an Outcome Contract (pass / fail / inconclusive) instead of guessing.
|
|
99
115
|
|
|
100
|
-
The default surface is
|
|
116
|
+
The default surface is 118 tools across navigation, interaction, reading,
|
|
101
117
|
extraction, parallel workflows, contracts, skills, recovery, and diagnostics.
|
|
102
118
|
Full catalogue: [`docs/agent/capability-map.md`](docs/agent/capability-map.md).
|
|
103
119
|
|
|
@@ -182,14 +198,16 @@ wrong guess costs 10–15s of inference. OpenChrome's harness cuts that loop:
|
|
|
182
198
|
| **Outcome classifier** | Reports what *actually* happened after a click (SUCCESS / SILENT_CLICK / WRONG_ELEMENT). |
|
|
183
199
|
| **49 reliability mechanisms** | 8 defense layers from process lifecycle to MCP gateway — no single failure hangs the server. See [`docs/architecture.md`](docs/architecture.md). |
|
|
184
200
|
|
|
185
|
-
|
|
186
|
-
|
|
201
|
+
The harness is designed to cut the think-act loop: fewer LLM round-trips, faster
|
|
202
|
+
wall time, lower cost. Specific speed/cost multipliers are published as headline
|
|
203
|
+
claims only when backed by live or recorded-real benchmark rows — see
|
|
204
|
+
[`docs/benchmarks/benchmark-direction.md`](docs/benchmarks/benchmark-direction.md).
|
|
187
205
|
|
|
188
206
|
---
|
|
189
207
|
|
|
190
208
|
## Other capabilities worth knowing
|
|
191
209
|
|
|
192
|
-
- **Parallel sessions** — 1 Chrome, N tabs/lanes; `workerId` + `profileDirectory` give per-client isolation. Multiple MCP clients can share
|
|
210
|
+
- **Parallel sessions** — 1 Chrome, N tabs/lanes; `workerId` + `profileDirectory` give per-client isolation. Multiple MCP clients can share one Chrome safely when they connect through a single broker/HTTP owner (`--broker` / `--connect-broker`); independent stdio clients should use separate `--port` / `--user-data-dir` profiles. If you upgraded OpenChrome after seeing duplicate-controller or `-32000` startup failures, also migrate the MCP host config and restart the host; package updates alone do not change existing registrations. See [`docs/mcp/topologies.md`](docs/mcp/topologies.md).
|
|
193
211
|
- **Anti-bot / Turnstile** — 3-tier auto-fallback (headless → stealth → real headed Chrome) bypasses CDN/WAF blocks. [Turnstile guide](docs/turnstile-guide.md).
|
|
194
212
|
- **Interactive login** — headed by default since the launcher runs visible; complete 2FA/CAPTCHA once, reuse the persistent profile after.
|
|
195
213
|
- **Session persistence** — `--persist-storage` saves cookies + localStorage atomically for headless reuse.
|
|
@@ -214,6 +232,57 @@ Transport stability policy: [`docs/transport-lifecycle.md`](docs/transport-lifec
|
|
|
214
232
|
|
|
215
233
|
---
|
|
216
234
|
|
|
235
|
+
## Host plugins
|
|
236
|
+
|
|
237
|
+
OpenChrome ships plugin manifests for Claude Code and Codex CLI so both hosts
|
|
238
|
+
load the MCP server and skill body from the **same shared source** — no
|
|
239
|
+
per-host duplication.
|
|
240
|
+
|
|
241
|
+
### Claude Code
|
|
242
|
+
|
|
243
|
+
Load from the repo for local development:
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
claude --plugin-dir /path/to/openchrome
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
Or install from npm after the package is published to a marketplace:
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
/plugin install openchrome # once listed in a marketplace
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
The skill body lives under `skills/openchrome/` and the `/openchrome:connect`
|
|
256
|
+
slash command is registered from the top-level `commands/` directory. Run
|
|
257
|
+
`/reload-plugins` after updating to pick up new content.
|
|
258
|
+
|
|
259
|
+
Manifest: `.claude-plugin/plugin.json` — registers the `openchrome` MCP server
|
|
260
|
+
(`openchrome serve --auto-launch`). Skills and commands are auto-discovered
|
|
261
|
+
from `skills/` and `commands/`.
|
|
262
|
+
|
|
263
|
+
### Codex CLI
|
|
264
|
+
|
|
265
|
+
Load from the repo for local development:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
codex --plugin-dir /path/to/openchrome
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
Or follow the Codex plugin installation instructions once the package is listed
|
|
272
|
+
in the Codex plugin registry.
|
|
273
|
+
|
|
274
|
+
Manifest: `.codex-plugin/plugin.json` — identical MCP server entry point and
|
|
275
|
+
skill path; the two manifests share the same `skills/openchrome/` body.
|
|
276
|
+
|
|
277
|
+
### Shared skill body
|
|
278
|
+
|
|
279
|
+
Both manifests share `skills/openchrome/SKILL.md` as the single source of
|
|
280
|
+
truth for skill content, and the slash command stub at `commands/connect.md`
|
|
281
|
+
registers `/openchrome:connect`. The `commands/` directory sits at the plugin
|
|
282
|
+
root so both hosts auto-discover it.
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
|
|
217
286
|
## Documentation
|
|
218
287
|
|
|
219
288
|
| Topic | Link |
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-elect coordinated sharing (#1480; SSOT decision D3 Q1′).
|
|
3
|
+
*
|
|
4
|
+
* Pure, side-effect-free decision helpers for the default `serve --auto-launch`
|
|
5
|
+
* election path:
|
|
6
|
+
*
|
|
7
|
+
* - the process that WINS the controller lock becomes the broker OWNER and
|
|
8
|
+
* publishes broker discovery metadata (so surplus sessions can attach);
|
|
9
|
+
* - a process that LOSES to a healthy owner becomes a coordinated CLIENT
|
|
10
|
+
* (`--connect-broker` proxy) instead of failing fast.
|
|
11
|
+
*
|
|
12
|
+
* The behavior is gated behind an explicit opt-in (`--auto-elect` /
|
|
13
|
+
* `OPENCHROME_AUTO_ELECT=1`). With the flag unset, the default path is byte-for-
|
|
14
|
+
* byte unchanged (fail-fast single owner), so this module's wiring has zero blast
|
|
15
|
+
* radius until an operator opts in. See docs/roadmap/ssot-decisions.md (D3 Q1′)
|
|
16
|
+
* for the policy and the eventual default-flip plan.
|
|
17
|
+
*
|
|
18
|
+
* Keeping the decisions here (rather than inline in src/index.ts) makes the
|
|
19
|
+
* election rules unit-testable without booting a server or Chrome.
|
|
20
|
+
*/
|
|
21
|
+
/** Offset from the CDP port used for the elected owner's broker HTTP endpoint. */
|
|
22
|
+
export declare const BROKER_HTTP_PORT_OFFSET = 200;
|
|
23
|
+
/**
|
|
24
|
+
* Is auto-elect enabled for this process?
|
|
25
|
+
*
|
|
26
|
+
* True when the operator passed `--auto-elect` or set `OPENCHROME_AUTO_ELECT=1`.
|
|
27
|
+
*/
|
|
28
|
+
export declare function isAutoElectEnabled(opts: {
|
|
29
|
+
autoElect?: boolean;
|
|
30
|
+
}, env?: NodeJS.ProcessEnv): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Should the lock WINNER elect itself as the broker owner (publish a broker so
|
|
33
|
+
* losers can attach)?
|
|
34
|
+
*
|
|
35
|
+
* Only when auto-elect is on, this process owns Chrome lifecycle (`--auto-launch`),
|
|
36
|
+
* and the operator did not already pick an explicit role. Explicit `--broker` /
|
|
37
|
+
* `--connect-broker` always win over auto-elect — auto-elect never overrides a
|
|
38
|
+
* deliberate operator choice.
|
|
39
|
+
*/
|
|
40
|
+
export declare function shouldElectBrokerOwner(params: {
|
|
41
|
+
autoElect: boolean;
|
|
42
|
+
autoLaunch: boolean;
|
|
43
|
+
manualBroker: boolean;
|
|
44
|
+
connectBroker: boolean;
|
|
45
|
+
}): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Should a process that LOST the controller lock attach as a coordinated client
|
|
48
|
+
* rather than fail fast?
|
|
49
|
+
*
|
|
50
|
+
* Only when auto-elect is on AND a broker is actually discoverable for this
|
|
51
|
+
* `(port, userDataDir)` — i.e. the healthy owner is itself an auto-elect/broker
|
|
52
|
+
* owner. If the owner is a plain direct controller (no broker published), there
|
|
53
|
+
* is nothing to attach to and the caller must fall back to the normal
|
|
54
|
+
* duplicate-controller remediation.
|
|
55
|
+
*/
|
|
56
|
+
export declare function shouldClientAutoConnect(params: {
|
|
57
|
+
autoElect: boolean;
|
|
58
|
+
brokerPresent: boolean;
|
|
59
|
+
}): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* The default broker HTTP port for an auto-elected owner on a given CDP port.
|
|
62
|
+
*
|
|
63
|
+
* Deterministic (`cdpPort + 200`, e.g. 9222 → 9422) so it is predictable and
|
|
64
|
+
* clear of the headed-fallback offset (`+100`). Operators can still override via
|
|
65
|
+
* `--http`/`OPENCHROME_HTTP_PORT`; clients never rely on this value directly —
|
|
66
|
+
* they read the actual endpoint from the published broker metadata.
|
|
67
|
+
*/
|
|
68
|
+
export declare function defaultBrokerHttpPort(cdpPort: number): number;
|
|
69
|
+
//# sourceMappingURL=auto-elect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-elect.d.ts","sourceRoot":"","sources":["../../src/broker/auto-elect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,kFAAkF;AAClF,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,EAC7B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAET;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAOV;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAEV;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE7D"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Auto-elect coordinated sharing (#1480; SSOT decision D3 Q1′).
|
|
4
|
+
*
|
|
5
|
+
* Pure, side-effect-free decision helpers for the default `serve --auto-launch`
|
|
6
|
+
* election path:
|
|
7
|
+
*
|
|
8
|
+
* - the process that WINS the controller lock becomes the broker OWNER and
|
|
9
|
+
* publishes broker discovery metadata (so surplus sessions can attach);
|
|
10
|
+
* - a process that LOSES to a healthy owner becomes a coordinated CLIENT
|
|
11
|
+
* (`--connect-broker` proxy) instead of failing fast.
|
|
12
|
+
*
|
|
13
|
+
* The behavior is gated behind an explicit opt-in (`--auto-elect` /
|
|
14
|
+
* `OPENCHROME_AUTO_ELECT=1`). With the flag unset, the default path is byte-for-
|
|
15
|
+
* byte unchanged (fail-fast single owner), so this module's wiring has zero blast
|
|
16
|
+
* radius until an operator opts in. See docs/roadmap/ssot-decisions.md (D3 Q1′)
|
|
17
|
+
* for the policy and the eventual default-flip plan.
|
|
18
|
+
*
|
|
19
|
+
* Keeping the decisions here (rather than inline in src/index.ts) makes the
|
|
20
|
+
* election rules unit-testable without booting a server or Chrome.
|
|
21
|
+
*/
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.BROKER_HTTP_PORT_OFFSET = void 0;
|
|
24
|
+
exports.isAutoElectEnabled = isAutoElectEnabled;
|
|
25
|
+
exports.shouldElectBrokerOwner = shouldElectBrokerOwner;
|
|
26
|
+
exports.shouldClientAutoConnect = shouldClientAutoConnect;
|
|
27
|
+
exports.defaultBrokerHttpPort = defaultBrokerHttpPort;
|
|
28
|
+
/** Offset from the CDP port used for the elected owner's broker HTTP endpoint. */
|
|
29
|
+
exports.BROKER_HTTP_PORT_OFFSET = 200;
|
|
30
|
+
/**
|
|
31
|
+
* Is auto-elect enabled for this process?
|
|
32
|
+
*
|
|
33
|
+
* True when the operator passed `--auto-elect` or set `OPENCHROME_AUTO_ELECT=1`.
|
|
34
|
+
*/
|
|
35
|
+
function isAutoElectEnabled(opts, env = process.env) {
|
|
36
|
+
return Boolean(opts.autoElect) || env.OPENCHROME_AUTO_ELECT === '1';
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Should the lock WINNER elect itself as the broker owner (publish a broker so
|
|
40
|
+
* losers can attach)?
|
|
41
|
+
*
|
|
42
|
+
* Only when auto-elect is on, this process owns Chrome lifecycle (`--auto-launch`),
|
|
43
|
+
* and the operator did not already pick an explicit role. Explicit `--broker` /
|
|
44
|
+
* `--connect-broker` always win over auto-elect — auto-elect never overrides a
|
|
45
|
+
* deliberate operator choice.
|
|
46
|
+
*/
|
|
47
|
+
function shouldElectBrokerOwner(params) {
|
|
48
|
+
return (params.autoElect &&
|
|
49
|
+
params.autoLaunch &&
|
|
50
|
+
!params.manualBroker &&
|
|
51
|
+
!params.connectBroker);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Should a process that LOST the controller lock attach as a coordinated client
|
|
55
|
+
* rather than fail fast?
|
|
56
|
+
*
|
|
57
|
+
* Only when auto-elect is on AND a broker is actually discoverable for this
|
|
58
|
+
* `(port, userDataDir)` — i.e. the healthy owner is itself an auto-elect/broker
|
|
59
|
+
* owner. If the owner is a plain direct controller (no broker published), there
|
|
60
|
+
* is nothing to attach to and the caller must fall back to the normal
|
|
61
|
+
* duplicate-controller remediation.
|
|
62
|
+
*/
|
|
63
|
+
function shouldClientAutoConnect(params) {
|
|
64
|
+
return params.autoElect && params.brokerPresent;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The default broker HTTP port for an auto-elected owner on a given CDP port.
|
|
68
|
+
*
|
|
69
|
+
* Deterministic (`cdpPort + 200`, e.g. 9222 → 9422) so it is predictable and
|
|
70
|
+
* clear of the headed-fallback offset (`+100`). Operators can still override via
|
|
71
|
+
* `--http`/`OPENCHROME_HTTP_PORT`; clients never rely on this value directly —
|
|
72
|
+
* they read the actual endpoint from the published broker metadata.
|
|
73
|
+
*/
|
|
74
|
+
function defaultBrokerHttpPort(cdpPort) {
|
|
75
|
+
return cdpPort + exports.BROKER_HTTP_PORT_OFFSET;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=auto-elect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-elect.js","sourceRoot":"","sources":["../../src/broker/auto-elect.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAUH,gDAKC;AAWD,wDAYC;AAYD,0DAKC;AAUD,sDAEC;AAjED,kFAAkF;AACrE,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,IAA6B,EAC7B,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,qBAAqB,KAAK,GAAG,CAAC;AACtE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CAAC,MAKtC;IACC,OAAO,CACL,MAAM,CAAC,SAAS;QAChB,MAAM,CAAC,UAAU;QACjB,CAAC,MAAM,CAAC,YAAY;QACpB,CAAC,MAAM,CAAC,aAAa,CACtB,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,uBAAuB,CAAC,MAGvC;IACC,OAAO,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,aAAa,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CAAC,OAAe;IACnD,OAAO,OAAO,GAAG,+BAAuB,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface BrokerIdentity {
|
|
2
|
+
port: number;
|
|
3
|
+
userDataDir: string;
|
|
4
|
+
httpHost: string;
|
|
5
|
+
httpPort: number;
|
|
6
|
+
pid?: number;
|
|
7
|
+
startedAt?: string;
|
|
8
|
+
version?: string;
|
|
9
|
+
authTokenEnv?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface BrokerMetadata {
|
|
12
|
+
schemaVersion: 1;
|
|
13
|
+
pid: number;
|
|
14
|
+
version: string;
|
|
15
|
+
startedAt: string;
|
|
16
|
+
port: number;
|
|
17
|
+
userDataDir: string;
|
|
18
|
+
endpoint: string;
|
|
19
|
+
authTokenEnv?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare function getBrokerRegistryDir(rootDir?: string | undefined): string;
|
|
22
|
+
export declare function getBrokerMetadataPath(port: number, userDataDir: string, rootDir?: string): string;
|
|
23
|
+
export declare function buildBrokerMetadata(identity: BrokerIdentity): BrokerMetadata;
|
|
24
|
+
export declare function publishBrokerMetadata(identity: BrokerIdentity, rootDir?: string): BrokerMetadata;
|
|
25
|
+
export declare function readBrokerMetadata(port: number, userDataDir: string, rootDir?: string): BrokerMetadata | null;
|
|
26
|
+
export declare function removeBrokerMetadata(port: number, userDataDir: string, pid?: number, rootDir?: string): void;
|
|
27
|
+
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/broker/discovery.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,CAAC,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,qBAA6C,GAAG,MAAM,CAEjG;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAEjG;AAMD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CAY5E;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAMhG;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAS7G;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,SAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAKjH"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.getBrokerRegistryDir = getBrokerRegistryDir;
|
|
37
|
+
exports.getBrokerMetadataPath = getBrokerMetadataPath;
|
|
38
|
+
exports.buildBrokerMetadata = buildBrokerMetadata;
|
|
39
|
+
exports.publishBrokerMetadata = publishBrokerMetadata;
|
|
40
|
+
exports.readBrokerMetadata = readBrokerMetadata;
|
|
41
|
+
exports.removeBrokerMetadata = removeBrokerMetadata;
|
|
42
|
+
const fs = __importStar(require("fs"));
|
|
43
|
+
const os = __importStar(require("os"));
|
|
44
|
+
const path = __importStar(require("path"));
|
|
45
|
+
const version_1 = require("../version");
|
|
46
|
+
const controller_lock_1 = require("../utils/controller-lock");
|
|
47
|
+
function getBrokerRegistryDir(rootDir = process.env.OPENCHROME_BROKER_REGISTRY_DIR) {
|
|
48
|
+
return rootDir || path.join(os.homedir(), '.openchrome', 'brokers');
|
|
49
|
+
}
|
|
50
|
+
function getBrokerMetadataPath(port, userDataDir, rootDir) {
|
|
51
|
+
return path.join(getBrokerRegistryDir(rootDir), `${(0, controller_lock_1.controllerLockKey)(port, userDataDir)}.json`);
|
|
52
|
+
}
|
|
53
|
+
function normalizeHost(host) {
|
|
54
|
+
return host === '0.0.0.0' ? '127.0.0.1' : host;
|
|
55
|
+
}
|
|
56
|
+
function buildBrokerMetadata(identity) {
|
|
57
|
+
const userDataDir = (0, controller_lock_1.normalizeControllerUserDataDir)(identity.userDataDir);
|
|
58
|
+
return {
|
|
59
|
+
schemaVersion: 1,
|
|
60
|
+
pid: identity.pid ?? process.pid,
|
|
61
|
+
version: identity.version ?? (0, version_1.getVersion)(),
|
|
62
|
+
startedAt: identity.startedAt ?? new Date().toISOString(),
|
|
63
|
+
port: identity.port,
|
|
64
|
+
userDataDir,
|
|
65
|
+
endpoint: `http://${normalizeHost(identity.httpHost)}:${identity.httpPort}/mcp`,
|
|
66
|
+
...(identity.authTokenEnv ? { authTokenEnv: identity.authTokenEnv } : {}),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function publishBrokerMetadata(identity, rootDir) {
|
|
70
|
+
const metadata = buildBrokerMetadata(identity);
|
|
71
|
+
const filePath = getBrokerMetadataPath(identity.port, metadata.userDataDir, rootDir);
|
|
72
|
+
fs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
73
|
+
fs.writeFileSync(filePath, JSON.stringify(metadata, null, 2) + '\n', { mode: 0o600 });
|
|
74
|
+
return metadata;
|
|
75
|
+
}
|
|
76
|
+
function readBrokerMetadata(port, userDataDir, rootDir) {
|
|
77
|
+
const filePath = getBrokerMetadataPath(port, userDataDir, rootDir);
|
|
78
|
+
try {
|
|
79
|
+
const metadata = JSON.parse(fs.readFileSync(filePath, 'utf8'));
|
|
80
|
+
if (metadata.schemaVersion !== 1 || typeof metadata.endpoint !== 'string' || typeof metadata.pid !== 'number')
|
|
81
|
+
return null;
|
|
82
|
+
return metadata;
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
function removeBrokerMetadata(port, userDataDir, pid = process.pid, rootDir) {
|
|
89
|
+
const filePath = getBrokerMetadataPath(port, userDataDir, rootDir);
|
|
90
|
+
const existing = readBrokerMetadata(port, userDataDir, rootDir);
|
|
91
|
+
if (existing && existing.pid !== pid)
|
|
92
|
+
return;
|
|
93
|
+
try {
|
|
94
|
+
fs.unlinkSync(filePath);
|
|
95
|
+
}
|
|
96
|
+
catch { /* best effort */ }
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=discovery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/broker/discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type BrokerLifecycleMode = 'disabled' | 'owner';
|
|
2
|
+
export type BrokerLifecycleState = 'idle' | 'running' | 'reconnecting' | 'stopping' | 'stopped';
|
|
3
|
+
export interface BrokerLifecycleSnapshot {
|
|
4
|
+
mode: BrokerLifecycleMode;
|
|
5
|
+
state: BrokerLifecycleState;
|
|
6
|
+
startedAt: string | null;
|
|
7
|
+
updatedAt: string | null;
|
|
8
|
+
reconnectCount: number;
|
|
9
|
+
lastEvent: string | null;
|
|
10
|
+
ocStopDefaultKeepChrome: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function setBrokerOwnerMode(enabled: boolean): BrokerLifecycleSnapshot;
|
|
13
|
+
export declare function recordBrokerReconnect(event: 'reconnecting' | 'reconnected' | 'reconnect_failed'): BrokerLifecycleSnapshot;
|
|
14
|
+
export declare function recordBrokerStopping(): BrokerLifecycleSnapshot;
|
|
15
|
+
export declare function recordBrokerStopped(): BrokerLifecycleSnapshot;
|
|
16
|
+
export declare function shouldOcStopKeepChromeByDefault(): boolean;
|
|
17
|
+
export declare function getBrokerLifecycleSnapshot(): BrokerLifecycleSnapshot;
|
|
18
|
+
export declare function resetBrokerLifecycleForTest(): void;
|
|
19
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/broker/lifecycle.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,OAAO,CAAC;AACvD,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,UAAU,GAAG,SAAS,CAAC;AAEhG,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,oBAAoB,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAgBD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,uBAAuB,CAS5E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG,aAAa,GAAG,kBAAkB,GAAG,uBAAuB,CAYzH;AAED,wBAAgB,oBAAoB,IAAI,uBAAuB,CAK9D;AAED,wBAAgB,mBAAmB,IAAI,uBAAuB,CAK7D;AAED,wBAAgB,+BAA+B,IAAI,OAAO,CAEzD;AAED,wBAAgB,0BAA0B,IAAI,uBAAuB,CAEpE;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAQlD"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setBrokerOwnerMode = setBrokerOwnerMode;
|
|
4
|
+
exports.recordBrokerReconnect = recordBrokerReconnect;
|
|
5
|
+
exports.recordBrokerStopping = recordBrokerStopping;
|
|
6
|
+
exports.recordBrokerStopped = recordBrokerStopped;
|
|
7
|
+
exports.shouldOcStopKeepChromeByDefault = shouldOcStopKeepChromeByDefault;
|
|
8
|
+
exports.getBrokerLifecycleSnapshot = getBrokerLifecycleSnapshot;
|
|
9
|
+
exports.resetBrokerLifecycleForTest = resetBrokerLifecycleForTest;
|
|
10
|
+
const lifecycle = {
|
|
11
|
+
mode: 'disabled',
|
|
12
|
+
state: 'idle',
|
|
13
|
+
startedAt: null,
|
|
14
|
+
updatedAt: null,
|
|
15
|
+
reconnectCount: 0,
|
|
16
|
+
lastEvent: null,
|
|
17
|
+
ocStopDefaultKeepChrome: false,
|
|
18
|
+
};
|
|
19
|
+
function nowIso() {
|
|
20
|
+
return new Date().toISOString();
|
|
21
|
+
}
|
|
22
|
+
function setBrokerOwnerMode(enabled) {
|
|
23
|
+
const now = nowIso();
|
|
24
|
+
lifecycle.mode = enabled ? 'owner' : 'disabled';
|
|
25
|
+
lifecycle.state = enabled ? 'running' : 'idle';
|
|
26
|
+
lifecycle.startedAt = enabled ? lifecycle.startedAt ?? now : null;
|
|
27
|
+
lifecycle.updatedAt = now;
|
|
28
|
+
lifecycle.lastEvent = enabled ? 'broker_owner_started' : 'broker_owner_disabled';
|
|
29
|
+
lifecycle.ocStopDefaultKeepChrome = enabled;
|
|
30
|
+
return getBrokerLifecycleSnapshot();
|
|
31
|
+
}
|
|
32
|
+
function recordBrokerReconnect(event) {
|
|
33
|
+
lifecycle.updatedAt = nowIso();
|
|
34
|
+
lifecycle.lastEvent = event;
|
|
35
|
+
if (event === 'reconnecting') {
|
|
36
|
+
lifecycle.state = 'reconnecting';
|
|
37
|
+
}
|
|
38
|
+
else if (event === 'reconnected') {
|
|
39
|
+
lifecycle.state = lifecycle.mode === 'owner' ? 'running' : 'idle';
|
|
40
|
+
lifecycle.reconnectCount += 1;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
lifecycle.state = 'reconnecting';
|
|
44
|
+
}
|
|
45
|
+
return getBrokerLifecycleSnapshot();
|
|
46
|
+
}
|
|
47
|
+
function recordBrokerStopping() {
|
|
48
|
+
lifecycle.updatedAt = nowIso();
|
|
49
|
+
lifecycle.state = 'stopping';
|
|
50
|
+
lifecycle.lastEvent = 'broker_owner_stopping';
|
|
51
|
+
return getBrokerLifecycleSnapshot();
|
|
52
|
+
}
|
|
53
|
+
function recordBrokerStopped() {
|
|
54
|
+
lifecycle.updatedAt = nowIso();
|
|
55
|
+
lifecycle.state = 'stopped';
|
|
56
|
+
lifecycle.lastEvent = 'broker_owner_stopped';
|
|
57
|
+
return getBrokerLifecycleSnapshot();
|
|
58
|
+
}
|
|
59
|
+
function shouldOcStopKeepChromeByDefault() {
|
|
60
|
+
return lifecycle.ocStopDefaultKeepChrome;
|
|
61
|
+
}
|
|
62
|
+
function getBrokerLifecycleSnapshot() {
|
|
63
|
+
return { ...lifecycle };
|
|
64
|
+
}
|
|
65
|
+
function resetBrokerLifecycleForTest() {
|
|
66
|
+
lifecycle.mode = 'disabled';
|
|
67
|
+
lifecycle.state = 'idle';
|
|
68
|
+
lifecycle.startedAt = null;
|
|
69
|
+
lifecycle.updatedAt = null;
|
|
70
|
+
lifecycle.reconnectCount = 0;
|
|
71
|
+
lifecycle.lastEvent = null;
|
|
72
|
+
lifecycle.ocStopDefaultKeepChrome = false;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/broker/lifecycle.ts"],"names":[],"mappings":"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"}
|
package/dist/cdp/client.d.ts
CHANGED
|
@@ -295,6 +295,7 @@ export declare class CDPClient {
|
|
|
295
295
|
* @param skipCookieBridge If true, skip cookie bridging from authenticated pages (used for pool pre-warming)
|
|
296
296
|
*/
|
|
297
297
|
createPage(url?: string, context?: BrowserContext | null, skipCookieBridge?: boolean): Promise<Page>;
|
|
298
|
+
private findReusableStartupPage;
|
|
298
299
|
/**
|
|
299
300
|
* Open a new tab via Chrome's HTTP debug API without attaching CDP during load.
|
|
300
301
|
* This avoids the Runtime.enable serialization artifacts that Cloudflare Turnstile
|
package/dist/cdp/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/cdp/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/cdp/client.ts"],"names":[],"mappings":"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"}
|