@skaile/workspaces 1.8.1 → 1.9.1

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 +59 -0
  2. package/dist/app-sdk/index.js +1 -1
  3. package/dist/{asset-feeds-Y66NCOQZ.js → asset-feeds-LD6QKJ2R.js} +4 -4
  4. package/dist/{asset-feeds-Y66NCOQZ.js.map → asset-feeds-LD6QKJ2R.js.map} +1 -1
  5. package/dist/asset-manager/index.js +1 -1
  6. package/dist/{chunk-LLNSPJWB.js → chunk-5F3GULZT.js} +3 -3
  7. package/dist/{chunk-LLNSPJWB.js.map → chunk-5F3GULZT.js.map} +1 -1
  8. package/dist/{chunk-Y3UCU4ZK.js → chunk-5LPARFB5.js} +2 -2
  9. package/dist/{chunk-Y3UCU4ZK.js.map → chunk-5LPARFB5.js.map} +1 -1
  10. package/dist/{chunk-TITPPC54.js → chunk-6Q7CNVU3.js} +3 -3
  11. package/dist/{chunk-TITPPC54.js.map → chunk-6Q7CNVU3.js.map} +1 -1
  12. package/dist/{chunk-PP2LOT4W.js → chunk-A2CDJRRH.js} +3 -3
  13. package/dist/{chunk-PP2LOT4W.js.map → chunk-A2CDJRRH.js.map} +1 -1
  14. package/dist/{chunk-FK2L3MTF.js → chunk-HGLQYLZB.js} +336 -245
  15. package/dist/chunk-HGLQYLZB.js.map +1 -0
  16. package/dist/{chunk-VBRXFLIP.js → chunk-JCKGYBWY.js} +24 -16
  17. package/dist/chunk-JCKGYBWY.js.map +1 -0
  18. package/dist/{chunk-O3D4KYFG.js → chunk-JPKWPX5Q.js} +3 -3
  19. package/dist/{chunk-O3D4KYFG.js.map → chunk-JPKWPX5Q.js.map} +1 -1
  20. package/dist/{chunk-THJZ3JZE.js → chunk-MBGSJM7H.js} +6 -6
  21. package/dist/{chunk-THJZ3JZE.js.map → chunk-MBGSJM7H.js.map} +1 -1
  22. package/dist/{chunk-UPZGQZEJ.js → chunk-MW7GNYRT.js} +3 -3
  23. package/dist/{chunk-UPZGQZEJ.js.map → chunk-MW7GNYRT.js.map} +1 -1
  24. package/dist/{chunk-34U5UC6G.js → chunk-SBU73P7R.js} +6 -6
  25. package/dist/{chunk-34U5UC6G.js.map → chunk-SBU73P7R.js.map} +1 -1
  26. package/dist/{chunk-35OWUKOD.js → chunk-VWSR6K7C.js} +2 -2
  27. package/dist/{chunk-35OWUKOD.js.map → chunk-VWSR6K7C.js.map} +1 -1
  28. package/dist/{chunk-PK7Q7MC7.js → chunk-XJOPAGZX.js} +4 -4
  29. package/dist/{chunk-PK7Q7MC7.js.map → chunk-XJOPAGZX.js.map} +1 -1
  30. package/dist/cli/index.js +25 -25
  31. package/dist/connectors/index.js +1 -1
  32. package/dist/connectors/src/credential-helper-script.d.ts +8 -5
  33. package/dist/connectors/src/credential-helper-script.d.ts.map +1 -1
  34. package/dist/connectors/src/managed-gitconfig.d.ts +4 -2
  35. package/dist/connectors/src/managed-gitconfig.d.ts.map +1 -1
  36. package/dist/{ensure-sources-NXBYK5GP.js → ensure-sources-S6QBARWF.js} +4 -4
  37. package/dist/{ensure-sources-NXBYK5GP.js.map → ensure-sources-S6QBARWF.js.map} +1 -1
  38. package/dist/factory-assets/connectors/box.js +1 -1
  39. package/dist/factory-assets/connectors/deploy.js +1 -1
  40. package/dist/factory-assets/connectors/devserver.js +1 -1
  41. package/dist/factory-assets/connectors/flow/adapter.d.ts +3 -2
  42. package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -1
  43. package/dist/factory-assets/connectors/flow/adapter.js +1 -1
  44. package/dist/factory-assets/connectors/flow/run-flow.js +2 -2
  45. package/dist/factory-assets/connectors/flow.js +1 -1
  46. package/dist/factory-assets/connectors/git/driver.d.ts.map +1 -1
  47. package/dist/factory-assets/connectors/git.js +1 -1
  48. package/dist/factory-assets/connectors/gmail.js +1 -1
  49. package/dist/factory-assets/connectors/googledrive.js +1 -1
  50. package/dist/factory-assets/connectors/local.js +1 -1
  51. package/dist/factory-assets/connectors/mattermost.js +1 -1
  52. package/dist/factory-assets/connectors/memory.js +1 -1
  53. package/dist/factory-assets/connectors/minio.js +1 -1
  54. package/dist/factory-assets/connectors/postgres.js +1 -1
  55. package/dist/factory-assets/connectors/s3.js +1 -1
  56. package/dist/factory-assets/connectors/sharepoint.js +1 -1
  57. package/dist/factory-assets/connectors/sqlite.js +1 -1
  58. package/dist/factory-assets/connectors/static-server.js +1 -1
  59. package/dist/factory-assets/connectors/tunnel.js +1 -1
  60. package/dist/factory-assets/connectors/webdav.js +1 -1
  61. package/dist/factory-assets/connectors/xstate-store.js +1 -1
  62. package/dist/factory-assets/connectors/xstate.js +1 -1
  63. package/dist/{helpers-DN4MWOHB.js → helpers-ZZZY7HUJ.js} +4 -4
  64. package/dist/{helpers-DN4MWOHB.js.map → helpers-ZZZY7HUJ.js.map} +1 -1
  65. package/dist/{library-publish-TPWFSO3Q.js → library-publish-NCMIFF3V.js} +6 -6
  66. package/dist/{library-publish-TPWFSO3Q.js.map → library-publish-NCMIFF3V.js.map} +1 -1
  67. package/dist/{open-library-ST2VFQTK.js → open-library-VFS6WIO7.js} +5 -5
  68. package/dist/{open-library-ST2VFQTK.js.map → open-library-VFS6WIO7.js.map} +1 -1
  69. package/dist/{project-4M6QXHCH.js → project-SC7TVEQ6.js} +5 -5
  70. package/dist/{project-4M6QXHCH.js.map → project-SC7TVEQ6.js.map} +1 -1
  71. package/dist/runner/index.js +4 -4
  72. package/dist/runner/src/serve.d.ts +67 -4
  73. package/dist/runner/src/serve.d.ts.map +1 -1
  74. package/dist/runner/src/session-capability-wiring.d.ts +49 -0
  75. package/dist/runner/src/session-capability-wiring.d.ts.map +1 -0
  76. package/dist/runner/src/session-resource-handlers.d.ts +1 -2
  77. package/dist/runner/src/session-resource-handlers.d.ts.map +1 -1
  78. package/dist/sdk/asset-manager.js +1 -1
  79. package/dist/sdk/index.js +4 -4
  80. package/dist/sdk/runner.js +4 -4
  81. package/dist/sdk/session.js +2 -2
  82. package/dist/sdk/types.js +1 -1
  83. package/dist/session/index.js +2 -2
  84. package/dist/{source-KUWAEJOO.js → source-Z5HNLF6J.js} +6 -6
  85. package/dist/{source-KUWAEJOO.js.map → source-Z5HNLF6J.js.map} +1 -1
  86. package/dist/{source-manifest-publish-FTSKRYPI.js → source-manifest-publish-FA2KLZJ6.js} +7 -7
  87. package/dist/{source-manifest-publish-FTSKRYPI.js.map → source-manifest-publish-FA2KLZJ6.js.map} +1 -1
  88. package/dist/tui/index.js +4 -4
  89. package/dist/types/index.js +1 -1
  90. package/dist/types/src/flow.d.ts +26 -28
  91. package/dist/types/src/flow.d.ts.map +1 -1
  92. package/dist/types/src/index.d.ts +1 -1
  93. package/dist/types/src/index.d.ts.map +1 -1
  94. package/dist/types/src/lifecycle.d.ts +0 -8
  95. package/dist/types/src/lifecycle.d.ts.map +1 -1
  96. package/dist/types/src/version.d.ts +17 -1
  97. package/dist/types/src/version.d.ts.map +1 -1
  98. package/dist/workspace-plugin/index.js +1 -1
  99. package/package.json +1 -1
  100. package/dist/chunk-FK2L3MTF.js.map +0 -1
  101. package/dist/chunk-VBRXFLIP.js.map +0 -1
