@detergent-software/conductor 3.0.0-dev.2 → 3.0.0-dev.21

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 (137) hide show
  1. package/CHANGELOG.md +169 -0
  2. package/README.md +158 -45
  3. package/build/brief-cli.js +1 -1
  4. package/build/brief-cli.js.map +1 -1
  5. package/build/broker-cli.js +24 -25
  6. package/build/broker-cli.js.map +1 -1
  7. package/build/broker.js +66 -92
  8. package/build/broker.js.map +1 -1
  9. package/build/claude.js +50 -7
  10. package/build/claude.js.map +1 -1
  11. package/build/cli.js +119 -54
  12. package/build/cli.js.map +1 -1
  13. package/build/clones.js +92 -0
  14. package/build/clones.js.map +1 -0
  15. package/build/code-host-cli.js +101 -26
  16. package/build/code-host-cli.js.map +1 -1
  17. package/build/code-host.js +13 -8
  18. package/build/code-host.js.map +1 -1
  19. package/build/config.js +31 -12
  20. package/build/config.js.map +1 -1
  21. package/build/console.js +40 -24
  22. package/build/console.js.map +1 -1
  23. package/build/credentials.js +26 -24
  24. package/build/credentials.js.map +1 -1
  25. package/build/daemon.js +35 -21
  26. package/build/daemon.js.map +1 -1
  27. package/build/help.js +141 -30
  28. package/build/help.js.map +1 -1
  29. package/build/host/credential-manager.js +109 -0
  30. package/build/host/credential-manager.js.map +1 -0
  31. package/build/host/keychain.js +44 -0
  32. package/build/host/keychain.js.map +1 -0
  33. package/build/host/libsecret.js +40 -0
  34. package/build/host/libsecret.js.map +1 -0
  35. package/build/host/macos-terminal.js +63 -0
  36. package/build/host/macos-terminal.js.map +1 -0
  37. package/build/host/platform.js +4 -0
  38. package/build/host/platform.js.map +1 -0
  39. package/build/host/secrets.js +46 -0
  40. package/build/host/secrets.js.map +1 -0
  41. package/build/host/shell.js +26 -0
  42. package/build/host/shell.js.map +1 -0
  43. package/build/host/terminal.js +46 -0
  44. package/build/host/terminal.js.map +1 -0
  45. package/build/host/tmux.js +39 -0
  46. package/build/host/tmux.js.map +1 -0
  47. package/build/host/windows-terminal.js +46 -0
  48. package/build/host/windows-terminal.js.map +1 -0
  49. package/build/in-process.js +6 -5
  50. package/build/in-process.js.map +1 -1
  51. package/build/inbox.js +50 -5
  52. package/build/inbox.js.map +1 -1
  53. package/build/init.js +508 -0
  54. package/build/init.js.map +1 -0
  55. package/build/lib/providers/ado/pipelines.js +102 -17
  56. package/build/lib/providers/ado/pipelines.js.map +1 -1
  57. package/build/lib/providers/ado/trigger.js +5 -0
  58. package/build/lib/providers/ado/trigger.js.map +1 -1
  59. package/build/lib/providers/github/actions.js +85 -2
  60. package/build/lib/providers/github/actions.js.map +1 -1
  61. package/build/lib/providers/index.js +3 -2
  62. package/build/lib/providers/index.js.map +1 -1
  63. package/build/lib/providers/npm/stage.js +14 -4
  64. package/build/lib/providers/npm/stage.js.map +1 -1
  65. package/build/lib/providers/timing.js +10 -0
  66. package/build/lib/providers/timing.js.map +1 -0
  67. package/build/lib/providers/verdicts/runs.js +12 -2
  68. package/build/lib/providers/verdicts/runs.js.map +1 -1
  69. package/build/local-files.js +95 -0
  70. package/build/local-files.js.map +1 -0
  71. package/build/manager.js +171 -47
  72. package/build/manager.js.map +1 -1
  73. package/build/note.js +1 -1
  74. package/build/note.js.map +1 -1
  75. package/build/npm-reads.js +323 -0
  76. package/build/npm-reads.js.map +1 -0
  77. package/build/paths.js +44 -1
  78. package/build/paths.js.map +1 -1
  79. package/build/plugin.js +10 -0
  80. package/build/plugin.js.map +1 -1
  81. package/build/profile-fields.js +149 -0
  82. package/build/profile-fields.js.map +1 -0
  83. package/build/profile-layers.js +264 -0
  84. package/build/profile-layers.js.map +1 -0
  85. package/build/profile.js +60 -38
  86. package/build/profile.js.map +1 -1
  87. package/build/project-check-cli.js +18 -10
  88. package/build/project-check-cli.js.map +1 -1
  89. package/build/project-check.js +179 -97
  90. package/build/project-check.js.map +1 -1
  91. package/build/pushover.js +5 -5
  92. package/build/pushover.js.map +1 -1
  93. package/build/registry.js +195 -36
  94. package/build/registry.js.map +1 -1
  95. package/build/rule-actions.js +3 -1
  96. package/build/rule-actions.js.map +1 -1
  97. package/build/rules-service.js +101 -44
  98. package/build/rules-service.js.map +1 -1
  99. package/build/rules.js +11 -2
  100. package/build/rules.js.map +1 -1
  101. package/build/runs.js +88 -14
  102. package/build/runs.js.map +1 -1
  103. package/build/scheduler.js +11 -1
  104. package/build/scheduler.js.map +1 -1
  105. package/build/server.js +4 -25
  106. package/build/server.js.map +1 -1
  107. package/build/spend.js +4 -0
  108. package/build/spend.js.map +1 -1
  109. package/build/store.js +82 -25
  110. package/build/store.js.map +1 -1
  111. package/build/timeline.js +104 -0
  112. package/build/timeline.js.map +1 -0
  113. package/build/tracker-reads-cli.js +4 -5
  114. package/build/tracker-reads-cli.js.map +1 -1
  115. package/build/train-cli.js +6 -5
  116. package/build/train-cli.js.map +1 -1
  117. package/build/upgrade.js +16 -1
  118. package/build/upgrade.js.map +1 -1
  119. package/build/wait.js +6 -6
  120. package/build/wait.js.map +1 -1
  121. package/build/watchers/ado.js +3 -2
  122. package/build/watchers/ado.js.map +1 -1
  123. package/build/watchers/github.js +3 -2
  124. package/build/watchers/github.js.map +1 -1
  125. package/build/watchers/npm.js +6 -4
  126. package/build/watchers/npm.js.map +1 -1
  127. package/build/worktrees.js +199 -92
  128. package/build/worktrees.js.map +1 -1
  129. package/package.json +61 -61
  130. package/plugin/skills/conductor-console/SKILL.md +3 -3
  131. package/plugin/skills/work-item/SKILL.md +8 -6
  132. package/build/checkout-sync.js +0 -249
  133. package/build/checkout-sync.js.map +0 -1
  134. package/build/credential.js +0 -66
  135. package/build/credential.js.map +0 -1
  136. package/build/tab.js +0 -32
  137. package/build/tab.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
