opendevbrowser 0.0.28 → 0.0.30
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 +2 -2
- package/dist/accessibility-snapshot-CQ4ZKWKC.js +39 -0
- package/dist/accessibility-snapshot-CQ4ZKWKC.js.map +1 -0
- package/dist/active-window-TD5HYJ72.js +37 -0
- package/dist/active-window-TD5HYJ72.js.map +1 -0
- package/dist/annotate-VTLFS2XV.js +205 -0
- package/dist/annotate-VTLFS2XV.js.map +1 -0
- package/dist/artifacts-KJ6RNDO2.js +120 -0
- package/dist/artifacts-KJ6RNDO2.js.map +1 -0
- package/dist/attr-BCI5KYCW.js +84 -0
- package/dist/attr-BCI5KYCW.js.map +1 -0
- package/dist/browser/ops-client.d.ts +1 -0
- package/dist/browser/ops-client.d.ts.map +1 -1
- package/dist/canvas-5DFEEOKM.js +309 -0
- package/dist/canvas-5DFEEOKM.js.map +1 -0
- package/dist/capture-desktop-HFTTWY4Z.js +38 -0
- package/dist/capture-desktop-HFTTWY4Z.js.map +1 -0
- package/dist/capture-window-X63XPIFF.js +40 -0
- package/dist/capture-window-X63XPIFF.js.map +1 -0
- package/dist/check-LWAUY7GC.js +71 -0
- package/dist/check-LWAUY7GC.js.map +1 -0
- package/dist/checked-ZSOUKVYT.js +71 -0
- package/dist/checked-ZSOUKVYT.js.map +1 -0
- package/dist/chunk-2SIMIPLY.js +67 -0
- package/dist/chunk-2SIMIPLY.js.map +1 -0
- package/dist/chunk-37VSRUW4.js +141 -0
- package/dist/chunk-37VSRUW4.js.map +1 -0
- package/dist/{chunk-T3VVHJTK.js → chunk-4BEJVZRK.js} +1078 -1458
- package/dist/chunk-4BEJVZRK.js.map +1 -0
- package/dist/chunk-5SWZDVOW.js +144 -0
- package/dist/chunk-5SWZDVOW.js.map +1 -0
- package/dist/chunk-6PVZ2ABC.js +429 -0
- package/dist/chunk-6PVZ2ABC.js.map +1 -0
- package/dist/chunk-7GVOUZMQ.js +64 -0
- package/dist/chunk-7GVOUZMQ.js.map +1 -0
- package/dist/chunk-7THCPS52.js +84 -0
- package/dist/chunk-7THCPS52.js.map +1 -0
- package/dist/chunk-AHEWXOKY.js +64 -0
- package/dist/chunk-AHEWXOKY.js.map +1 -0
- package/dist/chunk-ASMHEEKY.js +10 -0
- package/dist/chunk-ASMHEEKY.js.map +1 -0
- package/dist/chunk-COAOWH3G.js +3651 -0
- package/dist/chunk-COAOWH3G.js.map +1 -0
- package/dist/chunk-DBF5OKH3.js +111 -0
- package/dist/chunk-DBF5OKH3.js.map +1 -0
- package/dist/chunk-DW4TX7MU.js +54 -0
- package/dist/chunk-DW4TX7MU.js.map +1 -0
- package/dist/chunk-GQJ5S3BL.js +20 -0
- package/dist/chunk-GQJ5S3BL.js.map +1 -0
- package/dist/chunk-IPE7TF2P.js +54 -0
- package/dist/chunk-IPE7TF2P.js.map +1 -0
- package/dist/chunk-IQTJHXZJ.js +126 -0
- package/dist/chunk-IQTJHXZJ.js.map +1 -0
- package/dist/chunk-J47N77VG.js +2969 -0
- package/dist/chunk-J47N77VG.js.map +1 -0
- package/dist/chunk-JZXD6FWR.js +25 -0
- package/dist/chunk-JZXD6FWR.js.map +1 -0
- package/dist/{chunk-QVWOPIZJ.js → chunk-KDSNXS6N.js} +75 -149
- package/dist/chunk-KDSNXS6N.js.map +1 -0
- package/dist/chunk-KZ2IXVQT.js +219 -0
- package/dist/chunk-KZ2IXVQT.js.map +1 -0
- package/dist/chunk-MD655IPO.js +838 -0
- package/dist/chunk-MD655IPO.js.map +1 -0
- package/dist/chunk-MX3NFLCE.js +940 -0
- package/dist/chunk-MX3NFLCE.js.map +1 -0
- package/dist/chunk-OW5HMYMI.js +19 -0
- package/dist/chunk-OW5HMYMI.js.map +1 -0
- package/dist/chunk-PPUWQKIC.js +26 -0
- package/dist/chunk-PPUWQKIC.js.map +1 -0
- package/dist/{chunk-I5ZCOZZV.js → chunk-QOMWCRE3.js} +1202 -9561
- package/dist/chunk-QOMWCRE3.js.map +1 -0
- package/dist/chunk-RCZZGGJS.js +226 -0
- package/dist/chunk-RCZZGGJS.js.map +1 -0
- package/dist/chunk-RJNI3BHT.js +1 -0
- package/dist/chunk-RPXWUCQQ.js +112 -0
- package/dist/chunk-RPXWUCQQ.js.map +1 -0
- package/dist/chunk-S5KZQJJI.js +107 -0
- package/dist/chunk-S5KZQJJI.js.map +1 -0
- package/dist/chunk-T4GMCW6Z.js +46 -0
- package/dist/chunk-T4GMCW6Z.js.map +1 -0
- package/dist/chunk-WHQZBUNY.js +982 -0
- package/dist/chunk-WHQZBUNY.js.map +1 -0
- package/dist/chunk-WOXBLP7V.js +610 -0
- package/dist/chunk-WOXBLP7V.js.map +1 -0
- package/dist/cli/commands/inspiredesign.d.ts.map +1 -1
- package/dist/cli/commands/macro-resolve.d.ts +4 -1
- package/dist/cli/commands/macro-resolve.d.ts.map +1 -1
- package/dist/cli/commands/product-video.d.ts.map +1 -1
- package/dist/cli/commands/research.d.ts.map +1 -1
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/shopping.d.ts.map +1 -1
- package/dist/cli/commands/workflow-output.d.ts +2 -0
- package/dist/cli/commands/workflow-output.d.ts.map +1 -0
- package/dist/cli/daemon-commands.d.ts.map +1 -1
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/index.js +204 -8123
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/installers/postinstall-skill-sync.js +2 -1
- package/dist/cli/installers/postinstall-skill-sync.js.map +1 -1
- package/dist/cli/remote-relay.d.ts.map +1 -1
- package/dist/click-2AILSEIZ.js +81 -0
- package/dist/click-2AILSEIZ.js.map +1 -0
- package/dist/clone-component-TPJS3PEG.js +82 -0
- package/dist/clone-component-TPJS3PEG.js.map +1 -0
- package/dist/clone-page-LE74CIFC.js +69 -0
- package/dist/clone-page-LE74CIFC.js.map +1 -0
- package/dist/close-HN4YI47K.js +63 -0
- package/dist/close-HN4YI47K.js.map +1 -0
- package/dist/close-WFERRHX6.js +63 -0
- package/dist/close-WFERRHX6.js.map +1 -0
- package/dist/connect-RWBV2UCQ.js +107 -0
- package/dist/connect-RWBV2UCQ.js.map +1 -0
- package/dist/console-poll-PP4YYPDF.js +76 -0
- package/dist/console-poll-PP4YYPDF.js.map +1 -0
- package/dist/cookie-import-6IP776FC.js +177 -0
- package/dist/cookie-import-6IP776FC.js.map +1 -0
- package/dist/cookie-list-O2KG6DPU.js +117 -0
- package/dist/cookie-list-O2KG6DPU.js.map +1 -0
- package/dist/daemon-2BSAZXLT.js +194 -0
- package/dist/daemon-2BSAZXLT.js.map +1 -0
- package/dist/daemon-fingerprint.json +1 -1
- package/dist/debug-trace-snapshot-F3BDVZXS.js +136 -0
- package/dist/debug-trace-snapshot-F3BDVZXS.js.map +1 -0
- package/dist/dialog-6JQYUWMQ.js +75 -0
- package/dist/dialog-6JQYUWMQ.js.map +1 -0
- package/dist/disconnect-763TP7GH.js +58 -0
- package/dist/disconnect-763TP7GH.js.map +1 -0
- package/dist/enabled-DLYQFNIP.js +71 -0
- package/dist/enabled-DLYQFNIP.js.map +1 -0
- package/dist/extension-extractor-GKWSFHPN.js +11 -0
- package/dist/extension-extractor-GKWSFHPN.js.map +1 -0
- package/dist/global-D6WLWBXA.js +56 -0
- package/dist/global-D6WLWBXA.js.map +1 -0
- package/dist/goto-S346TJJH.js +98 -0
- package/dist/goto-S346TJJH.js.map +1 -0
- package/dist/help-EKKKEDL5.js +491 -0
- package/dist/help-EKKKEDL5.js.map +1 -0
- package/dist/hover-6JVJFGO7.js +71 -0
- package/dist/hover-6JVJFGO7.js.map +1 -0
- package/dist/html-EVOSPBIT.js +84 -0
- package/dist/html-EVOSPBIT.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +87 -38
- package/dist/index.js.map +1 -1
- package/dist/inspector-H57BVUJP.js +62 -0
- package/dist/inspector-H57BVUJP.js.map +1 -0
- package/dist/inspector-audit-NQBAJWC7.js +84 -0
- package/dist/inspector-audit-NQBAJWC7.js.map +1 -0
- package/dist/inspector-plan-ZDIQVND3.js +69 -0
- package/dist/inspector-plan-ZDIQVND3.js.map +1 -0
- package/dist/inspiredesign-IEUL4PX3.js +234 -0
- package/dist/inspiredesign-IEUL4PX3.js.map +1 -0
- package/dist/install-autostart-output-5DOMKCQL.js +41 -0
- package/dist/install-autostart-output-5DOMKCQL.js.map +1 -0
- package/dist/install-autostart-reconciliation-NHKOFYTD.js +73 -0
- package/dist/install-autostart-reconciliation-NHKOFYTD.js.map +1 -0
- package/dist/launch-EK66VQPF.js +225 -0
- package/dist/launch-EK66VQPF.js.map +1 -0
- package/dist/list-ADZAQ2IU.js +51 -0
- package/dist/list-ADZAQ2IU.js.map +1 -0
- package/dist/list-KKUKN467.js +54 -0
- package/dist/list-KKUKN467.js.map +1 -0
- package/dist/local-HXJLUUNT.js +54 -0
- package/dist/local-HXJLUUNT.js.map +1 -0
- package/dist/macro-resolve-6DOQJ7CA.js +253 -0
- package/dist/macro-resolve-6DOQJ7CA.js.map +1 -0
- package/dist/macros/execute-runtime.d.ts +3 -1
- package/dist/macros/execute-runtime.d.ts.map +1 -1
- package/dist/macros/execute.d.ts +2 -0
- package/dist/macros/execute.d.ts.map +1 -1
- package/dist/native-UPLVQ2SG.js +22 -0
- package/dist/native-UPLVQ2SG.js.map +1 -0
- package/dist/network-poll-NUL4PDPY.js +76 -0
- package/dist/network-poll-NUL4PDPY.js.map +1 -0
- package/dist/new-5NKYPEFT.js +69 -0
- package/dist/new-5NKYPEFT.js.map +1 -0
- package/dist/onboarding-metadata-7E3KLYSZ.js +27 -0
- package/dist/onboarding-metadata-7E3KLYSZ.js.map +1 -0
- package/dist/open-NR3BPLXV.js +81 -0
- package/dist/open-NR3BPLXV.js.map +1 -0
- package/dist/opendevbrowser.d.ts.map +1 -1
- package/dist/opendevbrowser.js +87 -38
- package/dist/opendevbrowser.js.map +1 -1
- package/dist/perf-HJ36ZI6H.js +58 -0
- package/dist/perf-HJ36ZI6H.js.map +1 -0
- package/dist/pointer-down-IYTTQWXZ.js +55 -0
- package/dist/pointer-down-IYTTQWXZ.js.map +1 -0
- package/dist/pointer-drag-A2YC5PWI.js +54 -0
- package/dist/pointer-drag-A2YC5PWI.js.map +1 -0
- package/dist/pointer-move-W5K5FUI4.js +52 -0
- package/dist/pointer-move-W5K5FUI4.js.map +1 -0
- package/dist/pointer-up-6GWVO64Y.js +55 -0
- package/dist/pointer-up-6GWVO64Y.js.map +1 -0
- package/dist/press-A3V5WB3S.js +83 -0
- package/dist/press-A3V5WB3S.js.map +1 -0
- package/dist/product-video-52REKWF3.js +235 -0
- package/dist/product-video-52REKWF3.js.map +1 -0
- package/dist/providers/artifacts.d.ts +0 -2
- package/dist/providers/artifacts.d.ts.map +1 -1
- package/dist/providers/blocker.d.ts.map +1 -1
- package/dist/providers/bounded-map.d.ts +2 -0
- package/dist/providers/bounded-map.d.ts.map +1 -0
- package/dist/providers/community/index.d.ts.map +1 -1
- package/dist/providers/constraint.d.ts.map +1 -1
- package/dist/providers/index.d.ts +1 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/renderer.d.ts.map +1 -1
- package/dist/providers/research-compiler.d.ts +1 -1
- package/dist/providers/research-compiler.d.ts.map +1 -1
- package/dist/providers/research-executor.d.ts.map +1 -1
- package/dist/providers/runtime-factory.d.ts.map +1 -1
- package/dist/providers/shared/traversal-url.d.ts +3 -0
- package/dist/providers/shared/traversal-url.d.ts.map +1 -1
- package/dist/providers/shopping/index.d.ts.map +1 -1
- package/dist/providers/social/search-quality.d.ts.map +1 -1
- package/dist/providers/workflow-handoff.d.ts +4 -0
- package/dist/providers/workflow-handoff.d.ts.map +1 -1
- package/dist/providers/workflow-output-root.d.ts +6 -0
- package/dist/providers/workflow-output-root.d.ts.map +1 -0
- package/dist/providers/workflows.d.ts.map +1 -1
- package/dist/{providers-QF2RFB4J.js → providers-IMFYMMHQ.js} +19 -14
- package/dist/providers-IMFYMMHQ.js.map +1 -0
- package/dist/public-surface/generated-manifest.d.ts +2 -2
- package/dist/public-surface/generated-manifest.d.ts.map +1 -1
- package/dist/public-surface/source.d.ts +2 -2
- package/dist/public-surface/source.d.ts.map +1 -1
- package/dist/relay/protocol.d.ts +3 -1
- package/dist/relay/protocol.d.ts.map +1 -1
- package/dist/relay/relay-server.d.ts +6 -0
- package/dist/relay/relay-server.d.ts.map +1 -1
- package/dist/research-WB6BBCDD.js +295 -0
- package/dist/research-WB6BBCDD.js.map +1 -0
- package/dist/review-BGWVY4RA.js +48 -0
- package/dist/review-BGWVY4RA.js.map +1 -0
- package/dist/review-desktop-LEORC5VS.js +54 -0
- package/dist/review-desktop-LEORC5VS.js.map +1 -0
- package/dist/rpc-4TSKSFGC.js +159 -0
- package/dist/rpc-4TSKSFGC.js.map +1 -0
- package/dist/run-3NBLVWXD.js +180 -0
- package/dist/run-3NBLVWXD.js.map +1 -0
- package/dist/screencast-start-UZVIT3IN.js +67 -0
- package/dist/screencast-start-UZVIT3IN.js.map +1 -0
- package/dist/screencast-stop-NOSJSIUO.js +59 -0
- package/dist/screencast-stop-NOSJSIUO.js.map +1 -0
- package/dist/screenshot-LARG4JQG.js +68 -0
- package/dist/screenshot-LARG4JQG.js.map +1 -0
- package/dist/scroll-VNFMV6TW.js +84 -0
- package/dist/scroll-VNFMV6TW.js.map +1 -0
- package/dist/scroll-into-view-VYRT3JPT.js +71 -0
- package/dist/scroll-into-view-VYRT3JPT.js.map +1 -0
- package/dist/select-KJTUZDVO.js +86 -0
- package/dist/select-KJTUZDVO.js.map +1 -0
- package/dist/serve-EV7K4HKR.js +498 -0
- package/dist/serve-EV7K4HKR.js.map +1 -0
- package/dist/shopping-DTXHVQ2X.js +273 -0
- package/dist/shopping-DTXHVQ2X.js.map +1 -0
- package/dist/skill-lifecycle-5UAZGKSN.js +89 -0
- package/dist/skill-lifecycle-5UAZGKSN.js.map +1 -0
- package/dist/skills-NSXDX6YM.js +26 -0
- package/dist/skills-NSXDX6YM.js.map +1 -0
- package/dist/snapshot-3XQMCMRJ.js +113 -0
- package/dist/snapshot-3XQMCMRJ.js.map +1 -0
- package/dist/status-OXSYA5XD.js +35 -0
- package/dist/status-OXSYA5XD.js.map +1 -0
- package/dist/status-YUMDP5KY.js +132 -0
- package/dist/status-YUMDP5KY.js.map +1 -0
- package/dist/status-capabilities-P4KDSE2Y.js +57 -0
- package/dist/status-capabilities-P4KDSE2Y.js.map +1 -0
- package/dist/text-V3B7UVIH.js +84 -0
- package/dist/text-V3B7UVIH.js.map +1 -0
- package/dist/tools/deps.d.ts +1 -0
- package/dist/tools/deps.d.ts.map +1 -1
- package/dist/tools/inspiredesign_run.d.ts.map +1 -1
- package/dist/tools/macro_resolve.d.ts.map +1 -1
- package/dist/tools/product_video_run.d.ts.map +1 -1
- package/dist/tools/research_run.d.ts.map +1 -1
- package/dist/tools/shopping_run.d.ts.map +1 -1
- package/dist/tools/workflow-output.d.ts +3 -0
- package/dist/tools/workflow-output.d.ts.map +1 -0
- package/dist/type-IYBN3ZLR.js +94 -0
- package/dist/type-IYBN3ZLR.js.map +1 -0
- package/dist/uncheck-SG737EGI.js +71 -0
- package/dist/uncheck-SG737EGI.js.map +1 -0
- package/dist/uninstall-KYKGJAX7.js +91 -0
- package/dist/uninstall-KYKGJAX7.js.map +1 -0
- package/dist/update-SMXPYGXS.js +305 -0
- package/dist/update-SMXPYGXS.js.map +1 -0
- package/dist/update-skill-modes-BVX7IVMW.js +38 -0
- package/dist/update-skill-modes-BVX7IVMW.js.map +1 -0
- package/dist/upload-KH6ZABJA.js +56 -0
- package/dist/upload-KH6ZABJA.js.map +1 -0
- package/dist/use-7YDKO3U4.js +63 -0
- package/dist/use-7YDKO3U4.js.map +1 -0
- package/dist/value-RZBWSKKM.js +71 -0
- package/dist/value-RZBWSKKM.js.map +1 -0
- package/dist/visible-BSFTAKXR.js +71 -0
- package/dist/visible-BSFTAKXR.js.map +1 -0
- package/dist/wait-TMTEAYOP.js +109 -0
- package/dist/wait-TMTEAYOP.js.map +1 -0
- package/dist/windows-HIZ23OHS.js +37 -0
- package/dist/windows-HIZ23OHS.js.map +1 -0
- package/extension/dist/background.js +99 -22
- package/extension/dist/ops/ops-runtime.js +85 -7
- package/extension/dist/ops/ops-session-store.js +3 -0
- package/extension/dist/ops/target-session-coordinator.js +3 -0
- package/extension/dist/services/CDPRouter.js +9 -0
- package/extension/manifest.json +1 -1
- package/package.json +1 -1
- package/skills/opendevbrowser-best-practices/SKILL.md +8 -6
- package/skills/opendevbrowser-best-practices/artifacts/skill-runtime-surface-matrix.md +1 -1
- package/skills/opendevbrowser-best-practices/scripts/odb-workflow.sh +3 -2
- package/skills/opendevbrowser-best-practices/scripts/validator-fixture-cli.sh +39 -2
- package/skills/opendevbrowser-research/SKILL.md +64 -12
- package/skills/opendevbrowser-research/artifacts/research-workflows.md +56 -19
- package/skills/opendevbrowser-research/assets/templates/compact.md +31 -5
- package/skills/opendevbrowser-research/assets/templates/context.json +52 -1
- package/skills/opendevbrowser-research/assets/templates/report.md +57 -4
- package/skills/opendevbrowser-research/examples/sample-input.json +1 -1
- package/skills/opendevbrowser-research/examples/sample-output.md +27 -2
- package/skills/opendevbrowser-research/scripts/run-research.sh +2 -6
- package/skills/opendevbrowser-research/scripts/validate-skill-assets.sh +115 -1
- package/dist/chunk-I5ZCOZZV.js.map +0 -1
- package/dist/chunk-QVWOPIZJ.js.map +0 -1
- package/dist/chunk-T3VVHJTK.js.map +0 -1
- /package/dist/{providers-QF2RFB4J.js.map → chunk-RJNI3BHT.js.map} +0 -0
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import {
|
|
2
|
+
summarizePrimaryProviderIssue
|
|
3
|
+
} from "./chunk-WHQZBUNY.js";
|
|
4
|
+
|
|
5
|
+
// src/cli/utils/workflow-message.ts
|
|
6
|
+
var asRecord = (value) => value && typeof value === "object" && !Array.isArray(value) ? value : null;
|
|
7
|
+
var readNonEmptyString = (value) => typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
|
|
8
|
+
var UNRESOLVED_COMMAND_PLACEHOLDER_RE = /<[^>\n]+>/;
|
|
9
|
+
var readRunnableStepCommand = (step) => {
|
|
10
|
+
const command = readNonEmptyString(step.command);
|
|
11
|
+
if (!command) return null;
|
|
12
|
+
return UNRESOLVED_COMMAND_PLACEHOLDER_RE.test(command) ? null : command;
|
|
13
|
+
};
|
|
14
|
+
var readDisplayableNextStep = (value) => {
|
|
15
|
+
const text = readNonEmptyString(value);
|
|
16
|
+
if (!text) return null;
|
|
17
|
+
return UNRESOLVED_COMMAND_PLACEHOLDER_RE.test(text) ? null : text;
|
|
18
|
+
};
|
|
19
|
+
var readMeta = (data) => {
|
|
20
|
+
return asRecord(asRecord(data)?.meta);
|
|
21
|
+
};
|
|
22
|
+
var readPrimaryConstraint = (data) => {
|
|
23
|
+
const meta = readMeta(data);
|
|
24
|
+
if (!meta) return null;
|
|
25
|
+
return asRecord(meta.primaryConstraint);
|
|
26
|
+
};
|
|
27
|
+
var readPrimarySummary = (data) => {
|
|
28
|
+
const meta = readMeta(data);
|
|
29
|
+
return readNonEmptyString(meta?.primaryConstraintSummary);
|
|
30
|
+
};
|
|
31
|
+
var readPrimaryNextStep = (data) => {
|
|
32
|
+
const constraint = readPrimaryConstraint(data);
|
|
33
|
+
if (!constraint) return null;
|
|
34
|
+
const guidance = asRecord(constraint.guidance);
|
|
35
|
+
if (!guidance) return null;
|
|
36
|
+
const commands = guidance.recommendedNextCommands;
|
|
37
|
+
if (!Array.isArray(commands)) return null;
|
|
38
|
+
const nextStep = commands.find((entry) => typeof entry === "string" && entry.trim().length > 0);
|
|
39
|
+
return nextStep?.trim() ?? null;
|
|
40
|
+
};
|
|
41
|
+
var inferPrimaryIssueNextStep = (data) => {
|
|
42
|
+
return summarizePrimaryProviderIssue(readFailures(data))?.guidance?.recommendedNextCommands[0] ?? null;
|
|
43
|
+
};
|
|
44
|
+
var readFailures = (data) => {
|
|
45
|
+
const meta = readMeta(data);
|
|
46
|
+
if (!meta) return [];
|
|
47
|
+
const failures = meta.failures;
|
|
48
|
+
return Array.isArray(failures) ? failures.filter((entry) => Boolean(entry) && typeof entry === "object") : [];
|
|
49
|
+
};
|
|
50
|
+
var readFollowthroughSummary = (data) => {
|
|
51
|
+
const record = asRecord(data);
|
|
52
|
+
return readNonEmptyString(record?.followthroughSummary) ?? readNonEmptyString(readMeta(data)?.followthroughSummary);
|
|
53
|
+
};
|
|
54
|
+
var readSuggestedSteps = (data) => {
|
|
55
|
+
const steps = asRecord(data)?.suggestedSteps;
|
|
56
|
+
return Array.isArray(steps) ? steps.flatMap((step) => {
|
|
57
|
+
const record = asRecord(step);
|
|
58
|
+
return record ? [record] : [];
|
|
59
|
+
}) : [];
|
|
60
|
+
};
|
|
61
|
+
var buildNextStepMessage = (message, nextStep) => {
|
|
62
|
+
const displayableNextStep = readDisplayableNextStep(nextStep);
|
|
63
|
+
return displayableNextStep ? `${message} Next step: ${displayableNextStep}` : message;
|
|
64
|
+
};
|
|
65
|
+
var buildProviderFollowupErrorMessage = (message) => {
|
|
66
|
+
const normalized = message.toLowerCase();
|
|
67
|
+
if (normalized.includes("next step:")) return message;
|
|
68
|
+
if (normalized.includes("requires login or an existing session")) {
|
|
69
|
+
return buildNextStepMessage(
|
|
70
|
+
message,
|
|
71
|
+
"Reuse an authenticated browser session, import logged-in cookies, or use the provider sign-in flow."
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
if (normalized.includes("requires manual browser follow-up") || normalized.includes("requires a live browser-rendered page")) {
|
|
75
|
+
return buildNextStepMessage(message, "Retry with browser assistance or a headed browser session.");
|
|
76
|
+
}
|
|
77
|
+
return message;
|
|
78
|
+
};
|
|
79
|
+
var readSuggestedNextAction = (data) => {
|
|
80
|
+
const record = asRecord(data);
|
|
81
|
+
if (!record) return null;
|
|
82
|
+
return readDisplayableNextStep(record.suggestedNextAction) ?? readDisplayableNextStep(asRecord(record.sessionInspector)?.suggestedNextAction);
|
|
83
|
+
};
|
|
84
|
+
var readSuggestedStepCommand = (data) => {
|
|
85
|
+
let current = asRecord(data);
|
|
86
|
+
while (current) {
|
|
87
|
+
const command = readSuggestedSteps(current).map(readRunnableStepCommand).find((step) => Boolean(step));
|
|
88
|
+
if (command) {
|
|
89
|
+
return command;
|
|
90
|
+
}
|
|
91
|
+
current = asRecord(current.challengePlan);
|
|
92
|
+
}
|
|
93
|
+
return null;
|
|
94
|
+
};
|
|
95
|
+
var readSuggestedStepReason = (data) => {
|
|
96
|
+
let current = asRecord(data);
|
|
97
|
+
while (current) {
|
|
98
|
+
const [firstStep] = readSuggestedSteps(current);
|
|
99
|
+
if (firstStep) {
|
|
100
|
+
return readDisplayableNextStep(firstStep.reason);
|
|
101
|
+
}
|
|
102
|
+
current = asRecord(current.challengePlan);
|
|
103
|
+
}
|
|
104
|
+
return null;
|
|
105
|
+
};
|
|
106
|
+
var readWorkflowGuidanceNextStep = (data) => readSuggestedNextAction(data) ?? readSuggestedStepCommand(data) ?? readSuggestedStepReason(data);
|
|
107
|
+
var buildWorkflowCompletionMessage = (workflowLabel, data) => {
|
|
108
|
+
const explicitSummary = readPrimarySummary(data);
|
|
109
|
+
if (explicitSummary) {
|
|
110
|
+
return buildNextStepMessage(
|
|
111
|
+
`${workflowLabel} completed with provider follow-up required: ${explicitSummary}`,
|
|
112
|
+
readPrimaryNextStep(data) ?? inferPrimaryIssueNextStep(data)
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
const inferred = summarizePrimaryProviderIssue(readFailures(data));
|
|
116
|
+
if (inferred) {
|
|
117
|
+
return buildNextStepMessage(
|
|
118
|
+
`${workflowLabel} completed with provider follow-up required: ${inferred.summary}`,
|
|
119
|
+
inferred.guidance?.recommendedNextCommands[0] ?? null
|
|
120
|
+
);
|
|
121
|
+
}
|
|
122
|
+
const followthroughSummary = readFollowthroughSummary(data);
|
|
123
|
+
if (followthroughSummary) {
|
|
124
|
+
return buildNextStepMessage(
|
|
125
|
+
`${workflowLabel} completed. ${followthroughSummary}`,
|
|
126
|
+
readWorkflowGuidanceNextStep(data)
|
|
127
|
+
);
|
|
128
|
+
}
|
|
129
|
+
return `${workflowLabel} completed.`;
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
export {
|
|
133
|
+
readFollowthroughSummary,
|
|
134
|
+
buildNextStepMessage,
|
|
135
|
+
buildProviderFollowupErrorMessage,
|
|
136
|
+
readSuggestedNextAction,
|
|
137
|
+
readSuggestedStepReason,
|
|
138
|
+
readWorkflowGuidanceNextStep,
|
|
139
|
+
buildWorkflowCompletionMessage
|
|
140
|
+
};
|
|
141
|
+
//# sourceMappingURL=chunk-37VSRUW4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/utils/workflow-message.ts"],"sourcesContent":["import { summarizePrimaryProviderIssue } from \"../../providers/constraint\";\n\ntype FailureShape = {\n provider?: string;\n error?: {\n reasonCode?: unknown;\n code?: unknown;\n message?: unknown;\n details?: Record<string, unknown>;\n };\n};\n\nconst asRecord = (value: unknown): Record<string, unknown> | null => (\n value && typeof value === \"object\" && !Array.isArray(value)\n ? value as Record<string, unknown>\n : null\n);\n\nconst readNonEmptyString = (value: unknown): string | null => (\n typeof value === \"string\" && value.trim().length > 0\n ? value.trim()\n : null\n);\n\nconst UNRESOLVED_COMMAND_PLACEHOLDER_RE = /<[^>\\n]+>/;\n\nconst readRunnableStepCommand = (step: Record<string, unknown>): string | null => {\n const command = readNonEmptyString(step.command);\n if (!command) return null;\n return UNRESOLVED_COMMAND_PLACEHOLDER_RE.test(command) ? null : command;\n};\n\nconst readDisplayableNextStep = (value: unknown): string | null => {\n const text = readNonEmptyString(value);\n if (!text) return null;\n return UNRESOLVED_COMMAND_PLACEHOLDER_RE.test(text) ? null : text;\n};\n\nconst readMeta = (data: unknown): Record<string, unknown> | null => {\n return asRecord(asRecord(data)?.meta);\n};\n\nconst readPrimaryConstraint = (data: unknown): Record<string, unknown> | null => {\n const meta = readMeta(data);\n if (!meta) return null;\n return asRecord(meta.primaryConstraint);\n};\n\nconst readPrimarySummary = (data: unknown): string | null => {\n const meta = readMeta(data);\n return readNonEmptyString(meta?.primaryConstraintSummary);\n};\n\nconst readPrimaryNextStep = (data: unknown): string | null => {\n const constraint = readPrimaryConstraint(data);\n if (!constraint) return null;\n const guidance = asRecord(constraint.guidance);\n if (!guidance) return null;\n const commands = guidance.recommendedNextCommands;\n if (!Array.isArray(commands)) return null;\n const nextStep = commands.find((entry): entry is string => typeof entry === \"string\" && entry.trim().length > 0);\n return nextStep?.trim() ?? null;\n};\n\nconst inferPrimaryIssueNextStep = (data: unknown): string | null => {\n return summarizePrimaryProviderIssue(readFailures(data))?.guidance?.recommendedNextCommands[0] ?? null;\n};\n\nconst readFailures = (data: unknown): FailureShape[] => {\n const meta = readMeta(data);\n if (!meta) return [];\n const failures = meta.failures;\n return Array.isArray(failures)\n ? failures.filter((entry): entry is FailureShape => Boolean(entry) && typeof entry === \"object\")\n : [];\n};\n\nexport const readFollowthroughSummary = (data: unknown): string | null => {\n const record = asRecord(data);\n return readNonEmptyString(record?.followthroughSummary)\n ?? readNonEmptyString(readMeta(data)?.followthroughSummary);\n};\n\nconst readSuggestedSteps = (data: unknown): readonly Record<string, unknown>[] => {\n const steps = asRecord(data)?.suggestedSteps;\n return Array.isArray(steps)\n ? steps.flatMap((step) => {\n const record = asRecord(step);\n return record ? [record] : [];\n })\n : [];\n};\n\nexport const buildNextStepMessage = (message: string, nextStep: string | null): string => {\n const displayableNextStep = readDisplayableNextStep(nextStep);\n return displayableNextStep ? `${message} Next step: ${displayableNextStep}` : message;\n};\n\nexport const buildProviderFollowupErrorMessage = (message: string): string => {\n const normalized = message.toLowerCase();\n if (normalized.includes(\"next step:\")) return message;\n if (normalized.includes(\"requires login or an existing session\")) {\n return buildNextStepMessage(\n message,\n \"Reuse an authenticated browser session, import logged-in cookies, or use the provider sign-in flow.\"\n );\n }\n if (\n normalized.includes(\"requires manual browser follow-up\")\n || normalized.includes(\"requires a live browser-rendered page\")\n ) {\n return buildNextStepMessage(message, \"Retry with browser assistance or a headed browser session.\");\n }\n return message;\n};\n\nexport const readSuggestedNextAction = (data: unknown): string | null => {\n const record = asRecord(data);\n if (!record) return null;\n return readDisplayableNextStep(record.suggestedNextAction)\n ?? readDisplayableNextStep(asRecord(record.sessionInspector)?.suggestedNextAction);\n};\n\nexport const readSuggestedStepCommand = (data: unknown): string | null => {\n let current = asRecord(data);\n\n while (current) {\n const command = readSuggestedSteps(current)\n .map(readRunnableStepCommand)\n .find((step): step is string => Boolean(step));\n if (command) {\n return command;\n }\n current = asRecord(current.challengePlan);\n }\n\n return null;\n};\n\nexport const readSuggestedStepReason = (data: unknown): string | null => {\n let current = asRecord(data);\n\n while (current) {\n const [firstStep] = readSuggestedSteps(current);\n if (firstStep) {\n return readDisplayableNextStep(firstStep.reason);\n }\n current = asRecord(current.challengePlan);\n }\n\n return null;\n};\n\nexport const readWorkflowGuidanceNextStep = (data: unknown): string | null => (\n readSuggestedNextAction(data) ?? readSuggestedStepCommand(data) ?? readSuggestedStepReason(data)\n);\n\nexport const buildWorkflowCompletionMessage = (workflowLabel: string, data: unknown): string => {\n const explicitSummary = readPrimarySummary(data);\n if (explicitSummary) {\n return buildNextStepMessage(\n `${workflowLabel} completed with provider follow-up required: ${explicitSummary}`,\n readPrimaryNextStep(data) ?? inferPrimaryIssueNextStep(data)\n );\n }\n const inferred = summarizePrimaryProviderIssue(readFailures(data));\n if (inferred) {\n return buildNextStepMessage(\n `${workflowLabel} completed with provider follow-up required: ${inferred.summary}`,\n inferred.guidance?.recommendedNextCommands[0] ?? null\n );\n }\n const followthroughSummary = readFollowthroughSummary(data);\n if (followthroughSummary) {\n return buildNextStepMessage(\n `${workflowLabel} completed. ${followthroughSummary}`,\n readWorkflowGuidanceNextStep(data)\n );\n }\n return `${workflowLabel} completed.`;\n};\n"],"mappings":";;;;;AAYA,IAAM,WAAW,CAAC,UAChB,SAAS,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK,IACtD,QACA;AAGN,IAAM,qBAAqB,CAAC,UAC1B,OAAO,UAAU,YAAY,MAAM,KAAK,EAAE,SAAS,IAC/C,MAAM,KAAK,IACX;AAGN,IAAM,oCAAoC;AAE1C,IAAM,0BAA0B,CAAC,SAAiD;AAChF,QAAM,UAAU,mBAAmB,KAAK,OAAO;AAC/C,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,kCAAkC,KAAK,OAAO,IAAI,OAAO;AAClE;AAEA,IAAM,0BAA0B,CAAC,UAAkC;AACjE,QAAM,OAAO,mBAAmB,KAAK;AACrC,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO,kCAAkC,KAAK,IAAI,IAAI,OAAO;AAC/D;AAEA,IAAM,WAAW,CAAC,SAAkD;AAClE,SAAO,SAAS,SAAS,IAAI,GAAG,IAAI;AACtC;AAEA,IAAM,wBAAwB,CAAC,SAAkD;AAC/E,QAAM,OAAO,SAAS,IAAI;AAC1B,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO,SAAS,KAAK,iBAAiB;AACxC;AAEA,IAAM,qBAAqB,CAAC,SAAiC;AAC3D,QAAM,OAAO,SAAS,IAAI;AAC1B,SAAO,mBAAmB,MAAM,wBAAwB;AAC1D;AAEA,IAAM,sBAAsB,CAAC,SAAiC;AAC5D,QAAM,aAAa,sBAAsB,IAAI;AAC7C,MAAI,CAAC,WAAY,QAAO;AACxB,QAAM,WAAW,SAAS,WAAW,QAAQ;AAC7C,MAAI,CAAC,SAAU,QAAO;AACtB,QAAM,WAAW,SAAS;AAC1B,MAAI,CAAC,MAAM,QAAQ,QAAQ,EAAG,QAAO;AACrC,QAAM,WAAW,SAAS,KAAK,CAAC,UAA2B,OAAO,UAAU,YAAY,MAAM,KAAK,EAAE,SAAS,CAAC;AAC/G,SAAO,UAAU,KAAK,KAAK;AAC7B;AAEA,IAAM,4BAA4B,CAAC,SAAiC;AAClE,SAAO,8BAA8B,aAAa,IAAI,CAAC,GAAG,UAAU,wBAAwB,CAAC,KAAK;AACpG;AAEA,IAAM,eAAe,CAAC,SAAkC;AACtD,QAAM,OAAO,SAAS,IAAI;AAC1B,MAAI,CAAC,KAAM,QAAO,CAAC;AACnB,QAAM,WAAW,KAAK;AACtB,SAAO,MAAM,QAAQ,QAAQ,IACzB,SAAS,OAAO,CAAC,UAAiC,QAAQ,KAAK,KAAK,OAAO,UAAU,QAAQ,IAC7F,CAAC;AACP;AAEO,IAAM,2BAA2B,CAAC,SAAiC;AACxE,QAAM,SAAS,SAAS,IAAI;AAC5B,SAAO,mBAAmB,QAAQ,oBAAoB,KACjD,mBAAmB,SAAS,IAAI,GAAG,oBAAoB;AAC9D;AAEA,IAAM,qBAAqB,CAAC,SAAsD;AAChF,QAAM,QAAQ,SAAS,IAAI,GAAG;AAC9B,SAAO,MAAM,QAAQ,KAAK,IACtB,MAAM,QAAQ,CAAC,SAAS;AACxB,UAAM,SAAS,SAAS,IAAI;AAC5B,WAAO,SAAS,CAAC,MAAM,IAAI,CAAC;AAAA,EAC9B,CAAC,IACC,CAAC;AACP;AAEO,IAAM,uBAAuB,CAAC,SAAiB,aAAoC;AACxF,QAAM,sBAAsB,wBAAwB,QAAQ;AAC5D,SAAO,sBAAsB,GAAG,OAAO,eAAe,mBAAmB,KAAK;AAChF;AAEO,IAAM,oCAAoC,CAAC,YAA4B;AAC5E,QAAM,aAAa,QAAQ,YAAY;AACvC,MAAI,WAAW,SAAS,YAAY,EAAG,QAAO;AAC9C,MAAI,WAAW,SAAS,uCAAuC,GAAG;AAChE,WAAO;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,MACE,WAAW,SAAS,mCAAmC,KACpD,WAAW,SAAS,uCAAuC,GAC9D;AACA,WAAO,qBAAqB,SAAS,4DAA4D;AAAA,EACnG;AACA,SAAO;AACT;AAEO,IAAM,0BAA0B,CAAC,SAAiC;AACvE,QAAM,SAAS,SAAS,IAAI;AAC5B,MAAI,CAAC,OAAQ,QAAO;AACpB,SAAO,wBAAwB,OAAO,mBAAmB,KACpD,wBAAwB,SAAS,OAAO,gBAAgB,GAAG,mBAAmB;AACrF;AAEO,IAAM,2BAA2B,CAAC,SAAiC;AACxE,MAAI,UAAU,SAAS,IAAI;AAE3B,SAAO,SAAS;AACd,UAAM,UAAU,mBAAmB,OAAO,EACvC,IAAI,uBAAuB,EAC3B,KAAK,CAAC,SAAyB,QAAQ,IAAI,CAAC;AAC/C,QAAI,SAAS;AACX,aAAO;AAAA,IACT;AACA,cAAU,SAAS,QAAQ,aAAa;AAAA,EAC1C;AAEA,SAAO;AACT;AAEO,IAAM,0BAA0B,CAAC,SAAiC;AACvE,MAAI,UAAU,SAAS,IAAI;AAE3B,SAAO,SAAS;AACd,UAAM,CAAC,SAAS,IAAI,mBAAmB,OAAO;AAC9C,QAAI,WAAW;AACb,aAAO,wBAAwB,UAAU,MAAM;AAAA,IACjD;AACA,cAAU,SAAS,QAAQ,aAAa;AAAA,EAC1C;AAEA,SAAO;AACT;AAEO,IAAM,+BAA+B,CAAC,SAC3C,wBAAwB,IAAI,KAAK,yBAAyB,IAAI,KAAK,wBAAwB,IAAI;AAG1F,IAAM,iCAAiC,CAAC,eAAuB,SAA0B;AAC9F,QAAM,kBAAkB,mBAAmB,IAAI;AAC/C,MAAI,iBAAiB;AACnB,WAAO;AAAA,MACL,GAAG,aAAa,gDAAgD,eAAe;AAAA,MAC/E,oBAAoB,IAAI,KAAK,0BAA0B,IAAI;AAAA,IAC7D;AAAA,EACF;AACA,QAAM,WAAW,8BAA8B,aAAa,IAAI,CAAC;AACjE,MAAI,UAAU;AACZ,WAAO;AAAA,MACL,GAAG,aAAa,gDAAgD,SAAS,OAAO;AAAA,MAChF,SAAS,UAAU,wBAAwB,CAAC,KAAK;AAAA,IACnD;AAAA,EACF;AACA,QAAM,uBAAuB,yBAAyB,IAAI;AAC1D,MAAI,sBAAsB;AACxB,WAAO;AAAA,MACL,GAAG,aAAa,eAAe,oBAAoB;AAAA,MACnD,6BAA6B,IAAI;AAAA,IACnC;AAAA,EACF;AACA,SAAO,GAAG,aAAa;AACzB;","names":[]}
|