@@ -1231,7 +1231,6 @@ var GitConnector = class extends AbstractConnector {
1231
1231
  async refreshExposedCredential(connectorId, handle) {
1232
1232
  const s = handle.state;
1233
1233
  if (!s.managedGitconfig || !s.tokenMediator) return;
1234
- const { credentialsPath, urlPrefix } = s.managedGitconfig;
1235
1234
  const result = await s.tokenMediator({ connectorId, reason: "retry-401" });
1236
1235
  if (!result.ok) {
1237
1236
  this.log.warn("refresh-flag-driven mediation failed", {
@@ -1241,6 +1240,8 @@ var GitConnector = class extends AbstractConnector {
1241
1240
  });
1242
1241
  return;
1243
1242
  }
1243
+ if (!s.managedGitconfig) return;
1244
+ const { credentialsPath, urlPrefix } = s.managedGitconfig;
1244
1245
  atomicReplaceCredential({
1245
1246
  mountId: connectorId,
1246
1247
  urlPrefix,
@@ -6216,7 +6217,7 @@ function renderCredentialHelperScript(opts) {
6216
6217
  return `#!/bin/sh
6217
6218
  # Generated by skaile-runner -- do not edit.
6218
6219
  # Tier-2 git credential helper: serves the latest cached token and triggers a
6219
- # wake-mid-401 refresh when the credentials file is older than ${triggerAgeSec}s.
6220
+ # wake-mid-401 refresh when the credentials file is empty or older than ${triggerAgeSec}s.
6220
6221
  # Spec: _devlog/specs/2026-05-07-unified-credential-mediation.md
6221
6222
 
6222
6223
  set -u
@@ -6235,10 +6236,6 @@ TAG='${tag}'
6235
6236
  # file already keys by URL prefix via the helper's gitconfig block.
6236
6237
  cat > /dev/null 2>&1 || true
6237
6238
 
6238
- # Bail silently if the credentials file is missing or empty: git falls
6239
- # through to the next helper or its own prompt.
6240
- [ -s "$CRED_FILE" ] || exit 0
6241
-
6242
6239
  # Cross-platform mtime in epoch seconds: GNU stat -c first (Linux), then BSD
6243
6240
  # stat -f (macOS), then 0 if neither is present (in which case we skip the
6244
6241
  # refresh-flag dance entirely and just serve what we have).
@@ -6250,12 +6247,23 @@ now=$(date +%s 2>/dev/null || echo 0)
6250
6247
  mtime=$(get_mtime "$CRED_FILE")
6251
6248
  age=$((now - mtime))
6252
6249
 
6253
- if [ "$age" -gt ${triggerAgeSec} ]; then
6250
+ # Emptiness is its own trigger: a truncated file has a recent mtime, so the age
6251
+ # check alone would leave it empty forever.
6252
+ started_empty=0
6253
+ [ -s "$CRED_FILE" ] || started_empty=1
6254
+
6255
+ if [ "$started_empty" -eq 1 ] || [ "$age" -gt ${triggerAgeSec} ]; then
6254
6256
  # Touch the refresh-flag (atomic open+close emits 'change' to fs.watch).
6255
6257
  : > "$FLAG_FILE" 2>/dev/null || true
6256
6258
 
6257
6259
  # Poll for the credentials file mtime to advance. usleep gives sub-second
6258
- # resolution where available; sleep 1 is the portable fallback.
6260
+ # resolution where available; sleep 1 is the portable fallback. Resolve which
6261
+ # once, up front, rather than probing PATH on every iteration.
6262
+ if command -v usleep >/dev/null 2>&1; then
6263
+ have_usleep=1
6264
+ else
6265
+ have_usleep=0
6266
+ fi
6259
6267
  end=$((now + ${waitTimeoutSec}))
6260
6268
  while :; do
6261
6269
  cur=$(date +%s 2>/dev/null || echo 0)
@@ -6266,7 +6274,12 @@ if [ "$age" -gt ${triggerAgeSec} ]; then
6266
6274
  if [ "$new_mtime" -gt "$mtime" ]; then
6267
6275
  break
6268
6276
  fi
6269
- if command -v usleep >/dev/null 2>&1; then
6277
+ # A same-second rewrite doesn't advance the second-resolution mtime, so an
6278
+ # empty file that gained content must break on content, not on mtime.
6279
+ if [ "$started_empty" -eq 1 ] && [ -s "$CRED_FILE" ]; then
6280
+ break
6281
+ fi
6282
+ if [ "$have_usleep" -eq 1 ]; then
6270
6283
  usleep 200000
6271
6284
  else
6272
6285
  sleep 1
@@ -6549,11 +6562,6 @@ function atomicReplaceCredential(opts) {
6549
6562
  const lines = readCredentialLines(credentialsPath);
6550
6563
  const tag = credentialTag(mountId);
6551
6564
  const without = lines.filter((l) => !l.endsWith(tag));
6552
- if (without.length === lines.length) {
6553
- throw new Error(
6554
- `atomicReplaceCredential: no existing credential line for mount '${mountId}' in ${credentialsPath}`
6555
- );
6556
- }
6557
6565
  without.push(buildCredentialLine(urlPrefix, token, mountId));
6558
6566
  writeCredentialLines(credentialsPath, without);
6559
6567
  }
@@ -7776,5 +7784,5 @@ function createConnector() {
7776
7784
  }
7777
7785
 
7778
7786
  export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, BoxConnector, ConnectorFieldMissingError, ConnectorManager, ConnectorStartupError, DeployConnector, DevServerConnector, FlowAdapter, GitConnector, GmailConnector, GoogleDriveConnector, LocalConnector, LogBuffer, ManagedGitconfigCollisionError, MattermostConnector, MemoryConnector, MinIOConnector, PortPool, PostgresConnector, S3Connector, SQLiteConnector, SharePointConnector, StaticServerConnector, TunnelConnector, WebDAVConnector, XStateConnector, XStateStoreConnector, __test, atomicReplaceCredential, buildConnectorPromptSection, buildSdkConnectorTools, createConnector, createConnector10, createConnector11, createConnector12, createConnector13, createConnector14, createConnector15, createConnector16, createConnector17, createConnector18, createConnector19, createConnector2, createConnector20, createConnector3, createConnector4, createConnector5, createConnector6, createConnector7, createConnector8, createConnector9, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, readGitSyncStatus, registerBuiltinConnectors, removeMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock };
7779
- //# sourceMappingURL=chunk-VBRXFLIP.js.map
7780
- //# sourceMappingURL=chunk-VBRXFLIP.js.map
7787
+ //# sourceMappingURL=chunk-JCKGYBWY.js.map
7788
+ //# sourceMappingURL=chunk-JCKGYBWY.js.map