@skaile/workspaces 3.6.0 → 3.7.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.
Files changed (101) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/dist/{asset-feeds-YK6VBW4Y.js → asset-feeds-DQ3BUCKA.js} +4 -4
  3. package/dist/{asset-feeds-YK6VBW4Y.js.map → asset-feeds-DQ3BUCKA.js.map} +1 -1
  4. package/dist/asset-manager/index.js +1 -1
  5. package/dist/chunk-AXEOG4B5.js +193 -0
  6. package/dist/chunk-AXEOG4B5.js.map +1 -0
  7. package/dist/{chunk-7T3O4KFG.js → chunk-DH4BW6JA.js} +4 -4
  8. package/dist/{chunk-7T3O4KFG.js.map → chunk-DH4BW6JA.js.map} +1 -1
  9. package/dist/{chunk-GVXR32DT.js → chunk-EWYVONO7.js} +3 -3
  10. package/dist/{chunk-GVXR32DT.js.map → chunk-EWYVONO7.js.map} +1 -1
  11. package/dist/{chunk-M3CKNK33.js → chunk-FMGYEYCW.js} +6 -6
  12. package/dist/{chunk-M3CKNK33.js.map → chunk-FMGYEYCW.js.map} +1 -1
  13. package/dist/{chunk-4Q76UBTV.js → chunk-GRMQBBN4.js} +2 -2
  14. package/dist/{chunk-4Q76UBTV.js.map → chunk-GRMQBBN4.js.map} +1 -1
  15. package/dist/{chunk-JGGZVEIF.js → chunk-GVW2REJE.js} +47 -38
  16. package/dist/chunk-GVW2REJE.js.map +1 -0
  17. package/dist/{chunk-VC2I2U6Q.js → chunk-HY6CIKFH.js} +3 -3
  18. package/dist/chunk-HY6CIKFH.js.map +1 -0
  19. package/dist/{chunk-GOCFHDGC.js → chunk-JDX4OWRI.js} +2 -2
  20. package/dist/{chunk-GOCFHDGC.js.map → chunk-JDX4OWRI.js.map} +1 -1
  21. package/dist/{chunk-L3KQJ2Y7.js → chunk-MKLIIH6W.js} +13 -18
  22. package/dist/chunk-MKLIIH6W.js.map +1 -0
  23. package/dist/{chunk-ZZ6LN5NO.js → chunk-NC5YXVZF.js} +3 -3
  24. package/dist/{chunk-ZZ6LN5NO.js.map → chunk-NC5YXVZF.js.map} +1 -1
  25. package/dist/{chunk-FYJY4UIR.js → chunk-OYZIURPH.js} +3 -3
  26. package/dist/{chunk-FYJY4UIR.js.map → chunk-OYZIURPH.js.map} +1 -1
  27. package/dist/{chunk-E554W7ZH.js → chunk-TMWPIQST.js} +2 -2
  28. package/dist/{chunk-E554W7ZH.js.map → chunk-TMWPIQST.js.map} +1 -1
  29. package/dist/{chunk-YYITPROS.js → chunk-UTPQBYYY.js} +3 -3
  30. package/dist/{chunk-YYITPROS.js.map → chunk-UTPQBYYY.js.map} +1 -1
  31. package/dist/{chunk-BGVTNQ23.js → chunk-X73J3FFD.js} +6 -6
  32. package/dist/{chunk-BGVTNQ23.js.map → chunk-X73J3FFD.js.map} +1 -1
  33. package/dist/{chunk-E5ATP7SX.js → chunk-ZHHZBMZF.js} +4 -4
  34. package/dist/{chunk-E5ATP7SX.js.map → chunk-ZHHZBMZF.js.map} +1 -1
  35. package/dist/cli/index.js +30 -29
  36. package/dist/cli/index.js.map +1 -1
  37. package/dist/connectors/index.js +4 -3
  38. package/dist/{ensure-sources-2RW742IO.js → ensure-sources-2LZWBCWO.js} +4 -4
  39. package/dist/{ensure-sources-2RW742IO.js.map → ensure-sources-2LZWBCWO.js.map} +1 -1
  40. package/dist/factory-assets/connectors/box.js +4 -3
  41. package/dist/factory-assets/connectors/deploy.js +4 -3
  42. package/dist/factory-assets/connectors/devserver.js +4 -3
  43. package/dist/factory-assets/connectors/flow/CONNECTOR.md +1 -1
  44. package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -1
  45. package/dist/factory-assets/connectors/flow/adapter.js +4 -3
  46. package/dist/factory-assets/connectors/flow/contract/index.d.ts +1 -0
  47. package/dist/factory-assets/connectors/flow/contract/index.d.ts.map +1 -1
  48. package/dist/factory-assets/connectors/flow/contract/input-schema.d.ts +49 -0
  49. package/dist/factory-assets/connectors/flow/contract/input-schema.d.ts.map +1 -0
  50. package/dist/factory-assets/connectors/flow/contract/schema.d.ts +39 -0
  51. package/dist/factory-assets/connectors/flow/contract/schema.d.ts.map +1 -1
  52. package/dist/factory-assets/connectors/flow/contract.js +3 -2
  53. package/dist/factory-assets/connectors/flow/engine.js +2 -2
  54. package/dist/factory-assets/connectors/flow/run-flow.js +5 -4
  55. package/dist/factory-assets/connectors/flow.js +4 -3
  56. package/dist/factory-assets/connectors/git.js +4 -3
  57. package/dist/factory-assets/connectors/gmail.js +4 -3
  58. package/dist/factory-assets/connectors/googledrive.js +4 -3
  59. package/dist/factory-assets/connectors/local.js +4 -3
  60. package/dist/factory-assets/connectors/mattermost.js +4 -3
  61. package/dist/factory-assets/connectors/memory.js +4 -3
  62. package/dist/factory-assets/connectors/minio.js +4 -3
  63. package/dist/factory-assets/connectors/postgres.js +4 -3
  64. package/dist/factory-assets/connectors/s3.js +4 -3
  65. package/dist/factory-assets/connectors/sharepoint.js +4 -3
  66. package/dist/factory-assets/connectors/sqlite.js +4 -3
  67. package/dist/factory-assets/connectors/static-server.js +4 -3
  68. package/dist/factory-assets/connectors/tunnel.js +4 -3
  69. package/dist/factory-assets/connectors/webdav.js +4 -3
  70. package/dist/factory-assets/connectors/xstate-store.js +4 -3
  71. package/dist/factory-assets/connectors/xstate.js +4 -3
  72. package/dist/{flows-W7EYXP6R.js → flows-4R4VJ5VM.js} +3 -3
  73. package/dist/{flows-W7EYXP6R.js.map → flows-4R4VJ5VM.js.map} +1 -1
  74. package/dist/{helpers-D7W7C5NL.js → helpers-SW2GWYGU.js} +4 -4
  75. package/dist/{helpers-D7W7C5NL.js.map → helpers-SW2GWYGU.js.map} +1 -1
  76. package/dist/{library-publish-X4ZR2PG6.js → library-publish-VCTQFIIW.js} +8 -8
  77. package/dist/{library-publish-X4ZR2PG6.js.map → library-publish-VCTQFIIW.js.map} +1 -1
  78. package/dist/{open-library-6VUMR6I6.js → open-library-SDYW5T7S.js} +7 -7
  79. package/dist/{open-library-6VUMR6I6.js.map → open-library-SDYW5T7S.js.map} +1 -1
  80. package/dist/{project-RS6ANRJT.js → project-C2DGB2V3.js} +5 -5
  81. package/dist/{project-RS6ANRJT.js.map → project-C2DGB2V3.js.map} +1 -1
  82. package/dist/runner/index.js +8 -7
  83. package/dist/runner/src/serve.d.ts.map +1 -1
  84. package/dist/sdk/asset-manager.js +1 -1
  85. package/dist/sdk/flow.js +2 -2
  86. package/dist/sdk/index.js +8 -7
  87. package/dist/sdk/index.js.map +1 -1
  88. package/dist/sdk/runner.js +8 -7
  89. package/dist/{source-DF3YRE6B.js → source-HAA7QVAP.js} +8 -8
  90. package/dist/{source-DF3YRE6B.js.map → source-HAA7QVAP.js.map} +1 -1
  91. package/dist/{source-manifest-publish-L5JH2WD3.js → source-manifest-publish-NLIJK22S.js} +9 -9
  92. package/dist/{source-manifest-publish-L5JH2WD3.js.map → source-manifest-publish-NLIJK22S.js.map} +1 -1
  93. package/dist/tui/index.js +8 -7
  94. package/dist/tui/index.js.map +1 -1
  95. package/dist/workspace-plugin/adapters/mcp.js +1 -1
  96. package/dist/workspace-plugin/adapters/omp.js +3 -3
  97. package/dist/workspace-plugin/index.js +1 -1
  98. package/package.json +1 -1
  99. package/dist/chunk-JGGZVEIF.js.map +0 -1
  100. package/dist/chunk-L3KQJ2Y7.js.map +0 -1
  101. package/dist/chunk-VC2I2U6Q.js.map +0 -1
