@cat-factory/agents 0.119.3 → 0.120.1
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/dist/repo-ops/builtin.d.ts.map +1 -1
- package/dist/repo-ops/builtin.js +12 -0
- package/dist/repo-ops/builtin.js.map +1 -1
- package/dist/repo-ops/readServiceSpec.d.ts +24 -2
- package/dist/repo-ops/readServiceSpec.d.ts.map +1 -1
- package/dist/repo-ops/readServiceSpec.js +237 -56
- package/dist/repo-ops/readServiceSpec.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin.d.ts","sourceRoot":"","sources":["../../src/repo-ops/builtin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAA6B,MAAM,EAAiB,MAAM,qBAAqB,CAAA;AAqE3F;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,MAyB7B,CAAA;AAiDD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,UAAU,EAAE,MAsDxB,CAAA;AAqKD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"builtin.d.ts","sourceRoot":"","sources":["../../src/repo-ops/builtin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAA6B,MAAM,EAAiB,MAAM,qBAAqB,CAAA;AAqE3F;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,MAyB7B,CAAA;AAiDD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,UAAU,EAAE,MAsDxB,CAAA;AAqKD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAwFjC,CAAA"}
|
package/dist/repo-ops/builtin.js
CHANGED
|
@@ -397,6 +397,18 @@ export const specPromotionPostOp = async (ctx) => {
|
|
|
397
397
|
log.debug('spec promotion skipped: the repo carries no spec/ tree', { metCount: met.size });
|
|
398
398
|
return;
|
|
399
399
|
}
|
|
400
|
+
// A walk that stopped at its read budget yields a SMALLER tree, so a requirement in the tail
|
|
401
|
+
// is promoted by nobody and the run reads as a tester that had nothing to promote. Safe (the
|
|
402
|
+
// baseline diff below is taken from this same read, so nothing unread can be rewritten or
|
|
403
|
+
// deleted) but not free, and the whole point of the levels here is that a DROPPED promotion
|
|
404
|
+
// is never silent.
|
|
405
|
+
const unread = view.diagnostics?.issues.find((issue) => issue.kind === 'unread');
|
|
406
|
+
if (unread) {
|
|
407
|
+
log.warn('spec promotion may be incomplete: the spec read stopped at its budget', {
|
|
408
|
+
metCount: met.size,
|
|
409
|
+
unreadFiles: unread.dropped,
|
|
410
|
+
});
|
|
411
|
+
}
|
|
400
412
|
// Materialised BEFORE the in-place promotion below, so it captures the tree exactly as the
|
|
401
413
|
// read reconstructed it. A committed group shard that differs from this lost something on
|
|
402
414
|
// the way in, and must not be rewritten from it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin.js","sourceRoot":"","sources":["../../src/repo-ops/builtin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"builtin.js","sourceRoot":"","sources":["../../src/repo-ops/builtin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,28 @@
|
|
|
1
1
|
import { type ServiceSpecView } from '@cat-factory/contracts';
|
|
2
2
|
import type { RepoFiles } from '@cat-factory/kernel';
|
|
3
3
|
export declare const READ_CONCURRENCY = 12;
|
|
4
|
-
/**
|
|
5
|
-
|
|
4
|
+
/**
|
|
5
|
+
* How many provider reads ONE pass may make before it stops walking.
|
|
6
|
+
*
|
|
7
|
+
* Concurrency bounds how many reads are in flight; this bounds how many there are at all, and they
|
|
8
|
+
* are different failures. The tree's size is set by somebody else's repository, so a walk of a
|
|
9
|
+
* 500-group spec with its rendered features is ~1,000 round trips for one request: past the
|
|
10
|
+
* Cloudflare subrequest ceiling (where the isolate is killed mid-walk and the caller gets a
|
|
11
|
+
* silently partial answer rather than a reported one), and a serious bite out of the installation's
|
|
12
|
+
* GitHub rate limit, which every run in the workspace shares. `GET /api/v1/services/:id/spec`
|
|
13
|
+
* makes that reachable from outside with a `read`-scope key, so the ceiling has to be the reader's
|
|
14
|
+
* rather than each caller's.
|
|
15
|
+
*
|
|
16
|
+
* Chosen to sit well under the 1,000-subrequest budget a Worker invocation gets, leaving room for
|
|
17
|
+
* the request's own auth, board and ref reads. Exhausting it is REPORTED (`unread`), never silent:
|
|
18
|
+
* a stopped walk and a small spec produce the same tree and need different reactions.
|
|
19
|
+
*/
|
|
20
|
+
export declare const SPEC_READ_BUDGET = 500;
|
|
21
|
+
/** Knobs a caller may override; every one of them defaults to the shared, safe value. */
|
|
22
|
+
export interface ReadServiceSpecOptions {
|
|
23
|
+
/** Provider reads this pass may make. Defaults to {@link SPEC_READ_BUDGET}. */
|
|
24
|
+
maxReads?: number;
|
|
25
|
+
}
|
|
26
|
+
/** Read + reassemble the spec on `ref` (a branch, tag or sha). Never throws. */
|
|
27
|
+
export declare function readServiceSpec(repo: RepoFiles, ref: string, options?: ReadServiceSpecOptions): Promise<ServiceSpecView>;
|
|
6
28
|
//# sourceMappingURL=readServiceSpec.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readServiceSpec.d.ts","sourceRoot":"","sources":["../../src/repo-ops/readServiceSpec.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"readServiceSpec.d.ts","sourceRoot":"","sources":["../../src/repo-ops/readServiceSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,KAAK,eAAe,EAKrB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAqC,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAqCvF,eAAO,MAAM,gBAAgB,KAAK,CAAA;AAElC;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAA;AAEnC,yFAAyF;AACzF,MAAM,WAAW,sBAAsB;IACrC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AA0LD,gFAAgF;AAChF,wBAAsB,eAAe,CACnC,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,eAAe,CAAC,CAmH1B"}
|
|
@@ -1,23 +1,31 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { SPEC_DIR, SPEC_FEATURES_DIR, SPEC_MODULES_DIR, SPEC_NAME_MAX, SPEC_SERVICE_PATH, SPEC_SUMMARY_MAX, safeParseDomainRule, safeParseRequirementGroup, safeParseRequirementItem, safeParseSpecModule, } from '@cat-factory/contracts';
|
|
2
2
|
import pMap from 'p-map';
|
|
3
|
-
// Reassemble the SHARDED `spec/` artifact into a single {@link ServiceSpecView}
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
//
|
|
3
|
+
// Reassemble the SHARDED `spec/` artifact into a single {@link ServiceSpecView}, reading it
|
|
4
|
+
// checkout-free from a branch via {@link RepoFiles}. The spec-writer harness writes the tree
|
|
5
|
+
// across many files (one canonical JSON shard per feature group, plus seeded Gherkin `.feature`
|
|
6
|
+
// files) so concurrent task branches merge cleanly; the slugs are filesystem-only
|
|
7
|
+
// (collision-suffixed, name-sorted), so the only way to recover the tree is to walk the
|
|
8
|
+
// directories — names live inside the shards, not the paths. This is the read-side mirror of the
|
|
9
|
+
// harness's `readExistingSpec`, over HTTP.
|
|
10
10
|
//
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
//
|
|
15
|
-
//
|
|
16
|
-
//
|
|
11
|
+
// THREE surfaces read the spec through this one function, and that is deliberate: the SPA's
|
|
12
|
+
// requirements window, the run-evidence reductions (the verification report's requirement join and
|
|
13
|
+
// the outcome card), and `GET /api/v1/services/:serviceId/spec`. A second walk with its own
|
|
14
|
+
// salvage rules is how two surfaces come to disagree about what a malformed group renders as.
|
|
15
|
+
//
|
|
16
|
+
// Three properties it guarantees, so no caller sees a 500 or a misleading "no spec" state:
|
|
17
|
+
// 1. Every repo read is total: a non-404 provider error (rate limit, 5xx, network) degrades to
|
|
18
|
+
// a partial view instead of erroring the caller.
|
|
19
|
+
// 2. The tree is validated PER NODE, down to the individual requirement/rule: a malformed
|
|
17
20
|
// module shard is dropped without the rest of the tree, and a group shard is salvaged one
|
|
18
21
|
// requirement/rule at a time (so ONE field past a schema cap the lenient writer never
|
|
19
22
|
// enforced drops only that requirement, not the whole group with its valid siblings).
|
|
20
|
-
|
|
23
|
+
// 3. Both of those DEGRADE THE TREE, so both are REPORTED in `diagnostics`. A salvaging reader
|
|
24
|
+
// that reports nothing is indistinguishable from a repo that genuinely holds less, and the
|
|
25
|
+
// anchor state is the sharpest case: "no spec on this branch", "the provider would not answer"
|
|
26
|
+
// and "`spec/service.json` is corrupt" all produce the same empty view and need three
|
|
27
|
+
// different reactions. Every consumer is free to fold them (the SPA renders one empty state);
|
|
28
|
+
// what none of them can do is fold what the reader never distinguished.
|
|
21
29
|
// Cap concurrent GitHub reads so a large spec doesn't fire a burst of dozens of parallel
|
|
22
30
|
// requests at once (GitHub flags high concurrency as secondary-rate-limit abuse). The reads
|
|
23
31
|
// are still parallel, just bounded.
|
|
@@ -26,6 +34,62 @@ const EMPTY = EMPTY_SERVICE_SPEC_VIEW;
|
|
|
26
34
|
// walks must share one bound: a second uncapped walk would reintroduce exactly the burst this
|
|
27
35
|
// number exists to prevent, on the same repo, moments apart.
|
|
28
36
|
export const READ_CONCURRENCY = 12;
|
|
37
|
+
/**
|
|
38
|
+
* How many provider reads ONE pass may make before it stops walking.
|
|
39
|
+
*
|
|
40
|
+
* Concurrency bounds how many reads are in flight; this bounds how many there are at all, and they
|
|
41
|
+
* are different failures. The tree's size is set by somebody else's repository, so a walk of a
|
|
42
|
+
* 500-group spec with its rendered features is ~1,000 round trips for one request: past the
|
|
43
|
+
* Cloudflare subrequest ceiling (where the isolate is killed mid-walk and the caller gets a
|
|
44
|
+
* silently partial answer rather than a reported one), and a serious bite out of the installation's
|
|
45
|
+
* GitHub rate limit, which every run in the workspace shares. `GET /api/v1/services/:id/spec`
|
|
46
|
+
* makes that reachable from outside with a `read`-scope key, so the ceiling has to be the reader's
|
|
47
|
+
* rather than each caller's.
|
|
48
|
+
*
|
|
49
|
+
* Chosen to sit well under the 1,000-subrequest budget a Worker invocation gets, leaving room for
|
|
50
|
+
* the request's own auth, board and ref reads. Exhausting it is REPORTED (`unread`), never silent:
|
|
51
|
+
* a stopped walk and a small spec produce the same tree and need different reactions.
|
|
52
|
+
*/
|
|
53
|
+
export const SPEC_READ_BUDGET = 500;
|
|
54
|
+
/**
|
|
55
|
+
* The issues one read pass accumulated.
|
|
56
|
+
*
|
|
57
|
+
* Threaded explicitly through every helper rather than kept in a module-level array: the reader is
|
|
58
|
+
* called concurrently (two runs, two workspaces, one process), and a shared accumulator would
|
|
59
|
+
* attribute one repo's outage to another's response.
|
|
60
|
+
*/
|
|
61
|
+
class IssueLog {
|
|
62
|
+
issues = [];
|
|
63
|
+
add(path, kind, dropped = 0) {
|
|
64
|
+
this.issues.push({ path, kind, dropped });
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* The pass's remaining read allowance, threaded beside the issue log and for the same reason.
|
|
69
|
+
*
|
|
70
|
+
* Counts the reads it REFUSED rather than logging each one: a budget that ran out 4,000 files early
|
|
71
|
+
* would otherwise make its own report the largest thing in the response, which is the failure mode
|
|
72
|
+
* the cap exists to prevent. One row, one number, added once by {@link readServiceSpec}.
|
|
73
|
+
*/
|
|
74
|
+
class ReadBudget {
|
|
75
|
+
remaining;
|
|
76
|
+
/** Reads this pass declined because the budget was spent. */
|
|
77
|
+
skipped = 0;
|
|
78
|
+
constructor(max) {
|
|
79
|
+
// At least one, so the presence anchor is always reachable: a pass that cannot even ask
|
|
80
|
+
// whether a spec exists would report every service as unreadable.
|
|
81
|
+
this.remaining = Math.max(1, Math.floor(max));
|
|
82
|
+
}
|
|
83
|
+
/** Take one read, or record that it was declined. */
|
|
84
|
+
claim() {
|
|
85
|
+
if (this.remaining <= 0) {
|
|
86
|
+
this.skipped += 1;
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
this.remaining -= 1;
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
29
93
|
function parseJson(content) {
|
|
30
94
|
try {
|
|
31
95
|
return JSON.parse(content);
|
|
@@ -43,67 +107,133 @@ function nonEmptyString(value) {
|
|
|
43
107
|
* tried first (the happy path). On failure — typically ONE field past a schema cap the
|
|
44
108
|
* lenient writer never enforces (e.g. a >120-char requirement title) — the group is rebuilt
|
|
45
109
|
* from its individually-validated requirements/rules, so one bad item drops only itself, not
|
|
46
|
-
* the whole group with its valid siblings.
|
|
110
|
+
* the whole group with its valid siblings. `group` is undefined only when even the group's own
|
|
47
111
|
* identity (its name) is unrecoverable.
|
|
112
|
+
*
|
|
113
|
+
* `dropped` counts the items the salvage lost, which is what makes the salvage REPORTABLE: a
|
|
114
|
+
* rebuilt group is a valid-looking group that is quietly missing requirements, and a reader
|
|
115
|
+
* counting coverage off it would report a smaller spec as a complete one.
|
|
116
|
+
*
|
|
117
|
+
* It is NULL when a container itself is unreadable: `requirements` (or `rules`) present but not a
|
|
118
|
+
* list — an object, a string, `null`. Those items are lost exactly as a failed validation loses
|
|
119
|
+
* them, and there is nothing to count. Coercing the container to `[]` and reporting `dropped: 0`
|
|
120
|
+
* is the same lie one layer up: the rebuilt group validates, is served, and declares nothing, so
|
|
121
|
+
* the salvage's whole purpose (a rebuilt group is never mistaken for a whole one) is defeated
|
|
122
|
+
* precisely where the shard was most badly damaged.
|
|
48
123
|
*/
|
|
49
124
|
function coerceGroupShard(value) {
|
|
50
125
|
const strict = safeParseRequirementGroup(value);
|
|
51
126
|
if (strict)
|
|
52
|
-
return strict;
|
|
127
|
+
return { group: strict, dropped: 0 };
|
|
53
128
|
if (!value || typeof value !== 'object' || Array.isArray(value))
|
|
54
|
-
return
|
|
129
|
+
return { dropped: 0 };
|
|
55
130
|
const raw = value;
|
|
56
|
-
|
|
131
|
+
// A missing container legitimately means "this group declares none" (both fields are optional);
|
|
132
|
+
// a PRESENT one that is not a list is damage, and the two must not read alike.
|
|
133
|
+
const unreadableContainer = (raw.requirements !== undefined && !Array.isArray(raw.requirements)) ||
|
|
134
|
+
(raw.rules !== undefined && !Array.isArray(raw.rules));
|
|
135
|
+
const rawRequirements = Array.isArray(raw.requirements) ? raw.requirements : [];
|
|
136
|
+
const rawRules = Array.isArray(raw.rules) ? raw.rules : [];
|
|
137
|
+
const requirements = rawRequirements
|
|
57
138
|
.map(safeParseRequirementItem)
|
|
58
139
|
.filter((r) => r !== undefined);
|
|
59
|
-
const rules =
|
|
140
|
+
const rules = rawRules
|
|
60
141
|
.map(safeParseDomainRule)
|
|
61
142
|
.filter((r) => r !== undefined);
|
|
143
|
+
const dropped = unreadableContainer
|
|
144
|
+
? null
|
|
145
|
+
: rawRequirements.length - requirements.length + (rawRules.length - rules.length);
|
|
62
146
|
// Re-validate the rebuilt group: this enforces the group-level fields (name/summary) while
|
|
63
147
|
// the requirements/rules are already valid. A bad group name is unrecoverable ⇒ undefined.
|
|
64
|
-
|
|
148
|
+
const group = safeParseRequirementGroup({ ...raw, requirements, rules });
|
|
149
|
+
return group ? { group, dropped } : { dropped: 0 };
|
|
65
150
|
}
|
|
66
|
-
/**
|
|
67
|
-
|
|
151
|
+
/**
|
|
152
|
+
* Read a file, never throwing.
|
|
153
|
+
*
|
|
154
|
+
* Null covers BOTH "the path is absent" (what `getFile` returns) and "the read failed", because
|
|
155
|
+
* every caller here does the same thing with either. The difference is not lost, though: a failure
|
|
156
|
+
* is recorded on the log, so the caller that has to tell them apart reads the diagnostics.
|
|
157
|
+
*/
|
|
158
|
+
async function safeGetFile(repo, path, ref, log, budget) {
|
|
159
|
+
if (!budget.claim())
|
|
160
|
+
return null;
|
|
68
161
|
try {
|
|
69
162
|
return await repo.getFile(path, ref);
|
|
70
163
|
}
|
|
71
164
|
catch {
|
|
165
|
+
log.add(path, 'read_failed');
|
|
72
166
|
return null;
|
|
73
167
|
}
|
|
74
168
|
}
|
|
75
|
-
/** List a directory, treating
|
|
76
|
-
async function safeList(repo, path, ref) {
|
|
169
|
+
/** List a directory, treating a failure as "empty" and recording it, so the reader never throws. */
|
|
170
|
+
async function safeList(repo, path, ref, log, budget) {
|
|
171
|
+
if (!budget.claim())
|
|
172
|
+
return [];
|
|
77
173
|
try {
|
|
78
174
|
return await repo.listDirectory(path, ref);
|
|
79
175
|
}
|
|
80
176
|
catch {
|
|
177
|
+
log.add(path, 'read_failed');
|
|
81
178
|
return [];
|
|
82
179
|
}
|
|
83
180
|
}
|
|
84
|
-
/**
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
181
|
+
/**
|
|
182
|
+
* Read the presence anchor, keeping "absent" and "the provider refused to answer" apart.
|
|
183
|
+
*
|
|
184
|
+
* The one read in this file that does NOT collapse to null, because it is the one whose failure
|
|
185
|
+
* mode is a lie rather than a gap: every other file merely thins the tree, while an unread anchor
|
|
186
|
+
* ends the walk and reports a service with no requirements at all.
|
|
187
|
+
*/
|
|
188
|
+
async function getAnchorFile(repo, ref, log, budget) {
|
|
189
|
+
// Reachable by construction (the budget floors at one and this is the pass's first read); kept
|
|
190
|
+
// as a refusal rather than an assumption, because "we never asked" is a read that failed.
|
|
191
|
+
if (!budget.claim())
|
|
192
|
+
return { status: 'read_failed' };
|
|
193
|
+
try {
|
|
194
|
+
const file = await repo.getFile(SPEC_SERVICE_PATH, ref);
|
|
195
|
+
return file ? { status: 'ok', file } : { status: 'absent' };
|
|
196
|
+
}
|
|
197
|
+
catch {
|
|
198
|
+
log.add(SPEC_SERVICE_PATH, 'read_failed');
|
|
199
|
+
return { status: 'read_failed' };
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
/** The empty view for an anchor that yielded no tree, carrying WHY it yielded none. */
|
|
203
|
+
function noSpec(anchor, log) {
|
|
204
|
+
return { present: false, spec: null, features: [], diagnostics: { anchor, issues: log.issues } };
|
|
205
|
+
}
|
|
206
|
+
/** Read + reassemble the spec on `ref` (a branch, tag or sha). Never throws. */
|
|
207
|
+
export async function readServiceSpec(repo, ref, options = {}) {
|
|
208
|
+
const log = new IssueLog();
|
|
209
|
+
const budget = new ReadBudget(options.maxReads ?? SPEC_READ_BUDGET);
|
|
210
|
+
// The presence anchor: no readable object `spec/service.json` ⇒ no spec on this branch. A read
|
|
211
|
+
// that FAILED is not an absent one, so the anchor alone is read through the discriminating
|
|
212
|
+
// helper rather than the null-collapsing one every other read uses.
|
|
213
|
+
const anchorRead = await getAnchorFile(repo, ref, log, budget);
|
|
214
|
+
if (anchorRead.status !== 'ok')
|
|
215
|
+
return noSpec(anchorRead.status, log);
|
|
216
|
+
const serviceFile = anchorRead.file;
|
|
90
217
|
const parsedService = parseJson(serviceFile.content);
|
|
91
|
-
// A non-object anchor (null / array / scalar) is a half-written or corrupt file
|
|
92
|
-
//
|
|
218
|
+
// A non-object anchor (null / array / scalar) is a half-written or corrupt file: no tree to
|
|
219
|
+
// serve, but a repo state somebody has to fix rather than a branch that simply has no spec.
|
|
93
220
|
if (!parsedService || typeof parsedService !== 'object' || Array.isArray(parsedService)) {
|
|
94
|
-
|
|
221
|
+
log.add(SPEC_SERVICE_PATH, 'unparsed');
|
|
222
|
+
return noSpec('unparsed', log);
|
|
95
223
|
}
|
|
96
|
-
const
|
|
224
|
+
const anchorFields = coerceAnchorFields(parsedService);
|
|
225
|
+
if (anchorFields.altered)
|
|
226
|
+
log.add(SPEC_SERVICE_PATH, 'partial', null);
|
|
97
227
|
// Walk `spec/modules/<moduleSlug>/` — each dir is one module, name-sorted by the writer.
|
|
98
|
-
const moduleDirs = (await safeList(repo, SPEC_MODULES_DIR, ref)).filter((e) => e.type === 'dir');
|
|
228
|
+
const moduleDirs = (await safeList(repo, SPEC_MODULES_DIR, ref, log, budget)).filter((e) => e.type === 'dir');
|
|
99
229
|
const moduleSlugToName = new Map();
|
|
100
230
|
const groupSlugToName = new Map();
|
|
101
231
|
// Phase A: per module, read its `_module.json` (for the display name) and list its shards.
|
|
102
232
|
const moduleInfos = await pMap(moduleDirs, async (dir) => {
|
|
103
233
|
const slug = dir.name;
|
|
104
234
|
const [meta, entries] = await Promise.all([
|
|
105
|
-
safeGetFile(repo, `${dir.path}/_module.json`, ref),
|
|
106
|
-
safeList(repo, dir.path, ref),
|
|
235
|
+
safeGetFile(repo, `${dir.path}/_module.json`, ref, log, budget),
|
|
236
|
+
safeList(repo, dir.path, ref, log, budget),
|
|
107
237
|
]);
|
|
108
238
|
const metaObj = (meta ? parseJson(meta.content) : undefined);
|
|
109
239
|
// Fall back to the slug for a blank name too (not only a missing one): `??` keeps `""`,
|
|
@@ -122,47 +252,98 @@ export async function readServiceSpec(repo, ref) {
|
|
|
122
252
|
groupSlug: entry.name.replace(/\.json$/, ''),
|
|
123
253
|
entry,
|
|
124
254
|
})));
|
|
125
|
-
const shardContents = await pMap(shardRefs, async (s) => ({ ref: s, file: await safeGetFile(repo, s.entry.path, ref) }), { concurrency: READ_CONCURRENCY });
|
|
255
|
+
const shardContents = await pMap(shardRefs, async (s) => ({ ref: s, file: await safeGetFile(repo, s.entry.path, ref, log, budget) }), { concurrency: READ_CONCURRENCY });
|
|
126
256
|
const groupsByModule = new Map();
|
|
127
257
|
for (const { ref: s, file } of shardContents) {
|
|
128
|
-
|
|
129
|
-
|
|
258
|
+
// A file that failed to READ is already logged; only a file we HELD and could not use is
|
|
259
|
+
// this branch's news, so the unparsed record is conditioned on having content.
|
|
260
|
+
if (!file)
|
|
130
261
|
continue;
|
|
262
|
+
const { group, dropped } = coerceGroupShard(parseJson(file.content));
|
|
263
|
+
if (!group) {
|
|
264
|
+
log.add(s.entry.path, 'unparsed');
|
|
265
|
+
continue;
|
|
266
|
+
}
|
|
267
|
+
if (dropped === null || dropped > 0)
|
|
268
|
+
log.add(s.entry.path, 'partial', dropped);
|
|
131
269
|
groupSlugToName.set(`${s.moduleSlug}/${s.groupSlug}`, group.name);
|
|
132
270
|
const list = groupsByModule.get(s.moduleSlug) ?? [];
|
|
133
271
|
list.push(group);
|
|
134
272
|
groupsByModule.set(s.moduleSlug, list);
|
|
135
273
|
}
|
|
136
274
|
const modules = moduleInfos
|
|
137
|
-
.map((m) =>
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
275
|
+
.map((m) => ({
|
|
276
|
+
slug: m.slug,
|
|
277
|
+
module: safeParseSpecModule({
|
|
278
|
+
name: m.moduleName,
|
|
279
|
+
summary: m.summary,
|
|
280
|
+
groups: groupsByModule.get(m.slug) ?? [],
|
|
281
|
+
}),
|
|
141
282
|
}))
|
|
142
|
-
.filter((
|
|
283
|
+
.filter((entry) => {
|
|
284
|
+
if (entry.module)
|
|
285
|
+
return true;
|
|
286
|
+
// A module whose own record cannot be validated takes its groups with it, so it is named
|
|
287
|
+
// against the folder that held it: dropping it silently is a whole domain vanishing.
|
|
288
|
+
log.add(`${SPEC_MODULES_DIR}/${entry.slug}`, 'unparsed');
|
|
289
|
+
return false;
|
|
290
|
+
})
|
|
291
|
+
.map((entry) => entry.module);
|
|
143
292
|
// Build the doc from the per-node-validated pieces directly, so a missing/empty service
|
|
144
|
-
// name (
|
|
145
|
-
// blanking the whole view.
|
|
293
|
+
// name (every consumer falls back to the block title) degrades to showing the modules rather
|
|
294
|
+
// than blanking the whole view.
|
|
146
295
|
const spec = {
|
|
147
|
-
service:
|
|
148
|
-
summary:
|
|
296
|
+
service: anchorFields.service,
|
|
297
|
+
summary: anchorFields.summary,
|
|
149
298
|
modules,
|
|
150
299
|
};
|
|
151
|
-
const features = await readFeatureFiles(repo, ref, moduleSlugToName, groupSlugToName);
|
|
152
|
-
|
|
300
|
+
const features = await readFeatureFiles(repo, ref, moduleSlugToName, groupSlugToName, log, budget);
|
|
301
|
+
// One row for the whole stopped walk, added last so it counts every read the pass declined.
|
|
302
|
+
if (budget.skipped > 0)
|
|
303
|
+
log.add(SPEC_DIR, 'unread', budget.skipped);
|
|
304
|
+
return { present: true, spec, features, diagnostics: { anchor: 'present', issues: log.issues } };
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* The anchor's own two fields, coerced to what {@link readSpecDocSchema} will PARSE.
|
|
308
|
+
*
|
|
309
|
+
* The reader's whole output is typed as that schema, and until this existed it was not: a
|
|
310
|
+
* `spec/service.json` naming a 300-character service, or holding a number where the summary goes,
|
|
311
|
+
* produced a view that failed the schema its own type claimed. On the SPA that is invisible; on
|
|
312
|
+
* `/api/v1` the same value is a `200` violating the published contract it is served under.
|
|
313
|
+
*
|
|
314
|
+
* `altered` is what keeps the repair from being the next silent fold: a clamped name is content
|
|
315
|
+
* this response does not carry, which is the rule every cap here already follows.
|
|
316
|
+
*/
|
|
317
|
+
function coerceAnchorFields(raw) {
|
|
318
|
+
const service = nonEmptyString(raw.service) ?? '';
|
|
319
|
+
const summary = typeof raw.summary === 'string' ? raw.summary : '';
|
|
320
|
+
const clamped = {
|
|
321
|
+
service: service.slice(0, SPEC_NAME_MAX),
|
|
322
|
+
summary: summary.slice(0, SPEC_SUMMARY_MAX),
|
|
323
|
+
};
|
|
324
|
+
// A field of the WRONG TYPE (a number, an object, a list) held content this view drops, exactly
|
|
325
|
+
// as a clamp does. A field that is absent, or a blank string, did not: "this spec names no
|
|
326
|
+
// service" is a state the read doc exists to be able to express, and reporting it as damage
|
|
327
|
+
// would fire the row on the ordinary case and make it mean nothing.
|
|
328
|
+
const droppedField = (raw.service !== undefined && typeof raw.service !== 'string') ||
|
|
329
|
+
(raw.summary !== undefined && typeof raw.summary !== 'string');
|
|
330
|
+
return {
|
|
331
|
+
...clamped,
|
|
332
|
+
altered: droppedField || clamped.service !== service || clamped.summary !== summary,
|
|
333
|
+
};
|
|
153
334
|
}
|
|
154
335
|
/** Read the seeded Gherkin `.feature` files under `spec/features/<module>/<group>.feature`. */
|
|
155
|
-
async function readFeatureFiles(repo, ref, moduleSlugToName, groupSlugToName) {
|
|
156
|
-
const moduleDirs = (await safeList(repo, SPEC_FEATURES_DIR, ref)).filter((e) => e.type === 'dir');
|
|
336
|
+
async function readFeatureFiles(repo, ref, moduleSlugToName, groupSlugToName, log, budget) {
|
|
337
|
+
const moduleDirs = (await safeList(repo, SPEC_FEATURES_DIR, ref, log, budget)).filter((e) => e.type === 'dir');
|
|
157
338
|
const perModule = await pMap(moduleDirs, async (dir) => {
|
|
158
|
-
const entries = await safeList(repo, dir.path, ref);
|
|
339
|
+
const entries = await safeList(repo, dir.path, ref, log, budget);
|
|
159
340
|
return entries
|
|
160
341
|
.filter((e) => e.type === 'file' && e.name.endsWith('.feature'))
|
|
161
342
|
.map((entry) => ({ slug: dir.name, entry }));
|
|
162
343
|
}, { concurrency: READ_CONCURRENCY });
|
|
163
344
|
const featureRefs = perModule.flat();
|
|
164
345
|
const read = await pMap(featureRefs, async (fr) => {
|
|
165
|
-
const file = await safeGetFile(repo, fr.entry.path, ref);
|
|
346
|
+
const file = await safeGetFile(repo, fr.entry.path, ref, log, budget);
|
|
166
347
|
if (!file)
|
|
167
348
|
return null;
|
|
168
349
|
const groupSlug = fr.entry.name.replace(/\.feature$/, '');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readServiceSpec.js","sourceRoot":"","sources":["../../src/repo-ops/readServiceSpec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"readServiceSpec.js","sourceRoot":"","sources":["../../src/repo-ops/readServiceSpec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/agents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.120.1",
|
|
4
4
|
"description": "Agent catalog, routing, prompts and fragment library for the Agent Architecture Board.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -32,14 +32,14 @@
|
|
|
32
32
|
"handlebars": "^4.7.9",
|
|
33
33
|
"p-map": "^7.0.6",
|
|
34
34
|
"valibot": "^1.4.2",
|
|
35
|
-
"@cat-factory/contracts": "0.
|
|
36
|
-
"@cat-factory/kernel": "0.
|
|
37
|
-
"@cat-factory/prompt-fragments": "1.0.
|
|
35
|
+
"@cat-factory/contracts": "0.281.0",
|
|
36
|
+
"@cat-factory/kernel": "0.276.0",
|
|
37
|
+
"@cat-factory/prompt-fragments": "1.0.30"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"typescript": "7.0.2",
|
|
41
41
|
"vitest": "^4.1.10",
|
|
42
|
-
"@cat-factory/caching": "0.18.
|
|
42
|
+
"@cat-factory/caching": "0.18.21"
|
|
43
43
|
},
|
|
44
44
|
"scripts": {
|
|
45
45
|
"build": "tsc -b tsconfig.build.json",
|