@detergent-software/conductor 3.0.0-dev.13 → 3.0.0-dev.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/README.md +40 -21
- package/build/brief-cli.js +1 -1
- package/build/brief-cli.js.map +1 -1
- package/build/broker-cli.js +7 -6
- package/build/broker-cli.js.map +1 -1
- package/build/cli.js +35 -15
- package/build/cli.js.map +1 -1
- package/build/clones.js +92 -0
- package/build/clones.js.map +1 -0
- package/build/code-host-cli.js +17 -18
- package/build/code-host-cli.js.map +1 -1
- package/build/config.js +5 -7
- package/build/config.js.map +1 -1
- package/build/daemon.js +16 -17
- package/build/daemon.js.map +1 -1
- package/build/help.js +36 -10
- package/build/help.js.map +1 -1
- package/build/in-process.js +5 -4
- package/build/in-process.js.map +1 -1
- package/build/inbox.js +14 -4
- package/build/inbox.js.map +1 -1
- package/build/manager.js +42 -31
- package/build/manager.js.map +1 -1
- package/build/note.js +1 -1
- package/build/note.js.map +1 -1
- package/build/paths.js +44 -1
- package/build/paths.js.map +1 -1
- package/build/profile-fields.js +19 -7
- package/build/profile-fields.js.map +1 -1
- package/build/profile-layers.js +264 -0
- package/build/profile-layers.js.map +1 -0
- package/build/profile.js +3 -18
- package/build/profile.js.map +1 -1
- package/build/project-check-cli.js +2 -1
- package/build/project-check-cli.js.map +1 -1
- package/build/project-check.js +97 -81
- package/build/project-check.js.map +1 -1
- package/build/registry.js +195 -36
- package/build/registry.js.map +1 -1
- package/build/rules-service.js +80 -41
- package/build/rules-service.js.map +1 -1
- package/build/rules.js +1 -1
- package/build/rules.js.map +1 -1
- package/build/server.js +3 -5
- package/build/server.js.map +1 -1
- package/build/store.js +46 -15
- package/build/store.js.map +1 -1
- package/build/tracker-reads-cli.js +4 -3
- package/build/tracker-reads-cli.js.map +1 -1
- package/build/train-cli.js +6 -5
- package/build/train-cli.js.map +1 -1
- package/build/wait.js +6 -6
- package/build/wait.js.map +1 -1
- package/build/worktrees.js +53 -90
- package/build/worktrees.js.map +1 -1
- package/package.json +1 -1
- package/plugin/skills/conductor-console/SKILL.md +1 -1
- package/plugin/skills/work-item/SKILL.md +1 -1
- package/build/checkout-sync.js +0 -249
- package/build/checkout-sync.js.map +0 -1
package/build/profile-fields.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { lt, valid } from 'semver';
|
|
1
|
+
import { gt, lt, valid } from 'semver';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { parseJsonc } from "./jsonc.js";
|
|
4
4
|
// The first conductor that reads protocol 2: one older refuses the profile on `protocol` first, so
|
|
@@ -88,10 +88,8 @@ export const FIELD_SINCE = {
|
|
|
88
88
|
workers: PROTOCOL_2,
|
|
89
89
|
'workers.tab': PROTOCOL_2,
|
|
90
90
|
};
|
|
91
|
-
//
|
|
92
|
-
|
|
93
|
-
// conductor test holds ATK's profile to it, so a PR that writes a new field raises the minimum too.
|
|
94
|
-
export function minimumProblems(text, source, since = FIELD_SINCE) {
|
|
91
|
+
// minimumProblems with the version that clears them, for `conduct project check`'s fix (ATK-580).
|
|
92
|
+
export function minimumCheck(text, source, since = FIELD_SINCE) {
|
|
95
93
|
const profile = parseJsonc(text, z.unknown(), source);
|
|
96
94
|
const conductor = typeof profile === 'object' && profile !== null && 'conductor' in profile ? profile.conductor : undefined;
|
|
97
95
|
const minimum = typeof conductor === 'string' ? valid(conductor) : null;
|
|
@@ -106,14 +104,28 @@ export function minimumProblems(text, source, since = FIELD_SINCE) {
|
|
|
106
104
|
for (let dot = path.indexOf('.'); dot !== -1; dot = path.indexOf('.', dot + 1))
|
|
107
105
|
parents.add(path.slice(0, dot));
|
|
108
106
|
const problems = [];
|
|
107
|
+
let needs = null;
|
|
109
108
|
for (const path of new Set(writtenFields(profile, parents))) {
|
|
110
109
|
const version = since[path];
|
|
111
110
|
if (version === undefined)
|
|
112
111
|
problems.push(`${path}: no conductor version recorded for it in profile-fields.ts`);
|
|
113
|
-
else if (lt(minimum ?? PROTOCOL_2, version))
|
|
112
|
+
else if (lt(minimum ?? PROTOCOL_2, version)) {
|
|
114
113
|
problems.push(`${path}: needs conductor ${version} or newer; ${theirs}`);
|
|
114
|
+
if (needs === null || gt(version, needs))
|
|
115
|
+
needs = version;
|
|
116
|
+
}
|
|
115
117
|
}
|
|
116
|
-
|
|
118
|
+
// Raising the minimum writes `conductor`, so the version also covers the conductor that reads it.
|
|
119
|
+
const key = since.conductor;
|
|
120
|
+
if (needs !== null && key !== undefined && gt(key, needs))
|
|
121
|
+
needs = key;
|
|
122
|
+
return { needs, problems };
|
|
123
|
+
}
|
|
124
|
+
// Where a profile's `conductor` minimum is below a field it writes, one line each: a field newer
|
|
125
|
+
// than the minimum, or than PROTOCOL_2 when it sets none, and a field with no recorded version. A
|
|
126
|
+
// conductor test holds ATK's profile to it, so a PR that writes a new field raises the minimum too.
|
|
127
|
+
export function minimumProblems(text, source, since = FIELD_SINCE) {
|
|
128
|
+
return minimumCheck(text, source, since).problems;
|
|
117
129
|
}
|
|
118
130
|
// The fields a profile writes, by their paths in FIELD_SINCE, in the order it writes them. Fields
|
|
119
131
|
// a default fills in aren't written, so they need nothing. It looks inside a key only when it is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-fields.js","sourceRoot":"","sources":["../src/profile-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"profile-fields.js","sourceRoot":"","sources":["../src/profile-fields.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import { spawnSync } from 'node:child_process';
|
|
2
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
import { lt, valid } from 'semver';
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
import { ConductorError, isMissing } from "./errors.js";
|
|
7
|
+
import { issueLines, parseJsonc } from "./jsonc.js";
|
|
8
|
+
import { packageInfo } from "./package-info.js";
|
|
9
|
+
import { PROJECT_NAME, projectOfPath, projectPaths } from "./paths.js";
|
|
10
|
+
import { PROFILE_FILE, profileSchema, ProfileTooNewError } from "./profile.js";
|
|
11
|
+
import { PROTOCOL } from "./protocol.js";
|
|
12
|
+
// A project's profile in layers (design note v2, section 7): the machine's
|
|
13
|
+
// <home>/projects/<name>.json over the repo's optional .claude/conductor.json. Objects merge key by
|
|
14
|
+
// key with the machine winning, arrays are replaced whole, and `rules` stack: the machine's first,
|
|
15
|
+
// so one of its rules shadows a repo rule with the same id. The merge runs on the files as written,
|
|
16
|
+
// before the schema reads them, so a machine file beside a repo profile can be partial.
|
|
17
|
+
export const LAYERS = ['machine', 'repo'];
|
|
18
|
+
export const profileSourcesSchema = z.object({
|
|
19
|
+
// Each field's source by its dotted path, an array counting as one value; `default` when neither
|
|
20
|
+
// file writes it. `rules` is listed rule by rule instead.
|
|
21
|
+
fields: z.record(z.string(), z.enum(['default', ...LAYERS])),
|
|
22
|
+
// The machine profile, when there is one.
|
|
23
|
+
machine: z.string().nullable(),
|
|
24
|
+
// Where the repo layer was read, when there is one: `.claude/conductor.json at origin/<base>`.
|
|
25
|
+
repo: z.string().nullable(),
|
|
26
|
+
// The layer of each rule of the profile's `rules`, in order.
|
|
27
|
+
rules: z.array(z.enum(LAYERS)),
|
|
28
|
+
});
|
|
29
|
+
export const gitSync = (args, cwd) => {
|
|
30
|
+
const result = spawnSync('git', args, { cwd, encoding: 'utf8', timeout: 30_000, windowsHide: true });
|
|
31
|
+
return {
|
|
32
|
+
code: result.status ?? 1,
|
|
33
|
+
stderr: result.stderr ?? (result.error ? String(result.error) : ''),
|
|
34
|
+
stdout: result.stdout ?? '',
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
// The repo layer's path inside a commit: git spells it with forward slashes on every platform.
|
|
38
|
+
const PROFILE_IN_GIT = '.claude/conductor.json';
|
|
39
|
+
const rawSchema = z.record(z.string(), z.unknown());
|
|
40
|
+
// The profile the worker verbs read where they run, without the daemon: the checkout's own
|
|
41
|
+
// .claude/conductor.json (the branch's, as a worker's change to it would be) under the project's
|
|
42
|
+
// machine file. The project is the one whose folder the checkout is in (<home>/projects/<name>/…),
|
|
43
|
+
// else the one its own profile names, so a person's worktree of their own checkout reads too.
|
|
44
|
+
// Null when neither layer exists: no project's checkout.
|
|
45
|
+
export function checkoutProfile(paths, checkout) {
|
|
46
|
+
const repo = readLayer(join(checkout, PROFILE_FILE));
|
|
47
|
+
const name = projectOfPath(paths, checkout) ?? (typeof repo?.raw.name === 'string' ? repo.raw.name : null);
|
|
48
|
+
// A name the schema will refuse names no machine file either.
|
|
49
|
+
const machine = name !== null && PROJECT_NAME.test(name) ? readLayer(projectPaths(paths, name).profile) : null;
|
|
50
|
+
if (name === null || (machine === null && repo === null))
|
|
51
|
+
return null;
|
|
52
|
+
return layerProfile(name, { machine, repo });
|
|
53
|
+
}
|
|
54
|
+
// The layers merged and read: each layer's `conductor` minimum first, then the protocol, then the
|
|
55
|
+
// schema, so a profile written for another version gets one clear message. `name` is the project's
|
|
56
|
+
// registered name, which a machine file may repeat but not change.
|
|
57
|
+
export function layerProfile(name, layers, running) {
|
|
58
|
+
const { machine, repo } = layers;
|
|
59
|
+
const present = [machine, repo].filter((l) => l !== null);
|
|
60
|
+
const source = present.map((l) => l.label).join(' over ');
|
|
61
|
+
if (machine !== null && machine.raw.name !== undefined && machine.raw.name !== name) {
|
|
62
|
+
throw new ConductorError(`${machine.label} renames the project`, [
|
|
63
|
+
`name: ${JSON.stringify(machine.raw.name)} is not "${name}", the name its file and folder give it; drop it, or put "${name}" back`,
|
|
64
|
+
]);
|
|
65
|
+
}
|
|
66
|
+
for (const layer of present) {
|
|
67
|
+
const minimum = typeof layer.raw.conductor === 'string' ? valid(layer.raw.conductor) : null;
|
|
68
|
+
if (minimum === null)
|
|
69
|
+
continue;
|
|
70
|
+
const version = running ?? packageInfo().version;
|
|
71
|
+
if (lt(version, minimum))
|
|
72
|
+
throw new ProfileTooNewError(layer.label, minimum, version);
|
|
73
|
+
}
|
|
74
|
+
const merged = mergeLayers(machine?.raw ?? {}, repo?.raw ?? {});
|
|
75
|
+
merged.name = name;
|
|
76
|
+
if (merged.protocol !== PROTOCOL) {
|
|
77
|
+
throw new ConductorError(`${source} is invalid`, [
|
|
78
|
+
`protocol: ${JSON.stringify(merged.protocol ?? null)} is not supported; this conductor speaks protocol ${PROTOCOL}`,
|
|
79
|
+
]);
|
|
80
|
+
}
|
|
81
|
+
const parsed = profileSchema.safeParse(merged);
|
|
82
|
+
if (!parsed.success)
|
|
83
|
+
throw new ConductorError(`${source} is invalid`, issueLines(parsed.error));
|
|
84
|
+
const machineRules = Array.isArray(machine?.raw.rules) ? machine.raw.rules.length : 0;
|
|
85
|
+
return {
|
|
86
|
+
layers,
|
|
87
|
+
profile: parsed.data,
|
|
88
|
+
sources: {
|
|
89
|
+
fields: fieldSources(parsed.data, machine?.raw ?? null, repo?.raw ?? null),
|
|
90
|
+
machine: machine?.label ?? null,
|
|
91
|
+
repo: repo?.label ?? null,
|
|
92
|
+
rules: parsed.data.rules.map((_rule, i) => (i < machineRules ? 'machine' : 'repo')),
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
// The repo layer over which the machine layer goes, key by key; `rules` stack, the machine's first.
|
|
97
|
+
export function mergeLayers(machine, repo) {
|
|
98
|
+
const merged = mergeValue(repo, machine);
|
|
99
|
+
if (!isRecord(merged))
|
|
100
|
+
return {};
|
|
101
|
+
const rules = [...listOf(machine.rules), ...listOf(repo.rules)];
|
|
102
|
+
if (machine.rules !== undefined || repo.rules !== undefined)
|
|
103
|
+
merged.rules = rules;
|
|
104
|
+
return merged;
|
|
105
|
+
}
|
|
106
|
+
// The profile of the checkout a verb runs in, as checkoutProfile reads it, under the conductor home
|
|
107
|
+
// `paths` names. Throws a ConductorError when it is no project's checkout or the profile doesn't read.
|
|
108
|
+
export function profileHere(checkout, paths) {
|
|
109
|
+
const layered = checkoutProfile(paths, checkout);
|
|
110
|
+
if (layered === null) {
|
|
111
|
+
throw new ConductorError(`no ${PROFILE_FILE} in ${checkout}`, [
|
|
112
|
+
"run it in a project's worktree or checkout; a project with no committed profile keeps it in ~/.conductor/projects/<name>.json",
|
|
113
|
+
]);
|
|
114
|
+
}
|
|
115
|
+
return layered.profile;
|
|
116
|
+
}
|
|
117
|
+
// `conduct profile <name>`: the files, each field with its value and source, then the rules in the
|
|
118
|
+
// order they are checked, each with its layer.
|
|
119
|
+
export function profileLines(name, { profile, sources }) {
|
|
120
|
+
const rows = Object.keys(sources.fields)
|
|
121
|
+
.sort()
|
|
122
|
+
.map((path) => [path, show(valueAt(profile, path)), sources.fields[path] ?? 'default']);
|
|
123
|
+
const width = Math.max(0, ...rows.map(([path]) => path.length));
|
|
124
|
+
const lines = [
|
|
125
|
+
`profile ${name}`,
|
|
126
|
+
` machine: ${sources.machine ?? '(no machine profile)'}`,
|
|
127
|
+
` repo: ${sources.repo ?? '(no repo profile)'}`,
|
|
128
|
+
'',
|
|
129
|
+
...rows.map(([path, value, source]) => ` ${path.padEnd(width)} ${source.padEnd(7)} ${value}`),
|
|
130
|
+
];
|
|
131
|
+
if (profile.rules.length > 0) {
|
|
132
|
+
lines.push('', "rules (the machine's first: a rule shadows a later one with its id):");
|
|
133
|
+
profile.rules.forEach((rule, i) => {
|
|
134
|
+
const does = typeof rule.do === 'string' ? rule.do : rule.do.join('; ');
|
|
135
|
+
const when = rule.when === undefined ? '' : `when ${rule.when} → `;
|
|
136
|
+
lines.push(` ${(sources.rules[i] ?? 'repo').padEnd(7)} ${rule.id ?? `#${i + 1}`}: ${when}${does}`);
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
return lines;
|
|
140
|
+
}
|
|
141
|
+
// The profile a daemon-owned clone conducts: the machine file over .claude/conductor.json at
|
|
142
|
+
// origin/<base> in <home>/projects/<name>/repo. The base is the machine's baseBranch, else
|
|
143
|
+
// origin/HEAD's branch; when the repo's file there names another baseBranch, the file is read once
|
|
144
|
+
// more at that one. `running` is this conductor's version, for the layers' `conductor` minimums.
|
|
145
|
+
export function projectProfile(paths, name, git = gitSync, running) {
|
|
146
|
+
const { clone, profile: file } = projectPaths(paths, name);
|
|
147
|
+
if (!existsSync(join(clone, '.git')))
|
|
148
|
+
throw new ConductorError(`${name} has no clone at ${clone}`, ['add it with `conduct project add <url | path>`']);
|
|
149
|
+
const machine = readLayer(file);
|
|
150
|
+
const machineBase = typeof machine?.raw.baseBranch === 'string' ? machine.raw.baseBranch : null;
|
|
151
|
+
let base = machineBase ?? originHead(git, clone);
|
|
152
|
+
let repo = repoLayerAt(git, clone, base);
|
|
153
|
+
const named = typeof repo?.raw.baseBranch === 'string' ? repo.raw.baseBranch : null;
|
|
154
|
+
if (machineBase === null && named !== null && named !== base) {
|
|
155
|
+
base = named;
|
|
156
|
+
repo = repoLayerAt(git, clone, base);
|
|
157
|
+
}
|
|
158
|
+
if (machine === null && repo === null) {
|
|
159
|
+
throw new ConductorError(`${name} has no profile`, [
|
|
160
|
+
`neither ${file} nor ${PROFILE_IN_GIT} at origin/${base} in ${clone}`,
|
|
161
|
+
`write ${file} (a whole profile), or commit ${PROFILE_IN_GIT} to the repo`,
|
|
162
|
+
]);
|
|
163
|
+
}
|
|
164
|
+
return layerProfile(name, { machine, repo }, running);
|
|
165
|
+
}
|
|
166
|
+
// A profile file's text as a layer. Throws a ConductorError naming the file when it isn't a JSONC
|
|
167
|
+
// object.
|
|
168
|
+
export function rawLayer(text, label) {
|
|
169
|
+
return { label, raw: parseJsonc(text, rawSchema, label) };
|
|
170
|
+
}
|
|
171
|
+
// A profile file as a layer; null when there is no file.
|
|
172
|
+
export function readLayer(file) {
|
|
173
|
+
let text;
|
|
174
|
+
try {
|
|
175
|
+
text = readFileSync(file, 'utf8');
|
|
176
|
+
}
|
|
177
|
+
catch (error) {
|
|
178
|
+
if (isMissing(error))
|
|
179
|
+
return null;
|
|
180
|
+
throw new ConductorError(`could not read ${file}`, [String(error)]);
|
|
181
|
+
}
|
|
182
|
+
return rawLayer(text, file);
|
|
183
|
+
}
|
|
184
|
+
// .claude/conductor.json at origin/<base> in a clone, or null when that commit has none.
|
|
185
|
+
export function repoLayerAt(git, clone, base) {
|
|
186
|
+
const ref = `origin/${base}`;
|
|
187
|
+
if (git(['rev-parse', '--verify', '--quiet', `${ref}^{commit}`], clone).code !== 0) {
|
|
188
|
+
throw new ConductorError(`${clone} has no ${ref}`, [
|
|
189
|
+
`check baseBranch ("${base}"); the conductor fetches the clone every few minutes`,
|
|
190
|
+
]);
|
|
191
|
+
}
|
|
192
|
+
const spec = `${ref}:${PROFILE_IN_GIT}`;
|
|
193
|
+
if (git(['cat-file', '-e', spec], clone).code !== 0)
|
|
194
|
+
return null;
|
|
195
|
+
const shown = git(['show', spec], clone);
|
|
196
|
+
if (shown.code !== 0)
|
|
197
|
+
throw new ConductorError(`git show ${spec} failed in ${clone}`, [shown.stderr.trim()]);
|
|
198
|
+
return rawLayer(shown.stdout, `${PROFILE_IN_GIT} at ${ref} in ${clone}`);
|
|
199
|
+
}
|
|
200
|
+
// Each field's source, by its dotted path in the profile as read: the machine's when its file
|
|
201
|
+
// writes the field, else the repo's, else the default's. Arrays and `rules` count as one value;
|
|
202
|
+
// `name` is the registration's, which only a repo file of the same name can claim.
|
|
203
|
+
function fieldSources(profile, machine, repo) {
|
|
204
|
+
const fields = {};
|
|
205
|
+
const walk = (value, path) => {
|
|
206
|
+
if (isRecord(value) && Object.keys(value).length > 0) {
|
|
207
|
+
for (const [key, child] of Object.entries(value))
|
|
208
|
+
walk(child, [...path, key]);
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
fields[path.join('.')] = has(machine, path) ? 'machine' : has(repo, path) ? 'repo' : 'default';
|
|
212
|
+
};
|
|
213
|
+
for (const [key, value] of Object.entries(profile))
|
|
214
|
+
if (key !== 'rules')
|
|
215
|
+
walk(value, [key]);
|
|
216
|
+
fields.name = repo?.name === profile.name && machine?.name === undefined ? 'repo' : 'machine';
|
|
217
|
+
return fields;
|
|
218
|
+
}
|
|
219
|
+
function has(raw, path) {
|
|
220
|
+
let at = raw;
|
|
221
|
+
for (const key of path) {
|
|
222
|
+
if (!isRecord(at) || !Object.hasOwn(at, key))
|
|
223
|
+
return false;
|
|
224
|
+
at = at[key];
|
|
225
|
+
}
|
|
226
|
+
return at !== undefined;
|
|
227
|
+
}
|
|
228
|
+
function isRecord(value) {
|
|
229
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
230
|
+
}
|
|
231
|
+
function listOf(value) {
|
|
232
|
+
return Array.isArray(value) ? value : [];
|
|
233
|
+
}
|
|
234
|
+
function mergeValue(under, over) {
|
|
235
|
+
if (over === undefined)
|
|
236
|
+
return under;
|
|
237
|
+
if (!isRecord(under) || !isRecord(over))
|
|
238
|
+
return over;
|
|
239
|
+
const merged = { ...under };
|
|
240
|
+
for (const [key, value] of Object.entries(over))
|
|
241
|
+
merged[key] = mergeValue(under[key], value);
|
|
242
|
+
return merged;
|
|
243
|
+
}
|
|
244
|
+
// origin/HEAD's branch in a clone: the remote's default branch, which a clone records.
|
|
245
|
+
function originHead(git, clone) {
|
|
246
|
+
const head = git(['symbolic-ref', '--short', 'refs/remotes/origin/HEAD'], clone);
|
|
247
|
+
const branch = head.code === 0 ? head.stdout.trim().replace(/^origin\//, '') : '';
|
|
248
|
+
if (branch === '') {
|
|
249
|
+
throw new ConductorError(`${clone} has no origin/HEAD`, [
|
|
250
|
+
`run git -C "${clone}" remote set-head origin --auto, or set baseBranch in the machine profile`,
|
|
251
|
+
]);
|
|
252
|
+
}
|
|
253
|
+
return branch;
|
|
254
|
+
}
|
|
255
|
+
function show(value) {
|
|
256
|
+
return typeof value === 'string' ? value : (JSON.stringify(value) ?? '(unset)');
|
|
257
|
+
}
|
|
258
|
+
function valueAt(profile, path) {
|
|
259
|
+
let at = profile;
|
|
260
|
+
for (const key of path.split('.'))
|
|
261
|
+
at = isRecord(at) ? at[key] : undefined;
|
|
262
|
+
return at;
|
|
263
|
+
}
|
|
264
|
+
//# sourceMappingURL=profile-layers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-layers.js","sourceRoot":"","sources":["../src/profile-layers.ts"],"names":[],"mappings":"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"}
|
package/build/profile.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { readFileSync } from 'node:fs';
|
|
2
1
|
import { isAbsolute, join } from 'node:path';
|
|
3
2
|
import { lt, valid } from 'semver';
|
|
4
3
|
import { z } from 'zod';
|
|
5
|
-
import { ConductorError
|
|
4
|
+
import { ConductorError } from "./errors.js";
|
|
6
5
|
import { parseJsonc } from "./jsonc.js";
|
|
7
6
|
import { packageInfo } from "./package-info.js";
|
|
7
|
+
import { PROJECT_NAME } from "./paths.js";
|
|
8
8
|
import { noteName } from "./plugin.js";
|
|
9
9
|
import { PROTOCOL } from "./protocol.js";
|
|
10
10
|
import { ruleInputSchema } from "./rule-input.js";
|
|
11
11
|
import { defaultTag } from "./upgrade.js";
|
|
12
12
|
export const PROFILE_FILE = join('.claude', 'conductor.json');
|
|
13
|
-
const name = z.string().regex(
|
|
13
|
+
const name = z.string().regex(PROJECT_NAME, 'lowercase letters, digits and dashes, starting with a letter');
|
|
14
14
|
const text = z.string().trim().min(1);
|
|
15
15
|
// The state each phase note moves an item to, over the tracker kind's defaults (tracker-writes.ts);
|
|
16
16
|
// null leaves it as it is.
|
|
@@ -282,19 +282,4 @@ export function profileProblem(error) {
|
|
|
282
282
|
return error instanceof Error ? error.message : String(error);
|
|
283
283
|
return error.details.length > 0 ? error.details.join('; ') : error.message;
|
|
284
284
|
}
|
|
285
|
-
export function readProfile(root) {
|
|
286
|
-
const path = join(root, PROFILE_FILE);
|
|
287
|
-
let source;
|
|
288
|
-
try {
|
|
289
|
-
source = readFileSync(path, 'utf8');
|
|
290
|
-
}
|
|
291
|
-
catch (error) {
|
|
292
|
-
if (!isMissing(error))
|
|
293
|
-
throw error;
|
|
294
|
-
throw new ConductorError(`no ${PROFILE_FILE} in ${root}`, [
|
|
295
|
-
'a conducted project commits its profile at .claude/conductor.json',
|
|
296
|
-
]);
|
|
297
|
-
}
|
|
298
|
-
return { path, profile: parseProfile(source, path) };
|
|
299
|
-
}
|
|
300
285
|
//# sourceMappingURL=profile.js.map
|
package/build/profile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ import { boardsQueue } from "./watchers/boards-queue.js";
|
|
|
14
14
|
import { issuesQueue } from "./watchers/issues-queue.js";
|
|
15
15
|
import { linearQueue } from "./watchers/linear-queue.js";
|
|
16
16
|
import { gitWorktrees } from "./worktrees.js";
|
|
17
|
-
// The worktree's
|
|
17
|
+
// The worktree's setup may run 10 minutes (pnpm install) and its remove 5, on top of the reads.
|
|
18
18
|
const CHECK_TIMEOUT_MS = 17 * 60_000;
|
|
19
19
|
const refused = z.object({ details: z.array(z.string()).optional(), error: z.string() });
|
|
20
20
|
// `conduct project check <name>`: through the daemon, which checks as its own accounts, else here
|
|
@@ -76,6 +76,7 @@ function localDeps(paths, store) {
|
|
|
76
76
|
claude: claudeCli(),
|
|
77
77
|
credentials,
|
|
78
78
|
hosts: (project) => projectHosts(credentials, project),
|
|
79
|
+
paths,
|
|
79
80
|
ports: broker({ pool: loadConfig(paths.config).ports, store }),
|
|
80
81
|
queue: routedQueue({
|
|
81
82
|
'ado-boards': boardsQueue({ credentials }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-check-cli.js","sourceRoot":"","sources":["../src/project-check-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EACL,WAAW,EACX,UAAU,EAEV,YAAY,EAEZ,iBAAiB,EACjB,SAAS,GAEV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAc,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,
|
|
1
|
+
{"version":3,"file":"project-check-cli.js","sourceRoot":"","sources":["../src/project-check-cli.ts"],"names":[],"mappings":"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"}
|