@relayflows/sdk 2.0.50 → 2.0.52

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 (167) hide show
  1. package/dist/authored-budget.d.ts +1 -1
  2. package/dist/authored-budget.d.ts.map +1 -1
  3. package/dist/authored-budget.js +3 -3
  4. package/dist/authored-budget.js.map +1 -1
  5. package/dist/authored-flow-error.d.ts +3 -1
  6. package/dist/authored-flow-error.d.ts.map +1 -1
  7. package/dist/authored-flow-error.js.map +1 -1
  8. package/dist/authored-flow-executor.d.ts +2 -0
  9. package/dist/authored-flow-executor.d.ts.map +1 -1
  10. package/dist/authored-flow-executor.js +97 -14
  11. package/dist/authored-flow-executor.js.map +1 -1
  12. package/dist/authored-flow-lifecycle.d.ts +28 -3
  13. package/dist/authored-flow-lifecycle.d.ts.map +1 -1
  14. package/dist/authored-flow-lifecycle.js +206 -10
  15. package/dist/authored-flow-lifecycle.js.map +1 -1
  16. package/dist/authored-node-entry.js +2 -0
  17. package/dist/authored-node-entry.js.map +1 -1
  18. package/dist/authored-parallel-body.d.ts +10 -0
  19. package/dist/authored-parallel-body.d.ts.map +1 -0
  20. package/dist/authored-parallel-body.js +68 -0
  21. package/dist/authored-parallel-body.js.map +1 -0
  22. package/dist/authored-parallel-eligibility.d.ts +8 -0
  23. package/dist/authored-parallel-eligibility.d.ts.map +1 -0
  24. package/dist/authored-parallel-eligibility.js +287 -0
  25. package/dist/authored-parallel-eligibility.js.map +1 -0
  26. package/dist/authored-preflight.js +4 -4
  27. package/dist/authored-preflight.js.map +1 -1
  28. package/dist/authored-promise-graph.d.ts +16 -0
  29. package/dist/authored-promise-graph.d.ts.map +1 -1
  30. package/dist/authored-promise-graph.js +36 -0
  31. package/dist/authored-promise-graph.js.map +1 -1
  32. package/dist/authored-root-readback.d.ts +1 -2
  33. package/dist/authored-root-readback.d.ts.map +1 -1
  34. package/dist/authored-root-readback.js +1 -1
  35. package/dist/authored-root-readback.js.map +1 -1
  36. package/dist/authored-root.d.ts +6 -1
  37. package/dist/authored-root.d.ts.map +1 -1
  38. package/dist/authored-root.js +55 -8
  39. package/dist/authored-root.js.map +1 -1
  40. package/dist/authored-step-graph.d.ts +19 -4
  41. package/dist/authored-step-graph.d.ts.map +1 -1
  42. package/dist/authored-step-graph.js +49 -6
  43. package/dist/authored-step-graph.js.map +1 -1
  44. package/dist/authored-step-index.d.ts +2 -1
  45. package/dist/authored-step-index.d.ts.map +1 -1
  46. package/dist/authored-step-index.js +2 -1
  47. package/dist/authored-step-index.js.map +1 -1
  48. package/dist/authored-verdict.d.ts +2 -0
  49. package/dist/authored-verdict.d.ts.map +1 -1
  50. package/dist/authored-verdict.js +4 -1
  51. package/dist/authored-verdict.js.map +1 -1
  52. package/dist/authored-worker-step.d.ts +4 -3
  53. package/dist/authored-worker-step.d.ts.map +1 -1
  54. package/dist/authored-worker-step.js +23 -10
  55. package/dist/authored-worker-step.js.map +1 -1
  56. package/dist/cli/check.js +2 -2
  57. package/dist/cli/check.js.map +1 -1
  58. package/dist/cli/cli-probe.d.ts +1 -1
  59. package/dist/cli/cli-probe.d.ts.map +1 -1
  60. package/dist/cli/cli-probe.js +8 -7
  61. package/dist/cli/cli-probe.js.map +1 -1
  62. package/dist/cli/run.d.ts.map +1 -1
  63. package/dist/cli/run.js +4 -2
  64. package/dist/cli/run.js.map +1 -1
  65. package/dist/cloud-http.d.ts +1 -0
  66. package/dist/cloud-http.d.ts.map +1 -1
  67. package/dist/cloud-http.js +1 -1
  68. package/dist/cloud-http.js.map +1 -1
  69. package/dist/cloud-run.d.ts +1 -1
  70. package/dist/cloud-run.d.ts.map +1 -1
  71. package/dist/cloud-run.js +45 -6
  72. package/dist/cloud-run.js.map +1 -1
  73. package/dist/cloud-signal.d.ts +12 -0
  74. package/dist/cloud-signal.d.ts.map +1 -0
  75. package/dist/cloud-signal.js +117 -0
  76. package/dist/cloud-signal.js.map +1 -0
  77. package/dist/cloud-sync.d.ts +8 -1
  78. package/dist/cloud-sync.d.ts.map +1 -1
  79. package/dist/cloud-sync.js +36 -4
  80. package/dist/cloud-sync.js.map +1 -1
  81. package/dist/communication/environment.d.ts +1 -1
  82. package/dist/communication/environment.d.ts.map +1 -1
  83. package/dist/communication/environment.js +26 -3
  84. package/dist/communication/environment.js.map +1 -1
  85. package/dist/communication/worker.js +1 -1
  86. package/dist/communication/worker.js.map +1 -1
  87. package/dist/compile.d.ts.map +1 -1
  88. package/dist/compile.js +5 -2
  89. package/dist/compile.js.map +1 -1
  90. package/dist/failure-kinds.d.ts +1 -1
  91. package/dist/failure-kinds.d.ts.map +1 -1
  92. package/dist/failure-kinds.js +2 -0
  93. package/dist/failure-kinds.js.map +1 -1
  94. package/dist/index.d.ts +1 -0
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +1 -0
  97. package/dist/index.js.map +1 -1
  98. package/dist/journal-client.d.ts +5 -1
  99. package/dist/journal-client.d.ts.map +1 -1
  100. package/dist/journal-client.js +44 -4
  101. package/dist/journal-client.js.map +1 -1
  102. package/dist/llm-worker.d.ts.map +1 -1
  103. package/dist/llm-worker.js +1 -1
  104. package/dist/llm-worker.js.map +1 -1
  105. package/dist/preflight.d.ts +2 -2
  106. package/dist/preflight.d.ts.map +1 -1
  107. package/dist/preflight.js +12 -7
  108. package/dist/preflight.js.map +1 -1
  109. package/dist/spec.d.ts +4 -0
  110. package/dist/spec.d.ts.map +1 -1
  111. package/dist/spec.js.map +1 -1
  112. package/dist/step-fields.d.ts +1 -1
  113. package/dist/step-fields.d.ts.map +1 -1
  114. package/dist/step-fields.js +1 -0
  115. package/dist/step-fields.js.map +1 -1
  116. package/dist/step-secrets.d.ts +20 -0
  117. package/dist/step-secrets.d.ts.map +1 -0
  118. package/dist/step-secrets.js +146 -0
  119. package/dist/step-secrets.js.map +1 -0
  120. package/dist/validate.d.ts.map +1 -1
  121. package/dist/validate.js +10 -0
  122. package/dist/validate.js.map +1 -1
  123. package/dist/worker-cli.d.ts +5 -1
  124. package/dist/worker-cli.d.ts.map +1 -1
  125. package/dist/worker-cli.js +43 -14
  126. package/dist/worker-cli.js.map +1 -1
  127. package/dist/worker.d.ts +1 -1
  128. package/dist/worker.d.ts.map +1 -1
  129. package/dist/worker.js +1 -1
  130. package/dist/worker.js.map +1 -1
  131. package/package.json +3 -2
  132. package/src/authored-budget.ts +4 -3
  133. package/src/authored-flow-error.ts +2 -0
  134. package/src/authored-flow-executor.ts +89 -13
  135. package/src/authored-flow-lifecycle.ts +215 -9
  136. package/src/authored-node-entry.ts +2 -0
  137. package/src/authored-parallel-body.ts +67 -0
  138. package/src/authored-parallel-eligibility.ts +245 -0
  139. package/src/authored-preflight.ts +4 -4
  140. package/src/authored-promise-graph.ts +35 -0
  141. package/src/authored-root-readback.ts +1 -2
  142. package/src/authored-root.ts +62 -9
  143. package/src/authored-step-graph.ts +50 -5
  144. package/src/authored-step-index.ts +2 -1
  145. package/src/authored-verdict.ts +4 -1
  146. package/src/authored-worker-step.ts +29 -9
  147. package/src/cli/check.ts +3 -3
  148. package/src/cli/cli-probe.ts +9 -6
  149. package/src/cli/run.ts +4 -2
  150. package/src/cloud-http.ts +1 -1
  151. package/src/cloud-run.ts +45 -8
  152. package/src/cloud-signal.ts +110 -0
  153. package/src/cloud-sync.ts +39 -4
  154. package/src/communication/environment.ts +28 -3
  155. package/src/communication/worker.ts +2 -1
  156. package/src/compile.ts +5 -2
  157. package/src/failure-kinds.ts +2 -0
  158. package/src/index.ts +1 -0
  159. package/src/journal-client.ts +48 -2
  160. package/src/llm-worker.ts +2 -1
  161. package/src/preflight.ts +13 -7
  162. package/src/spec.ts +4 -0
  163. package/src/step-fields.ts +1 -0
  164. package/src/step-secrets.ts +145 -0
  165. package/src/validate.ts +11 -0
  166. package/src/worker-cli.ts +41 -13
  167. package/src/worker.ts +3 -2