package/build/note.js CHANGED
@@ -127,7 +127,7 @@ async function noteHere(paths, item, body, io, why) {
127
127
  if (!ITEM.test(item))
128
128
  throw new ConductorError(`"${item}" is not a tracker item, such as ATK-311`);
129
129
  const key = item.toUpperCase();
130
- const here = await checkoutProject(io.cwd, key, why, 'post it from');
130
+ const here = await checkoutProject(paths, io.cwd, key, why, 'post it from');
131
131
  if ('refusal' in here) {
132
132
  // Not this project's checkout, so not its work skill's name: the note's shape, before the
133
133
  // refusal.
package/build/note.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"note.js","sourceRoot":"","sources":["../src/note.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"note.js","sourceRoot":"","sources":["../src/note.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,323 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import http from 'node:http';
3
+ import https from 'node:https';
4
+ import { homedir } from 'node:os';
5
+ import { Readable } from 'node:stream';
6
+ import { z } from 'zod';
7
+ import { ProviderError, registryFor } from "./lib/providers/index.js";
8
+ import { outputOf, run } from "./run.js";
9
+ const npmConfig = z.record(z.string(), z.unknown());
10
+ const REDIRECTS = new Set([301, 302, 303, 307, 308]);
11
+ // The agent settings of a read with a credential but no proxy, CA or TLS change.
12
+ const DIRECT = { noProxy: [], proxy: {}, rejectUnauthorized: true };
13
+ // The .npmrc keys npm authorizes a registry with (npm-registry-fetch's auth.js): `//host/path/:<kind>`.
14
+ const CREDENTIAL_KEY = /^\/\/.+:(?:_auth|_authToken|_password|username)$/;
15
+ // npm's ${VAR} in an .npmrc key or value (@npmcli/config's env-replace.js): an unset VAR stays as
16
+ // written, ${VAR?} is empty when unset, and a backslash escapes it.
17
+ const ENV_EXPR = /(?<!\\)(\\*)\$\{([^${}?]+)(\?)?\}/g;
18
+ // How long a failed load of npm's settings stands before a read asks npm again: a lasting failure
19
+ // (npm off the daemon's PATH) shouldn't start a shell on every read.
20
+ const RETRY_LOAD_MS = 60_000;
21
+ // A fetch over Node's http and https agents, which route through a proxy (a CONNECT tunnel for
22
+ // https) and take a CA; Node's own fetch takes neither from npm's settings. Enough of fetch for
23
+ // npmStage: method, headers, signal, and a streamed body. Each hop sends the credential
24
+ // hopAuthorization gives it.
25
+ export function agentFetch(settings, authorization = () => undefined) {
26
+ const agents = new Map();
27
+ const agentFor = (url) => {
28
+ const proxy = proxyFor(settings, url);
29
+ const key = `${url.protocol} ${proxy ?? ''}`;
30
+ let agent = agents.get(key);
31
+ if (!agent) {
32
+ agent =
33
+ url.protocol === 'https:'
34
+ ? new https.Agent({
35
+ ca: settings.ca,
36
+ proxyEnv: proxy ? { HTTPS_PROXY: proxy } : undefined,
37
+ rejectUnauthorized: settings.rejectUnauthorized,
38
+ })
39
+ : new http.Agent({ proxyEnv: proxy ? { HTTP_PROXY: proxy } : undefined });
40
+ agents.set(key, agent);
41
+ }
42
+ return agent;
43
+ };
44
+ // Follows a redirect as fetch does (a mirror may answer with its canonical path), up to 5 times.
45
+ const send = (url, init, redirects, authFor) => {
46
+ const secure = url.protocol === 'https:';
47
+ const headers = new Headers(init?.headers);
48
+ const auth = authFor(url);
49
+ if (auth)
50
+ headers.set('authorization', auth);
51
+ const options = {
52
+ agent: agentFor(url),
53
+ headers: Object.fromEntries(headers),
54
+ method: init?.method ?? 'GET',
55
+ signal: init?.signal ?? undefined,
56
+ };
57
+ return new Promise((resolve, reject) => {
58
+ const answer = (response) => {
59
+ const status = response.statusCode ?? 0;
60
+ const { location } = response.headers;
61
+ if (REDIRECTS.has(status) && location) {
62
+ response.resume();
63
+ if (redirects >= 5) {
64
+ reject(new TypeError(`more than 5 redirects from ${url.origin}`));
65
+ return;
66
+ }
67
+ // A caller's own authorization stays on its origin, as fetch keeps it.
68
+ const next = new URL(location, url);
69
+ const kept = new Headers(init?.headers);
70
+ kept.delete('authorization');
71
+ resolve(send(next, next.origin === url.origin ? init : { ...init, headers: kept }, redirects + 1, authFor));
72
+ return;
73
+ }
74
+ const headers = new Headers();
75
+ for (const [name, value] of Object.entries(response.headers)) {
76
+ for (const one of [value ?? []].flat())
77
+ headers.append(name, one);
78
+ }
79
+ if (status === 204 || status === 205 || status === 304) {
80
+ response.resume();
81
+ resolve(new Response(null, { headers, status }));
82
+ return;
83
+ }
84
+ resolve(new Response(Readable.toWeb(response), { headers, status }));
85
+ };
86
+ const request = secure ? https.request(url, options, answer) : http.request(url, options, answer);
87
+ request.on('error', reject);
88
+ request.end();
89
+ });
90
+ };
91
+ return (input, init) => {
92
+ const url = new URL(input instanceof Request ? input.url : input);
93
+ return send(url, init, 0, hopAuthorization(authorization, url));
94
+ };
95
+ }
96
+ // npm's proxy, CA and TLS settings for the reads, or null when plain fetch does. The proxy is the one
97
+ // npm picks (@npmcli/agent's getProxy): https-proxy or proxy from its settings, for either protocol;
98
+ // with neither, from the environment (either case), https_proxy for an https registry and
99
+ // https_proxy, http_proxy or proxy for an http one. noproxy, else NO_PROXY, names the hosts it skips.
100
+ export function agentSettings(config, env, readFile = (path) => readFileSync(path, 'utf8')) {
101
+ const configured = text(config['https-proxy'], config.proxy);
102
+ const forHttps = configured ?? text(env.https_proxy, env.HTTPS_PROXY);
103
+ const forHttp = configured ?? text(env.https_proxy, env.HTTPS_PROXY, env.http_proxy, env.HTTP_PROXY, env.proxy, env.PROXY);
104
+ const listed = [config.noproxy].flat().filter((entry) => typeof entry === 'string' && entry !== '');
105
+ const noProxy = (listed.length > 0 ? listed.join(',') : (text(env.no_proxy, env.NO_PROXY) ?? ''))
106
+ .split(',')
107
+ .map((entry) => entry.trim())
108
+ .filter(Boolean);
109
+ const ca = caOf(config, readFile);
110
+ const rejectUnauthorized = config['strict-ssl'] !== false;
111
+ if (!forHttps && !forHttp && !ca && rejectUnauthorized)
112
+ return null;
113
+ return {
114
+ ...(ca ? { ca } : {}),
115
+ noProxy,
116
+ proxy: { ...(forHttp ? { http: forHttp } : {}), ...(forHttps ? { https: forHttps } : {}) },
117
+ rejectUnauthorized,
118
+ };
119
+ }
120
+ // The credential each hop of a read that starts at `start` sends: npm's for the hop's own URL, else,
121
+ // on the start's origin, the start's, as npm falls back to the registry's. A redirect to another
122
+ // origin carries none of the start's, and a hop from https down to http carries none at all.
123
+ export function hopAuthorization(authorization, start) {
124
+ const first = authorization(start);
125
+ return (hop) => {
126
+ if (start.protocol === 'https:' && hop.protocol === 'http:')
127
+ return undefined;
128
+ return authorization(hop) ?? (hop.origin === start.origin ? first : undefined);
129
+ };
130
+ }
131
+ // The settings `npm install --global` reads (`conduct upgrade` installs that way): --global skips a
132
+ // project .npmrc, and the home folder keeps the caller's checkout out of it. npm leaves its tokens
133
+ // out of the list: npmCredentials reads them.
134
+ export async function loadNpmConfig() {
135
+ const result = await run('npm', ['config', 'list', '--json', '--global'], {
136
+ cwd: homedir(),
137
+ shell: process.platform === 'win32',
138
+ timeoutMs: 60_000,
139
+ });
140
+ if (result.code !== 0) {
141
+ throw new ProviderError(`could not read npm's settings (npm config list): ${outputOf(result, 300)}`, {
142
+ transient: true,
143
+ });
144
+ }
145
+ try {
146
+ return npmConfig.parse(JSON.parse(result.stdout));
147
+ }
148
+ catch {
149
+ throw new ProviderError("npm config list --json answered something other than npm's settings");
150
+ }
151
+ }
152
+ // npm's registry credentials, which `npm config list` leaves out: the `//host/path/:` keys of the
153
+ // .npmrc files it names, the user's over the global one (a global install reads no project
154
+ // .npmrc), or none when there are none. A file that isn't there has none; one that can't be read
155
+ // fails the reads. A URL takes the key npm-registry-fetch's auth.js picks: from `//host/path`,
156
+ // strip a segment or a slash at a time to the first with a token, an _auth, or a username and
157
+ // _password. The values stay in here: no message, event or log carries them. They are read once,
158
+ // with the rest of npm's settings: a new token reaches a running daemon on its next start.
159
+ export function npmCredentials(config, env, readFile = (path) => readFileSync(path, 'utf8')) {
160
+ const keys = new Map();
161
+ for (const setting of ['globalconfig', 'userconfig']) {
162
+ const path = text(config[setting]);
163
+ const rc = path ? readOptional(setting, path, readFile) : undefined;
164
+ for (const [key, value] of rc ? credentialsIn(rc, env) : [])
165
+ keys.set(key, value);
166
+ }
167
+ if (keys.size === 0)
168
+ return undefined;
169
+ return (url) => {
170
+ let key = `//${url.host}${url.pathname}`;
171
+ while (key.length > '//'.length) {
172
+ const token = keys.get(`${key}:_authToken`);
173
+ if (token)
174
+ return `Bearer ${token}`;
175
+ const auth = keys.get(`${key}:_auth`);
176
+ if (auth)
177
+ return `Basic ${auth}`;
178
+ const username = keys.get(`${key}:username`);
179
+ const password = keys.get(`${key}:_password`);
180
+ if (username && password) {
181
+ const plain = Buffer.from(password, 'base64').toString('utf8');
182
+ return `Basic ${Buffer.from(`${username}:${plain}`, 'utf8').toString('base64')}`;
183
+ }
184
+ key = key.replace(/(?:[^/]+|\/)$/, '');
185
+ }
186
+ return undefined;
187
+ };
188
+ }
189
+ // The reads npmStage takes, from npm's settings, loaded once on the first read. A failed load fails
190
+ // the reads with npm's reason, and a read a minute later loads again; a changed setting reaches a
191
+ // running daemon on its next start.
192
+ export function npmReads({ env = process.env, load = loadNpmConfig, now = () => Date.now(), readFile, } = {}) {
193
+ let loading = null;
194
+ let failed = null;
195
+ const settings = () => {
196
+ if (loading)
197
+ return loading;
198
+ if (failed && now() - failed.at < RETRY_LOAD_MS)
199
+ return failed.settings;
200
+ const current = load().then((config) => {
201
+ const agent = agentSettings(config, env, readFile);
202
+ const authorization = npmCredentials(config, env, readFile);
203
+ const fetcher = agent || authorization ? agentFetch(agent ?? DIRECT, authorization) : globalThis.fetch;
204
+ return { config, fetch: fetcher };
205
+ });
206
+ loading = current;
207
+ current.catch(() => {
208
+ if (loading !== current)
209
+ return;
210
+ loading = null;
211
+ failed = { at: now(), settings: current };
212
+ });
213
+ return current;
214
+ };
215
+ return {
216
+ fetch: async (input, init) => (await settings()).fetch(input, init),
217
+ registry: async (pkg) => registryFor((await settings()).config, pkg),
218
+ };
219
+ }
220
+ let shared = null;
221
+ // The process's reads from npm's settings, shared so npm is asked for them once. The default of
222
+ // every npmStage the conductor builds; a test passes its own fetch (npmjs) or reads.
223
+ export function sharedNpmReads() {
224
+ shared ??= npmReads();
225
+ return shared;
226
+ }
227
+ // npm's CA: cafile's certificates, else ca. Either replaces Node's own roots, as it does for npm. A
228
+ // cafile that isn't there is no CA, as npm takes it; one that can't be read fails the reads.
229
+ function caOf(config, readFile) {
230
+ const cafile = text(config.cafile);
231
+ if (cafile)
232
+ return readOptional('cafile', cafile, readFile);
233
+ const ca = [config.ca].flat().filter((entry) => typeof entry === 'string' && entry !== '');
234
+ if (ca.length === 0)
235
+ return undefined;
236
+ return ca.length === 1 ? ca[0] : ca;
237
+ }
238
+ // The credential keys of an .npmrc, with npm's ${VAR} expanded in keys and values: ini's
239
+ // `key = value` lines above the first [section] line, as npm reads them.
240
+ function credentialsIn(rc, env) {
241
+ const found = [];
242
+ for (const raw of rc.split(/[\r\n]+/)) {
243
+ if (/^\[[^\]]*\]\s*$/.test(raw))
244
+ break;
245
+ const line = raw.trim();
246
+ const equals = line.indexOf('=');
247
+ if (line.startsWith(';') || line.startsWith('#') || equals < 0)
248
+ continue;
249
+ const key = envReplace(iniValue(line.slice(0, equals)), env);
250
+ if (CREDENTIAL_KEY.test(key))
251
+ found.push([key, envReplace(iniValue(line.slice(equals + 1)), env)]);
252
+ }
253
+ return found;
254
+ }
255
+ function envReplace(value, env) {
256
+ return value.replace(ENV_EXPR, (match, escapes, name, optional) => {
257
+ if (escapes.length % 2 === 1)
258
+ return match.slice((escapes.length + 1) / 2);
259
+ return escapes.slice(escapes.length / 2) + (env[name] ?? (optional ? '' : `\${${name}}`));
260
+ });
261
+ }
262
+ // An ini value as the ini package's unsafe() reads it: a quoted one as JSON (a single-quoted one
263
+ // without its quotes first), kept as it is when that isn't JSON; else up to an unescaped ; or #,
264
+ // with \; \# and \\ unescaped.
265
+ function iniValue(raw) {
266
+ const value = raw.trim();
267
+ if ((value.startsWith('"') && value.endsWith('"')) || (value.startsWith("'") && value.endsWith("'"))) {
268
+ const json = value.startsWith("'") ? value.slice(1, -1) : value;
269
+ try {
270
+ const parsed = JSON.parse(json);
271
+ return typeof parsed === 'string' ? parsed : JSON.stringify(parsed);
272
+ }
273
+ catch {
274
+ return json;
275
+ }
276
+ }
277
+ let plain = '';
278
+ let escaped = false;
279
+ for (const char of value) {
280
+ if (escaped) {
281
+ plain += '\\;#'.includes(char) ? char : `\\${char}`;
282
+ escaped = false;
283
+ }
284
+ else if (char === '\\')
285
+ escaped = true;
286
+ else if (char === ';' || char === '#')
287
+ break;
288
+ else
289
+ plain += char;
290
+ }
291
+ return (escaped ? `${plain}\\` : plain).trim();
292
+ }
293
+ // npm's proxy for a registry URL, or none when noProxy names its host or a domain above it
294
+ // (@npmcli/agent's isNoProxy: `acme.test` covers `npm.acme.test`).
295
+ function proxyFor(settings, url) {
296
+ const host = url.hostname.split('.').reverse();
297
+ const skipped = settings.noProxy.some((entry) => {
298
+ const segments = entry.split('.').filter(Boolean).reverse();
299
+ return segments.length > 0 && segments.every((segment, i) => host[i] === segment);
300
+ });
301
+ if (skipped)
302
+ return undefined;
303
+ return url.protocol === 'https:' ? settings.proxy.https : settings.proxy.http;
304
+ }
305
+ // One of npm's settings files, or none when it isn't there, as npm takes it; one that can't be
306
+ // read fails the reads.
307
+ function readOptional(setting, path, readFile) {
308
+ try {
309
+ return readFile(path);
310
+ }
311
+ catch (error) {
312
+ if (!(error instanceof Error))
313
+ throw error;
314
+ if ('code' in error && error.code === 'ENOENT')
315
+ return undefined;
316
+ throw new ProviderError(`could not read npm's ${setting} ${path}: ${error.message}`);
317
+ }
318
+ }
319
+ // The first value that is a string with something in it.
320
+ function text(...values) {
321
+ return values.find((value) => typeof value === 'string' && value !== '');
322
+ }
323
+ //# sourceMappingURL=npm-reads.js.map