@jterrats/open-orchestra 0.5.4 → 0.5.7

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 (159) hide show
  1. package/dist/assets/web-console.js +35 -5
  2. package/dist/autonomous-phase-lifecycle.js +3 -2
  3. package/dist/autonomous-phase-lifecycle.js.map +1 -1
  4. package/dist/autonomous-run-state.d.ts +4 -1
  5. package/dist/autonomous-run-state.js +8 -2
  6. package/dist/autonomous-run-state.js.map +1 -1
  7. package/dist/autonomous-run-store.d.ts +3 -1
  8. package/dist/autonomous-run-store.js +8 -1
  9. package/dist/autonomous-run-store.js.map +1 -1
  10. package/dist/autonomous-workflow-constants.js +5 -1
  11. package/dist/autonomous-workflow-constants.js.map +1 -1
  12. package/dist/benchmark.js +101 -9
  13. package/dist/benchmark.js.map +1 -1
  14. package/dist/cli.js +16 -1
  15. package/dist/cli.js.map +1 -1
  16. package/dist/collaboration-flows.js +5 -29
  17. package/dist/collaboration-flows.js.map +1 -1
  18. package/dist/command-manifest.js +7 -2
  19. package/dist/command-manifest.js.map +1 -1
  20. package/dist/commands.d.ts +5 -2
  21. package/dist/commands.js +64 -24
  22. package/dist/commands.js.map +1 -1
  23. package/dist/constants.d.ts +1 -0
  24. package/dist/constants.js +4 -0
  25. package/dist/constants.js.map +1 -1
  26. package/dist/cursor-canvas.d.ts +20 -0
  27. package/dist/cursor-canvas.js +119 -0
  28. package/dist/cursor-canvas.js.map +1 -0
  29. package/dist/defaults.d.ts +4 -0
  30. package/dist/defaults.js +4 -0
  31. package/dist/defaults.js.map +1 -1
  32. package/dist/delegation-decision.js +2 -10
  33. package/dist/delegation-decision.js.map +1 -1
  34. package/dist/doc-sync.d.ts +25 -0
  35. package/dist/doc-sync.js +79 -0
  36. package/dist/doc-sync.js.map +1 -0
  37. package/dist/gemini-provider.d.ts +3 -6
  38. package/dist/gemini-provider.js +14 -38
  39. package/dist/gemini-provider.js.map +1 -1
  40. package/dist/metrics-commands.js +16 -2
  41. package/dist/metrics-commands.js.map +1 -1
  42. package/dist/model-providers.d.ts +5 -12
  43. package/dist/model-providers.js +23 -64
  44. package/dist/model-providers.js.map +1 -1
  45. package/dist/network-policy.d.ts +2 -0
  46. package/dist/network-policy.js +6 -0
  47. package/dist/network-policy.js.map +1 -0
  48. package/dist/ollama-provider.d.ts +3 -6
  49. package/dist/ollama-provider.js +14 -38
  50. package/dist/ollama-provider.js.map +1 -1
  51. package/dist/package-update-check.d.ts +1 -0
  52. package/dist/package-update-check.js +4 -0
  53. package/dist/package-update-check.js.map +1 -1
  54. package/dist/phase-executor.js +305 -9
  55. package/dist/phase-executor.js.map +1 -1
  56. package/dist/phase-playbooks.d.ts +11 -0
  57. package/dist/phase-playbooks.js +200 -0
  58. package/dist/phase-playbooks.js.map +1 -0
  59. package/dist/planning-commands.js +18 -35
  60. package/dist/planning-commands.js.map +1 -1
  61. package/dist/policy-commands.d.ts +2 -0
  62. package/dist/policy-commands.js +29 -0
  63. package/dist/policy-commands.js.map +1 -0
  64. package/dist/policy-defaults.d.ts +2 -0
  65. package/dist/policy-defaults.js +42 -0
  66. package/dist/policy-defaults.js.map +1 -0
  67. package/dist/policy.d.ts +20 -0
  68. package/dist/policy.js +155 -0
  69. package/dist/policy.js.map +1 -0
  70. package/dist/prompt-registry-validation.d.ts +3 -0
  71. package/dist/prompt-registry-validation.js +24 -21
  72. package/dist/prompt-registry-validation.js.map +1 -1
  73. package/dist/provider-utils.d.ts +21 -0
  74. package/dist/provider-utils.js +45 -0
  75. package/dist/provider-utils.js.map +1 -0
  76. package/dist/refresh-generated.d.ts +23 -0
  77. package/dist/refresh-generated.js +103 -0
  78. package/dist/refresh-generated.js.map +1 -0
  79. package/dist/role-aliases.d.ts +2 -0
  80. package/dist/role-aliases.js +20 -0
  81. package/dist/role-aliases.js.map +1 -0
  82. package/dist/runtime-adapters.d.ts +2 -1
  83. package/dist/runtime-adapters.js +16 -0
  84. package/dist/runtime-adapters.js.map +1 -1
  85. package/dist/runtime-commands.js +8 -3
  86. package/dist/runtime-commands.js.map +1 -1
  87. package/dist/runtime-execution-adapters.js +40 -0
  88. package/dist/runtime-execution-adapters.js.map +1 -1
  89. package/dist/runtime-execution-renderer.d.ts +4 -3
  90. package/dist/runtime-execution-renderer.js +35 -9
  91. package/dist/runtime-execution-renderer.js.map +1 -1
  92. package/dist/runtime-execution.d.ts +6 -1
  93. package/dist/runtime-execution.js +43 -1
  94. package/dist/runtime-execution.js.map +1 -1
  95. package/dist/skills-catalog.js +1 -0
  96. package/dist/skills-catalog.js.map +1 -1
  97. package/dist/skills-commands.d.ts +1 -0
  98. package/dist/skills-commands.js +24 -0
  99. package/dist/skills-commands.js.map +1 -1
  100. package/dist/skills-planning.js +7 -18
  101. package/dist/skills-planning.js.map +1 -1
  102. package/dist/subagent-protocol.js +2 -13
  103. package/dist/subagent-protocol.js.map +1 -1
  104. package/dist/task-graph-commands.js +1 -11
  105. package/dist/task-graph-commands.js.map +1 -1
  106. package/dist/task-text.d.ts +8 -0
  107. package/dist/task-text.js +18 -0
  108. package/dist/task-text.js.map +1 -0
  109. package/dist/types/metrics.d.ts +2 -0
  110. package/dist/types/model-config.d.ts +18 -4
  111. package/dist/types/runtime.d.ts +27 -0
  112. package/dist/types/skills.d.ts +7 -0
  113. package/dist/types/tasks.d.ts +4 -0
  114. package/dist/types/workflow-run.d.ts +18 -0
  115. package/dist/types.d.ts +12 -4
  116. package/dist/types.js.map +1 -1
  117. package/dist/web-api-read-routes.js +14 -2
  118. package/dist/web-api-read-routes.js.map +1 -1
  119. package/dist/web-api.js +6 -0
  120. package/dist/web-api.js.map +1 -1
  121. package/dist/workflow-approval-service.js +11 -4
  122. package/dist/workflow-approval-service.js.map +1 -1
  123. package/dist/workflow-approval-utils.js +13 -3
  124. package/dist/workflow-approval-utils.js.map +1 -1
  125. package/dist/workflow-event-query.d.ts +2 -0
  126. package/dist/workflow-event-query.js +6 -0
  127. package/dist/workflow-event-query.js.map +1 -0
  128. package/dist/workflow-evidence-service.js +10 -8
  129. package/dist/workflow-evidence-service.js.map +1 -1
  130. package/dist/workflow-gates.d.ts +1 -0
  131. package/dist/workflow-gates.js +48 -11
  132. package/dist/workflow-gates.js.map +1 -1
  133. package/dist/workflow-markdown.d.ts +6 -0
  134. package/dist/workflow-markdown.js +25 -0
  135. package/dist/workflow-markdown.js.map +1 -0
  136. package/dist/workflow-phase-planner.d.ts +19 -0
  137. package/dist/workflow-phase-planner.js +133 -0
  138. package/dist/workflow-phase-planner.js.map +1 -0
  139. package/dist/workflow-run-commands.d.ts +1 -0
  140. package/dist/workflow-run-commands.js +266 -23
  141. package/dist/workflow-run-commands.js.map +1 -1
  142. package/dist/workflow-services.d.ts +6 -1
  143. package/dist/workflow-services.js +72 -26
  144. package/dist/workflow-services.js.map +1 -1
  145. package/dist/workflow-templates.d.ts +2 -1
  146. package/dist/workflow-templates.js +6 -16
  147. package/dist/workflow-templates.js.map +1 -1
  148. package/dist/workspace-validator.js +24 -2
  149. package/dist/workspace-validator.js.map +1 -1
  150. package/dist/workspace.js +6 -0
  151. package/dist/workspace.js.map +1 -1
  152. package/docs/autonomous-workflow.md +71 -2
  153. package/docs/benchmark.md +2 -2
  154. package/docs/core-command-surface.md +3 -0
  155. package/docs/orchestra-mvp.md +3 -0
  156. package/docs/runtime-adapters.md +21 -0
  157. package/docs/skill-loading-strategy.md +1 -0
  158. package/package.json +1 -1
  159. package/skills/doc-sync/SKILL.md +2 -0