@@ -1,16 +1,16 @@
1
- import { WorkspacePlugin } from './chunk-E554W7ZH.js';
1
+ import { WorkspacePlugin } from './chunk-TMWPIQST.js';
2
2
  import { assembleSystemPrompt, buildCapabilitiesPromptSection } from './chunk-W3UDISS2.js';
3
3
  import { WebSocketServerTransport } from './chunk-WQ7DE5UC.js';
4
- import { resolveFlowPath } from './chunk-E5ATP7SX.js';
4
+ import { resolveFlowPath } from './chunk-ZHHZBMZF.js';
5
5
  import { findAiAssetsRoot, deployCatalogEntry, undeployCatalogEntry } from './chunk-GHWJHOYX.js';
6
- import { registerBuiltinConnectors, buildConnectorPromptSection, findMissingPackages, installNpmPackages, ConnectorManager, ConnectorStartupError, buildSdkConnectorTools, driveOrchestratorTurn, SessionNodeExecutor, SessionSubpromptRunner, SessionInlineSubFlowRunner, buildSdkFlowTools } from './chunk-L3KQJ2Y7.js';
6
+ import { registerBuiltinConnectors, buildConnectorPromptSection, findMissingPackages, installNpmPackages, ConnectorManager, ConnectorStartupError, buildSdkConnectorTools, driveOrchestratorTurn, SessionNodeExecutor, SessionSubpromptRunner, SessionInlineSubFlowRunner, buildSdkFlowTools } from './chunk-MKLIIH6W.js';
7
7
  import { loadConnectorDeclarations, SecretProviderChain, PreMintedSecretProvider, InMemorySecretProvider, resolvedConfigToDeclarations, isKnownSecretRef, deriveSingleMaterializedConnectorDeclaration } from './chunk-3UU3D2Q3.js';
