@nocobase/app-plugin-agents 0.1.0-beta.1 → 0.1.0-beta.3

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 (278) hide show
  1. package/CHANGELOG.md +124 -0
  2. package/README.md +44 -12
  3. package/dist/client/api/client.d.ts +9 -2
  4. package/dist/client/api/client.d.ts.map +1 -1
  5. package/dist/client/api/client.js +15 -3
  6. package/dist/client/api/client.js.map +1 -1
  7. package/dist/client/chat/message-model.d.ts.map +1 -1
  8. package/dist/client/chat/message-model.js +10 -0
  9. package/dist/client/chat/message-model.js.map +1 -1
  10. package/dist/client/chat/settings-section.d.ts.map +1 -1
  11. package/dist/client/chat/settings-section.js +29 -19
  12. package/dist/client/chat/settings-section.js.map +1 -1
  13. package/dist/client/components/model-entries.d.ts +12 -3
  14. package/dist/client/components/model-entries.d.ts.map +1 -1
  15. package/dist/client/components/model-entries.js +41 -19
  16. package/dist/client/components/model-entries.js.map +1 -1
  17. package/dist/client/components/variables/variable-dialogs.d.ts +6 -1
  18. package/dist/client/components/variables/variable-dialogs.d.ts.map +1 -1
  19. package/dist/client/components/variables/variable-dialogs.js +27 -11
  20. package/dist/client/components/variables/variable-dialogs.js.map +1 -1
  21. package/dist/client/components/variables/variables-panel.d.ts.map +1 -1
  22. package/dist/client/components/variables/variables-panel.js +9 -2
  23. package/dist/client/components/variables/variables-panel.js.map +1 -1
  24. package/dist/client/lib/agents.d.ts +5 -0
  25. package/dist/client/lib/agents.d.ts.map +1 -1
  26. package/dist/client/lib/agents.js +23 -0
  27. package/dist/client/lib/agents.js.map +1 -1
  28. package/dist/client/lib/model-suggestions.d.ts +28 -0
  29. package/dist/client/lib/model-suggestions.d.ts.map +1 -0
  30. package/dist/client/lib/model-suggestions.js +44 -0
  31. package/dist/client/lib/model-suggestions.js.map +1 -0
  32. package/dist/client/locales/chat.en-US.d.ts +7 -0
  33. package/dist/client/locales/chat.en-US.d.ts.map +1 -1
  34. package/dist/client/locales/chat.en-US.js +8 -1
  35. package/dist/client/locales/chat.en-US.js.map +1 -1
  36. package/dist/client/locales/chat.zh-CN.d.ts.map +1 -1
  37. package/dist/client/locales/chat.zh-CN.js +8 -1
  38. package/dist/client/locales/chat.zh-CN.js.map +1 -1
  39. package/dist/client/locales/en-US.d.ts +20 -1
  40. package/dist/client/locales/en-US.d.ts.map +1 -1
  41. package/dist/client/locales/en-US.js +21 -1
  42. package/dist/client/locales/en-US.js.map +1 -1
  43. package/dist/client/locales/runWait.en-US.d.ts +31 -0
  44. package/dist/client/locales/runWait.en-US.d.ts.map +1 -0
  45. package/dist/client/locales/runWait.en-US.js +30 -0
  46. package/dist/client/locales/runWait.en-US.js.map +1 -0
  47. package/dist/client/locales/runWait.zh-CN.d.ts +5 -0
  48. package/dist/client/locales/runWait.zh-CN.d.ts.map +1 -0
  49. package/dist/client/locales/runWait.zh-CN.js +25 -0
  50. package/dist/client/locales/runWait.zh-CN.js.map +1 -0
  51. package/dist/client/locales/runtimes.en-US.d.ts +6 -0
  52. package/dist/client/locales/runtimes.en-US.d.ts.map +1 -1
  53. package/dist/client/locales/runtimes.en-US.js +7 -1
  54. package/dist/client/locales/runtimes.en-US.js.map +1 -1
  55. package/dist/client/locales/runtimes.zh-CN.d.ts.map +1 -1
  56. package/dist/client/locales/runtimes.zh-CN.js +7 -1
  57. package/dist/client/locales/runtimes.zh-CN.js.map +1 -1
  58. package/dist/client/locales/zh-CN.d.ts.map +1 -1
  59. package/dist/client/locales/zh-CN.js +21 -1
  60. package/dist/client/locales/zh-CN.js.map +1 -1
  61. package/dist/client/pages/agents/index.d.ts.map +1 -1
  62. package/dist/client/pages/agents/index.js +6 -6
  63. package/dist/client/pages/agents/index.js.map +1 -1
  64. package/dist/client/pages/runtimes/index.js +2 -2
  65. package/dist/client/pages/runtimes/index.js.map +1 -1
  66. package/dist/client/pages/runtimes/runner-sheet.js +11 -3
  67. package/dist/client/pages/runtimes/runner-sheet.js.map +1 -1
  68. package/dist/client/runs/format-wait.d.ts +21 -0
  69. package/dist/client/runs/format-wait.d.ts.map +1 -0
  70. package/dist/client/runs/format-wait.js +76 -0
  71. package/dist/client/runs/format-wait.js.map +1 -0
  72. package/dist/client/runs.d.ts +2 -0
  73. package/dist/client/runs.d.ts.map +1 -1
  74. package/dist/client/runs.js +2 -0
  75. package/dist/client/runs.js.map +1 -1
  76. package/dist/database/migrations/.manifest.json +20 -0
  77. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.d.ts +9 -0
  78. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.d.ts.map +1 -0
  79. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.js +28 -0
  80. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.js.map +1 -0
  81. package/dist/database/migrations/202610090002_ag_create_run_requests.d.ts +10 -0
  82. package/dist/database/migrations/202610090002_ag_create_run_requests.d.ts.map +1 -0
  83. package/dist/database/migrations/202610090002_ag_create_run_requests.js +105 -0
  84. package/dist/database/migrations/202610090002_ag_create_run_requests.js.map +1 -0
  85. package/dist/database/migrations/202610090003_ag_add_execution_history.d.ts +4 -0
  86. package/dist/database/migrations/202610090003_ag_add_execution_history.d.ts.map +1 -0
  87. package/dist/database/migrations/202610090003_ag_add_execution_history.js +17 -0
  88. package/dist/database/migrations/202610090003_ag_add_execution_history.js.map +1 -0
  89. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.d.ts +9 -0
  90. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.d.ts.map +1 -0
  91. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.js +22 -0
  92. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.js.map +1 -0
  93. package/dist/database/migrations/202610090005_ag_add_runner_variables.d.ts +10 -0
  94. package/dist/database/migrations/202610090005_ag_add_runner_variables.d.ts.map +1 -0
  95. package/dist/database/migrations/202610090005_ag_add_runner_variables.js +36 -0
  96. package/dist/database/migrations/202610090005_ag_add_runner_variables.js.map +1 -0
  97. package/dist/package.json +1 -1
  98. package/dist/server/composition.d.ts +12 -2
  99. package/dist/server/composition.d.ts.map +1 -1
  100. package/dist/server/composition.js +16 -3
  101. package/dist/server/composition.js.map +1 -1
  102. package/dist/server/core/agents/agent.service.d.ts.map +1 -1
  103. package/dist/server/core/agents/agent.service.js +4 -1
  104. package/dist/server/core/agents/agent.service.js.map +1 -1
  105. package/dist/server/core/consultations/consultation.service.d.ts.map +1 -1
  106. package/dist/server/core/consultations/consultation.service.js +5 -2
  107. package/dist/server/core/consultations/consultation.service.js.map +1 -1
  108. package/dist/server/core/conversations/availability.d.ts +10 -4
  109. package/dist/server/core/conversations/availability.d.ts.map +1 -1
  110. package/dist/server/core/conversations/availability.js +6 -20
  111. package/dist/server/core/conversations/availability.js.map +1 -1
  112. package/dist/server/core/conversations/chat-settings.d.ts +2 -2
  113. package/dist/server/core/conversations/chat-settings.d.ts.map +1 -1
  114. package/dist/server/core/conversations/chat-settings.js +19 -1
  115. package/dist/server/core/conversations/chat-settings.js.map +1 -1
  116. package/dist/server/core/conversations/conversation.service.d.ts +2 -1
  117. package/dist/server/core/conversations/conversation.service.d.ts.map +1 -1
  118. package/dist/server/core/conversations/conversation.service.js +255 -57
  119. package/dist/server/core/conversations/conversation.service.js.map +1 -1
  120. package/dist/server/core/runs/availability.d.ts +5 -2
  121. package/dist/server/core/runs/availability.d.ts.map +1 -1
  122. package/dist/server/core/runs/availability.js +17 -6
  123. package/dist/server/core/runs/availability.js.map +1 -1
  124. package/dist/server/core/runs/claim.d.ts +16 -2
  125. package/dist/server/core/runs/claim.d.ts.map +1 -1
  126. package/dist/server/core/runs/claim.js +220 -64
  127. package/dist/server/core/runs/claim.js.map +1 -1
  128. package/dist/server/core/runs/eligibility.d.ts +49 -0
  129. package/dist/server/core/runs/eligibility.d.ts.map +1 -0
  130. package/dist/server/core/runs/eligibility.js +44 -0
  131. package/dist/server/core/runs/eligibility.js.map +1 -0
  132. package/dist/server/core/runs/execution-view.d.ts +10 -0
  133. package/dist/server/core/runs/execution-view.d.ts.map +1 -0
  134. package/dist/server/core/runs/execution-view.js +25 -0
  135. package/dist/server/core/runs/execution-view.js.map +1 -0
  136. package/dist/server/core/runs/execution.d.ts +13 -0
  137. package/dist/server/core/runs/execution.d.ts.map +1 -0
  138. package/dist/server/core/runs/execution.js +85 -0
  139. package/dist/server/core/runs/execution.js.map +1 -0
  140. package/dist/server/core/runs/extensions.d.ts +2 -0
  141. package/dist/server/core/runs/extensions.d.ts.map +1 -1
  142. package/dist/server/core/runs/extensions.js.map +1 -1
  143. package/dist/server/core/runs/index.d.ts +6 -3
  144. package/dist/server/core/runs/index.d.ts.map +1 -1
  145. package/dist/server/core/runs/index.js +5 -2
  146. package/dist/server/core/runs/index.js.map +1 -1
  147. package/dist/server/core/runs/lifecycle.d.ts.map +1 -1
  148. package/dist/server/core/runs/lifecycle.js +29 -2
  149. package/dist/server/core/runs/lifecycle.js.map +1 -1
  150. package/dist/server/core/runs/ports.d.ts +20 -0
  151. package/dist/server/core/runs/ports.d.ts.map +1 -1
  152. package/dist/server/core/runs/ports.js.map +1 -1
  153. package/dist/server/core/runs/preview.d.ts.map +1 -1
  154. package/dist/server/core/runs/preview.js +2 -0
  155. package/dist/server/core/runs/preview.js.map +1 -1
  156. package/dist/server/core/runs/run-requests.d.ts +217 -0
  157. package/dist/server/core/runs/run-requests.d.ts.map +1 -0
  158. package/dist/server/core/runs/run-requests.js +471 -0
  159. package/dist/server/core/runs/run-requests.js.map +1 -0
  160. package/dist/server/core/runs/run.service.d.ts +63 -7
  161. package/dist/server/core/runs/run.service.d.ts.map +1 -1
  162. package/dist/server/core/runs/run.service.js +211 -37
  163. package/dist/server/core/runs/run.service.js.map +1 -1
  164. package/dist/server/core/runs/run.store.d.ts +14 -3
  165. package/dist/server/core/runs/run.store.d.ts.map +1 -1
  166. package/dist/server/core/runs/run.store.js +41 -2
  167. package/dist/server/core/runs/run.store.js.map +1 -1
  168. package/dist/server/core/runs/runner-view.d.ts +4 -3
  169. package/dist/server/core/runs/runner-view.d.ts.map +1 -1
  170. package/dist/server/core/runs/runner-view.js +7 -3
  171. package/dist/server/core/runs/runner-view.js.map +1 -1
  172. package/dist/server/core/runs/transitions.d.ts.map +1 -1
  173. package/dist/server/core/runs/transitions.js +4 -0
  174. package/dist/server/core/runs/transitions.js.map +1 -1
  175. package/dist/server/core/runs/workload.d.ts +1 -1
  176. package/dist/server/core/runs/workload.d.ts.map +1 -1
  177. package/dist/server/core/runs/workload.js +44 -13
  178. package/dist/server/core/runs/workload.js.map +1 -1
  179. package/dist/server/core/variables/index.d.ts +1 -1
  180. package/dist/server/core/variables/index.d.ts.map +1 -1
  181. package/dist/server/core/variables/index.js +1 -1
  182. package/dist/server/core/variables/index.js.map +1 -1
  183. package/dist/server/core/variables/variable.service.d.ts +38 -6
  184. package/dist/server/core/variables/variable.service.d.ts.map +1 -1
  185. package/dist/server/core/variables/variable.service.js +201 -30
  186. package/dist/server/core/variables/variable.service.js.map +1 -1
  187. package/dist/server/jobs/index.d.ts +1 -1
  188. package/dist/server/jobs/index.d.ts.map +1 -1
  189. package/dist/server/jobs/index.js +1 -1
  190. package/dist/server/jobs/index.js.map +1 -1
  191. package/dist/server/jobs/job.service.d.ts +2 -0
  192. package/dist/server/jobs/job.service.d.ts.map +1 -1
  193. package/dist/server/jobs/job.service.js +3 -1
  194. package/dist/server/jobs/job.service.js.map +1 -1
  195. package/dist/server/jobs/spec.d.ts +4 -0
  196. package/dist/server/jobs/spec.d.ts.map +1 -1
  197. package/dist/server/jobs/spec.js +6 -0
  198. package/dist/server/jobs/spec.js.map +1 -1
  199. package/dist/server/kernel/errors.d.ts +1 -1
  200. package/dist/server/kernel/errors.d.ts.map +1 -1
  201. package/dist/server/kernel/errors.js +1 -0
  202. package/dist/server/kernel/errors.js.map +1 -1
  203. package/dist/server/kernel/events.d.ts +28 -8
  204. package/dist/server/kernel/events.d.ts.map +1 -1
  205. package/dist/server/kernel/events.js.map +1 -1
  206. package/dist/server/routes/admin.d.ts.map +1 -1
  207. package/dist/server/routes/admin.js +38 -7
  208. package/dist/server/routes/admin.js.map +1 -1
  209. package/dist/server/routes/chat.d.ts.map +1 -1
  210. package/dist/server/routes/chat.js +9 -6
  211. package/dist/server/routes/chat.js.map +1 -1
  212. package/dist/server/routes/index.d.ts.map +1 -1
  213. package/dist/server/routes/index.js +11 -1
  214. package/dist/server/routes/index.js.map +1 -1
  215. package/dist/server/routes/roster.d.ts.map +1 -1
  216. package/dist/server/routes/roster.js +2 -1
  217. package/dist/server/routes/roster.js.map +1 -1
  218. package/dist/server/routes/run-requests.d.ts +6 -0
  219. package/dist/server/routes/run-requests.d.ts.map +1 -0
  220. package/dist/server/routes/run-requests.js +216 -0
  221. package/dist/server/routes/run-requests.js.map +1 -0
  222. package/dist/server/routes/runners/admin.d.ts +9 -1
  223. package/dist/server/routes/runners/admin.d.ts.map +1 -1
  224. package/dist/server/routes/runners/admin.js +62 -24
  225. package/dist/server/routes/runners/admin.js.map +1 -1
  226. package/dist/server/routes/runners/runner.d.ts.map +1 -1
  227. package/dist/server/routes/runners/runner.js +21 -3
  228. package/dist/server/routes/runners/runner.js.map +1 -1
  229. package/dist/server/routes/schemas.d.ts +31 -3
  230. package/dist/server/routes/schemas.d.ts.map +1 -1
  231. package/dist/server/routes/schemas.js +233 -3
  232. package/dist/server/routes/schemas.js.map +1 -1
  233. package/dist/server/runners/index.d.ts +1 -0
  234. package/dist/server/runners/index.d.ts.map +1 -1
  235. package/dist/server/runners/index.js +1 -0
  236. package/dist/server/runners/index.js.map +1 -1
  237. package/dist/server/runners/runner.service.d.ts +10 -5
  238. package/dist/server/runners/runner.service.d.ts.map +1 -1
  239. package/dist/server/runners/runner.service.js +35 -10
  240. package/dist/server/runners/runner.service.js.map +1 -1
  241. package/dist/server/runners/runner.store.d.ts +7 -1
  242. package/dist/server/runners/runner.store.d.ts.map +1 -1
  243. package/dist/server/runners/runner.store.js +69 -4
  244. package/dist/server/runners/runner.store.js.map +1 -1
  245. package/dist/server/runners/sweeper.d.ts +5 -0
  246. package/dist/server/runners/sweeper.d.ts.map +1 -1
  247. package/dist/server/runners/sweeper.js +4 -2
  248. package/dist/server/runners/sweeper.js.map +1 -1
  249. package/dist/server/runners/workspaces.d.ts +30 -0
  250. package/dist/server/runners/workspaces.d.ts.map +1 -0
  251. package/dist/server/runners/workspaces.js +135 -0
  252. package/dist/server/runners/workspaces.js.map +1 -0
  253. package/dist/server/tokens.d.ts +4 -2
  254. package/dist/server/tokens.d.ts.map +1 -1
  255. package/dist/server/tokens.js +2 -0
  256. package/dist/server/tokens.js.map +1 -1
  257. package/dist/shared/agents.d.ts +2 -0
  258. package/dist/shared/agents.d.ts.map +1 -1
  259. package/dist/shared/agents.js.map +1 -1
  260. package/dist/shared/conversations.d.ts +48 -13
  261. package/dist/shared/conversations.d.ts.map +1 -1
  262. package/dist/shared/conversations.js +2 -2
  263. package/dist/shared/conversations.js.map +1 -1
  264. package/dist/shared/runners.d.ts +56 -5
  265. package/dist/shared/runners.d.ts.map +1 -1
  266. package/dist/shared/runners.js.map +1 -1
  267. package/dist/shared/runs.d.ts +145 -1
  268. package/dist/shared/runs.d.ts.map +1 -1
  269. package/dist/shared/runs.js +18 -0
  270. package/dist/shared/runs.js.map +1 -1
  271. package/dist/shared/variables.d.ts +22 -0
  272. package/dist/shared/variables.d.ts.map +1 -1
  273. package/dist/shared/variables.js +9 -1
  274. package/dist/shared/variables.js.map +1 -1
  275. package/package.json +8 -8
  276. package/skills/nocobase-app-plugin-agents/references/extension-points.md +4 -0
  277. package/skills/nocobase-app-plugin-agents/references/runners.md +9 -1
  278. package/skills/nocobase-app-plugin-agents/references/verification-and-troubleshooting.md +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"variable.service.d.ts","sourceRoot":"","sources":["../../../../server/core/variables/variable.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variable.service.d.ts","sourceRoot":"","sources":["../../../../server/core/variables/variable.service.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,62 @@
1
1
  import { isReservedVariable, VARIABLE_NAME_PATTERN, VARIABLE_VALUE_MAX_BYTES, } from '../../../shared/variables.js';
2
2
  import { invalid, notFound } from '../../kernel/errors.js';
3
3
  import { stringArray } from '../../kernel/values.js';
4
+ import { JobSecretsNotAllowed } from '../../jobs/spec.js';
5
+ import { runnersRepo } from '../../runners/runner.store.js';
4
6
  function secrets(conn) {
5
7
  return conn.repository('agSecrets');
6
8
  }
9
+ function runnerVariables(conn) {
10
+ return conn.repository('agRunnerVariables');
11
+ }
7
12
  function audits(conn) {
8
13
  return conn.repository('agSecretAudits');
9
14
  }
15
+ /** The variables named in a JSON column, such as `agRuns.teamOnlyVariables`; anything else reads as none. */
16
+ export function variableRefs(value) {
17
+ const parsed = typeof value === 'string'
18
+ ? (() => {
19
+ try {
20
+ return JSON.parse(value);
21
+ }
22
+ catch {
23
+ return null;
24
+ }
25
+ })()
26
+ : value;
27
+ if (!Array.isArray(parsed))
28
+ return [];
29
+ return parsed.flatMap((item) => {
30
+ if (!item || typeof item !== 'object')
31
+ return [];
32
+ const { scope, scopeId, name } = item;
33
+ return typeof scope === 'string' &&
34
+ typeof scopeId === 'string' &&
35
+ typeof name === 'string'
36
+ ? [{ scope, scopeId, name }]
37
+ : [];
38
+ });
39
+ }
40
+ /** Variables as a person reads them in a wait or a notice: `NPM_TOKEN (agent 42), API_KEY (workdir 7)`. */
41
+ export function describeVariables(variables) {
42
+ return variables
43
+ .map((each) => `${each.name} (${each.scope} ${each.scopeId})`)
44
+ .join(', ');
45
+ }
10
46
  /** What a variable's value is bound to: moved to another scope or name, it no longer opens. */
11
47
  export function variableAad(variable) {
12
48
  return [variable.scope, variable.scopeId, variable.name];
13
49
  }
14
- /** Why `name` and `value` cannot be stored, or nothing. */
15
- export function checkVariable(name, value, cli) {
50
+ /** Why `name` cannot be a variable's, or nothing. */
51
+ export function checkVariableName(name, cli) {
16
52
  if (!VARIABLE_NAME_PATTERN.test(name))
17
53
  throw invalid('A variable name uses upper-case letters, digits and underscores, and does not start with a digit.', { reason: 'pattern' });
18
54
  if (isReservedVariable(name, cli))
19
55
  throw invalid(`${name} is reserved.`, { reason: 'reserved' });
56
+ }
57
+ /** Why `name` and `value` cannot be stored, or nothing. */
58
+ export function checkVariable(name, value, cli) {
59
+ checkVariableName(name, cli);
20
60
  if (Buffer.byteLength(value, 'utf8') > VARIABLE_VALUE_MAX_BYTES)
21
61
  throw invalid('The value is larger than 8 KB.', { reason: 'tooLong' });
22
62
  }
@@ -41,32 +81,127 @@ export function createVariableService(deps) {
41
81
  },
42
82
  });
43
83
  const open = (record) => box.open(record.valueEncrypted, variableAad(record));
84
+ const fromRunnerOf = (conn, target) => runnerVariables(conn).findMany({
85
+ filter: { scope: target.scope, scopeId: target.scopeId },
86
+ sort: (sort) => sort.field('name').asc(),
87
+ });
88
+ /** The names of `targets` merged in order, each with the kind of its last entry. */
89
+ const merge = async (conn, targets) => {
90
+ const merged = new Map();
91
+ for (const target of targets) {
92
+ for (const record of await of(conn, target))
93
+ merged.set(record.name, { kind: 'value', target, record });
94
+ for (const record of await fromRunnerOf(conn, target))
95
+ merged.set(record.name, { kind: 'runner', target });
96
+ }
97
+ return merged;
98
+ };
99
+ const passthroughOf = async (conn, targets) => [...(await merge(conn, targets))]
100
+ .filter(([, entry]) => entry.kind === 'runner')
101
+ .map(([name]) => name)
102
+ .sort();
103
+ /** Takes a variable from the runner: replaces one with a value, keeps one already taken from it. */
104
+ const setFromRunner = async (conn, target, name, userId) => {
105
+ checkVariableName(name, cli);
106
+ const now = clock.now().toISOString();
107
+ const valued = await secrets(conn).findOne({
108
+ filter: { scope: target.scope, scopeId: target.scopeId, name },
109
+ });
110
+ if (valued)
111
+ await secrets(conn).deleteMany({ filter: { id: valued.id } });
112
+ const existing = await runnerVariables(conn).findOne({
113
+ filter: { scope: target.scope, scopeId: target.scopeId, name },
114
+ });
115
+ if (existing)
116
+ await runnerVariables(conn).updateMany({
117
+ filter: { id: existing.id },
118
+ values: { updatedById: userId, updatedAt: now },
119
+ });
120
+ else
121
+ await runnerVariables(conn).createOne({
122
+ values: {
123
+ id: ids.next(),
124
+ scope: target.scope,
125
+ scopeId: target.scopeId,
126
+ name,
127
+ createdById: userId,
128
+ updatedById: userId,
129
+ createdAt: now,
130
+ updatedAt: now,
131
+ },
132
+ });
133
+ return existing || valued ? 'changed' : 'added';
134
+ };
44
135
  return {
45
136
  async list(target) {
46
137
  const conn = tx.read();
47
138
  const records = await of(conn, target);
48
- const names = await people.names(conn, records.map((record) => record.updatedById));
49
- return records.map((record) => ({
50
- name: record.name,
51
- updatedAt: record.updatedAt,
52
- updatedById: record.updatedById,
53
- updatedByName: record.updatedById
54
- ? (names.get(record.updatedById) ?? null)
55
- : null,
56
- }));
139
+ const fromRunner = await fromRunnerOf(conn, target);
140
+ const names = await people.names(conn, [
141
+ ...records.map((record) => record.updatedById),
142
+ ...fromRunner.map((record) => record.updatedById),
143
+ ]);
144
+ const by = (id) => (id ? (names.get(id) ?? null) : null);
145
+ return [
146
+ ...records.map((record) => ({
147
+ name: record.name,
148
+ teamRunnersOnly: Boolean(record.teamRunnersOnly),
149
+ updatedAt: record.updatedAt,
150
+ updatedById: record.updatedById,
151
+ updatedByName: by(record.updatedById),
152
+ })),
153
+ ...fromRunner.map((record) => ({
154
+ name: record.name,
155
+ fromRunner: true,
156
+ updatedAt: record.updatedAt,
157
+ updatedById: record.updatedById,
158
+ updatedByName: by(record.updatedById),
159
+ })),
160
+ ].sort((a, b) => (a.name < b.name ? -1 : a.name > b.name ? 1 : 0));
57
161
  },
58
- set: (target, name, value, userId) => tx.run(async ({ conn }) => {
59
- checkVariable(name, value, cli);
60
- const sealed = box.seal(value, variableAad({ ...target, name }));
61
- const now = clock.now().toISOString();
162
+ set: (target, name, value, userId, options = {}) => tx.run(async ({ conn }) => {
163
+ if (options.fromRunner === true) {
164
+ if (value !== undefined)
165
+ throw invalid('A variable taken from the runner has no value here; leave the value out.', { reason: 'valueNotAllowed' });
166
+ if (options.teamRunnersOnly === true)
167
+ throw invalid('A variable taken from the runner never leaves the runner; it cannot be for team runners only.', { reason: 'teamRunnersOnlyNotAllowed' });
168
+ const change = await setFromRunner(conn, target, name, userId);
169
+ await audit(conn, target, { action: 'set', names: [name], userId });
170
+ await deps.onChange?.(conn, target, {
171
+ name,
172
+ change,
173
+ byUserId: userId,
174
+ });
175
+ return;
176
+ }
177
+ const taken = await runnerVariables(conn).findOne({
178
+ filter: { scope: target.scope, scopeId: target.scopeId, name },
179
+ });
180
+ if (taken && value === undefined)
181
+ throw invalid('This variable is taken from the runner; give it a value to keep one here instead.', { reason: 'valueRequired' });
62
182
  const existing = await secrets(conn).findOne({
63
183
  filter: { scope: target.scope, scopeId: target.scopeId, name },
64
184
  });
185
+ if (value === undefined && !existing)
186
+ throw invalid('A new variable needs a value.', {
187
+ reason: 'valueRequired',
188
+ });
189
+ if (value !== undefined)
190
+ checkVariable(name, value, cli);
191
+ if (taken)
192
+ await runnerVariables(conn).deleteMany({ filter: { id: taken.id } });
193
+ const sealed = value === undefined
194
+ ? undefined
195
+ : box.seal(value, variableAad({ ...target, name }));
196
+ const now = clock.now().toISOString();
65
197
  if (existing)
66
198
  await secrets(conn).updateMany({
67
199
  filter: { id: existing.id },
68
200
  values: {
69
- valueEncrypted: sealed,
201
+ ...(sealed === undefined ? {} : { valueEncrypted: sealed }),
202
+ ...(options.teamRunnersOnly === undefined
203
+ ? {}
204
+ : { teamRunnersOnly: options.teamRunnersOnly }),
70
205
  updatedById: userId,
71
206
  updatedAt: now,
72
207
  },
@@ -79,6 +214,7 @@ export function createVariableService(deps) {
79
214
  scopeId: target.scopeId,
80
215
  name,
81
216
  valueEncrypted: sealed,
217
+ teamRunnersOnly: options.teamRunnersOnly ?? false,
82
218
  createdById: userId,
83
219
  updatedById: userId,
84
220
  createdAt: now,
@@ -88,17 +224,20 @@ export function createVariableService(deps) {
88
224
  await audit(conn, target, { action: 'set', names: [name], userId });
89
225
  await deps.onChange?.(conn, target, {
90
226
  name,
91
- change: existing ? 'changed' : 'added',
227
+ change: existing || taken ? 'changed' : 'added',
92
228
  byUserId: userId,
93
229
  });
94
230
  }),
95
231
  remove: (target, name, userId) => tx.run(async ({ conn }) => {
96
- const existing = await secrets(conn).findOne({
97
- filter: { scope: target.scope, scopeId: target.scopeId, name },
98
- });
99
- if (!existing)
232
+ const filter = { scope: target.scope, scopeId: target.scopeId, name };
233
+ const existing = await secrets(conn).findOne({ filter });
234
+ const taken = await runnerVariables(conn).findOne({ filter });
235
+ if (!existing && !taken)
100
236
  throw notFound('Variable');
101
- await secrets(conn).deleteMany({ filter: { id: existing.id } });
237
+ if (existing)
238
+ await secrets(conn).deleteMany({ filter: { id: existing.id } });
239
+ if (taken)
240
+ await runnerVariables(conn).deleteMany({ filter: { id: taken.id } });
102
241
  await audit(conn, target, { action: 'delete', names: [name], userId });
103
242
  await deps.onChange?.(conn, target, {
104
243
  name,
@@ -142,21 +281,42 @@ export function createVariableService(deps) {
142
281
  }));
143
282
  },
144
283
  async clear(conn, target) {
145
- await secrets(conn).deleteMany({
146
- filter: { scope: target.scope, scopeId: target.scopeId },
147
- });
284
+ const filter = { scope: target.scope, scopeId: target.scopeId };
285
+ await secrets(conn).deleteMany({ filter });
286
+ await runnerVariables(conn).deleteMany({ filter });
148
287
  },
149
288
  async namesOf(conn, targets) {
150
- const names = new Set();
289
+ return [...(await merge(conn, targets))]
290
+ .filter(([, entry]) => entry.kind === 'value')
291
+ .map(([name]) => name)
292
+ .sort();
293
+ },
294
+ async teamOnly(conn, targets) {
295
+ const refs = [];
296
+ for (const [name, entry] of await merge(conn, targets))
297
+ if (entry.kind === 'value' && entry.record.teamRunnersOnly)
298
+ refs.push({
299
+ scope: entry.target.scope,
300
+ scopeId: entry.target.scopeId,
301
+ name,
302
+ });
303
+ return refs;
304
+ },
305
+ passthroughOf,
306
+ async holding(conn, targets) {
307
+ const held = [];
151
308
  for (const target of targets)
152
- for (const record of await of(conn, target))
153
- names.add(record.name);
154
- return [...names].sort();
309
+ if ((await secrets(conn).count({
310
+ filter: { scope: target.scope, scopeId: target.scopeId },
311
+ })) > 0)
312
+ held.push(target);
313
+ return held;
155
314
  },
156
315
  async forRun(conn, targets, delivery) {
316
+ const fromRunner = new Set(await passthroughOf(conn, targets));
157
317
  const merged = new Map();
158
318
  for (const target of targets) {
159
- const records = await of(conn, target);
319
+ const records = (await of(conn, target)).filter((record) => !fromRunner.has(record.name));
160
320
  if (records.length === 0)
161
321
  continue;
162
322
  for (const record of records)
@@ -173,6 +333,7 @@ export function createVariableService(deps) {
173
333
  async forJob(conn, refs, delivery) {
174
334
  const values = new Map();
175
335
  const byTarget = new Map();
336
+ const selected = [];
176
337
  for (const ref of refs) {
177
338
  const key = `${ref.scope}\u0000${ref.scopeId}`;
178
339
  byTarget.set(key, [...(byTarget.get(key) ?? []), ref]);
@@ -183,6 +344,16 @@ export function createVariableService(deps) {
183
344
  const records = (await of(conn, target)).filter((record) => names.has(record.name));
184
345
  if (records.length === 0)
185
346
  continue;
347
+ selected.push({ target, records });
348
+ }
349
+ if (selected.some(({ records }) => records.some((record) => record.teamRunnersOnly))) {
350
+ const runner = await runnersRepo(conn).findOne({
351
+ filter: { id: delivery.runnerId },
352
+ });
353
+ if (runner?.trust !== 'team')
354
+ throw new JobSecretsNotAllowed();
355
+ }
356
+ for (const { target, records } of selected) {
186
357
  for (const record of records)
187
358
  values.set(`${target.scope}\u0000${target.scopeId}\u0000${record.name}`, open(record));
188
359
  await audit(conn, target, {
@@ -1 +1 @@
1
- {"version":3,"file":"variable.service.js","sourceRoot":"","sources":["../../../../server/core/variables/variable.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variable.service.js","sourceRoot":"","sources":["../../../../server/core/variables/variable.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { createJobService, jobFits, type EnqueueJobInput, type JobChange, type JobRunnerReports, type JobSecretSource, type JobService, type JobServiceDeps, type JobSweepReport, } from './job.service.js';
2
2
  export { activeJobsOn } from './job.store.js';
3
3
  export { createJobKindRegistry, type JobKindRegistration, type JobKindRegistry, type JobPrepareContext, type RegisteredJobKind, } from './registry.js';
4
- export { checkSpecInput, runnerSpec, secretRefsOf, type BuildJobSpecInput, type JobEnvInput, type JobRepoInput, type JobSpecInput, type JobSpecInputs, type SecretRef, } from './spec.js';
4
+ export { checkSpecInput, JobSecretsNotAllowed, runnerSpec, secretRefsOf, type BuildJobSpecInput, type JobEnvInput, type JobRepoInput, type JobSpecInput, type JobSpecInputs, type SecretRef, } from './spec.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/jobs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,OAAO,EACP,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,cAAc,EACd,UAAU,EACV,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,SAAS,GACf,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/jobs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,OAAO,EACP,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,SAAS,GACf,MAAM,WAAW,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { createJobService, jobFits, } from './job.service.js';
2
2
  export { activeJobsOn } from './job.store.js';
3
3
  export { createJobKindRegistry, } from './registry.js';
4
- export { checkSpecInput, runnerSpec, secretRefsOf, } from './spec.js';
4
+ export { checkSpecInput, JobSecretsNotAllowed, runnerSpec, secretRefsOf, } from './spec.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/jobs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,OAAO,GAQR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,qBAAqB,GAKtB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,cAAc,EACd,UAAU,EACV,YAAY,GAOb,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/jobs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,OAAO,GAQR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,qBAAqB,GAKtB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,YAAY,GAOb,MAAM,WAAW,CAAC"}
@@ -84,6 +84,8 @@ export interface JobRunnerReports {
84
84
  /**
85
85
  * Where the stored variables a job names are opened, as the application provides it (the agents plugin's variables).
86
86
  * Each value is keyed `scope\u0000scopeId\u0000name`; a name it does not hold is left out. It records the delivery.
87
+ * Throw `JobSecretsNotAllowed` when a personal runner asks for a team-only variable: the claim rolls back and the job
88
+ * stays queued without counting a preparation failure.
87
89
  */
88
90
  export interface JobSecretSource {
89
91
  open(conn: DatabaseConnection, refs: readonly SecretRef[], delivery: {
@@ -1 +1 @@
1
- {"version":3,"file":"job.service.d.ts","sourceRoot":"","sources":["../../../server/jobs/job.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job.service.d.ts","sourceRoot":"","sources":["../../../server/jobs/job.service.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ import { asJson, cleanList, covers, stringArray, truncateBytes, } from '../kerne
23
23
  import { absentRunners } from '../runners/index.js';
24
24
  import { ACTIVE_JOB, findJobRecord, isActiveJob, isTerminalJob, jobEventsRepo, jobsRepo, lastJobSeq, requiresOf, specOf, toJob, toJobEvent, } from './job.store.js';
25
25
  import { finishJob, requeueJob } from './job.transitions.js';
26
- import { checkSpecInput, runnerSpec, secretRefsOf, timeoutSecOf, } from './spec.js';
26
+ import { checkSpecInput, JobSecretsNotAllowed, runnerSpec, secretRefsOf, timeoutSecOf, } from './spec.js';
27
27
  /** Queued jobs looked at per claim. */
28
28
  const CANDIDATES = 50;
29
29
  /** Claims whose `prepare` failed before the job fails `setupFailed`. */
@@ -187,6 +187,8 @@ export function createJobService(deps) {
187
187
  assembled = await assemble(unit, job, runner, leaseExpiresAt);
188
188
  }
189
189
  catch (error) {
190
+ if (error instanceof JobSecretsNotAllowed)
191
+ throw new NotForThisRunner();
190
192
  if (error instanceof NotForThisRunner)
191
193
  throw error;
192
194
  throw new PrepareError(error instanceof Error ? error.message : String(error), error);
@@ -1 +1 @@
1
- {"version":3,"file":"job.service.js","sourceRoot":"","sources":["../../../server/jobs/job.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job.service.js","sourceRoot":"","sources":["../../../server/jobs/job.service.ts"],"names":[],"mappings":"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"}