@@ -1,3 +1,4 @@
1
+ import { type ModelProviderRuntimeOptions } from "./provider-utils.js";
1
2
  import type { ConfiguredProviderSummary, ModelProvider, ModelProviderCapabilities, ModelRequest, ModelResponse, ProviderPolicyConfig, WorkflowConfig, ProviderCredentialConfig } from "./types.js";
2
3
  export { GeminiModelProvider } from "./gemini-provider.js";
3
4
  export { OllamaModelProvider } from "./ollama-provider.js";
@@ -30,23 +31,15 @@ export declare class FakeModelProvider implements ModelProvider {
30
31
  export declare class OpenAIModelProvider implements ModelProvider {
31
32
  readonly id = "openai";
32
33
  readonly capabilities: ModelProviderCapabilities;
33
- private readonly fetchFn;
34
- private readonly env;
35
- constructor({ fetchFn, env, }?: {
36
- fetchFn?: typeof fetch;
37
- env?: NodeJS.ProcessEnv;
38
- });
34
+ private readonly runtime;
35
+ constructor(options?: ModelProviderRuntimeOptions);
39
36
  complete(request: ModelRequest): Promise<ModelResponse>;
40
37
  }
41
38
  export declare class AnthropicModelProvider implements ModelProvider {
42
39
  readonly id = "anthropic";
43
40
  readonly capabilities: ModelProviderCapabilities;
44
- private readonly fetchFn;
45
- private readonly env;
46
- constructor({ fetchFn, env, }?: {
47
- fetchFn?: typeof fetch;
48
- env?: NodeJS.ProcessEnv;
49
- });
41
+ private readonly runtime;
42
+ constructor(options?: ModelProviderRuntimeOptions);
50
43
  complete(request: ModelRequest): Promise<ModelResponse>;
51
44
  }
52
45
  export declare function summarizeConfiguredProviders(config: WorkflowConfig): ConfiguredProviderSummary[];
@@ -1,17 +1,9 @@
1
- import { readFileSync } from "node:fs";
2
- import { isAbsolute, resolve } from "node:path";
1
+ import { apiKeyFromEnvFile, joinUrlPath, modelProviderCapabilities, modelProviderRuntime, numberFrom, stringFrom, } from "./provider-utils.js";
3
2
  import { GeminiModelProvider } from "./gemini-provider.js";
4
3
  import { OllamaModelProvider } from "./ollama-provider.js";
5
4
  export { GeminiModelProvider } from "./gemini-provider.js";
6
5
  export { OllamaModelProvider } from "./ollama-provider.js";
7
- const defaultCapabilities = {
8
- streaming: false,
9
- tools: false,
10
- vision: false,
11
- jsonMode: false,
12
- maxContextTokens: 0,
13
- timeoutMs: 30000,
14
- };
6
+ const defaultCapabilities = modelProviderCapabilities({ jsonMode: false });
15
7
  export class InMemoryModelProviderRegistry {
16
8
  providers = new Map();
17
9
  register(provider) {
@@ -141,27 +133,18 @@ export class FakeModelProvider {
141
133
  }
142
134
  export class OpenAIModelProvider {
143
135
  id = "openai";
144
- capabilities = {
145
- streaming: false,
146
- tools: false,
147
- vision: false,
148
- jsonMode: true,
149
- maxContextTokens: 0,
150
- timeoutMs: 30000,
151
- };
152
- fetchFn;
153
- env;
154
- constructor({ fetchFn = fetch, env = process.env, } = {}) {
155
- this.fetchFn = fetchFn;
156
- this.env = env;
136
+ capabilities = modelProviderCapabilities();
137
+ runtime;
138
+ constructor(options = {}) {
139
+ this.runtime = modelProviderRuntime(options);
157
140
  }
158
141
  async complete(request) {
159
- const apiKey = apiKeyFromEnv(this.env, "OPENAI_API_KEY");
142
+ const apiKey = apiKeyFromEnv(this.runtime.env, "OPENAI_API_KEY");
160
143
  if (!apiKey) {
161
144
  throw new Error("OPENAI_API_KEY is required for provider openai");
162
145
  }
163
- const endpoint = openAIResponsesEndpoint(this.env.OPENAI_BASE_URL);
164
- const response = await this.fetchFn(endpoint, {
146
+ const endpoint = openAIResponsesEndpoint(this.runtime.env.OPENAI_BASE_URL);
147
+ const response = await this.runtime.fetchFn(endpoint, {
165
148
  method: "POST",
166
149
  headers: {
167
150
  authorization: `Bearer ${apiKey}`,
@@ -189,31 +172,22 @@ export class OpenAIModelProvider {
189
172
  }
190
173
  export class AnthropicModelProvider {
191
174
  id = "anthropic";
192
- capabilities = {
193
- streaming: false,
194
- tools: false,
195
- vision: false,
196
- jsonMode: true,
197
- maxContextTokens: 0,
198
- timeoutMs: 30000,
199
- };
200
- fetchFn;
201
- env;
202
- constructor({ fetchFn = fetch, env = process.env, } = {}) {
203
- this.fetchFn = fetchFn;
204
- this.env = env;
175
+ capabilities = modelProviderCapabilities();
176
+ runtime;
177
+ constructor(options = {}) {
178
+ this.runtime = modelProviderRuntime(options);
205
179
  }
206
180
  async complete(request) {
207
- const apiKey = apiKeyFromEnv(this.env, "ANTHROPIC_API_KEY");
181
+ const apiKey = apiKeyFromEnv(this.runtime.env, "ANTHROPIC_API_KEY");
208
182
  if (!apiKey) {
209
183
  throw new Error("ANTHROPIC_API_KEY is required for provider anthropic");
210
184
  }
211
- const endpoint = anthropicMessagesEndpoint(this.env.ANTHROPIC_BASE_URL);
212
- const response = await this.fetchFn(endpoint, {
185
+ const endpoint = anthropicMessagesEndpoint(this.runtime.env.ANTHROPIC_BASE_URL);
186
+ const response = await this.runtime.fetchFn(endpoint, {
213
187
  method: "POST",
214
188
  headers: {
215
189
  "x-api-key": apiKey,
216
- "anthropic-version": this.env.ANTHROPIC_VERSION?.trim() || "2023-06-01",
190
+ "anthropic-version": this.runtime.env.ANTHROPIC_VERSION?.trim() || "2023-06-01",
217
191
  "content-type": "application/json",
218
192
  },
219
193
  body: JSON.stringify(anthropicRequestBody(request)),
@@ -272,18 +246,12 @@ function anthropicMessagesEndpoint(baseUrl) {
272
246
  : joinUrlPath(url.pathname, "v1/messages"), url.origin).toString();
273
247
  }
274
248
  function apiKeyFromEnv(env, keyName) {
275
- const inlineKey = env[keyName];
276
- if (inlineKey?.trim())
277
- return inlineKey.trim();
278
- const keyFile = env[`${keyName}_FILE`];
279
- if (!keyFile?.trim())
280
- return undefined;
281
- const keyPath = keyFile.trim();
282
- const resolvedPath = resolve(keyPath);
283
- if (!isAbsolute(keyPath) || resolvedPath !== keyPath) {
284
- throw new Error(`${keyName}_FILE must be an absolute path`);
285
- }
286
- return readFileSync(resolvedPath, "utf8").trim();
249
+ return apiKeyFromEnvFile({
250
+ env,
251
+ keyNames: [keyName],
252
+ fileNames: [`${keyName}_FILE`],
253
+ fileErrorName: `${keyName}_FILE`,
254
+ });
287
255
  }
288
256
  function openAIRequestBody(request) {
289
257
  return {
@@ -373,15 +341,6 @@ function anthropicFinishReason(payload) {
373
341
  return "error";
374
342
  return "stop";
375
343
  }
376
- function joinUrlPath(basePath, segment) {
377
- return `${basePath.replace(/\/+$/, "")}/${segment}`.replace(/^\/?/, "/");
378
- }
379
- function stringFrom(value, fallback) {
380
- return typeof value === "string" && value ? value : fallback;
381
- }
382
- function numberFrom(value) {
383
- return typeof value === "number" ? value : 0;
384
- }
385
344
  export function summarizeConfiguredProviders(config) {
386
345
  const defaults = config.providers.defaults;
387
346
  const summaries = [];
@@ -1 +1 @@
1
- {"version":3,"file":"model-providers.js","sourceRoot":"","sources":["../src/model-providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-providers.js","sourceRoot":"","sources":["../src/model-providers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const SKIP_NETWORK_TESTS_ENV = "SKIP_NETWORK_TESTS";
2
+ export declare function shouldSkipExternalNetwork(env?: NodeJS.ProcessEnv): boolean;
@@ -0,0 +1,6 @@
1
+ export const SKIP_NETWORK_TESTS_ENV = "SKIP_NETWORK_TESTS";
2
+ export function shouldSkipExternalNetwork(env = process.env) {
3
+ const value = env[SKIP_NETWORK_TESTS_ENV];
4
+ return value === "1" || value === "true" || value === "yes";
5
+ }
6
+ //# sourceMappingURL=network-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-policy.js","sourceRoot":"","sources":["../src/network-policy.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AAE3D,MAAM,UAAU,yBAAyB,CACvC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,KAAK,GAAG,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC1C,OAAO,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,KAAK,CAAC;AAC9D,CAAC"}
@@ -1,12 +1,9 @@
1
+ import { type ModelProviderRuntimeOptions } from "./provider-utils.js";
1
2
  import type { ModelProvider, ModelProviderCapabilities, ModelRequest, ModelResponse } from "./types.js";
2
3
  export declare class OllamaModelProvider implements ModelProvider {
3
4
  readonly id = "ollama";
4
5
  readonly capabilities: ModelProviderCapabilities;
5
- private readonly fetchFn;
6
- private readonly env;
7
- constructor({ fetchFn, env, }?: {
8
- fetchFn?: typeof fetch;
9
- env?: NodeJS.ProcessEnv;
10
- });
6
+ private readonly runtime;
7
+ constructor(options?: ModelProviderRuntimeOptions);
11
8
  complete(request: ModelRequest): Promise<ModelResponse>;
12
9
  }
@@ -1,27 +1,17 @@
1
- import { readFileSync } from "node:fs";
2
- import { isAbsolute, resolve } from "node:path";
1
+ import { apiKeyFromEnvFile, joinUrlPath, modelProviderCapabilities, modelProviderRuntime, numberFrom, stringFrom, } from "./provider-utils.js";
3
2
  export class OllamaModelProvider {
4
3
  id = "ollama";
5
- capabilities = {
6
- streaming: false,
7
- tools: false,
8
- vision: false,
9
- jsonMode: true,
10
- maxContextTokens: 0,
11
- timeoutMs: 30000,
12
- };
13
- fetchFn;
14
- env;
15
- constructor({ fetchFn = fetch, env = process.env, } = {}) {
16
- this.fetchFn = fetchFn;
17
- this.env = env;
4
+ capabilities = modelProviderCapabilities();
5
+ runtime;
6
+ constructor(options = {}) {
7
+ this.runtime = modelProviderRuntime(options);
18
8
  }
19
9
  async complete(request) {
20
- const response = await this.fetchFn(ollamaChatCompletionsEndpoint(this.env.OLLAMA_BASE_URL), {
10
+ const response = await this.runtime.fetchFn(ollamaChatCompletionsEndpoint(this.runtime.env.OLLAMA_BASE_URL), {
21
11
  method: "POST",
22
12
  headers: {
23
13
  "content-type": "application/json",
24
- authorization: `Bearer ${ollamaApiKey(this.env)}`,
14
+ authorization: `Bearer ${ollamaApiKey(this.runtime.env)}`,
25
15
  },
26
16
  body: JSON.stringify(ollamaRequestBody(request)),
27
17
  signal: AbortSignal.timeout(request.timeoutMs ?? this.capabilities.timeoutMs),
@@ -44,18 +34,13 @@ export class OllamaModelProvider {
44
34
  }
45
35
  }
46
36
  function ollamaApiKey(env) {
47
- const inlineKey = env.OLLAMA_API_KEY;
48
- if (inlineKey?.trim())
49
- return inlineKey.trim();
50
- const keyFile = env.OLLAMA_API_KEY_FILE;
51
- if (!keyFile?.trim())
52
- return "ollama";
53
- const keyPath = keyFile.trim();
54
- const resolvedPath = resolve(keyPath);
55
- if (!isAbsolute(keyPath) || resolvedPath !== keyPath) {
56
- throw new Error("OLLAMA_API_KEY_FILE must be an absolute path");
57
- }
58
- return readFileSync(resolvedPath, "utf8").trim();
37
+ return (apiKeyFromEnvFile({
38
+ env,
39
+ keyNames: ["OLLAMA_API_KEY"],
40
+ fileNames: ["OLLAMA_API_KEY_FILE"],
41
+ defaultValue: "ollama",
42
+ fileErrorName: "OLLAMA_API_KEY_FILE",
43
+ }) ?? "ollama");
59
44
  }
60
45
  function ollamaChatCompletionsEndpoint(baseUrl) {
61
46
  const value = baseUrl?.trim() || "http://localhost:11434/v1";
@@ -90,13 +75,4 @@ function ollamaFinishReason(payload) {
90
75
  return "tool_call";
91
76
  return "stop";
92
77
  }
93
- function joinUrlPath(basePath, segment) {
94
- return `${basePath.replace(/\/+$/, "")}/${segment}`.replace(/^\/?/, "/");
95
- }
96
- function stringFrom(value, fallback) {
97
- return typeof value === "string" && value ? value : fallback;
98
- }
99
- function numberFrom(value) {
100
- return typeof value === "number" ? value : 0;
101
- }
102
78
  //# sourceMappingURL=ollama-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ollama-provider.js","sourceRoot":"","sources":["../src/ollama-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ollama-provider.js","sourceRoot":"","sources":["../src/ollama-provider.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export interface PackageUpdateCheckOptions {
6
6
  now?: Date;
7
7
  fetchLatestVersion?: (packageName: string, distTag: "latest" | "beta") => Promise<string | undefined>;
8
8
  cacheTtlMs?: number;
9
+ env?: NodeJS.ProcessEnv;
9
10
  }
10
11
  export interface PackageUpdateCheckResult {
11
12
  packageName: string;
@@ -3,6 +3,7 @@ import { access, mkdir, readFile, writeFile } from "node:fs/promises";
3
3
  import { tmpdir } from "node:os";
4
4
  import path from "node:path";
5
5
  import { request } from "node:https";
6
+ import { shouldSkipExternalNetwork } from "./network-policy.js";
6
7
  const DEFAULT_CACHE_TTL_MS = 12 * 60 * 60 * 1000;
7
8
  const REGISTRY_TIMEOUT_MS = 750;
8
9
  export async function checkPackageUpdate(options) {
@@ -56,6 +57,9 @@ export function postInstallSmokeCommand(binaryName = "orchestra") {
56
57
  return `${binaryName} version --json && ${binaryName} health --json`;
57
58
  }
58
59
  async function fetchAndCacheLatestVersion(options, cacheDir, now, cacheKey) {
60
+ if (shouldSkipExternalNetwork(options.env)) {
61
+ return undefined;
62
+ }
59
63
  const latestVersion = await (options.fetchLatestVersion ?? fetchNpmLatest)(options.packageName, options.distTag ?? "latest").catch(() => undefined);
60
64
  if (!latestVersion) {
61
65
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"package-update-check.js","sourceRoot":"","sources":["../src/package-update-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-update-check.js","sourceRoot":"","sources":["../src/package-update-check.ts"],"names":[],"mappings":"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"}