8
8
  import { EventNormalizer } from './chunk-UTMZU56B.js';
9
9
  import { SUPPORTED_CLOUDS, probeResumeTranscript, CLOUD_SECRET_ENV_KEYS } from './chunk-RUFTB7QN.js';
10
10
  import { classifyClaudeSdkError } from './chunk-GAH4YRCI.js';
11
11
  import { createDriver } from './chunk-AFA7NYN2.js';
12
- import { loadFlow } from './chunk-FYJY4UIR.js';
13
- import { parseFlowDefinition } from './chunk-VC2I2U6Q.js';
12
+ import { loadFlow } from './chunk-OYZIURPH.js';
13
+ import { parseFlowDefinition } from './chunk-HY6CIKFH.js';
14
14
  import { renderStimulusPrompt } from './chunk-HGFKNJA5.js';
15
15
  import { PROTOCOL_VERSION } from './chunk-D4VHBAJC.js';
16
16
  import { resolveSettings, resolveApiKey, providerEnvKey } from './chunk-AZPXCHDK.js';
@@ -4237,6 +4237,7 @@ function emitSystemPromptComposed(agentSession, sendEvent) {
4237
4237
  composedAt: (/* @__PURE__ */ new Date()).toISOString()
4238
4238
  });
4239
4239
  }
