@skaile/workspaces 4.10.0 → 4.12.0
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/CHANGELOG.md +24 -0
- package/dist/{asset-feeds-W24JZM36.js → asset-feeds-WSKIL5GA.js} +13 -13
- package/dist/{asset-feeds-W24JZM36.js.map → asset-feeds-WSKIL5GA.js.map} +1 -1
- package/dist/asset-manager/catalog-deployer.js +9 -9
- package/dist/asset-manager/index.js +13 -13
- package/dist/asset-manager/installer.js +9 -9
- package/dist/bridge/drivers/claude-sdk.js +16 -14
- package/dist/bridge/drivers/claude-sdk.js.map +1 -1
- package/dist/bridge/drivers/codex.js +11 -11
- package/dist/bridge/drivers/continue.js +13 -12
- package/dist/bridge/drivers/continue.js.map +1 -1
- package/dist/bridge/drivers/echo.js +10 -8
- package/dist/bridge/drivers/echo.js.map +1 -1
- package/dist/bridge/drivers/gemini.js +9 -8
- package/dist/bridge/drivers/goose.js +12 -11
- package/dist/bridge/drivers/goose.js.map +1 -1
- package/dist/bridge/drivers/omp.js +7 -6
- package/dist/bridge/drivers/omp.js.map +1 -1
- package/dist/bridge/drivers/opencode.js +14 -12
- package/dist/bridge/drivers/opencode.js.map +1 -1
- package/dist/bridge/drivers/qwen.js +9 -8
- package/dist/bridge/drivers/qwen.js.map +1 -1
- package/dist/bridge/index.js +13 -13
- package/dist/bridge/src/cloud.d.ts.map +1 -1
- package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
- package/dist/bridge/src/drivers/echo.d.ts.map +1 -1
- package/dist/bridge/src/drivers/omp-models-yml.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/continue-config-yaml.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/env-drivers.d.ts +20 -5
- package/dist/bridge/src/provider-materialize/env-drivers.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/opencode-config.d.ts.map +1 -1
- package/dist/bridge/src/types.d.ts +6 -2
- package/dist/bridge/src/types.d.ts.map +1 -1
- package/dist/{chunk-MKZOK4JU.js → chunk-2FBPAR2V.js} +3 -3
- package/dist/{chunk-MKZOK4JU.js.map → chunk-2FBPAR2V.js.map} +1 -1
- package/dist/{chunk-HO4UO25I.js → chunk-2J3PASYF.js} +3 -3
- package/dist/{chunk-HO4UO25I.js.map → chunk-2J3PASYF.js.map} +1 -1
- package/dist/{chunk-FUCYTGAE.js → chunk-35G4M33T.js} +10 -4
- package/dist/chunk-35G4M33T.js.map +1 -0
- package/dist/{chunk-JECDED7B.js → chunk-3QCLMSXU.js} +5 -5
- package/dist/{chunk-JECDED7B.js.map → chunk-3QCLMSXU.js.map} +1 -1
- package/dist/{chunk-BXV6RLF4.js → chunk-4G6HFU27.js} +4 -4
- package/dist/{chunk-BXV6RLF4.js.map → chunk-4G6HFU27.js.map} +1 -1
- package/dist/{chunk-OUJVFZWJ.js → chunk-4SIMGJIU.js} +4 -9
- package/dist/chunk-4SIMGJIU.js.map +1 -0
- package/dist/{chunk-CSS3HHQ6.js → chunk-5UPJWC3M.js} +8 -8
- package/dist/{chunk-CSS3HHQ6.js.map → chunk-5UPJWC3M.js.map} +1 -1
- package/dist/{chunk-O3DHAGBO.js → chunk-626UIDZT.js} +6 -5
- package/dist/chunk-626UIDZT.js.map +1 -0
- package/dist/{chunk-2HUQUTJ3.js → chunk-6XIIGQXL.js} +4 -4
- package/dist/{chunk-2HUQUTJ3.js.map → chunk-6XIIGQXL.js.map} +1 -1
- package/dist/{chunk-A3X4LDOD.js → chunk-7EYRYGIM.js} +6 -6
- package/dist/{chunk-A3X4LDOD.js.map → chunk-7EYRYGIM.js.map} +1 -1
- package/dist/{chunk-7IRJ4K4F.js → chunk-7IH3RKKK.js} +3 -3
- package/dist/{chunk-7IRJ4K4F.js.map → chunk-7IH3RKKK.js.map} +1 -1
- package/dist/chunk-ALLCAFHQ.js +365 -0
- package/dist/chunk-ALLCAFHQ.js.map +1 -0
- package/dist/{chunk-W4IPN3DD.js → chunk-BOFL7GIF.js} +62 -10
- package/dist/chunk-BOFL7GIF.js.map +1 -0
- package/dist/{chunk-LFW2SH54.js → chunk-BVYTXIN5.js} +3 -3
- package/dist/{chunk-LFW2SH54.js.map → chunk-BVYTXIN5.js.map} +1 -1
- package/dist/{chunk-QV36ENWE.js → chunk-BYBIEHQX.js} +98 -39
- package/dist/chunk-BYBIEHQX.js.map +1 -0
- package/dist/{chunk-WXB6YEHZ.js → chunk-C7DPL3YA.js} +3 -3
- package/dist/{chunk-WXB6YEHZ.js.map → chunk-C7DPL3YA.js.map} +1 -1
- package/dist/{chunk-CJXSTOGW.js → chunk-C7R65ZTD.js} +4 -4
- package/dist/{chunk-CJXSTOGW.js.map → chunk-C7R65ZTD.js.map} +1 -1
- package/dist/{chunk-35PMOWAD.js → chunk-CPIAQTYM.js} +4 -4
- package/dist/chunk-CPIAQTYM.js.map +1 -0
- package/dist/{chunk-REYJKU7T.js → chunk-DHMBE5J7.js} +12 -364
- package/dist/chunk-DHMBE5J7.js.map +1 -0
- package/dist/chunk-DMJ4FUEO.js +141 -0
- package/dist/chunk-DMJ4FUEO.js.map +1 -0
- package/dist/{chunk-7ZJXFQ42.js → chunk-DPKRBLYC.js} +3 -3
- package/dist/{chunk-7ZJXFQ42.js.map → chunk-DPKRBLYC.js.map} +1 -1
- package/dist/{chunk-KSIRR5PL.js → chunk-DPLIN2RA.js} +3 -3
- package/dist/{chunk-KSIRR5PL.js.map → chunk-DPLIN2RA.js.map} +1 -1
- package/dist/{chunk-ILG4BXYE.js → chunk-GZZPKAV5.js} +27 -3
- package/dist/chunk-GZZPKAV5.js.map +1 -0
- package/dist/{chunk-M5H4DWIA.js → chunk-HGPSZXZP.js} +3 -3
- package/dist/{chunk-M5H4DWIA.js.map → chunk-HGPSZXZP.js.map} +1 -1
- package/dist/{chunk-MMLXSVQ3.js → chunk-IGI6M7MS.js} +5 -5
- package/dist/{chunk-MMLXSVQ3.js.map → chunk-IGI6M7MS.js.map} +1 -1
- package/dist/{chunk-VLXODO37.js → chunk-KECSNBET.js} +3 -3
- package/dist/{chunk-VLXODO37.js.map → chunk-KECSNBET.js.map} +1 -1
- package/dist/{chunk-3YTFHHMI.js → chunk-LHBWHIIT.js} +3 -3
- package/dist/{chunk-3YTFHHMI.js.map → chunk-LHBWHIIT.js.map} +1 -1
- package/dist/{chunk-DIQVQT5C.js → chunk-MH4GYGOW.js} +5 -5
- package/dist/{chunk-DIQVQT5C.js.map → chunk-MH4GYGOW.js.map} +1 -1
- package/dist/{chunk-WILO77HE.js → chunk-N4DHPRBS.js} +4 -4
- package/dist/{chunk-WILO77HE.js.map → chunk-N4DHPRBS.js.map} +1 -1
- package/dist/{chunk-5D5MCO4L.js → chunk-N5O6Z7HV.js} +10 -10
- package/dist/{chunk-5D5MCO4L.js.map → chunk-N5O6Z7HV.js.map} +1 -1
- package/dist/{chunk-FAI2SMFE.js → chunk-P2DLXBZK.js} +4 -4
- package/dist/{chunk-FAI2SMFE.js.map → chunk-P2DLXBZK.js.map} +1 -1
- package/dist/{chunk-EUWEMCYO.js → chunk-PCM75ICY.js} +4 -4
- package/dist/{chunk-EUWEMCYO.js.map → chunk-PCM75ICY.js.map} +1 -1
- package/dist/{chunk-7BUZQVRR.js → chunk-Q6NDQ6BH.js} +4 -4
- package/dist/{chunk-7BUZQVRR.js.map → chunk-Q6NDQ6BH.js.map} +1 -1
- package/dist/{chunk-OE2OMMOX.js → chunk-QOCH3LO7.js} +6 -6
- package/dist/{chunk-OE2OMMOX.js.map → chunk-QOCH3LO7.js.map} +1 -1
- package/dist/{chunk-CTQ4G3UY.js → chunk-QUSE2T4N.js} +173 -101
- package/dist/chunk-QUSE2T4N.js.map +1 -0
- package/dist/{chunk-ULX3R5PV.js → chunk-RE2XE2AP.js} +11 -11
- package/dist/chunk-RE2XE2AP.js.map +1 -0
- package/dist/{chunk-7J4YIVKJ.js → chunk-RJNBMEFG.js} +7 -7
- package/dist/{chunk-7J4YIVKJ.js.map → chunk-RJNBMEFG.js.map} +1 -1
- package/dist/{chunk-2D5BYAL6.js → chunk-RQLL7L72.js} +3 -3
- package/dist/{chunk-2D5BYAL6.js.map → chunk-RQLL7L72.js.map} +1 -1
- package/dist/{chunk-3T5DRUNZ.js → chunk-RQRWMKST.js} +5 -5
- package/dist/{chunk-3T5DRUNZ.js.map → chunk-RQRWMKST.js.map} +1 -1
- package/dist/{chunk-3HKYCT2M.js → chunk-RUBPZLMO.js} +3 -3
- package/dist/{chunk-3HKYCT2M.js.map → chunk-RUBPZLMO.js.map} +1 -1
- package/dist/{chunk-3XXQPHGL.js → chunk-T3YUSWVK.js} +4 -4
- package/dist/{chunk-3XXQPHGL.js.map → chunk-T3YUSWVK.js.map} +1 -1
- package/dist/{chunk-6XKQEDF7.js → chunk-TMOS6KL5.js} +6 -5
- package/dist/chunk-TMOS6KL5.js.map +1 -0
- package/dist/{chunk-37PUZERM.js → chunk-TVQPJZSO.js} +3 -3
- package/dist/{chunk-37PUZERM.js.map → chunk-TVQPJZSO.js.map} +1 -1
- package/dist/{chunk-IECQMSQ5.js → chunk-UE4AKJNQ.js} +4 -129
- package/dist/chunk-UE4AKJNQ.js.map +1 -0
- package/dist/{chunk-ELPR5XBG.js → chunk-V4RGCKYC.js} +5 -3
- package/dist/chunk-V4RGCKYC.js.map +1 -0
- package/dist/{chunk-UKJMQZV6.js → chunk-VOEBLPXO.js} +2 -2
- package/dist/chunk-VOEBLPXO.js.map +1 -0
- package/dist/{chunk-BZ7GHZ2J.js → chunk-WNDDWWGU.js} +7 -7
- package/dist/{chunk-BZ7GHZ2J.js.map → chunk-WNDDWWGU.js.map} +1 -1
- package/dist/{chunk-KLMXMW6Z.js → chunk-XPDB4O4H.js} +3 -3
- package/dist/{chunk-KLMXMW6Z.js.map → chunk-XPDB4O4H.js.map} +1 -1
- package/dist/{chunk-I3UWSGEB.js → chunk-ZK7DQRB2.js} +3 -3
- package/dist/{chunk-I3UWSGEB.js.map → chunk-ZK7DQRB2.js.map} +1 -1
- package/dist/{chunk-UXUDNBJM.js → chunk-ZSB2SPV4.js} +3 -3
- package/dist/{chunk-UXUDNBJM.js.map → chunk-ZSB2SPV4.js.map} +1 -1
- package/dist/cli/index.js +70 -69
- package/dist/cli/index.js.map +1 -1
- package/dist/connectors/config.js +4 -13
- package/dist/connectors/index.js +21 -20
- package/dist/connectors/src/config.d.ts.map +1 -1
- package/dist/connectors/src/connector-manager.d.ts +21 -1
- package/dist/connectors/src/connector-manager.d.ts.map +1 -1
- package/dist/connectors/src/fleet-utils.d.ts +38 -0
- package/dist/connectors/src/fleet-utils.d.ts.map +1 -1
- package/dist/connectors/src/index.d.ts +2 -2
- package/dist/connectors/src/index.d.ts.map +1 -1
- package/dist/connectors/src/materialized-connectors.d.ts.map +1 -1
- package/dist/connectors/src/secrets.d.ts.map +1 -1
- package/dist/{connectors-2OHRZDJZ.js → connectors-T57XL7EA.js} +3 -3
- package/dist/{connectors-2OHRZDJZ.js.map → connectors-T57XL7EA.js.map} +1 -1
- package/dist/core/index.js +8 -8
- package/dist/core/logging.js +2 -2
- package/dist/core/manifest.js +2 -2
- package/dist/core/provider-registry-credentials.js +2 -2
- package/dist/core/provider-registry.js +1 -1
- package/dist/core/runtime-assets.js +4 -4
- package/dist/core/src/index.d.ts +1 -1
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/logging/create-logger.d.ts.map +1 -1
- package/dist/core/src/logging/index.d.ts +1 -0
- package/dist/core/src/logging/index.d.ts.map +1 -1
- package/dist/core/src/logging/redact.d.ts +33 -0
- package/dist/core/src/logging/redact.d.ts.map +1 -0
- package/dist/core/src/logging/sanitize.d.ts +11 -0
- package/dist/core/src/logging/sanitize.d.ts.map +1 -1
- package/dist/core/src/provider-registry.d.ts +22 -0
- package/dist/core/src/provider-registry.d.ts.map +1 -1
- package/dist/core/workspace-config.js +3 -3
- package/dist/deploy/index.js +8 -8
- package/dist/discovery/index.js +3 -3
- package/dist/{ensure-sources-5ZYEU4BE.js → ensure-sources-ZZRU74UG.js} +16 -16
- package/dist/{ensure-sources-5ZYEU4BE.js.map → ensure-sources-ZZRU74UG.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +21 -20
- package/dist/factory-assets/connectors/deploy.js +21 -20
- package/dist/factory-assets/connectors/devserver.js +21 -20
- package/dist/factory-assets/connectors/flow/CONNECTOR.md +4 -2
- package/dist/factory-assets/connectors/flow/adapter.js +21 -20
- package/dist/factory-assets/connectors/flow/contract/schema.d.ts +12 -0
- package/dist/factory-assets/connectors/flow/contract/schema.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/contract.js +4 -3
- package/dist/factory-assets/connectors/flow/engine/node-shape.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/engine.js +12 -11
- package/dist/factory-assets/connectors/flow/prompt-fragments.js +3 -2
- package/dist/factory-assets/connectors/flow/run-flow.js +23 -22
- package/dist/factory-assets/connectors/flow.js +21 -20
- package/dist/factory-assets/connectors/git/driver.d.ts.map +1 -1
- package/dist/factory-assets/connectors/git.js +21 -20
- package/dist/factory-assets/connectors/gmail.js +21 -20
- package/dist/factory-assets/connectors/googledrive.js +21 -20
- package/dist/factory-assets/connectors/local.js +21 -20
- package/dist/factory-assets/connectors/mattermost.js +21 -20
- package/dist/factory-assets/connectors/memory.js +21 -20
- package/dist/factory-assets/connectors/minio.js +21 -20
- package/dist/factory-assets/connectors/postgres.js +21 -20
- package/dist/factory-assets/connectors/s3.js +21 -20
- package/dist/factory-assets/connectors/sharepoint.js +21 -20
- package/dist/factory-assets/connectors/sqlite.js +21 -20
- package/dist/factory-assets/connectors/static-server.js +21 -20
- package/dist/factory-assets/connectors/tunnel.js +21 -20
- package/dist/factory-assets/connectors/webdav.js +21 -20
- package/dist/factory-assets/connectors/xstate-store.js +21 -20
- package/dist/factory-assets/connectors/xstate.js +21 -20
- package/dist/flows-XHRUNYJV.js +23 -0
- package/dist/{flows-H6FL4NZU.js.map → flows-XHRUNYJV.js.map} +1 -1
- package/dist/{helpers-4SAB547F.js → helpers-M76C6JVC.js} +16 -16
- package/dist/{helpers-4SAB547F.js.map → helpers-M76C6JVC.js.map} +1 -1
- package/dist/library/index.js +11 -11
- package/dist/library/install.js +1 -15
- package/dist/library/src/install/install-from-manifest.d.ts.map +1 -1
- package/dist/{library-publish-GXIWW7NW.js → library-publish-EQYEJXWO.js} +23 -22
- package/dist/library-publish-EQYEJXWO.js.map +1 -0
- package/dist/open-library-YTP7CVVT.js +36 -0
- package/dist/{open-library-OOP3UQUP.js.map → open-library-YTP7CVVT.js.map} +1 -1
- package/dist/paths-BG3I2LPM.js +19 -0
- package/dist/{paths-RL6NZW5X.js.map → paths-BG3I2LPM.js.map} +1 -1
- package/dist/{plugin-store-ZTAJCMTY.js → plugin-store-BCNR6ZBP.js} +10 -10
- package/dist/{plugin-store-ZTAJCMTY.js.map → plugin-store-BCNR6ZBP.js.map} +1 -1
- package/dist/{project-P27CJXPB.js → project-THCZLS67.js} +17 -17
- package/dist/{project-P27CJXPB.js.map → project-THCZLS67.js.map} +1 -1
- package/dist/resolver/index.js +9 -9
- package/dist/runner/index.js +33 -32
- package/dist/runner/src/capability-registry.d.ts +13 -1
- package/dist/runner/src/capability-registry.d.ts.map +1 -1
- package/dist/runner/src/lifecycle-handler.d.ts.map +1 -1
- package/dist/runner/src/log-content.d.ts +22 -0
- package/dist/runner/src/log-content.d.ts.map +1 -0
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-builder.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +13 -13
- package/dist/sdk/bridge.js +13 -13
- package/dist/sdk/core.js +8 -8
- package/dist/sdk/flow.js +12 -11
- package/dist/sdk/index.js +33 -32
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/resolver.js +9 -9
- package/dist/sdk/runner.js +33 -32
- package/dist/{setup-JNGNZTTP.js → setup-QN4HKSFJ.js} +22 -22
- package/dist/{setup-JNGNZTTP.js.map → setup-QN4HKSFJ.js.map} +1 -1
- package/dist/skills-FKVBIDNM.js +23 -0
- package/dist/{skills-Y6MU2NRI.js.map → skills-FKVBIDNM.js.map} +1 -1
- package/dist/source-5EAGZA6K.js +37 -0
- package/dist/{source-LOGTGPGJ.js.map → source-5EAGZA6K.js.map} +1 -1
- package/dist/{source-manifest-publish-PH2XMOLW.js → source-manifest-publish-57SGT7Q3.js} +24 -23
- package/dist/source-manifest-publish-57SGT7Q3.js.map +1 -0
- package/dist/tui/index.js +33 -32
- package/dist/tui/index.js.map +1 -1
- package/dist/types/src/manifests/preset.d.ts +5 -5
- package/dist/workspace-plugin/adapters/mcp.js +15 -15
- package/dist/workspace-plugin/adapters/omp.js +14 -14
- package/dist/workspace-plugin/index.js +3 -3
- package/dist/workspace-plugin/src/tools/connectors.d.ts.map +1 -1
- package/package.json +2 -1
- package/dist/chunk-35PMOWAD.js.map +0 -1
- package/dist/chunk-6XKQEDF7.js.map +0 -1
- package/dist/chunk-CTQ4G3UY.js.map +0 -1
- package/dist/chunk-ELPR5XBG.js.map +0 -1
- package/dist/chunk-FUCYTGAE.js.map +0 -1
- package/dist/chunk-IECQMSQ5.js.map +0 -1
- package/dist/chunk-ILG4BXYE.js.map +0 -1
- package/dist/chunk-O3DHAGBO.js.map +0 -1
- package/dist/chunk-OUJVFZWJ.js.map +0 -1
- package/dist/chunk-QV36ENWE.js.map +0 -1
- package/dist/chunk-REYJKU7T.js.map +0 -1
- package/dist/chunk-UKJMQZV6.js.map +0 -1
- package/dist/chunk-ULX3R5PV.js.map +0 -1
- package/dist/chunk-W4IPN3DD.js.map +0 -1
- package/dist/flows-H6FL4NZU.js +0 -23
- package/dist/library-publish-GXIWW7NW.js.map +0 -1
- package/dist/open-library-OOP3UQUP.js +0 -35
- package/dist/paths-RL6NZW5X.js +0 -19
- package/dist/skills-Y6MU2NRI.js +0 -23
- package/dist/source-LOGTGPGJ.js +0 -36
- package/dist/source-manifest-publish-PH2XMOLW.js.map +0 -1
|
@@ -1,22 +1,23 @@
|
|
|
1
1
|
import { declaredConnectErrorKind, ClassifiedConnectError, withConnectErrorKind } from './chunk-YZSMZK37.js';
|
|
2
|
-
import { OAuthRequiredError, ConnectorFieldMissingError, LegacyAuthGrammarError, resolveAuthRef, readUnavailableMarker, ConnectorStartupError } from './chunk-
|
|
3
|
-
import { EventNormalizer } from './chunk-
|
|
4
|
-
import { resolveModelTier } from './chunk-
|
|
5
|
-
import { createDriver } from './chunk-
|
|
2
|
+
import { OAuthRequiredError, ConnectorFieldMissingError, LegacyAuthGrammarError, resolveAuthRef, readUnavailableMarker, ConnectorStartupError } from './chunk-IGI6M7MS.js';
|
|
3
|
+
import { EventNormalizer } from './chunk-KECSNBET.js';
|
|
4
|
+
import { resolveModelTier } from './chunk-4G6HFU27.js';
|
|
5
|
+
import { createDriver } from './chunk-RQRWMKST.js';
|
|
6
6
|
import { pluginRegistry } from './chunk-6E6PKKAD.js';
|
|
7
7
|
import { computeStimulus } from './chunk-IFGTRL2I.js';
|
|
8
|
-
import { interpolateNodeInstruction, resolveNodeBindings, getConsumedOutputSchema, validateConsumedNodeOutput, appendAttempt, resolveTerminalFailureStatus, remainingActiveExecutionMs, deriveCheckEvidence, computeFlowStateFromSnapshots, availableRouterFrontier, evaluateRouterSelection, routerSelectionOutput, planRouterSkips, unsettledRouterBranchIds, countFailedAttempts, hasAutomaticRetryBudget, persistedRouterSelection } from './chunk-
|
|
9
|
-
import { INPUT_SCHEMA_SHAPES_HINT, coerceInputSchema } from './chunk-
|
|
10
|
-
import {
|
|
11
|
-
import { describeStimulus, buildOrchestratorPrompt, renderSubpromptPrompt, renderStimulusPrompt } from './chunk-
|
|
12
|
-
import { deterministicNodeKindLabel, nodeInstruction, flowDefaults, isAgentNode, isGateNode, isCheckNode, nodeRequiresApproval, isSubFlowNode, isFunctionNode, isSubpromptNode, isRouterNode, isActiveRuntimeNode, nodeIsOptional, nodeLabel, nodeAssets } from './chunk-
|
|
8
|
+
import { interpolateNodeInstruction, resolveNodeBindings, getConsumedOutputSchema, validateConsumedNodeOutput, appendAttempt, resolveTerminalFailureStatus, remainingActiveExecutionMs, deriveCheckEvidence, computeFlowStateFromSnapshots, availableRouterFrontier, evaluateRouterSelection, routerSelectionOutput, planRouterSkips, unsettledRouterBranchIds, countFailedAttempts, hasAutomaticRetryBudget, persistedRouterSelection } from './chunk-626UIDZT.js';
|
|
9
|
+
import { INPUT_SCHEMA_SHAPES_HINT, coerceInputSchema } from './chunk-XPDB4O4H.js';
|
|
10
|
+
import { parseFlowDefinition } from './chunk-ALLCAFHQ.js';
|
|
11
|
+
import { describeStimulus, buildOrchestratorPrompt, renderSubpromptPrompt, renderStimulusPrompt } from './chunk-RQLL7L72.js';
|
|
12
|
+
import { deterministicNodeKindLabel, nodeInstruction, flowDefaults, isAgentNode, isGateNode, isCheckNode, nodeRequiresApproval, isSubFlowNode, isFunctionNode, isSubpromptNode, isRouterNode, isActiveRuntimeNode, nodeIsOptional, nodeLabel, nodeAssets } from './chunk-V4RGCKYC.js';
|
|
13
|
+
import { classifierDecision, withoutReservedClassifierFields } from './chunk-DHMBE5J7.js';
|
|
13
14
|
import { withActivityLabelDefs } from './chunk-O64WU6WS.js';
|
|
14
15
|
import { processAlive } from './chunk-4GY63JU6.js';
|
|
15
|
-
import { withFsDeadline, tryWithFsDeadline, FsDeadlineError, fsDeadlineMs } from './chunk-
|
|
16
|
-
import { portableSpawn } from './chunk-
|
|
17
|
-
import { createLogger } from './chunk-
|
|
16
|
+
import { withFsDeadline, tryWithFsDeadline, FsDeadlineError, fsDeadlineMs } from './chunk-2FBPAR2V.js';
|
|
17
|
+
import { portableSpawn } from './chunk-DPLIN2RA.js';
|
|
18
|
+
import { createLogger, redactCredentials } from './chunk-BOFL7GIF.js';
|
|
18
19
|
import { resolve, relative, sep, isAbsolute, join, dirname } from 'path';
|
|
19
|
-
import { mkdir, rename, writeFile, readFile, stat, cp,
|
|
20
|
+
import { mkdir, rename, writeFile, readFile, stat, cp, chmod, rm, readdir, realpath } from 'fs/promises';
|
|
20
21
|
import * as z4 from 'zod';
|
|
21
22
|
import { execFile } from 'child_process';
|
|
22
23
|
import { promisify } from 'util';
|
|
@@ -1535,14 +1536,11 @@ var MIN_REFRESH_DELAY_MS = 3e4;
|
|
|
1535
1536
|
var TRANSIENT_REFRESH_RETRY_MS = 3e4;
|
|
1536
1537
|
var MAX_REARM_MS = 24 * 24 * 60 * 60 * 1e3;
|
|
1537
1538
|
var execFileAsync2 = promisify(execFile);
|
|
1538
|
-
function redactUrlAuth(text) {
|
|
1539
|
-
return text.replace(/\/\/[^/\s]*@/g, "//***@");
|
|
1540
|
-
}
|
|
1541
1539
|
function redactError(err) {
|
|
1542
1540
|
const original = err instanceof Error ? err : new Error(String(err));
|
|
1543
|
-
const copy = new Error(
|
|
1541
|
+
const copy = new Error(redactCredentials(original.message));
|
|
1544
1542
|
copy.name = original.name;
|
|
1545
|
-
copy.stack = original.stack === void 0 ? void 0 :
|
|
1543
|
+
copy.stack = original.stack === void 0 ? void 0 : redactCredentials(original.stack);
|
|
1546
1544
|
return copy;
|
|
1547
1545
|
}
|
|
1548
1546
|
var BOOTSTRAP_COMMIT_NAME = "Skaile";
|
|
@@ -1690,7 +1688,7 @@ async function syncSubmodules(cwd, log) {
|
|
|
1690
1688
|
await git(["submodule", "update", "--init", "--recursive"], cwd, 12e4);
|
|
1691
1689
|
} catch (err) {
|
|
1692
1690
|
log.warn("git submodule update failed \u2014 checkout may be incomplete", {
|
|
1693
|
-
error:
|
|
1691
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
1694
1692
|
});
|
|
1695
1693
|
}
|
|
1696
1694
|
}
|
|
@@ -1934,7 +1932,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
1934
1932
|
origin: "tier-1",
|
|
1935
1933
|
tier: 1,
|
|
1936
1934
|
provider: providerKind,
|
|
1937
|
-
scope:
|
|
1935
|
+
scope: redactCredentials(state.url),
|
|
1938
1936
|
expiresAt: initial.expiresAt ? initial.expiresAt.toISOString() : null,
|
|
1939
1937
|
...initial.scope ? { permissions: initial.scope } : {},
|
|
1940
1938
|
...skipReason === null ? {} : { warning: "static-credential", reason: skipReason }
|
|
@@ -2131,7 +2129,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2131
2129
|
});
|
|
2132
2130
|
outcome = "fetched";
|
|
2133
2131
|
} catch (err) {
|
|
2134
|
-
const message =
|
|
2132
|
+
const message = redactCredentials(err instanceof Error ? err.message : String(err));
|
|
2135
2133
|
if (!/couldn't find remote ref/i.test(message)) {
|
|
2136
2134
|
this.log.warn("session-branch fetch failed", { sessionBranch, error: message });
|
|
2137
2135
|
return "failed";
|
|
@@ -2148,7 +2146,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2148
2146
|
} catch (err) {
|
|
2149
2147
|
this.log.warn("could not update session-branch fetch refspec", {
|
|
2150
2148
|
sessionBranch,
|
|
2151
|
-
error:
|
|
2149
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2152
2150
|
});
|
|
2153
2151
|
}
|
|
2154
2152
|
return outcome;
|
|
@@ -2168,7 +2166,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2168
2166
|
} catch (err) {
|
|
2169
2167
|
this.log.warn("could not re-point session branch at origin", {
|
|
2170
2168
|
sessionBranch,
|
|
2171
|
-
error:
|
|
2169
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2172
2170
|
});
|
|
2173
2171
|
}
|
|
2174
2172
|
}
|
|
@@ -2207,7 +2205,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2207
2205
|
} catch (err) {
|
|
2208
2206
|
this.log.warn("could not line up the local session branch with origin", {
|
|
2209
2207
|
sessionBranch,
|
|
2210
|
-
error:
|
|
2208
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2211
2209
|
});
|
|
2212
2210
|
}
|
|
2213
2211
|
}
|
|
@@ -2228,7 +2226,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2228
2226
|
} catch (err) {
|
|
2229
2227
|
this.log.warn("merge of origin session branch failed", {
|
|
2230
2228
|
branch,
|
|
2231
|
-
error:
|
|
2229
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2232
2230
|
});
|
|
2233
2231
|
await this.resolveConflictsOrAbort(s, cwd, "merge");
|
|
2234
2232
|
}
|
|
@@ -2248,7 +2246,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2248
2246
|
} catch (err) {
|
|
2249
2247
|
this.log.warn("could not record the pushed session branch", {
|
|
2250
2248
|
branch,
|
|
2251
|
-
error:
|
|
2249
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2252
2250
|
});
|
|
2253
2251
|
}
|
|
2254
2252
|
}
|
|
@@ -2512,7 +2510,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2512
2510
|
} catch (err) {
|
|
2513
2511
|
this.log.warn("merge failed", {
|
|
2514
2512
|
branch: s.activeBranch,
|
|
2515
|
-
error:
|
|
2513
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2516
2514
|
});
|
|
2517
2515
|
const resolved = await this.resolveConflictsOrAbort(s, handle.mountPath, "merge");
|
|
2518
2516
|
if (resolved) {
|
|
@@ -2630,7 +2628,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2630
2628
|
const urlPrefix = this.deriveCredentialScope(url);
|
|
2631
2629
|
const helperScriptPath = join(skaileDir, `credential-helper-${declaration.id}.sh`);
|
|
2632
2630
|
const refreshAttemptPath = join(skaileDir, `refresh-attempt-${declaration.id}`);
|
|
2633
|
-
const reason =
|
|
2631
|
+
const reason = redactCredentials(err instanceof Error ? err.message : String(err));
|
|
2634
2632
|
this.ensureAttemptStamp(declaration.id, refreshAttemptPath);
|
|
2635
2633
|
writeHelperScript(
|
|
2636
2634
|
helperScriptPath,
|
|
@@ -2952,7 +2950,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
2952
2950
|
return out.length === 0 ? 0 : out.split("\n").length;
|
|
2953
2951
|
} catch (err) {
|
|
2954
2952
|
this.log.warn("ls-remote probe failed \u2014 assuming a populated remote", {
|
|
2955
|
-
error:
|
|
2953
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
2956
2954
|
});
|
|
2957
2955
|
return null;
|
|
2958
2956
|
}
|
|
@@ -3011,7 +3009,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
3011
3009
|
} catch (err) {
|
|
3012
3010
|
this.log.warn("empty-remote publish push failed; deferring to lifecycle push", {
|
|
3013
3011
|
branch,
|
|
3014
|
-
error:
|
|
3012
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
3015
3013
|
});
|
|
3016
3014
|
}
|
|
3017
3015
|
const publishedElsewhere = await this.countRemoteHeads(targetDir, authUrl, branch);
|
|
@@ -3022,7 +3020,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
3022
3020
|
} catch (err) {
|
|
3023
3021
|
this.log.warn("adopting the concurrently-created branch failed; keeping local branch", {
|
|
3024
3022
|
branch,
|
|
3025
|
-
error:
|
|
3023
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
3026
3024
|
});
|
|
3027
3025
|
}
|
|
3028
3026
|
}
|
|
@@ -3181,7 +3179,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
3181
3179
|
s.fetchInFlight = true;
|
|
3182
3180
|
void this.runPeriodicFetch(s, mountPath).catch((err) => {
|
|
3183
3181
|
this.log.debug("periodic fetch failed", {
|
|
3184
|
-
error:
|
|
3182
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
3185
3183
|
});
|
|
3186
3184
|
}).finally(() => {
|
|
3187
3185
|
s.fetchInFlight = false;
|
|
@@ -3206,7 +3204,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
3206
3204
|
} catch (err) {
|
|
3207
3205
|
this.log.warn("rebase failed", {
|
|
3208
3206
|
branch: s.branch,
|
|
3209
|
-
error:
|
|
3207
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
3210
3208
|
});
|
|
3211
3209
|
await this.resolveConflictsOrAbort(s, mountPath, "rebase");
|
|
3212
3210
|
}
|
|
@@ -3266,7 +3264,7 @@ var GitConnector = class extends AbstractConnector {
|
|
|
3266
3264
|
this.log.warn("merge of base into session branch failed", {
|
|
3267
3265
|
branch: s.activeBranch,
|
|
3268
3266
|
base: s.branch,
|
|
3269
|
-
error:
|
|
3267
|
+
error: redactCredentials(err instanceof Error ? err.message : String(err))
|
|
3270
3268
|
});
|
|
3271
3269
|
await this.resolveConflictsOrAbort(s, mountPath, "merge");
|
|
3272
3270
|
}
|
|
@@ -6579,6 +6577,92 @@ function ensureBuiltinsRegistered() {
|
|
|
6579
6577
|
registerBuiltinConnectors();
|
|
6580
6578
|
}
|
|
6581
6579
|
}
|
|
6580
|
+
var MOUNTINFO_PATH = "/proc/self/mountinfo";
|
|
6581
|
+
function testMountinfoOverride() {
|
|
6582
|
+
return process.env.VITEST ? process.env.SKAILE_FLEET_MOUNTINFO_PATH : void 0;
|
|
6583
|
+
}
|
|
6584
|
+
function isFleetManaged(connectorId) {
|
|
6585
|
+
const raw = process.env.SKAILE_FLEET_MANAGED_MOUNTS ?? "";
|
|
6586
|
+
if (raw.length === 0) return false;
|
|
6587
|
+
return raw.split(",").map((segment) => segment.trim()).filter((segment) => segment.length > 0).includes(connectorId);
|
|
6588
|
+
}
|
|
6589
|
+
function decodeMountinfoPath(field) {
|
|
6590
|
+
return field.replace(
|
|
6591
|
+
/\\(\d{3})/g,
|
|
6592
|
+
(_, octal) => String.fromCharCode(Number.parseInt(octal, 8))
|
|
6593
|
+
);
|
|
6594
|
+
}
|
|
6595
|
+
async function isMountpoint(dir, mountinfoPath) {
|
|
6596
|
+
let table;
|
|
6597
|
+
try {
|
|
6598
|
+
table = await readFile(mountinfoPath, "utf8");
|
|
6599
|
+
} catch {
|
|
6600
|
+
return null;
|
|
6601
|
+
}
|
|
6602
|
+
const target = await realpath(dir);
|
|
6603
|
+
for (const line of table.split("\n")) {
|
|
6604
|
+
const mountPoint = line.split(" ")[4];
|
|
6605
|
+
if (mountPoint !== void 0 && decodeMountinfoPath(mountPoint) === target) return true;
|
|
6606
|
+
}
|
|
6607
|
+
return false;
|
|
6608
|
+
}
|
|
6609
|
+
async function probeFleetMount(dir, mountinfoPath, { list }) {
|
|
6610
|
+
const st = await stat(dir);
|
|
6611
|
+
if (!st.isDirectory()) {
|
|
6612
|
+
throw new Error(`fleet mountpoint ${dir} is not a directory`);
|
|
6613
|
+
}
|
|
6614
|
+
if (list) await readdir(dir);
|
|
6615
|
+
if (await isMountpoint(dir, mountinfoPath) === false) {
|
|
6616
|
+
throw new Error(
|
|
6617
|
+
`fleet mountpoint ${dir} is a plain directory, not a mount \u2014 the host bind is absent or landed on a different path`
|
|
6618
|
+
);
|
|
6619
|
+
}
|
|
6620
|
+
}
|
|
6621
|
+
async function ensureFleetMounted(dir, log, options) {
|
|
6622
|
+
const timeoutMs = options?.timeoutMs ?? 3e3;
|
|
6623
|
+
const pollIntervalMs = options?.pollIntervalMs ?? 100;
|
|
6624
|
+
const mountinfoPath = options?.mountinfoPath ?? testMountinfoOverride() ?? MOUNTINFO_PATH;
|
|
6625
|
+
const deadline = Date.now() + timeoutMs;
|
|
6626
|
+
let lastErr = null;
|
|
6627
|
+
while (Date.now() < deadline) {
|
|
6628
|
+
try {
|
|
6629
|
+
await probeFleetMount(dir, mountinfoPath, { list: true });
|
|
6630
|
+
log.info("fleet bind mount verified", { dir });
|
|
6631
|
+
return;
|
|
6632
|
+
} catch (err) {
|
|
6633
|
+
lastErr = err;
|
|
6634
|
+
await new Promise((resolve7) => setTimeout(resolve7, pollIntervalMs));
|
|
6635
|
+
}
|
|
6636
|
+
}
|
|
6637
|
+
throw new Error(
|
|
6638
|
+
`fleet mount ${dir} not ready after ${timeoutMs}ms \u2014 check SKAILE_FLEET_MANAGED_MOUNTS env var and host bind: ${lastErr instanceof Error ? lastErr.message : String(lastErr)}`
|
|
6639
|
+
);
|
|
6640
|
+
}
|
|
6641
|
+
var LIVENESS_TIMEOUT_MS = 2e3;
|
|
6642
|
+
async function checkFleetMountLiveness(dir, options) {
|
|
6643
|
+
const timeoutMs = options?.timeoutMs ?? fsDeadlineMs(LIVENESS_TIMEOUT_MS);
|
|
6644
|
+
const mountinfoPath = options?.mountinfoPath ?? testMountinfoOverride() ?? MOUNTINFO_PATH;
|
|
6645
|
+
try {
|
|
6646
|
+
await withFsDeadline(
|
|
6647
|
+
`fleet liveness ${dir}`,
|
|
6648
|
+
() => probeFleetMount(dir, mountinfoPath, { list: false }),
|
|
6649
|
+
timeoutMs
|
|
6650
|
+
);
|
|
6651
|
+
return { state: "live" };
|
|
6652
|
+
} catch (err) {
|
|
6653
|
+
if (err instanceof FsDeadlineError) {
|
|
6654
|
+
return {
|
|
6655
|
+
state: "unresponsive",
|
|
6656
|
+
reason: `host mount at ${dir} did not answer within ${timeoutMs}ms; it may be slow or wedged, so its status is unverified`
|
|
6657
|
+
};
|
|
6658
|
+
}
|
|
6659
|
+
const detail = err instanceof Error ? err.message : String(err);
|
|
6660
|
+
return {
|
|
6661
|
+
state: "dead",
|
|
6662
|
+
reason: `host mount at ${dir} is gone (${detail}); the session needs a restart to re-attach it`
|
|
6663
|
+
};
|
|
6664
|
+
}
|
|
6665
|
+
}
|
|
6582
6666
|
|
|
6583
6667
|
// connectors/src/connector-manager.ts
|
|
6584
6668
|
var KNOWN_PREFIXES = ["env:", "forge:", "op:", "kp:", "oauth:"];
|
|
@@ -6864,12 +6948,14 @@ var ConnectorManager = class {
|
|
|
6864
6948
|
driver: decl.driver,
|
|
6865
6949
|
access: decl.access,
|
|
6866
6950
|
...decl.label !== void 0 ? { label: decl.label } : {},
|
|
6867
|
-
...decl.mount?.source !== void 0 ? { source: decl.mount.source } : {},
|
|
6951
|
+
...decl.mount?.source !== void 0 ? { source: redactCredentials(decl.mount.source) } : {},
|
|
6868
6952
|
...mountPath !== void 0 ? { mountPath } : {},
|
|
6869
6953
|
// A host-declared unavailable connector is never fail-fast material.
|
|
6870
6954
|
required: unavailable === void 0 && decl.access === "read-write" && decl.mount != null,
|
|
6871
|
-
|
|
6872
|
-
|
|
6955
|
+
// Redacted here as well as at the callers: every failure record reaches
|
|
6956
|
+
// the agent through `connector_list`, whoever wrote the text.
|
|
6957
|
+
error: redactCredentials(error),
|
|
6958
|
+
...unavailable !== void 0 ? { unavailable: redactMarker(unavailable) } : {}
|
|
6873
6959
|
});
|
|
6874
6960
|
}
|
|
6875
6961
|
/**
|
|
@@ -6881,7 +6967,9 @@ var ConnectorManager = class {
|
|
|
6881
6967
|
* newer than that record and replace it in a host's newest-wins failure view.
|
|
6882
6968
|
*/
|
|
6883
6969
|
recordUnavailable(decl, unavailable) {
|
|
6884
|
-
const msg =
|
|
6970
|
+
const msg = redactCredentials(
|
|
6971
|
+
`Not attached by the host (${unavailable.reason})` + (unavailable.detail ? `: ${unavailable.detail}` : "")
|
|
6972
|
+
);
|
|
6885
6973
|
this.recordFailure(decl, msg, unavailable);
|
|
6886
6974
|
this.mgrLog.warn("connector declared unavailable by the host", {
|
|
6887
6975
|
id: decl.id,
|
|
@@ -7062,7 +7150,7 @@ var ConnectorManager = class {
|
|
|
7062
7150
|
};
|
|
7063
7151
|
} catch (err) {
|
|
7064
7152
|
if (!this.active.has(decl.id)) this.releaseMountTarget(decl.id);
|
|
7065
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
7153
|
+
const msg = redactCredentials(err instanceof Error ? err.message : String(err));
|
|
7066
7154
|
this.recordFailure(decl, msg);
|
|
7067
7155
|
const errorKind = classifyConnectError(err);
|
|
7068
7156
|
this.mgrLog.error("connect failed", err, {
|
|
@@ -7172,7 +7260,7 @@ var ConnectorManager = class {
|
|
|
7172
7260
|
return handle;
|
|
7173
7261
|
} catch (err) {
|
|
7174
7262
|
this.releaseMountTarget(declaration.id);
|
|
7175
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
7263
|
+
const msg = redactCredentials(err instanceof Error ? err.message : String(err));
|
|
7176
7264
|
this.recordFailure(declaration, msg);
|
|
7177
7265
|
const errorKind = classifyConnectError(err);
|
|
7178
7266
|
this.opts.onStatusChange?.({
|
|
@@ -7387,8 +7475,42 @@ var ConnectorManager = class {
|
|
|
7387
7475
|
if (!entry.connector.filesystem) {
|
|
7388
7476
|
throw new Error(`Connector "${id}" has no filesystem face`);
|
|
7389
7477
|
}
|
|
7478
|
+
await this.assertMountNotDead(id);
|
|
7390
7479
|
return entry.connector.filesystem.sync(entry.handle, options);
|
|
7391
7480
|
}
|
|
7481
|
+
/**
|
|
7482
|
+
* Refuse to sync a fleet mount whose path is provably gone. Fleet drivers'
|
|
7483
|
+
* sync is a no-op success, so without this a dead host bind would report a
|
|
7484
|
+
* clean sync while every write lands nowhere. An `unresponsive` probe does
|
|
7485
|
+
* not refuse: a slow cloud mount must not be locked out of sync.
|
|
7486
|
+
*/
|
|
7487
|
+
async assertMountNotDead(id) {
|
|
7488
|
+
const liveness = await this.checkMountLiveness(id);
|
|
7489
|
+
if (liveness?.state === "dead") {
|
|
7490
|
+
throw new Error(`Cannot sync mount "${id}": ${liveness.reason}`);
|
|
7491
|
+
}
|
|
7492
|
+
}
|
|
7493
|
+
/**
|
|
7494
|
+
* Re-check that a connected, host fleet-managed mount's path is still live.
|
|
7495
|
+
*
|
|
7496
|
+
* The handle's `status` is set once at connect and never revisited, so it
|
|
7497
|
+
* keeps saying `connected` after the host bind breaks. Status and sync
|
|
7498
|
+
* surfaces call this to report the real state. Bounded by a short deadline
|
|
7499
|
+
* (`unresponsive` when it expires), never remounts, never mutates the handle.
|
|
7500
|
+
*
|
|
7501
|
+
* @returns `null` when the check does not apply: unknown id, not yet
|
|
7502
|
+
* connected, no mount path, or not fleet-managed (the driver's handle state
|
|
7503
|
+
* carries no `fleetManaged: true`).
|
|
7504
|
+
*/
|
|
7505
|
+
async checkMountLiveness(id) {
|
|
7506
|
+
const entry = this.active.get(id);
|
|
7507
|
+
if (!entry || entry.handle.status !== "connected") return null;
|
|
7508
|
+
const mountPath = entry.handle.mountPath;
|
|
7509
|
+
if (!mountPath) return null;
|
|
7510
|
+
const state = entry.handle.state;
|
|
7511
|
+
if (state?.fleetManaged !== true) return null;
|
|
7512
|
+
return checkFleetMountLiveness(mountPath);
|
|
7513
|
+
}
|
|
7392
7514
|
/**
|
|
7393
7515
|
* Pull the latest remote state for all connected filesystem-face connectors.
|
|
7394
7516
|
* Errors from individual connectors are captured and returned rather than thrown.
|
|
@@ -7399,6 +7521,7 @@ var ConnectorManager = class {
|
|
|
7399
7521
|
if (!entry.connector.filesystem) continue;
|
|
7400
7522
|
if (entry.handle.status !== "connected") continue;
|
|
7401
7523
|
try {
|
|
7524
|
+
await this.assertMountNotDead(id);
|
|
7402
7525
|
await entry.connector.filesystem.sync(entry.handle, options);
|
|
7403
7526
|
results.push({ id, ok: true });
|
|
7404
7527
|
} catch (err) {
|
|
@@ -7571,6 +7694,13 @@ var ConnectorManager = class {
|
|
|
7571
7694
|
return buildSkillBody(descriptor, ops, shellAccess);
|
|
7572
7695
|
}
|
|
7573
7696
|
};
|
|
7697
|
+
function redactMarker(marker) {
|
|
7698
|
+
return {
|
|
7699
|
+
...marker,
|
|
7700
|
+
reason: redactCredentials(marker.reason),
|
|
7701
|
+
...marker.detail !== void 0 ? { detail: redactCredentials(marker.detail) } : {}
|
|
7702
|
+
};
|
|
7703
|
+
}
|
|
7574
7704
|
var zStatic = z4.z ?? z4.default ?? z4;
|
|
7575
7705
|
function readFailedConnectors(manager) {
|
|
7576
7706
|
if (typeof manager.listFailedConnectors !== "function") return [];
|
|
@@ -8217,64 +8347,6 @@ printf 'password=%s\\n' "$pass"
|
|
|
8217
8347
|
printf '\\n'
|
|
8218
8348
|
`;
|
|
8219
8349
|
}
|
|
8220
|
-
var MOUNTINFO_PATH = "/proc/self/mountinfo";
|
|
8221
|
-
function testMountinfoOverride() {
|
|
8222
|
-
return process.env.VITEST ? process.env.SKAILE_FLEET_MOUNTINFO_PATH : void 0;
|
|
8223
|
-
}
|
|
8224
|
-
function isFleetManaged(connectorId) {
|
|
8225
|
-
const raw = process.env.SKAILE_FLEET_MANAGED_MOUNTS ?? "";
|
|
8226
|
-
if (raw.length === 0) return false;
|
|
8227
|
-
return raw.split(",").map((segment) => segment.trim()).filter((segment) => segment.length > 0).includes(connectorId);
|
|
8228
|
-
}
|
|
8229
|
-
function decodeMountinfoPath(field) {
|
|
8230
|
-
return field.replace(
|
|
8231
|
-
/\\(\d{3})/g,
|
|
8232
|
-
(_, octal) => String.fromCharCode(Number.parseInt(octal, 8))
|
|
8233
|
-
);
|
|
8234
|
-
}
|
|
8235
|
-
async function isMountpoint(dir, mountinfoPath) {
|
|
8236
|
-
let table;
|
|
8237
|
-
try {
|
|
8238
|
-
table = await readFile(mountinfoPath, "utf8");
|
|
8239
|
-
} catch {
|
|
8240
|
-
return null;
|
|
8241
|
-
}
|
|
8242
|
-
const target = await realpath(dir);
|
|
8243
|
-
for (const line of table.split("\n")) {
|
|
8244
|
-
const mountPoint = line.split(" ")[4];
|
|
8245
|
-
if (mountPoint !== void 0 && decodeMountinfoPath(mountPoint) === target) return true;
|
|
8246
|
-
}
|
|
8247
|
-
return false;
|
|
8248
|
-
}
|
|
8249
|
-
async function ensureFleetMounted(dir, log, options) {
|
|
8250
|
-
const timeoutMs = options?.timeoutMs ?? 3e3;
|
|
8251
|
-
const pollIntervalMs = options?.pollIntervalMs ?? 100;
|
|
8252
|
-
const mountinfoPath = options?.mountinfoPath ?? testMountinfoOverride() ?? MOUNTINFO_PATH;
|
|
8253
|
-
const deadline = Date.now() + timeoutMs;
|
|
8254
|
-
let lastErr = null;
|
|
8255
|
-
while (Date.now() < deadline) {
|
|
8256
|
-
try {
|
|
8257
|
-
const st = await stat(dir);
|
|
8258
|
-
if (!st.isDirectory()) {
|
|
8259
|
-
throw new Error(`fleet mountpoint ${dir} is not a directory`);
|
|
8260
|
-
}
|
|
8261
|
-
await readdir(dir);
|
|
8262
|
-
if (await isMountpoint(dir, mountinfoPath) === false) {
|
|
8263
|
-
throw new Error(
|
|
8264
|
-
`fleet mountpoint ${dir} is a plain directory, not a mount \u2014 the host bind is absent or landed on a different path`
|
|
8265
|
-
);
|
|
8266
|
-
}
|
|
8267
|
-
log.info("fleet bind mount verified", { dir });
|
|
8268
|
-
return;
|
|
8269
|
-
} catch (err) {
|
|
8270
|
-
lastErr = err;
|
|
8271
|
-
await new Promise((resolve7) => setTimeout(resolve7, pollIntervalMs));
|
|
8272
|
-
}
|
|
8273
|
-
}
|
|
8274
|
-
throw new Error(
|
|
8275
|
-
`fleet mount ${dir} not ready after ${timeoutMs}ms \u2014 check SKAILE_FLEET_MANAGED_MOUNTS env var and host bind: ${lastErr instanceof Error ? lastErr.message : String(lastErr)}`
|
|
8276
|
-
);
|
|
8277
|
-
}
|
|
8278
8350
|
async function ensureDirMode(dir, log) {
|
|
8279
8351
|
await mkdir(dir, { recursive: true });
|
|
8280
8352
|
try {
|
|
@@ -11430,6 +11502,6 @@ function describeFlowOperations() {
|
|
|
11430
11502
|
return new FlowAdapter().tools.describeOperations({ access: "read-write" });
|
|
11431
11503
|
}
|
|
11432
11504
|
|
|
11433
|
-
export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, BoxConnector, ClassifierSubpromptRunner, ConnectorManager, DeployConnector, DevServerConnector, FlowAdapter, GitConnector, GmailConnector, GoogleDriveConnector, LocalConnector, LogBuffer, MAX_REARM_MS, MIN_REFRESH_DELAY_MS, ManagedGitconfigCollisionError, MattermostConnector, MemoryConnector, MinIOConnector, NO_ACTIVE_FLOW_ERROR, PortPool, PostgresConnector, REFRESH_LEAD_MS, S3Connector, SQLiteConnector, SessionInlineSubFlowRunner, SessionNodeExecutor, SessionSubpromptRunner, SharePointConnector, StaticServerConnector, TunnelConnector, WebDAVConnector, XStateConnector, XStateStoreConnector, __test, atomicReplaceCredential, buildConnectorPromptSection, buildConnectorToolDefs, buildFlowPromptEvent, buildFlowToolDefs, buildLazyFlowToolDefs, buildLazySdkFlowTools, buildSdkConnectorTools, buildSdkFlowTools, classifierQuestion, classifyConnectError, createConnector, createConnector10, createConnector11, createConnector12, createConnector13, createConnector14, createConnector15, createConnector16, createConnector17, createConnector18, createConnector19, createConnector2, createConnector20, createConnector3, createConnector4, createConnector5, createConnector6, createConnector7, createConnector8, createConnector9, createFsWatcher, createWorktree, defaultSpawn, describeFlowOperations, driveOrchestratorTurn, ensureDirMode, ensureFleetMounted, ensureRefreshAttemptStamp, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, readGitSyncStatus, registerBuiltinConnectors, removeMountBlock, removeUnavailableMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock, writeUnavailableMountBlock };
|
|
11434
|
-
//# sourceMappingURL=chunk-
|
|
11435
|
-
//# sourceMappingURL=chunk-
|
|
11505
|
+
export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, BoxConnector, ClassifierSubpromptRunner, ConnectorManager, DeployConnector, DevServerConnector, FlowAdapter, GitConnector, GmailConnector, GoogleDriveConnector, LocalConnector, LogBuffer, MAX_REARM_MS, MIN_REFRESH_DELAY_MS, ManagedGitconfigCollisionError, MattermostConnector, MemoryConnector, MinIOConnector, NO_ACTIVE_FLOW_ERROR, PortPool, PostgresConnector, REFRESH_LEAD_MS, S3Connector, SQLiteConnector, SessionInlineSubFlowRunner, SessionNodeExecutor, SessionSubpromptRunner, SharePointConnector, StaticServerConnector, TunnelConnector, WebDAVConnector, XStateConnector, XStateStoreConnector, __test, atomicReplaceCredential, buildConnectorPromptSection, buildConnectorToolDefs, buildFlowPromptEvent, buildFlowToolDefs, buildLazyFlowToolDefs, buildLazySdkFlowTools, buildSdkConnectorTools, buildSdkFlowTools, checkFleetMountLiveness, classifierQuestion, classifyConnectError, createConnector, createConnector10, createConnector11, createConnector12, createConnector13, createConnector14, createConnector15, createConnector16, createConnector17, createConnector18, createConnector19, createConnector2, createConnector20, createConnector3, createConnector4, createConnector5, createConnector6, createConnector7, createConnector8, createConnector9, createFsWatcher, createWorktree, defaultSpawn, describeFlowOperations, driveOrchestratorTurn, ensureDirMode, ensureFleetMounted, ensureRefreshAttemptStamp, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, readGitSyncStatus, registerBuiltinConnectors, removeMountBlock, removeUnavailableMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock, writeUnavailableMountBlock };
|
|
11506
|
+
//# sourceMappingURL=chunk-QUSE2T4N.js.map
|
|
11507
|
+
//# sourceMappingURL=chunk-QUSE2T4N.js.map
|