@skaile/workspaces 3.20.0 → 3.20.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.20.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#693](https://github.com/skaile-ai/workspaces/pull/693) [`93c5e8c`](https://github.com/skaile-ai/workspaces/commit/93c5e8c4ae94200089e2968251345e0efddb1ec0) Thanks [@peteralbert](https://github.com/peteralbert)! - runner: clamp the AI-credential refresh timer to 24 days so a far-future expiry re-arms instead of hot-looping on `setTimeout`'s silent 1 ms overflow
8
+
3
9
  ## 3.20.0
4
10
 
5
11
  ### Minor Changes
@@ -4,7 +4,7 @@ import { WorkspacePlugin } from './chunk-IUOXPQA3.js';
4
4
  import { assembleSystemPrompt, buildCapabilitiesPromptSection } from './chunk-W3UDISS2.js';
5
5
  import { WebSocketServerTransport } from './chunk-WQ7DE5UC.js';
6
6
  import { prepareNativePolicy, codexInstanceEnvironment, parseCodexCredential, parseCodexRefreshInput, parseCodexRefreshResult } from './chunk-T3YLZQS4.js';
7
- import { resolveFlowPath } from './chunk-BGURUGZW.js';
7
+ import { resolveFlowPath } from './chunk-RQ6YLAXF.js';
8
8
  import { findAiAssetsRoot as findAiAssetsRoot$1, deployCatalogEntry, undeployCatalogEntry } from './chunk-7BUZQVRR.js';
9
9
  import { registerBuiltinConnectors, buildConnectorPromptSection, findMissingPackages, installNpmPackages, ConnectorManager, ConnectorStartupError, buildSdkConnectorTools, buildConnectorToolDefs, buildFlowToolDefs, driveOrchestratorTurn, SessionNodeExecutor, SessionSubpromptRunner, SessionInlineSubFlowRunner, buildSdkFlowTools } from './chunk-PLLVREB2.js';
10
10
  import { loadConnectorDeclarations, SecretProviderChain, PreMintedSecretProvider, InMemorySecretProvider, resolvedConfigToDeclarations, isKnownSecretRef, deriveSingleMaterializedConnectorDeclaration } from './chunk-SIREWRZE.js';
@@ -3499,6 +3499,8 @@ function buildRefreshCredentialInput(args) {
3499
3499
  // runner/src/ai-credential-refresh.ts
3500
3500
  var PROACTIVE_AI_REFRESH_MARGIN_MS = 5 * 60 * 1e3;
3501
3501
  var STALE_REARM_MS = 9 * 60 * 60 * 1e3;
3502
+ var MAX_REARM_MS = 24 * 24 * 60 * 60 * 1e3;
3503
+ var MAX_REARM_DAYS = Math.round(MAX_REARM_MS / 864e5);
3502
3504
  function createAiCredentialRefreshScheduler(deps) {
3503
3505
  const now = deps.now ?? (() => Date.now());
3504
3506
  const setTimeoutImpl = deps.setTimeoutImpl ?? ((handler, ms) => {
@@ -3523,7 +3525,18 @@ function createAiCredentialRefreshScheduler(deps) {
3523
3525
  }
3524
3526
  function armTimer(handler, ms) {
3525
3527
  cancel();
3526
- timer = setTimeoutImpl(handler, ms);
3528
+ arm(handler, now() + ms);
3529
+ }
3530
+ function arm(handler, deadlineMs) {
3531
+ const remainingMs = deadlineMs - now();
3532
+ if (remainingMs > MAX_REARM_MS) {
3533
+ deps.log(
3534
+ `[ai-credential-refresh] delay ${Math.round(remainingMs / 1e3)}s exceeds the ${MAX_REARM_DAYS}d re-arm cap; re-arming in ${MAX_REARM_DAYS}d (no refresh fired)`
3535
+ );
3536
+ timer = setTimeoutImpl(() => arm(handler, deadlineMs), MAX_REARM_MS);
3537
+ } else {
3538
+ timer = setTimeoutImpl(handler, remainingMs);
3539
+ }
3527
3540
  timer.unref?.();
3528
3541
  }
3529
3542
  function isStale() {
@@ -8277,5 +8290,5 @@ function touchSession(state) {
8277
8290
  }
8278
8291
 
8279
8292
  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, createManagedCodexSubpromptDriver, createSessionStimulusBus, defineCapability, deleteSession, dispatchRunnerCapabilityInvocation, emitSystemPromptComposed, ensureClaudeSettingsDisablesConnectors, ensureGitConfigInclude, executeConnectorMutate, extractClaudeAiOauthExpiresAt, getPreInitRingSink, handleMountResourceRequest, handleResourceRequest, hasNonTerminalFlow, hostOpResumeStimulus, installPreInitRingSink, isTerminalFlowStatus, listSessions, loadAgentManifest, loadCompileManifest, loadCompileManifestFromDir, loadManagedCodexHostConfig, loadSession, loadSessionById, mcpAuthSecretKey, newSession, nulTailPaddingLength, pickRepointedManager, planFlowMutate, prepareCodexTools, reconcilePendingDecisions, registerActiveFlow, registerCompositionCapabilities, rejectCapabilityOnApprovalDeny, resetRunnerLogStore, resolveAgentComposition, resolveAgentMixins, resolveBinding, resolveCapabilityCallTimeoutMs, resolveCapabilityResult, resolveComposition, resolveFlowMutateConnectorWaitMs, resolveMixin, runAgentChat, saveSession, setCurrentSession, setUpFlowConnector, startAgentServer, stimulusFromMetas, supportsLiveToolUpdates, touchSession, validateInputResponse, writeClaudeCodeCredentialsFile };
8280
- //# sourceMappingURL=chunk-D2TTGUMZ.js.map
8281
- //# sourceMappingURL=chunk-D2TTGUMZ.js.map
8293
+ //# sourceMappingURL=chunk-HKKTVD45.js.map
8294
+ //# sourceMappingURL=chunk-HKKTVD45.js.map