4240
+ var DRIVER_START_ATTEMPTS = 3;
4240
4241
  var FRAMEWORK_PACKAGES = [
4241
4242
  "@skaile/workspaces/runner",
4242
4243
  "@skaile/workspaces/bridge",
@@ -5359,6 +5360,7 @@ async function startAgentServer(opts) {
5359
5360
  sendEvent(rewriteFileChangedPath(event, opts.projectDir, mounts));
5360
5361
  }
5361
5362
  let driverStarted = false;
5363
+ let driverStartInFlight = null;
5362
5364
  const driverSwapGate = new DriverSwapGate();
5363
5365
  let driverRestartChain = Promise.resolve();
5364
5366
  let driver = secretsMode === "env" ? agentSession.driver : void 0;
@@ -5379,6 +5381,7 @@ async function startAgentServer(opts) {
5379
5381
  driver = incoming;
5380
5382
  normalizer.reset();
5381
5383
  driverStarted = false;
5384
+ driverStartInFlight = null;
5382
5385
  }
5383
5386
  let eventSeq = 0;
5384
5387
  let lastEmittedRuntimeSession;
@@ -5425,18 +5428,37 @@ async function startAgentServer(opts) {
5425
5428
  }
5426
5429
  const flowConnectorReadiness = createFlowConnectorReadiness(() => getOnlyActiveFlow() !== null);
5427
5430
  const flowMutateConnectorWaitMs = resolveFlowMutateConnectorWaitMs();
5431
+ async function ensureDriverStarted() {
5432
+ for (let attempt = 0; attempt < DRIVER_START_ATTEMPTS; attempt += 1) {
5433
+ if (driverStarted) return;
5434
+ if (!driverStartInFlight) {
5435
+ const starting = driver;
5436
+ const inFlight = (async () => {
5437
+ await starting.start();
5438
+ if (driver !== starting) return;
5439
+ starting.on("agent-event", (event) => {
5440
+ const normalized = normalizer.normalize(event);
5441
+ for (const e of normalized) forwardNormalizedEvent(e);
5442
+ });
5443
+ starting.on("error", (err) => {
5444
+ log(`[serve] driver error: ${err.message}`);
5445
+ sendEvent({ type: "error", message: err.message, fatal: true });
5446
+ });
5447
+ driverStarted = true;
5448
+ })().catch((err) => {
5449
+ if (driverStartInFlight === inFlight) driverStartInFlight = null;
5450
+ if (driver !== starting) return;
5451
+ throw err;
5452
+ });
5453
+ driverStartInFlight = inFlight;
5454
+ }
5455
+ await driverStartInFlight;
5456
+ if (driverStarted) return;
5457
+ }
5458
+ throw new Error(`driver start superseded by a swap ${DRIVER_START_ATTEMPTS} times running`);
5459
+ }
5428
5460
  async function ensureFlowDriverStarted() {
5429
- if (driverStarted) return;
5430
- await driver.start();
5431
- driverStarted = true;
5432
- driver.on("agent-event", (event) => {
5433
- const normalized = normalizer.normalize(event);
5434
- for (const e of normalized) forwardNormalizedEvent(e);
5435
- });
5436
- driver.on("error", (err) => {
5437
- log(`[serve] driver error: ${err.message}`);
5438
- sendEvent({ type: "error", message: err.message, fatal: true });
5439
- });
5461
+ await ensureDriverStarted();
5440
5462
  }
5441
5463
  function getOrCreateStimulusBus() {
5442
5464
  if (stimulusBus) return stimulusBus;
@@ -6230,26 +6252,13 @@ async function startAgentServer(opts) {
6230
6252
  }
6231
6253
  return;
6232
6254
  }
6233
- if (!driverStarted) {
6234
- try {
6235
- await driver.start();
6236
- driverStarted = true;
6237
- } catch (err) {
6238
- const errMsg = err instanceof Error ? err.message : String(err);
6239
- log(`[serve] driver start failed: ${errMsg}`);
6240
- sendEvent({ type: "error", message: `Driver start failed: ${errMsg}`, fatal: true });
6241
- return;
6242
- }
6243
- driver.on("agent-event", (event) => {
6244
- const normalized = normalizer.normalize(event);
6245
- for (const e of normalized) {
6246
- forwardNormalizedEvent(e);
6247
- }
6248
- });
6249
- driver.on("error", (err) => {
6250
- log(`[serve] driver error: ${err.message}`);
6251
- sendEvent({ type: "error", message: err.message, fatal: true });
6252
- });
6255
+ try {
6256
+ await ensureDriverStarted();
6257
+ } catch (err) {
6258
+ const errMsg = err instanceof Error ? err.message : String(err);
6259
+ log(`[serve] driver start failed: ${errMsg}`);
6260
+ sendEvent({ type: "error", message: `Driver start failed: ${errMsg}`, fatal: true });
6261
+ return;
6253
6262
  }
6254
6263
  sendEvent({ type: "status", phase: "thinking" });
6255
6264
  const endTurn = driverSwapGate.beginTurn();
@@ -6805,5 +6814,5 @@ function touchSession(state) {
6805
6814
  }
6806
6815
 
6807
6816
  export { CLAUDE_CODE_CREDENTIALS_KEY, COMPILE_MANIFEST_FILENAME, CapabilityRegistry, DEFAULT_CAPABILITY_CALL_TIMEOUT_MS, DEFAULT_COALESCE_MS, DEFAULT_FLOW_MUTATE_CONNECTOR_WAIT_MS, MOUNT_LIST_MAX_DEPTH, MOUNT_LIST_MAX_ENTRIES, MOUNT_READ_DEADLINE_FACTOR, MOUNT_TREE_OP_DEADLINE_FACTOR, MarkdownStreamer, PreInitRingSink, agentDefinitionExists, bootstrapCapabilityRegistry, bootstrapRunnerLogStore, buildAgentResources, buildClientCapabilityHandler, buildConnectorTokenMediator, buildContextSection, buildEnvironmentSection, buildResourcesAvailablePayload, buildStoreSnapshotReplay, builtinCapabilities, capabilityLogInstance, clearPreInitRingSink, clearSession, compileComposition, computeCapabilitySignature, connectorRefreshKind, createAgentSession, createFlowConnectorReadiness, createSessionStimulusBus, defineCapability, deleteSession, dispatchRunnerCapabilityInvocation, emitSystemPromptComposed, ensureGitConfigInclude, executeConnectorMutate, extractClaudeAiOauthExpiresAt, getPreInitRingSink, handleMountResourceRequest, handleResourceRequest, hasNonTerminalFlow, hostOpResumeStimulus, installPreInitRingSink, isTerminalFlowStatus, listSessions, loadAgentManifest, loadCompileManifest, loadCompileManifestFromDir, loadSession, loadSessionById, mcpAuthSecretKey, newSession, pickRepointedManager, planFlowMutate, reconcilePendingDecisions, registerActiveFlow, registerCompositionCapabilities, rejectCapabilityOnApprovalDeny, resetRunnerLogStore, resolveAgentComposition, resolveAgentMixins, resolveBinding, resolveCapabilityCallTimeoutMs, resolveCapabilityResult, resolveComposition, resolveFlowMutateConnectorWaitMs, resolveMixin, runAgentChat, saveSession, setCurrentSession, setUpFlowConnector, startAgentServer, stimulusFromMetas, touchSession, validateInputResponse, writeClaudeCodeCredentialsFile };
6808
- //# sourceMappingURL=chunk-JGGZVEIF.js.map
6809
- //# sourceMappingURL=chunk-JGGZVEIF.js.map
6817
+ //# sourceMappingURL=chunk-GVW2REJE.js.map
6818
+ //# sourceMappingURL=chunk-GVW2REJE.js.map