@@ -3,7 +3,7 @@ export declare const FLOW_FIELDS: readonly ["version", "name", "description", "c
3
3
  /** Closed named-agent declaration schema. */
4
4
  export declare const AGENT_DECLARATION_FIELDS: readonly ["cli", "model"];
5
5
  /** Fields shared by every authoring step, regardless of its verb. */
6
- export declare const STEP_COMMON_FIELDS: readonly ["id", "type", "dependsOn", "input", "verification", "maxIterations", "transportRetries", "memory", "requirements"];
6
+ export declare const STEP_COMMON_FIELDS: readonly ["id", "type", "secrets", "dependsOn", "input", "verification", "maxIterations", "transportRetries", "memory", "requirements"];
7
7
  /**
8
8
  * Closed verb-specific authoring schema (RFC-0001 decision 13). Validation
9
9
  * consumes this descriptor directly so a new optional field cannot bypass the
@@ -1 +1 @@
1
- {"version":3,"file":"step-fields.d.ts","sourceRoot":"","sources":["../src/step-fields.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,eAAO,MAAM,WAAW,mHAWd,CAAC;AAEX,6CAA6C;AAC7C,eAAO,MAAM,wBAAwB,2BAA4B,CAAC;AAElE,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,8HAUrB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;CAIwB,CAAC"}
1
+ {"version":3,"file":"step-fields.d.ts","sourceRoot":"","sources":["../src/step-fields.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,eAAO,MAAM,WAAW,mHAWd,CAAC;AAEX,6CAA6C;AAC7C,eAAO,MAAM,wBAAwB,2BAA4B,CAAC;AAElE,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,yIAWrB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;CAIwB,CAAC"}
@@ -17,6 +17,7 @@ export const AGENT_DECLARATION_FIELDS = ['cli', 'model'];
17
17
  export const STEP_COMMON_FIELDS = [
18
18
  'id',
19
19
  'type',
20
+ 'secrets',
20
21
  'dependsOn',
21
22
  'input',
22
23
  'verification',
@@ -1 +1 @@
1
- {"version":3,"file":"step-fields.js","sourceRoot":"","sources":["../src/step-fields.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,SAAS;IACT,MAAM;IACN,aAAa;IACb,KAAK;IACL,QAAQ;IACR,UAAU;IACV,OAAO;IACP,QAAQ;IACR,WAAW;IACX,OAAO;CACC,CAAC;AAEX,6CAA6C;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,OAAO,CAAU,CAAC;AAElE,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI;IACJ,MAAM;IACN,WAAW;IACX,OAAO;IACP,cAAc;IACd,eAAe;IACf,kBAAkB;IAClB,QAAQ;IACR,cAAc;CACN,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,aAAa,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC;IAChE,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC;IACzC,KAAK,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,QAAQ,CAAC;CACzF,CAAC"}
1
+ {"version":3,"file":"step-fields.js","sourceRoot":"","sources":["../src/step-fields.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,SAAS;IACT,MAAM;IACN,aAAa;IACb,KAAK;IACL,QAAQ;IACR,UAAU;IACV,OAAO;IACP,QAAQ;IACR,WAAW;IACX,OAAO;CACC,CAAC;AAEX,6CAA6C;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,OAAO,CAAU,CAAC;AAElE,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI;IACJ,MAAM;IACN,SAAS;IACT,WAAW;IACX,OAAO;IACP,cAAc;IACd,eAAe;IACf,kBAAkB;IAClB,QAAQ;IACR,cAAc;CACN,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,aAAa,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC;IAChE,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC;IACzC,KAAK,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,QAAQ,CAAC;CACzF,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { CliAdapterKind } from './cli-adapter.js';
2
+ /** Cloud supplies this name-only manifest alongside delivered envSecrets. */
3
+ export declare const SECRET_ENV_NAMES = "RELAY_SECRET_ENV_NAMES";
4
+ /** Cloud's name-only exception for model login it selected from delivered values. */
5
+ export declare const PLATFORM_AGENT_ENV_NAMES = "RELAY_PLATFORM_AGENT_ENV_NAMES";
6
+ /** CLI-only hosted signal read capability. Never a run or step secret. */
7
+ export declare const SIGNAL_READ_TOKEN_ENV = "RELAYFLOW_V2_SIGNAL_READ_TOKEN";
8
+ export declare function repositoryEnvironmentNames(source: NodeJS.ProcessEnv): string[];
9
+ /** A selected CLI can use its own delivered login; generic cloud credentials need a grant. */
10
+ export declare function isCliLoginName(kind: string, name: string, providerNames?: readonly string[]): boolean;
11
+ export declare function deliveredNames(source: NodeJS.ProcessEnv): ReadonlySet<string> | undefined;
12
+ /** Only Cloud-selected Claude Bedrock login may override the delivered filter. */
13
+ export declare function platformAgentNames(source: NodeJS.ProcessEnv, kind: string): ReadonlySet<string>;
14
+ /** Refuse a misspelled, unavailable or platform-owned name before a child runs. */
15
+ export declare function validateStepSecrets(declaration: unknown, source: NodeJS.ProcessEnv): string[];
16
+ /** One provider CLI starts from an allowlist, then receives only its grants. */
17
+ export declare function agentStepEnvironment(source: NodeJS.ProcessEnv, kind: CliAdapterKind, declaration?: unknown): NodeJS.ProcessEnv;
18
+ /** Provider readiness probes run before worker attach, but obey the step's grants. */
19
+ export declare function agentProbeEnvironment(source: NodeJS.ProcessEnv, kind: CliAdapterKind, declaration?: unknown): NodeJS.ProcessEnv;
20
+ //# sourceMappingURL=step-secrets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step-secrets.d.ts","sourceRoot":"","sources":["../src/step-secrets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,6EAA6E;AAC7E,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AACzD,qFAAqF;AACrF,eAAO,MAAM,wBAAwB,mCAAmC,CAAC;AACzE,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,mCAAmC,CAAC;AAYtE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,EAAE,CAG9E;AA8BD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAKrG;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAczF;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAU/F;AAED,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,EAAE,CAgB7F;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,IAAI,EAAE,cAAc,EACpB,WAAW,CAAC,EAAE,OAAO,GACpB,MAAM,CAAC,UAAU,CAYnB;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,IAAI,EAAE,cAAc,EACpB,WAAW,CAAC,EAAE,OAAO,GACpB,MAAM,CAAC,UAAU,CAYnB"}
@@ -0,0 +1,146 @@
1
+ /** Cloud supplies this name-only manifest alongside delivered envSecrets. */
2
+ export const SECRET_ENV_NAMES = 'RELAY_SECRET_ENV_NAMES';
3
+ /** Cloud's name-only exception for model login it selected from delivered values. */
4
+ export const PLATFORM_AGENT_ENV_NAMES = 'RELAY_PLATFORM_AGENT_ENV_NAMES';
5
+ /** CLI-only hosted signal read capability. Never a run or step secret. */
6
+ export const SIGNAL_READ_TOKEN_ENV = 'RELAYFLOW_V2_SIGNAL_READ_TOKEN';
7
+ const VALID_NAME = /^[A-Za-z_][A-Za-z0-9_]*$/;
8
+ const BEDROCK_LOGIN = new Set([
9
+ 'CLAUDE_CODE_USE_BEDROCK', 'AWS_BEARER_TOKEN_BEDROCK',
10
+ 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_SESSION_TOKEN',
11
+ 'AWS_REGION', 'AWS_DEFAULT_REGION',
12
+ ]);
13
+ const REPOSITORY_ENV = new Set([
14
+ 'GH_TOKEN', 'GH_CONFIG_DIR', 'GH_PROMPT_DISABLED', 'GITLAB_TOKEN',
15
+ 'RELAYFLOW_V2_GITLAB_API_URL',
16
+ ]);
17
+ export function repositoryEnvironmentNames(source) {
18
+ return Object.keys(source).filter(name => REPOSITORY_ENV.has(name) || name.startsWith('GIT_')
19
+ || name.startsWith('RELAYFLOW_V2_REPOSITORY_'));
20
+ }
21
+ const BASE_ENV = [
22
+ 'PATH', 'HOME', 'USER', 'LOGNAME', 'SHELL', 'TERM', 'LANG', 'LANGUAGE',
23
+ 'LC_ALL', 'LC_CTYPE', 'TZ', 'TMPDIR', 'TMP', 'TEMP', 'XDG_RUNTIME_DIR',
24
+ 'XDG_CACHE_HOME', 'XDG_CONFIG_HOME', 'XDG_DATA_HOME', 'HOSTNAME',
25
+ 'NODE_PATH', 'NODE_ENV', 'NODE_EXTRA_CA_CERTS', 'SSL_CERT_FILE',
26
+ 'SSL_CERT_DIR', 'NVM_DIR', 'NVM_BIN', 'NVM_INC',
27
+ 'HTTP_PROXY', 'HTTPS_PROXY', 'ALL_PROXY', 'NO_PROXY',
28
+ 'http_proxy', 'https_proxy', 'all_proxy', 'no_proxy',
29
+ 'NVM_SYMLINK_CURRENT', 'PIPX_HOME', 'PIPX_BIN_DIR', 'PYTHON_PATH',
30
+ 'PYTHON_VERSION', 'PYTHON_SHA256', 'RELAYFILE_MOUNT_PATH',
31
+ 'RELAYFILE_MOUNT_PATHS', 'RELAYFILE_MOUNT_ROOT', 'WORKSPACE_ROOT',
32
+ 'RELAY_BASE_URL',
33
+ 'SystemRoot', 'ComSpec', 'PATHEXT', 'WINDIR',
34
+ ];
35
+ // Model login is an intrinsic capability of the selected CLI. It is not a
36
+ // run's delivered envSecret; only that CLI gets its own login variables.
37
+ const CLI_LOGIN = {
38
+ claude: [
39
+ 'CLAUDE_CODE_OAUTH_TOKEN', 'CLAUDE_CONFIG_DIR', 'ANTHROPIC_API_KEY', 'ANTHROPIC_AUTH_TOKEN',
40
+ 'ANTHROPIC_BASE_URL', 'CLAUDE_CODE_USE_BEDROCK',
41
+ 'AWS_BEARER_TOKEN_BEDROCK', 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY',
42
+ 'AWS_SESSION_TOKEN', 'AWS_REGION', 'AWS_DEFAULT_REGION',
43
+ ],
44
+ codex: ['CODEX_HOME', 'OPENAI_API_KEY', 'OPENAI_BASE_URL', 'OPENAI_API_BASE', 'OPENROUTER_API_KEY'],
45
+ 'relayflows-wrapper-v1': [],
46
+ };
47
+ /** A selected CLI can use its own delivered login; generic cloud credentials need a grant. */
48
+ export function isCliLoginName(kind, name, providerNames) {
49
+ if (BEDROCK_LOGIN.has(name) || name.startsWith('AWS_')
50
+ || name === 'GOOGLE_APPLICATION_CREDENTIALS' || name === 'GOOGLE_API_KEY')
51
+ return false;
52
+ const names = providerNames ?? (Object.hasOwn(CLI_LOGIN, kind) ? CLI_LOGIN[kind] : []);
53
+ return names.includes(name);
54
+ }
55
+ export function deliveredNames(source) {
56
+ const raw = source[SECRET_ENV_NAMES];
57
+ if (raw === undefined)
58
+ return undefined; // self-hosted runs may grant present env names
59
+ let parsed;
60
+ try {
61
+ parsed = JSON.parse(raw);
62
+ }
63
+ catch {
64
+ throw new Error(`${SECRET_ENV_NAMES} must be a JSON array of names`);
65
+ }
66
+ if (!Array.isArray(parsed) || !parsed.every(name => typeof name === 'string' && VALID_NAME.test(name))) {
67
+ throw new Error(`${SECRET_ENV_NAMES} must be a JSON array of valid names`);
68
+ }
69
+ if (new Set(parsed).size !== parsed.length || parsed.includes(SECRET_ENV_NAMES)
70
+ || parsed.includes(PLATFORM_AGENT_ENV_NAMES)
71
+ || parsed.includes(SIGNAL_READ_TOKEN_ENV)) {
72
+ throw new Error(`${SECRET_ENV_NAMES} contains a duplicate or reserved name`);
73
+ }
74
+ return new Set(parsed);
75
+ }
76
+ /** Only Cloud-selected Claude Bedrock login may override the delivered filter. */
77
+ export function platformAgentNames(source, kind) {
78
+ const raw = source[PLATFORM_AGENT_ENV_NAMES];
79
+ if (raw === undefined)
80
+ return new Set();
81
+ let parsed;
82
+ try {
83
+ parsed = JSON.parse(raw);
84
+ }
85
+ catch {
86
+ throw new Error(`${PLATFORM_AGENT_ENV_NAMES} must be a JSON array of names`);
87
+ }
88
+ if (!Array.isArray(parsed) || !parsed.every(name => typeof name === 'string' && BEDROCK_LOGIN.has(name)
89
+ && typeof source[name] === 'string') || new Set(parsed).size !== parsed.length) {
90
+ throw new Error(`${PLATFORM_AGENT_ENV_NAMES} contains an invalid or unavailable model login name`);
91
+ }
92
+ return kind === 'claude' ? new Set(parsed) : new Set();
93
+ }
94
+ /** Refuse a misspelled, unavailable or platform-owned name before a child runs. */
95
+ export function validateStepSecrets(declaration, source) {
96
+ const known = deliveredNames(source);
97
+ if (declaration === undefined)
98
+ return [];
99
+ if (!Array.isArray(declaration) || !declaration.every(name => typeof name === 'string' && VALID_NAME.test(name))) {
100
+ throw new Error('step secrets must be an array of environment variable names');
101
+ }
102
+ const names = declaration;
103
+ if (new Set(names).size !== names.length)
104
+ throw new Error('step secrets contain duplicate names');
105
+ for (const name of names) {
106
+ if (name === SECRET_ENV_NAMES || name === PLATFORM_AGENT_ENV_NAMES || name === SIGNAL_READ_TOKEN_ENV
107
+ || !Object.hasOwn(source, name) || typeof source[name] !== 'string'
108
+ || (known !== undefined && !known.has(name))) {
109
+ throw new Error(`step secret ${JSON.stringify(name)} is not available to this run`);
110
+ }
111
+ }
112
+ return [...names];
113
+ }
114
+ /** One provider CLI starts from an allowlist, then receives only its grants. */
115
+ export function agentStepEnvironment(source, kind, declaration) {
116
+ const known = deliveredNames(source);
117
+ const platform = platformAgentNames(source, kind);
118
+ const grants = validateStepSecrets(declaration, source);
119
+ const env = {};
120
+ for (const name of [...BASE_ENV, ...CLI_LOGIN[kind], ...repositoryEnvironmentNames(source)]) {
121
+ if (known?.has(name) && !grants.includes(name) && !platform.has(name)
122
+ && !isCliLoginName(kind, name))
123
+ continue;
124
+ if (source[name] !== undefined)
125
+ env[name] = source[name];
126
+ }
127
+ for (const name of grants)
128
+ env[name] = source[name];
129
+ return env;
130
+ }
131
+ /** Provider readiness probes run before worker attach, but obey the step's grants. */
132
+ export function agentProbeEnvironment(source, kind, declaration) {
133
+ const env = { ...source };
134
+ const allowed = new Set(validateStepSecrets(declaration, source));
135
+ const platform = platformAgentNames(source, kind);
136
+ for (const name of deliveredNames(source) ?? []) {
137
+ if (!allowed.has(name) && !platform.has(name) && !isCliLoginName(kind, name))
138
+ delete env[name];
139
+ }
140
+ delete env[SECRET_ENV_NAMES];
141
+ delete env[PLATFORM_AGENT_ENV_NAMES];
142
+ delete env[SIGNAL_READ_TOKEN_ENV];
143
+ delete env.RELAY_AGENT_TOKEN;
144
+ return env;
145
+ }
146
+ //# sourceMappingURL=step-secrets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step-secrets.js","sourceRoot":"","sources":["../src/step-secrets.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAqCA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAikBD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAS5D;AAOD,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,MAAM,CAE1D"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAqCA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AA4kBD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAS5D;AAOD,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,MAAM,CAE1D"}
package/dist/validate.js CHANGED
@@ -351,6 +351,13 @@ class Validator {
351
351
  }
352
352
  const type = st['type'];
353
353
  this.checkKeys(st, [...STEP_COMMON_FIELDS, ...STEP_FIELDS_BY_TYPE[type]], at);
354
+ if (st['secrets'] !== undefined) {
355
+ const names = st['secrets'];
356
+ if (!Array.isArray(names) || !names.every(name => typeof name === 'string' && /^[A-Za-z_][A-Za-z0-9_]*$/.test(name))
357
+ || new Set(names).size !== names.length || names.includes('RELAY_SECRET_ENV_NAMES')) {
358
+ this.fail(`${at}.secrets: expected distinct environment variable names`);
359
+ }
360
+ }
354
361
  if (st['requirements'] !== undefined)
355
362
  this.validateRequirements(st['requirements'], `${at}.requirements`);
356
363
  if (st['memory'] !== undefined)
@@ -460,6 +467,9 @@ class Validator {
460
467
  this.validateCli(st.cli, at);
461
468
  }
462
469
  validateAgent(st, at) {
470
+ if (st.transport === 'relay' && st.secrets?.length) {
471
+ this.fail(`${at}.secrets: relay transport cannot deliver per-step secrets`);
472
+ }
463
473
  if (st.timeoutMs !== undefined) {
464
474
  if (!isPosInt(st.timeoutMs) || st.timeoutMs > 60 * 60_000) {
465
475
  this.fail(`${at}.timeoutMs: expected a positive integer at most 3600000 (60 minutes)`);
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
@@ -72,7 +72,11 @@ export interface AgentRelayContext {
72
72
  }
73
73
  export declare function runAgentCli(cli: string, instruction: string, wakeContext: unknown, model?: string, wrapperLimits?: Partial<WrapperSessionLimits>, signal?: AbortSignal, mode?: 'agent' | 'llm', sidechannel?: SidechannelContext, cwd?: string, transport?: AgentTransport, relayContext?: AgentRelayContext, processEnvironment?: NodeJS.ProcessEnv, cliIdentity?: string, stepTimeoutMs?: number,
74
74
  /** A recorded CLI session to continue (`f.agent` `resume`); agent mode only. */
75
- resume?: string): Promise<WorkerCliResult>;
75
+ resume?: string,
76
+ /** Names of run secrets this step was granted by its journaled spec. */
77
+ secrets?: string[],
78
+ /** A featureless daemon retains its legacy child environment for plain runs. */
79
+ scopeSecrets?: boolean): Promise<WorkerCliResult>;
76
80
  /**
77
81
  * Symlink-free form of an absolute path that may not exist yet: the deepest
78
82
  * existing ancestor is resolved and the missing tail is kept. A plain
@@ -1 +1 @@
1
- {"version":3,"file":"worker-cli.d.ts","sourceRoot":"","sources":["../src/worker-cli.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAIL,KAAK,gBAAgB,EAGtB,MAAM,uBAAuB,CAAC;AAe/B,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,4BAA4B,CAAC;AAIpC,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC9G,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,kFAAkF;AAClF,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAE3C,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,OAAO,0BAA0B,EAAE,gBAAgB,CAAC;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,OAAO,EACpB,KAAK,CAAC,EAAE,MAAM,EACd,aAAa,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAC7C,MAAM,CAAC,EAAE,WAAW,EACpB,IAAI,GAAE,OAAO,GAAG,KAAe,EAC/B,WAAW,CAAC,EAAE,kBAAkB,EAChC,GAAG,CAAC,EAAE,MAAM,EACZ,SAAS,GAAE,cAAyB,EACpC,YAAY,CAAC,EAAE,iBAAiB,EAChC,kBAAkB,GAAE,MAAM,CAAC,UAAwB,EACnD,WAAW,CAAC,EAAE,MAAM,EAEpB,aAAa,CAAC,EAAE,MAAM;AACtB,gFAAgF;AAChF,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,eAAe,CAAC,CAyH1B;AAqCD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAalD;AAgED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,QAAS,CAAC"}
1
+ {"version":3,"file":"worker-cli.d.ts","sourceRoot":"","sources":["../src/worker-cli.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAIL,KAAK,gBAAgB,EAGtB,MAAM,uBAAuB,CAAC;AAe/B,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,4BAA4B,CAAC;AAIpC,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC9G,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,kFAAkF;AAClF,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAE3C,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,OAAO,0BAA0B,EAAE,gBAAgB,CAAC;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,OAAO,EACpB,KAAK,CAAC,EAAE,MAAM,EACd,aAAa,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAC7C,MAAM,CAAC,EAAE,WAAW,EACpB,IAAI,GAAE,OAAO,GAAG,KAAe,EAC/B,WAAW,CAAC,EAAE,kBAAkB,EAChC,GAAG,CAAC,EAAE,MAAM,EACZ,SAAS,GAAE,cAAyB,EACpC,YAAY,CAAC,EAAE,iBAAiB,EAChC,kBAAkB,GAAE,MAAM,CAAC,UAAwB,EACnD,WAAW,CAAC,EAAE,MAAM,EAEpB,aAAa,CAAC,EAAE,MAAM;AACtB,gFAAgF;AAChF,MAAM,CAAC,EAAE,MAAM;AACf,wEAAwE;AACxE,OAAO,CAAC,EAAE,MAAM,EAAE;AAClB,gFAAgF;AAChF,YAAY,UAAO,GAClB,OAAO,CAAC,eAAe,CAAC,CA+I1B;AAqCD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAalD;AAgED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,QAAS,CAAC"}
@@ -13,6 +13,7 @@ import { agentExecution, agentResumable, llmExecution, cliAdapterKind, resolveCl
13
13
  import { runWrapperSession, } from './wrapper-session.js';
14
14
  import { wrapperEnvironment } from './wrapper-runtime.js';
15
15
  import { applyStepEnvironment } from './step-env.js';
16
+ import { PLATFORM_AGENT_ENV_NAMES, SIGNAL_READ_TOKEN_ENV, agentStepEnvironment } from './step-secrets.js';
16
17
  import { TAIL_CLOSE_TIMEOUT_MS, openTranscriptTail } from './transcript-tail.js';
17
18
  import { isRetryableSpawnError, transportEvidence, } from './cli-transport-evidence.js';
18
19
  import { runAgentRelayTask, AgentRelayTransportError, } from './agent-relay-transport.js';
@@ -35,12 +36,34 @@ export async function runAgentCli(cli, instruction, wakeContext, model, wrapperL
35
36
  // Trailing parameters preserve existing positional callers.
36
37
  stepTimeoutMs,
37
38
  /** A recorded CLI session to continue (`f.agent` `resume`); agent mode only. */
38
- resume) {
39
+ resume,
40
+ /** Names of run secrets this step was granted by its journaled spec. */
41
+ secrets,
42
+ /** A featureless daemon retains its legacy child environment for plain runs. */
43
+ scopeSecrets = true) {
39
44
  signal?.throwIfAborted();
40
45
  if (signal !== undefined && process.platform === 'win32') {
41
46
  throw new Error('Lease-bound agent execution requires macOS or Linux process-group cancellation; Windows is unsupported.');
42
47
  }
43
48
  const kind = cliAdapterKind(cliIdentity ?? cli);
49
+ if (!scopeSecrets && secrets?.length) {
50
+ return { exit_code: null, stdout_tail: '',
51
+ stderr_tail: 'per-step secret grants require a daemon with step_secret_scoping support' };
52
+ }
53
+ let childEnvironment;
54
+ try {
55
+ childEnvironment = scopeSecrets
56
+ ? agentStepEnvironment(processEnvironment, kind, secrets)
57
+ : { ...processEnvironment };
58
+ // The old-daemon compatibility path retains other legacy variables, but
59
+ // this CLI-only signal capability must never enter an agent subprocess.
60
+ delete childEnvironment[SIGNAL_READ_TOKEN_ENV];
61
+ delete childEnvironment[PLATFORM_AGENT_ENV_NAMES];
62
+ }
63
+ catch (error) {
64
+ return { exit_code: null, stdout_tail: '',
65
+ stderr_tail: error instanceof Error ? error.message : 'step secret grant is invalid' };
66
+ }
44
67
  const effectiveModel = resolveCliModel(cliIdentity ?? cli, model);
45
68
  const argv0 = cliInvocationArgv0(cli, cliIdentity);
46
69
  if (resume !== undefined && (mode !== 'agent' || transport === 'relay' || !agentResumable(kind))) {
@@ -100,7 +123,9 @@ resume) {
100
123
  if (kind === 'relayflows-wrapper-v1') {
101
124
  // The closed allowlist admits no ambient RELAYFLOW_* value; the four
102
125
  // discovery names are set from this dispatch, exactly as for a direct spawn.
103
- const wrapperEnv = wrapperEnvironment(processEnvironment);
126
+ const wrapperEnv = wrapperEnvironment(childEnvironment);
127
+ for (const name of secrets ?? [])
128
+ wrapperEnv[name] = childEnvironment[name];
104
129
  applyStepEnvironment(wrapperEnv, sidechannel);
105
130
  const session = await runWrapperSession(cli, instruction, wakeContext, effectiveModel, wrapperEnv, stepTimeoutMs === undefined ? wrapperLimits : { ...wrapperLimits, executionTimeoutMs: stepTimeoutMs }, signal, cwd, argv0);
106
131
  const decoded = decodeWrapperResult(session);
@@ -108,7 +133,7 @@ resume) {
108
133
  // for it; what it wrote is not the step's output.
109
134
  return requirePricedUsage(session.transport?.cause === 'timeout' ? { ...decoded, stdout_tail: '' } : decoded, effectiveModel);
110
135
  }
111
- const env = { ...processEnvironment };
136
+ const env = { ...childEnvironment };
112
137
  delete env[WAKE_CONTEXT_ENV];
113
138
  delete env[MODEL_ENV];
114
139
  // Where this attempt's journal is, so the agent can run `flows status` on
@@ -139,7 +164,11 @@ resume) {
139
164
  const args = [...invocation.args];
140
165
  args.splice(args.length - promptOperand('').length, 0, ...(kind === 'claude' ? ['--output-format', 'stream-json', '--verbose'] : ['--json']));
141
166
  const completion = kind === 'claude' ? claudeResultOutcome : undefined;
142
- return requirePricedUsage(decodeProviderResult(await spawnInvocation(cli, { ...invocation, args }, env, signal, sidechannel, cwd, completion, argv0, kind), kind, env), effectiveModel);
167
+ // Retain the source values for output redaction even though the child
168
+ // receives only its filtered environment. A provider can echo a value from
169
+ // its prompt or fixture that was not granted as an environment variable.
170
+ const redactionEnvironment = { ...processEnvironment, ...env };
171
+ return requirePricedUsage(decodeProviderResult(await spawnInvocation(cli, { ...invocation, args }, env, signal, sidechannel, cwd, completion, argv0, kind, redactionEnvironment), kind, redactionEnvironment), effectiveModel);
143
172
  }
144
173
  }
145
174
  function openTails(context) {
@@ -272,7 +301,7 @@ async function runViaAgentRelay(kind, instruction, wakeContext, model, context,
272
301
  * tree is stopped.
273
302
  */
274
303
  export const RESULT_EXIT_GRACE_MS = 30_000;
275
- async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, completion, argv0, kind) {
304
+ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, completion, argv0, kind, redactionEnvironment = env) {
276
305
  const pendingInput = [];
277
306
  let acceptingDrive = true;
278
307
  let writeInput = async (bytes) => {
@@ -309,7 +338,7 @@ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, c
309
338
  };
310
339
  try {
311
340
  writer = sidechannel?.attempt === undefined ? undefined
312
- : await openTranscriptWriter(transcriptPath(sidechannel, sidechannel.attempt), env);
341
+ : await openTranscriptWriter(transcriptPath(sidechannel, sidechannel.attempt), redactionEnvironment);
313
342
  channel = sidechannel === undefined ? undefined : await openSidechannel({
314
343
  ...sidechannel,
315
344
  onDrive() { driven = true; sidechannel.onDrive(); },
@@ -480,7 +509,7 @@ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, c
480
509
  const transport = transportEvidence({
481
510
  phase: 'abort', cause: 'lease_lost', exitCode: null, signal: null,
482
511
  stderr: 'Agent execution aborted: lease ownership lost.', retryable: false,
483
- }, env);
512
+ }, redactionEnvironment);
484
513
  finishAfterStop({ exit_code: null, stdout_tail: '', stderr_tail: 'Agent execution aborted: lease ownership lost.', transport }, 'kill', true, 'abort');
485
514
  };
486
515
  /**
@@ -516,11 +545,11 @@ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, c
516
545
  phase: 'result_exit_grace', cause: 'result_exit_timeout', exitCode, signal: null,
517
546
  stderr: stderrText,
518
547
  retryable: false,
519
- }, env);
548
+ }, redactionEnvironment);
520
549
  finishAfterStop({
521
550
  exit_code: exitCode,
522
551
  stdout_tail: Buffer.concat(stdout).toString('utf8'),
523
- stderr_tail: redactText(stderrText, env),
552
+ stderr_tail: redactText(stderrText, redactionEnvironment),
524
553
  transport,
525
554
  }, 'terminate');
526
555
  }, RESULT_EXIT_GRACE_MS);
@@ -555,11 +584,11 @@ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, c
555
584
  const transport = transportEvidence({
556
585
  phase: 'spawn', cause: child.pid === undefined ? 'spawn_error' : 'process_error',
557
586
  exitCode: null, signal: null, stderr: error.message, errorCode: code, retryable,
558
- }, env);
587
+ }, redactionEnvironment);
559
588
  finishOnChildExit({
560
589
  exit_code: null,
561
590
  stdout_tail: Buffer.concat(stdout).toString('utf8'),
562
- stderr_tail: redactText(error.message, env),
591
+ stderr_tail: redactText(error.message, redactionEnvironment),
563
592
  transport,
564
593
  });
565
594
  });
@@ -577,11 +606,11 @@ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, c
577
606
  const retryable = codexStdinLifecycle || signalName !== null || code === null;
578
607
  const transport = transportEvidence({
579
608
  phase: 'close', cause, exitCode: code, signal: signalName, stderr: stderrText, retryable,
580
- }, env);
609
+ }, redactionEnvironment);
581
610
  finishOnChildExit({
582
611
  exit_code: code,
583
612
  stdout_tail: Buffer.concat(stdout).toString('utf8'),
584
- stderr_tail: redactText(stderrText, env),
613
+ stderr_tail: redactText(stderrText, redactionEnvironment),
585
614
  transport,
586
615
  });
587
616
  });
@@ -595,7 +624,7 @@ async function spawnInvocation(cli, invocation, env, signal, sidechannel, cwd, c
595
624
  phase: 'timeout', cause: 'timeout', exitCode: null, signal: null,
596
625
  stderr: `${Buffer.concat(stderr).toString('utf8')}\n${timeoutMessage}`,
597
626
  retryable: false,
598
- }, env);
627
+ }, redactionEnvironment);
599
628
  finishAfterStop({
600
629
  exit_code: null,
601
630
  stdout_tail: Buffer.concat(stdout).toString('utf8'),