@angelmsger/fx 0.18.1 → 0.19.0
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 +5 -1
- package/README.md +1 -0
- package/dist/adapters/code-host/bitbucket-cli/provider.js +4 -3
- package/dist/adapters/code-host/bitbucket-cli/provider.js.map +1 -1
- package/dist/adapters/code-host/github/provider.js +4 -3
- package/dist/adapters/code-host/github/provider.js.map +1 -1
- package/dist/adapters/code-host/local-git/provider.js +39 -6
- package/dist/adapters/code-host/local-git/provider.js.map +1 -1
- package/dist/adapters/error-tracker/sentry/client.js +11 -8
- package/dist/adapters/error-tracker/sentry/client.js.map +1 -1
- package/dist/adapters/error-tracker/sentry/provider.js +2 -1
- package/dist/adapters/error-tracker/sentry/provider.js.map +1 -1
- package/dist/adapters/error-tracker/sentry/tracker.js +170 -39
- package/dist/adapters/error-tracker/sentry/tracker.js.map +1 -1
- package/dist/application/release/baseline.js +44 -0
- package/dist/application/release/baseline.js.map +1 -0
- package/dist/application/release/errors.js +144 -26
- package/dist/application/release/errors.js.map +1 -1
- package/dist/application/release/facts.js +2 -2
- package/dist/application/release/facts.js.map +1 -1
- package/dist/application/release/index.js +92 -11
- package/dist/application/release/index.js.map +1 -1
- package/dist/application/release/repo.js +118 -20
- package/dist/application/release/repo.js.map +1 -1
- package/dist/application/release/version-declaration.js +54 -0
- package/dist/application/release/version-declaration.js.map +1 -0
- package/dist/application/release/version-history.js +86 -0
- package/dist/application/release/version-history.js.map +1 -0
- package/dist/application/repo/show.js +9 -1
- package/dist/application/repo/show.js.map +1 -1
- package/dist/application/repo/version.js +83 -0
- package/dist/application/repo/version.js.map +1 -0
- package/dist/cli/commands/index.js +2 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/release/check.js +31 -0
- package/dist/cli/commands/release/check.js.map +1 -1
- package/dist/cli/commands/release/overrides.js +19 -0
- package/dist/cli/commands/release/overrides.js.map +1 -0
- package/dist/cli/commands/repo/show.js +12 -4
- package/dist/cli/commands/repo/show.js.map +1 -1
- package/dist/cli/commands/repo/version.js +36 -0
- package/dist/cli/commands/repo/version.js.map +1 -0
- package/dist/cli/release-view.js +27 -0
- package/dist/cli/release-view.js.map +1 -1
- package/dist/cli/render/report.js +5 -0
- package/dist/cli/render/report.js.map +1 -1
- package/dist/domain/members/classify.js +5 -2
- package/dist/domain/members/classify.js.map +1 -1
- package/dist/domain/members/ownership-evidence.js +63 -0
- package/dist/domain/members/ownership-evidence.js.map +1 -0
- package/dist/domain/release/errors.js +76 -12
- package/dist/domain/release/errors.js.map +1 -1
- package/dist/domain/release/types.js.map +1 -1
- package/dist/domain/release/version-evidence.js +6 -0
- package/dist/domain/release/version-evidence.js.map +1 -0
- package/dist/domain/release/version.js +44 -5
- package/dist/domain/release/version.js.map +1 -1
- package/dist/domain/release/window.js +67 -3
- package/dist/domain/release/window.js.map +1 -1
- package/dist/domain/report.js +1 -0
- package/dist/domain/report.js.map +1 -1
- package/package.json +1 -1
- package/skills/fx-workspace/SKILL.md +1 -1
- package/skills/fx-workspace/references/commands.md +112 -17
- package/skills/fx-workspace/references/workspace-tasks.md +34 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../../../src/adapters/error-tracker/sentry/tracker.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../../../src/adapters/error-tracker/sentry/tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// A caller-selected historical baseline, pinned before reading declarations and
|
|
2
|
+
// comparing the full commit range. It does not reuse the release's unmerged count.
|
|
3
|
+
import { asDevkitError, toEnvelope } from '../../domain/errors.js';
|
|
4
|
+
import { readVersionDeclaration, versionFailure } from './version-declaration.js';
|
|
5
|
+
export async function readBaseline(input) {
|
|
6
|
+
const failures = [];
|
|
7
|
+
const ask = async (run) => {
|
|
8
|
+
try {
|
|
9
|
+
return await run();
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
failures.push(toEnvelope(asDevkitError(error)).error);
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
const baseline = await ask(() => input.host.commit(input.ref, input.baselineRef));
|
|
17
|
+
const head = await ask(async () => {
|
|
18
|
+
const commit = await input.host.commit(input.ref, input.headSha ?? input.headRef);
|
|
19
|
+
if (input.headSha !== undefined && commit.sha !== input.headSha)
|
|
20
|
+
throw versionFailure('VERSION_REF_CHANGED', 'The code host did not return the pinned head commit');
|
|
21
|
+
return commit;
|
|
22
|
+
});
|
|
23
|
+
const current = head === null ? null : await ask(() => readVersionDeclaration({ ...input, sha: head.sha }));
|
|
24
|
+
const source = input.source ?? current ?? undefined;
|
|
25
|
+
const previous = baseline === null
|
|
26
|
+
? null
|
|
27
|
+
: await ask(() => readVersionDeclaration({
|
|
28
|
+
...input,
|
|
29
|
+
...(source === undefined ? {} : { source }),
|
|
30
|
+
sha: baseline.sha,
|
|
31
|
+
}));
|
|
32
|
+
const commits = baseline === null || head === null
|
|
33
|
+
? null
|
|
34
|
+
: await ask(() => input.host.compare(input.ref, { from: baseline.sha, to: head.sha }));
|
|
35
|
+
const snapshot = (requestedRef, sha, declaration) => ({ requested_ref: requestedRef, resolved_sha: sha ?? null, declaration });
|
|
36
|
+
return {
|
|
37
|
+
baseline: snapshot(input.baselineRef, baseline?.sha, previous),
|
|
38
|
+
head: snapshot(input.headRef, head?.sha, current),
|
|
39
|
+
commits,
|
|
40
|
+
coverage: failures.length === 0 ? 'checked' : 'incomplete',
|
|
41
|
+
failures,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=baseline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseline.js","sourceRoot":"","sources":["../../../src/application/release/baseline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
// The error tracker of the release environment, at the repository's
|
|
2
2
|
// coordinate there; a repository without one is not checked, and says so.
|
|
3
|
+
import { asDevkitError, DevkitError, toEnvelope } from '../../domain/errors.js';
|
|
3
4
|
import { locateRepo } from '../../domain/obs/coordinate.js';
|
|
5
|
+
import { coordinateFingerprint } from '../../domain/obs/observation.js';
|
|
4
6
|
import { errorsFinding, ISSUE_CEILING } from '../../domain/release/errors.js';
|
|
5
|
-
import { notChecked, unanswered } from '../../domain/release/types.js';
|
|
7
|
+
import { notChecked, unanswered, } from '../../domain/release/types.js';
|
|
8
|
+
import { resolveRange } from '../../domain/release/window.js';
|
|
6
9
|
import { environmentsOf } from '../env/names.js';
|
|
7
10
|
import { workspaceCommand } from '../workspace/guidance.js';
|
|
8
11
|
import { platformAs } from '../workspace/platforms.js';
|
|
9
12
|
import { attempt } from './facts.js';
|
|
10
13
|
import { blockedFinding } from './gates.js';
|
|
11
|
-
export function checkErrors(ctx) {
|
|
14
|
+
export async function checkErrors(ctx) {
|
|
12
15
|
const repo = ctx.repo.name;
|
|
13
|
-
|
|
16
|
+
const range = ctx.range ?? resolveRange({ since: ctx.policy.since }, ctx.now);
|
|
17
|
+
let source = null;
|
|
18
|
+
const result = await attempt('errors', repo, async () => {
|
|
14
19
|
const env = ctx.policy.env;
|
|
15
20
|
if (env === undefined)
|
|
16
21
|
return notChecked('errors', repo, 'no environment for errors in the release policy');
|
|
17
|
-
const gate = await ctx.gates.through('error-tracker', env);
|
|
18
|
-
if (!gate.open)
|
|
19
|
-
return blockedFinding('errors', repo, gate);
|
|
20
22
|
const tracker = platformAs(ctx.deps, 'error-tracker', 'issues', env);
|
|
21
23
|
if (tracker.platform === undefined)
|
|
22
24
|
return unanswered('errors', repo, tracker.reason);
|
|
@@ -28,29 +30,145 @@ export function checkErrors(ctx) {
|
|
|
28
30
|
binding: tracker.binding,
|
|
29
31
|
locate: (vars) => tracker.platform.locate(vars),
|
|
30
32
|
});
|
|
33
|
+
source = querySource(coordinate, tracker.platform);
|
|
34
|
+
const gate = await ctx.gates.through('error-tracker', env);
|
|
35
|
+
if (!gate.open)
|
|
36
|
+
return blockedFinding('errors', repo, gate);
|
|
31
37
|
if (coordinate.status === 'not_covered')
|
|
32
38
|
return notChecked('errors', repo, coordinate.notes[0] ?? `no ${tracker.binding.platform} coordinate in ${env}`);
|
|
33
39
|
if (coordinate.command === null)
|
|
34
|
-
return
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
40
|
+
return incompleteCoordinate(ctx, coordinate);
|
|
41
|
+
return queryErrors({ ctx, tracker: tracker.platform, coordinate, range });
|
|
42
|
+
});
|
|
43
|
+
return {
|
|
44
|
+
...result,
|
|
45
|
+
evidence: { ...result.evidence, query_context: contextFor(ctx, range, source) },
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
function querySource(coordinate, tracker) {
|
|
49
|
+
if (coordinate.status === 'not_covered' || coordinate.provider === null)
|
|
50
|
+
return null;
|
|
51
|
+
const fingerprint = tracker.queryFingerprint === undefined
|
|
52
|
+
? coordinateFingerprint(coordinate)
|
|
53
|
+
: tracker.queryFingerprint(coordinate.vars);
|
|
54
|
+
return fingerprint === null
|
|
55
|
+
? null
|
|
56
|
+
: {
|
|
57
|
+
platform: coordinate.platform,
|
|
58
|
+
provider: coordinate.provider,
|
|
59
|
+
coordinate_fingerprint: fingerprint,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
function contextFor(ctx, range, source) {
|
|
63
|
+
return {
|
|
64
|
+
repository: ctx.repo.name,
|
|
65
|
+
environment: ctx.policy.env ?? null,
|
|
66
|
+
range,
|
|
67
|
+
observed_at: ctx.now.toISOString(),
|
|
68
|
+
source,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
async function queryErrors(input) {
|
|
72
|
+
const { ctx, tracker, coordinate, range } = input;
|
|
73
|
+
const page = await collectIssues(tracker, coordinate.vars, {
|
|
74
|
+
since: ctx.policy.since,
|
|
75
|
+
limit: ISSUE_CEILING,
|
|
76
|
+
range,
|
|
77
|
+
observedAt: ctx.now.toISOString(),
|
|
78
|
+
});
|
|
79
|
+
return errorsFinding({
|
|
80
|
+
repo: ctx.repo.name,
|
|
81
|
+
env: coordinate.env,
|
|
82
|
+
slug: coordinate.vars['slug'] ?? coordinate.label,
|
|
83
|
+
label: coordinate.label,
|
|
84
|
+
since: ctx.policy.since,
|
|
85
|
+
now: ctx.now,
|
|
86
|
+
issues: page.issues,
|
|
87
|
+
capped: page.more,
|
|
88
|
+
range,
|
|
89
|
+
page,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
// A bounded traversal returns partial evidence and an explicit continuation on every
|
|
93
|
+
// interruption. A page-sized limit must never be mistaken for a project total.
|
|
94
|
+
export async function collectIssues(tracker, vars, query, maxPages = 100) {
|
|
95
|
+
const found = new Map();
|
|
96
|
+
const cursors = new Set();
|
|
97
|
+
const failures = [];
|
|
98
|
+
let cursor = query.cursor;
|
|
99
|
+
let pagesRead = 0;
|
|
100
|
+
let more = true;
|
|
101
|
+
let reason;
|
|
102
|
+
let incomplete = false;
|
|
103
|
+
while (pagesRead < maxPages) {
|
|
104
|
+
if (cursor !== undefined)
|
|
105
|
+
cursors.add(cursor);
|
|
106
|
+
let page;
|
|
107
|
+
try {
|
|
108
|
+
page = await tracker.issues(vars, { ...query, ...(cursor === undefined ? {} : { cursor }) });
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
failures.push({ stage: 'list', error: toEnvelope(asDevkitError(error)).error });
|
|
112
|
+
reason = 'page_failed';
|
|
113
|
+
break;
|
|
114
|
+
}
|
|
115
|
+
pagesRead += page.pagesRead ?? 1;
|
|
116
|
+
incomplete ||= page.coverage === 'incomplete';
|
|
117
|
+
failures.push(...(page.failures ?? []));
|
|
118
|
+
for (const issue of page.issues)
|
|
119
|
+
found.set(issue.id, issue);
|
|
120
|
+
more = page.more;
|
|
121
|
+
cursor = page.next;
|
|
122
|
+
if (!more)
|
|
123
|
+
break;
|
|
124
|
+
if (cursor === undefined) {
|
|
125
|
+
reason = 'continuation_unavailable';
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
if (cursors.has(cursor) || page.issues.length === 0) {
|
|
129
|
+
reason = 'pagination_no_progress';
|
|
130
|
+
break;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
if (more && reason === undefined)
|
|
134
|
+
reason = 'page_limit';
|
|
135
|
+
if (reason !== undefined && reason !== 'page_failed')
|
|
136
|
+
failures.push(paginationFailure(reason));
|
|
137
|
+
return {
|
|
138
|
+
issues: [...found.values()],
|
|
139
|
+
more,
|
|
140
|
+
pagesRead,
|
|
141
|
+
coverage: incomplete || more || failures.length > 0 ? 'incomplete' : 'checked',
|
|
142
|
+
failures,
|
|
143
|
+
...(more && cursor !== undefined ? { next: cursor } : {}),
|
|
144
|
+
...(reason === undefined ? {} : { truncationReason: reason }),
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
function paginationFailure(reason) {
|
|
148
|
+
const failure = new DevkitError('server', 'ISSUE_PAGINATION_INCOMPLETE', `Issue pagination stopped: ${reason}`, {
|
|
149
|
+
nextSteps: [
|
|
150
|
+
'Retry the same absolute range, or inspect the remaining cursor through the companion API.',
|
|
151
|
+
],
|
|
152
|
+
});
|
|
153
|
+
return { stage: 'pagination', error: toEnvelope(failure).error };
|
|
154
|
+
}
|
|
155
|
+
function incompleteCoordinate(ctx, coordinate) {
|
|
156
|
+
const error = new DevkitError('config', 'COORDINATE_INCOMPLETE', `Error-tracker coordinate for ${coordinate.repo} in ${coordinate.env} is incomplete`, {
|
|
157
|
+
hint: coordinate.notes.join('; ') || 'The platform could not construct a query coordinate.',
|
|
158
|
+
nextSteps: [
|
|
159
|
+
`fx where ${coordinate.repo} --env ${coordinate.env} --platform ${coordinate.platform}`,
|
|
160
|
+
workspaceCommand(ctx.deps, 'manifest', 'lint'),
|
|
161
|
+
'Complete the missing coordinate variables in the shared manifest, then retry.',
|
|
162
|
+
],
|
|
163
|
+
});
|
|
164
|
+
return unanswered('errors', coordinate.repo, error.message, {
|
|
165
|
+
failure: toEnvelope(error).error,
|
|
166
|
+
failures: [toEnvelope(error).error],
|
|
167
|
+
fix: error.nextSteps[0],
|
|
168
|
+
evidence: {
|
|
169
|
+
env: coordinate.env,
|
|
170
|
+
coordinate: { status: coordinate.status, notes: coordinate.notes },
|
|
171
|
+
},
|
|
54
172
|
});
|
|
55
173
|
}
|
|
56
174
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/application/release/errors.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,0EAA0E;AAE1E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/application/release/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ export async function gatherFacts(ctx) {
|
|
|
16
16
|
if (ref === undefined)
|
|
17
17
|
return { kind: 'error', reason: 'no code-host reference: neither a project nor an upstream' };
|
|
18
18
|
try {
|
|
19
|
-
const host =
|
|
19
|
+
const host = rememberCodeHost(ctx.deps.codeHost());
|
|
20
20
|
const branches = await host.branches(ref);
|
|
21
21
|
const named = (name) => name === undefined ? undefined : branches.find((b) => b.name === name);
|
|
22
22
|
const source = named(ctx.policy.source);
|
|
@@ -33,7 +33,7 @@ export async function gatherFacts(ctx) {
|
|
|
33
33
|
}
|
|
34
34
|
// One question asked once per repository: the checks and the release summary read
|
|
35
35
|
// the same heads, files and range, and a failed answer is the same failure for each.
|
|
36
|
-
function
|
|
36
|
+
export function rememberCodeHost(host) {
|
|
37
37
|
const asked = new Map();
|
|
38
38
|
const once = (key, ask) => {
|
|
39
39
|
let answer = asked.get(key);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facts.js","sourceRoot":"","sources":["../../../src/application/release/facts.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,yEAAyE;AACzE,uEAAuE;AACvE,wEAAwE;AACxE,0EAA0E;AAC1E,yBAAyB;AAEzB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAsB,MAAM,wBAAwB,CAAC;AAIvF,OAAO,EAAE,UAAU,EAAmC,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"facts.js","sourceRoot":"","sources":["../../../src/application/release/facts.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,yEAAyE;AACzE,uEAAuE;AACvE,wEAAwE;AACxE,0EAA0E;AAC1E,yBAAyB;AAEzB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAsB,MAAM,wBAAwB,CAAC;AAIvF,OAAO,EAAE,UAAU,EAAmC,MAAM,+BAA+B,CAAC;AAG5F,OAAO,EAAE,OAAO,EAAgB,MAAM,+BAA+B,CAAC;AAItE,OAAO,EAAE,cAAc,EAAyB,MAAM,YAAY,CAAC;AAqCnE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAiB;IACjD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC7D,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS;QACnB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,2DAA2D,EAAE,CAAC;IAChG,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,CAAC,IAAwB,EAAsB,EAAE,CAC7D,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,qEAAqE;QACrE,uEAAuE;QACvE,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,SAAS,EAAE,IAAI,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IAC3E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,qFAAqF;AACrF,MAAM,UAAU,gBAAgB,CAAC,IAAqB;IACpD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA4B,CAAC;IAClD,MAAM,IAAI,GAAG,CAAI,GAAW,EAAE,GAAqB,EAAc,EAAE;QACjE,IAAI,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAA2B,CAAC;QACtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,EAAE,CAAC;YACf,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,OAAO;QACL,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QACrC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CACtB,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5E,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxE,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;KAC5F,CAAC;AACJ,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,YAAY,CAC1B,KAAY,EACZ,IAAY,EACZ,OAAiD;IAEjD,OAAO,OAAO,CAAC,IAAI,KAAK,MAAM;QAC5B,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;QAC3C,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE;YACtC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;YACnC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO;SAClC,CAAC,CAAC;AACT,CAAC;AAED,4DAA4D;AAC5D,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,KAAY,EACZ,IAAY,EACZ,GAAkC;IAElC,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QACrD,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE;YAC9C,OAAO;YACP,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { nearest, suggestionHint } from '../../domain/fuzzy.js';
|
|
|
7
7
|
import { applyLocal } from '../../domain/manifest/local.js';
|
|
8
8
|
import { releasePolicyOf } from '../../domain/release/policy.js';
|
|
9
9
|
import { CHECKS, } from '../../domain/release/types.js';
|
|
10
|
-
import {
|
|
10
|
+
import { resolveRange } from '../../domain/release/window.js';
|
|
11
11
|
import { report } from '../../domain/report.js';
|
|
12
12
|
import { environmentsOf, envNotFound } from '../env/names.js';
|
|
13
13
|
import { pooled } from '../pool.js';
|
|
@@ -20,6 +20,7 @@ import { gatherFacts } from './facts.js';
|
|
|
20
20
|
import { Gates } from './gates.js';
|
|
21
21
|
import { checkMerge } from './merge.js';
|
|
22
22
|
import { describeRepo } from './repo.js';
|
|
23
|
+
import { validateVersionPath } from './version-declaration.js';
|
|
23
24
|
const CHECKERS = {
|
|
24
25
|
deps: checkDeps,
|
|
25
26
|
merge: checkMerge,
|
|
@@ -36,21 +37,63 @@ export class Release {
|
|
|
36
37
|
this.gates = new Gates(deps, login);
|
|
37
38
|
}
|
|
38
39
|
async execute(input) {
|
|
39
|
-
|
|
40
|
-
windowMs(input.since);
|
|
40
|
+
const observedAt = this.login.clock.now();
|
|
41
41
|
this.checkEnv(input.env);
|
|
42
42
|
const checks = CHECKS.filter((c) => input.only === undefined || input.only.includes(c));
|
|
43
43
|
const repos = this.select(input);
|
|
44
|
+
this.validateEvidenceInput(input, repos, observedAt);
|
|
44
45
|
await this.warmGates(repos, checks, input);
|
|
45
46
|
const results = await Tally.during(this.deps.activity, 'repos', (tally) => {
|
|
46
47
|
tally.plan(repos.length);
|
|
47
|
-
return pooled(repos, input.jobs, (repo) => tally.unit(repo.name, () => this.checkRepo(repo, checks, input)));
|
|
48
|
+
return pooled(repos, input.jobs, (repo) => tally.unit(repo.name, () => this.checkRepo(repo, checks, input, observedAt)));
|
|
48
49
|
});
|
|
50
|
+
const checked = report(CHECKS, results.flatMap((r) => r.findings));
|
|
51
|
+
const described = results.map((r) => r.repo);
|
|
49
52
|
return {
|
|
50
|
-
...
|
|
51
|
-
repos:
|
|
53
|
+
...checked,
|
|
54
|
+
repos: described,
|
|
55
|
+
observed_at: observedAt.toISOString(),
|
|
56
|
+
range: commonRange(described),
|
|
57
|
+
evidence_complete: checked.complete &&
|
|
58
|
+
described.every((repo) => repo.unanswered.length === 0 &&
|
|
59
|
+
Object.values(repo.facet_coverage ?? {}).every((coverage) => coverage !== 'incomplete')),
|
|
52
60
|
};
|
|
53
61
|
}
|
|
62
|
+
validateEvidenceInput(input, repos, now) {
|
|
63
|
+
const names = new Set(repos.map((repo) => repo.name));
|
|
64
|
+
for (const [kind, values] of Object.entries({
|
|
65
|
+
baseline: input.baselines,
|
|
66
|
+
'version-path': input.versionPaths,
|
|
67
|
+
})) {
|
|
68
|
+
for (const [name, value] of Object.entries(values ?? {})) {
|
|
69
|
+
if (!names.has(name) || value.trim() === '')
|
|
70
|
+
throw new DevkitError('usage', 'RELEASE_OVERRIDE_INVALID', `The ${kind} override must name a selected repository and a nonempty value`, {
|
|
71
|
+
nextSteps: ['Select the repository and provide a repo=value override.'],
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
for (const value of Object.values(input.versionPaths ?? {}))
|
|
76
|
+
validateVersionPath(value);
|
|
77
|
+
if (input.historyLimit !== undefined &&
|
|
78
|
+
(!Number.isSafeInteger(input.historyLimit) ||
|
|
79
|
+
input.historyLimit < 1 ||
|
|
80
|
+
input.historyLimit > 1000))
|
|
81
|
+
throw new DevkitError('usage', 'VERSION_HISTORY_BUDGET_INVALID', 'History budget must be between 1 and 1000 commits', {
|
|
82
|
+
nextSteps: ['Use --history-limit with an integer from 1 to 1000.'],
|
|
83
|
+
});
|
|
84
|
+
for (const repo of repos)
|
|
85
|
+
this.rangeFor(repo, input, now);
|
|
86
|
+
}
|
|
87
|
+
rangeFor(repo, input, now) {
|
|
88
|
+
const policy = releasePolicyOf(this.deps.ctx.manifest.workspace.result.doc, repo.name);
|
|
89
|
+
const explicit = input.from !== undefined || input.to !== undefined;
|
|
90
|
+
const since = input.since ?? (explicit ? undefined : policy.since);
|
|
91
|
+
return resolveRange({
|
|
92
|
+
...(since === undefined ? {} : { since }),
|
|
93
|
+
...(input.from === undefined ? {} : { start: input.from }),
|
|
94
|
+
...(input.to === undefined ? {} : { end: input.to }),
|
|
95
|
+
}, now);
|
|
96
|
+
}
|
|
54
97
|
// The name came from the person, so it is answered once, not per repository.
|
|
55
98
|
checkEnv(env) {
|
|
56
99
|
if (env === undefined)
|
|
@@ -64,7 +107,7 @@ export class Release {
|
|
|
64
107
|
async warmGates(repos, checks, input) {
|
|
65
108
|
const doc = this.deps.ctx.manifest.workspace.result.doc;
|
|
66
109
|
const policies = repos.map((repo) => releasePolicyOf(doc, repo.name));
|
|
67
|
-
if (checks
|
|
110
|
+
if (needsCodeHost(checks, input))
|
|
68
111
|
await this.gates.through('code-host', undefined);
|
|
69
112
|
const wanted = (check, envs) => checks.includes(check) ? [...new Set(envs.filter((e) => e !== undefined))] : [];
|
|
70
113
|
for (const env of wanted('ci', policies.flatMap((p) => [p.ci?.sourceEnv, p.ci?.targetEnv])))
|
|
@@ -98,7 +141,7 @@ export class Release {
|
|
|
98
141
|
}
|
|
99
142
|
return chosen;
|
|
100
143
|
}
|
|
101
|
-
async checkRepo(repo, checks, input) {
|
|
144
|
+
async checkRepo(repo, checks, input, observedAt) {
|
|
102
145
|
const shared = releasePolicyOf(this.deps.ctx.manifest.workspace.result.doc, repo.name);
|
|
103
146
|
const ctx = {
|
|
104
147
|
deps: this.deps,
|
|
@@ -106,18 +149,56 @@ export class Release {
|
|
|
106
149
|
repo,
|
|
107
150
|
policy: { ...shared, env: input.env ?? shared.env, since: input.since ?? shared.since },
|
|
108
151
|
members: this.deps.ctx.manifest.members?.result.doc,
|
|
109
|
-
now:
|
|
152
|
+
now: observedAt,
|
|
153
|
+
range: this.rangeFor(repo, input, observedAt),
|
|
154
|
+
factsRequested: needsCodeHost(checks, input, repo.name),
|
|
155
|
+
...(input.versionHistory === undefined ? {} : { versionHistory: input.versionHistory }),
|
|
156
|
+
...(input.historyLimit === undefined ? {} : { historyLimit: input.historyLimit }),
|
|
157
|
+
...(input.versionPaths?.[repo.name] === undefined
|
|
158
|
+
? {}
|
|
159
|
+
: { versionPath: input.versionPaths[repo.name] }),
|
|
160
|
+
...(input.baselines?.[repo.name] === undefined
|
|
161
|
+
? {}
|
|
162
|
+
: { baselineRef: input.baselines[repo.name] }),
|
|
110
163
|
};
|
|
111
|
-
const facts = checks
|
|
164
|
+
const facts = needsCodeHost(checks, input, repo.name)
|
|
112
165
|
? await gatherFacts(ctx)
|
|
113
166
|
: { kind: 'error', reason: 'not asked' };
|
|
114
167
|
const [findings, described] = await Promise.all([
|
|
115
168
|
Promise.all(checks.map((check) => CHECKERS[check](ctx, facts))),
|
|
116
169
|
describeRepo(ctx, facts),
|
|
117
170
|
]);
|
|
118
|
-
|
|
171
|
+
const errors = findings.find((finding) => finding.group === 'errors');
|
|
172
|
+
return {
|
|
173
|
+
findings,
|
|
174
|
+
repo: {
|
|
175
|
+
...described,
|
|
176
|
+
...(described.facet_coverage === undefined
|
|
177
|
+
? {}
|
|
178
|
+
: {
|
|
179
|
+
facet_coverage: {
|
|
180
|
+
...described.facet_coverage,
|
|
181
|
+
errors: errors?.coverage ?? 'not_requested',
|
|
182
|
+
},
|
|
183
|
+
}),
|
|
184
|
+
},
|
|
185
|
+
};
|
|
119
186
|
}
|
|
120
187
|
}
|
|
188
|
+
function needsCodeHost(checks, input, repo) {
|
|
189
|
+
const overrides = repo === undefined
|
|
190
|
+
? Object.keys(input.versionPaths ?? {}).length > 0 ||
|
|
191
|
+
Object.keys(input.baselines ?? {}).length > 0
|
|
192
|
+
: input.versionPaths?.[repo] !== undefined || input.baselines?.[repo] !== undefined;
|
|
193
|
+
return checks.some((check) => check !== 'errors') || input.versionHistory === true || overrides;
|
|
194
|
+
}
|
|
195
|
+
function commonRange(repos) {
|
|
196
|
+
const first = repos[0]?.range;
|
|
197
|
+
return first !== undefined &&
|
|
198
|
+
repos.every((repo) => repo.range?.start === first.start && repo.range.end === first.end)
|
|
199
|
+
? first
|
|
200
|
+
: null;
|
|
201
|
+
}
|
|
121
202
|
const COVERAGE_HINT = 'A repository is on it unless its manifest entry says release.covered: false.';
|
|
122
203
|
// The ways a selection can name nothing. An empty report reads as a pass,
|
|
123
204
|
// so each is an error instead; see Coverage in domain/report.ts.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/release/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/release/index.ts"],"names":[],"mappings":"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"}
|