@telora/daemon 0.22.293 → 0.22.306

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 (80) hide show
  1. package/build-info.json +2 -2
  2. package/dist/completion/review-exit/review-census-record.d.ts.map +1 -1
  3. package/dist/completion/review-exit/review-census-record.js +1 -0
  4. package/dist/completion/review-exit/review-census-record.js.map +1 -1
  5. package/dist/completion/review-exit/review-exit-deps.d.ts +1 -0
  6. package/dist/completion/review-exit/review-exit-deps.d.ts.map +1 -1
  7. package/dist/completion/review-exit/review-exit-phase.js +7 -4
  8. package/dist/completion/review-exit/review-exit-phase.js.map +1 -1
  9. package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts +17 -1
  10. package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts.map +1 -1
  11. package/dist/completion/review-exit-holds/review-exit-verdict-gate.js +21 -0
  12. package/dist/completion/review-exit-holds/review-exit-verdict-gate.js.map +1 -1
  13. package/dist/completion/state-cascade/standing-approval-convergence.d.ts +7 -2
  14. package/dist/completion/state-cascade/standing-approval-convergence.d.ts.map +1 -1
  15. package/dist/completion/state-cascade/standing-approval-convergence.js +56 -31
  16. package/dist/completion/state-cascade/standing-approval-convergence.js.map +1 -1
  17. package/dist/completion/state-cascade/standing-approval-stranded.d.ts +39 -0
  18. package/dist/completion/state-cascade/standing-approval-stranded.d.ts.map +1 -0
  19. package/dist/completion/state-cascade/standing-approval-stranded.js +142 -0
  20. package/dist/completion/state-cascade/standing-approval-stranded.js.map +1 -0
  21. package/dist/composition/commit-gate-context.d.ts.map +1 -1
  22. package/dist/composition/commit-gate-context.js +2 -1
  23. package/dist/composition/commit-gate-context.js.map +1 -1
  24. package/dist/composition/standing-approval-context.d.ts.map +1 -1
  25. package/dist/composition/standing-approval-context.js +2 -0
  26. package/dist/composition/standing-approval-context.js.map +1 -1
  27. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  28. package/dist/prompt-sections/persona-sections.js +3 -0
  29. package/dist/prompt-sections/persona-sections.js.map +1 -1
  30. package/dist/prompt-sections/routing-decider-sections.d.ts.map +1 -1
  31. package/dist/prompt-sections/routing-decider-sections.js +2 -0
  32. package/dist/prompt-sections/routing-decider-sections.js.map +1 -1
  33. package/dist/queries/api-client/shared.js +1 -1
  34. package/dist/queries/escalations/cause-key.d.ts +11 -0
  35. package/dist/queries/escalations/cause-key.d.ts.map +1 -1
  36. package/dist/queries/escalations/cause-key.js +15 -0
  37. package/dist/queries/escalations/cause-key.js.map +1 -1
  38. package/dist/queries/escalations/escalation-consumption.d.ts.map +1 -1
  39. package/dist/queries/escalations/escalation-consumption.js +1 -0
  40. package/dist/queries/escalations/escalation-consumption.js.map +1 -1
  41. package/dist/queries/escalations/filing-observation.d.ts.map +1 -1
  42. package/dist/queries/escalations/filing-observation.js +1 -0
  43. package/dist/queries/escalations/filing-observation.js.map +1 -1
  44. package/dist/supervision/agent-resolvable-promotion.d.ts +14 -2
  45. package/dist/supervision/agent-resolvable-promotion.d.ts.map +1 -1
  46. package/dist/supervision/agent-resolvable-promotion.js +24 -3
  47. package/dist/supervision/agent-resolvable-promotion.js.map +1 -1
  48. package/dist/supervision/escalation-filing.js +1 -1
  49. package/dist/supervision/escalation-suppression.js +1 -1
  50. package/dist/supervision/focus-delivery-aggregate-phase.d.ts.map +1 -1
  51. package/dist/supervision/focus-delivery-aggregate-phase.js +1 -0
  52. package/dist/supervision/focus-delivery-aggregate-phase.js.map +1 -1
  53. package/dist/supervision/stop-registry.d.ts +1 -0
  54. package/dist/supervision/stop-registry.d.ts.map +1 -1
  55. package/dist/supervision/stop-rows-delivery.d.ts +6 -0
  56. package/dist/supervision/stop-rows-delivery.d.ts.map +1 -1
  57. package/dist/supervision/stop-rows-delivery.js +20 -0
  58. package/dist/supervision/stop-rows-delivery.js.map +1 -1
  59. package/dist/testing/fixtures/api-client.js +1 -1
  60. package/dist/testing/fixtures/index.js +1 -1
  61. package/dist/types/index.js +1 -1
  62. package/dist/verify/gate-config/commit-gate-configured.d.ts +2 -0
  63. package/dist/verify/gate-config/commit-gate-configured.d.ts.map +1 -1
  64. package/dist/verify/gate-config/commit-gate-configured.js.map +1 -1
  65. package/dist/verify/shortfalls/each-table.d.ts +45 -0
  66. package/dist/verify/shortfalls/each-table.d.ts.map +1 -0
  67. package/dist/verify/shortfalls/each-table.js +219 -0
  68. package/dist/verify/shortfalls/each-table.js.map +1 -0
  69. package/dist/verify/shortfalls/each-title-render.d.ts +67 -0
  70. package/dist/verify/shortfalls/each-title-render.d.ts.map +1 -0
  71. package/dist/verify/shortfalls/each-title-render.js +473 -0
  72. package/dist/verify/shortfalls/each-title-render.js.map +1 -0
  73. package/dist/verify/shortfalls/generated-test-titles.d.ts +18 -0
  74. package/dist/verify/shortfalls/generated-test-titles.d.ts.map +1 -0
  75. package/dist/verify/shortfalls/generated-test-titles.js +232 -0
  76. package/dist/verify/shortfalls/generated-test-titles.js.map +1 -0
  77. package/dist/verify/shortfalls/ruling-evidence-resolution.d.ts.map +1 -1
  78. package/dist/verify/shortfalls/ruling-evidence-resolution.js +6 -2
  79. package/dist/verify/shortfalls/ruling-evidence-resolution.js.map +1 -1
  80. package/package.json +1 -1
@@ -0,0 +1,232 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/verify/shortfalls/generated-test-titles.test.ts
3
+ // PINNED-BY-END
4
+ /**
5
+ * Whether a cited test name is the EXPANDED title of a test the source generates.
6
+ *
7
+ * A review cites a test as `path::test name` (drift/artifact-ref-shape.ts), and
8
+ * verify resolves it by existence at the judged commit
9
+ * (verify/shortfalls/ruling-evidence-resolution.ts). A literal title appears in
10
+ * the file; a generated one does not. `it.each([...])('landing %s stops', ...)`
11
+ * runs a test named `landing beforeHandoff stops`, a string written nowhere in
12
+ * the source, so without this a correct `met` citing the name the runner
13
+ * reported would not resolve.
14
+ *
15
+ * This module reads the source's GENERATED titles and turns each into patterns:
16
+ * - the title literal passed to the call a `.each` (it / test / describe / suite /
17
+ * bench, any modifiers) returns is expanded ROW BY ROW against its table
18
+ * (verify/shortfalls/each-table.ts) into the ONE title the file's runner
19
+ * gives that row (verify/shortfalls/each-title-render.ts: vitest and jest,
20
+ * told apart by the file's imports; neither named, only a title both give).
21
+ * A table that is not spelled out literally (`it.each(CASES)`), or a row
22
+ * whose title is not reproduced, yields no pattern -- fail closed;
23
+ * - a template-literal title with `${...}` passed straight to it / test /
24
+ * describe: each substitution matches any text (its value lives in scope,
25
+ * not in a table this reader could expand).
26
+ * A cited name resolves when it matches a pattern in full, or its last ` > `
27
+ * segment does (a runner's full name prefixes the describe chain). Existence
28
+ * only: nothing is run or evaluated, no model is called. A file this scanner
29
+ * cannot read (a regex literal holding a quote, say) yields fewer titles, so the
30
+ * ref stays unresolved exactly as it did before -- the scan can only ever ADD a
31
+ * resolution for a title the source really generates. Pure.
32
+ *
33
+ * History: docs/daemon/history-verify.md (verify/shortfalls/generated-test-titles.ts).
34
+ *
35
+ * @module verify/shortfalls/generated-test-titles
36
+ */
37
+ import { parseArrayTableItems, parseTemplateTable } from './each-table.js';
38
+ import { eachRunnerOf, renderTableTitles } from './each-title-render.js';
39
+ /** A test-declaring callee immediately before `(`: it / test / describe / suite / bench with modifiers. */
40
+ const TEST_CALLEE_RE = /(?:^|[^\w$.])(?:it|test|describe|suite|bench)(?:\s*\.\s*[A-Za-z]+)*\s*$/;
41
+ /** Whether the code just before index `i` is `.each` (whitespace allowed between). Reads backwards, so a long file costs no rescans. */
42
+ function endsWithEach(src, i) {
43
+ const j = lastNonSpaceBefore(src, i);
44
+ return j >= 4 && src.slice(j - 4, j + 1) === '.each';
45
+ }
46
+ /** The index just past a template literal's closing backtick, collecting its raw body. Handles nested `${...}`. */
47
+ function scanTemplate(src, open, out, eachEnds) {
48
+ let i = open + 1;
49
+ while (i < src.length) {
50
+ const c = src[i];
51
+ if (c === '\\') {
52
+ i += 2;
53
+ continue;
54
+ }
55
+ if (c === '`') {
56
+ out.push({ start: open, end: i, quote: '`', body: src.slice(open + 1, i) });
57
+ return i + 1;
58
+ }
59
+ if (c === '$' && src[i + 1] === '{') {
60
+ i = scanCode(src, i + 2, out, eachEnds, '}');
61
+ continue;
62
+ }
63
+ i++;
64
+ }
65
+ return src.length;
66
+ }
67
+ /** The index just past a quoted string's closing quote. */
68
+ function scanQuoted(src, open, out) {
69
+ const quote = src[open];
70
+ let i = open + 1;
71
+ while (i < src.length && src[i] !== quote && src[i] !== '\n')
72
+ i += src[i] === '\\' ? 2 : 1;
73
+ out.push({ start: open, end: i, quote, body: src.slice(open + 1, i) });
74
+ return i + 1;
75
+ }
76
+ /** The index just past a comment starting at `i`, or `i` when none starts there. */
77
+ function skipComment(src, i) {
78
+ if (src[i] !== '/')
79
+ return i;
80
+ if (src[i + 1] === '/') {
81
+ const nl = src.indexOf('\n', i);
82
+ return nl === -1 ? src.length : nl + 1;
83
+ }
84
+ if (src[i + 1] === '*') {
85
+ const close = src.indexOf('*/', i + 2);
86
+ return close === -1 ? src.length : close + 2;
87
+ }
88
+ return i;
89
+ }
90
+ /**
91
+ * Scan code from `i` until the unmatched `stop` (or end of input): records every
92
+ * literal, and the table of each `.each` call keyed by the `)` / backtick ending it.
93
+ */
94
+ function scanCode(src, i, out, eachEnds, stop) {
95
+ const opens = [];
96
+ let depth = 0;
97
+ while (i < src.length) {
98
+ const next = skipComment(src, i);
99
+ if (next !== i) {
100
+ i = next;
101
+ continue;
102
+ }
103
+ const c = src[i];
104
+ if (c === stop && depth === 0)
105
+ return i + 1;
106
+ if (c === '"' || c === "'") {
107
+ i = scanQuoted(src, i, out);
108
+ continue;
109
+ }
110
+ if (c === '`') {
111
+ const end = scanTemplate(src, i, out, eachEnds);
112
+ if (endsWithEach(src, i))
113
+ eachEnds.set(end - 1, { kind: 'template', body: src.slice(i + 1, end - 1) });
114
+ i = end;
115
+ continue;
116
+ }
117
+ if (c === '(' || c === '[' || c === '{') {
118
+ opens.push(i);
119
+ depth++;
120
+ }
121
+ else if (c === ')' || c === ']' || c === '}') {
122
+ const open = opens.pop();
123
+ depth = Math.max(0, depth - 1);
124
+ if (c === ')' && open !== undefined && endsWithEach(src, open))
125
+ eachEnds.set(i, { kind: 'array', text: src.slice(open + 1, i) });
126
+ }
127
+ i++;
128
+ }
129
+ return i;
130
+ }
131
+ /** The index of the last non-whitespace character before `i`, or -1. */
132
+ function lastNonSpaceBefore(src, i) {
133
+ let j = i - 1;
134
+ while (j >= 0 && /\s/.test(src[j] ?? ''))
135
+ j--;
136
+ return j;
137
+ }
138
+ /** Undo a literal's quote and backslash escapes (enough to compare titles). */
139
+ function unescapeBody(body) {
140
+ return body.replace(/\\(.)/g, '$1');
141
+ }
142
+ function escapeRegExp(s) {
143
+ return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
144
+ }
145
+ /**
146
+ * One pattern per table row an each-style title generates under `runner`: the
147
+ * row's exact title (each-title-render.ts), with a template title's `${...}`
148
+ * substitutions matching any text. Rows whose title is not reproduced contribute
149
+ * none.
150
+ */
151
+ export function eachTitlePatterns(title, table, runner, template = false) {
152
+ const parts = template ? splitTemplate(title) : [{ text: unescapeBody(title), wildcard: false }];
153
+ return renderTableTitles(parts, table, runner)
154
+ .filter((segments) => segments !== null)
155
+ .map((segments) => new RegExp(`^${segments.map(escapeRegExp).join('.*')}$`, 's'));
156
+ }
157
+ /** A template body split into its text (escapes undone) and its `${...}` substitutions (braces balanced). */
158
+ function splitTemplate(body) {
159
+ const parts = [];
160
+ let text = '';
161
+ let i = 0;
162
+ while (i < body.length) {
163
+ if (body[i] === '\\') {
164
+ text += body[i + 1] ?? '';
165
+ i += 2;
166
+ continue;
167
+ }
168
+ if (body[i] === '$' && body[i + 1] === '{') {
169
+ let depth = 1;
170
+ let j = i + 2;
171
+ for (; j < body.length && depth > 0; j++)
172
+ depth += body[j] === '{' ? 1 : body[j] === '}' ? -1 : 0;
173
+ parts.push({ text, wildcard: false }, { text: '', wildcard: true });
174
+ text = '';
175
+ i = j;
176
+ continue;
177
+ }
178
+ text += body[i];
179
+ i++;
180
+ }
181
+ parts.push({ text, wildcard: false });
182
+ return parts;
183
+ }
184
+ /** A pattern for a template-literal title: every `${...}` (braces balanced) matches any text. */
185
+ export function templateTitlePattern(body) {
186
+ const source = splitTemplate(body).map((p) => (p.wildcard ? '.*' : escapeRegExp(p.text))).join('');
187
+ return new RegExp(`^${source}$`, 's');
188
+ }
189
+ /** The table a `.each` call was given, read literally; null when it is not spelled out. */
190
+ function eachTableInput(table) {
191
+ if (table.kind === 'array') {
192
+ const items = parseArrayTableItems(table.text);
193
+ return items === null ? null : { kind: 'array', items };
194
+ }
195
+ const rows = parseTemplateTable(table.body);
196
+ return rows === null ? null : { kind: 'template', rows: rows.map((r) => r[0]) };
197
+ }
198
+ /** The patterns a literal contributes when it is a generated test title (none otherwise). */
199
+ function titlePatternsOf(src, lit, eachEnds, runner) {
200
+ const paren = lastNonSpaceBefore(src, lit.start);
201
+ if (paren < 0 || src[paren] !== '(')
202
+ return [];
203
+ const table = eachEnds.get(lastNonSpaceBefore(src, paren));
204
+ if (table !== undefined) {
205
+ const input = eachTableInput(table);
206
+ return input === null ? [] : eachTitlePatterns(lit.body, input, runner, lit.quote === '`');
207
+ }
208
+ if (lit.quote === '`' && lit.body.includes('${') && TEST_CALLEE_RE.test(src.slice(Math.max(0, paren - 80), paren))) {
209
+ return [templateTitlePattern(lit.body)];
210
+ }
211
+ return [];
212
+ }
213
+ /** Every generated test title in `source`, as patterns an expanded name matches. Pure. */
214
+ export function generatedTitlePatterns(source) {
215
+ const literals = [];
216
+ const eachEnds = new Map();
217
+ scanCode(source, 0, literals, eachEnds);
218
+ const runner = eachRunnerOf(source);
219
+ return literals.flatMap((lit) => titlePatternsOf(source, lit, eachEnds, runner));
220
+ }
221
+ /**
222
+ * Whether `testName` is the expanded name of a test `source` generates: the whole
223
+ * name, or its last ` > ` segment, matches one generated title's pattern. Pure.
224
+ */
225
+ export function matchesGeneratedTestTitle(source, testName) {
226
+ const name = testName.trim();
227
+ const segments = name.split(' > ');
228
+ const last = (segments.at(-1) ?? '').trim();
229
+ const candidates = segments.length > 1 ? [name, last] : [name];
230
+ return generatedTitlePatterns(source).some((p) => candidates.some((c) => p.test(c)));
231
+ }
232
+ //# sourceMappingURL=generated-test-titles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-test-titles.js","sourceRoot":"","sources":["../../../src/verify/shortfalls/generated-test-titles.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ruling-evidence-resolution.d.ts","sourceRoot":"","sources":["../../../src/verify/shortfalls/ruling-evidence-resolution.ts"],"names":[],"mappings":"AAuCA,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAQvF,4DAA4D;AAC5D,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;AAErH,sGAAsG;AACtG,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAClC;AAED,oEAAoE;AACpE,eAAO,MAAM,eAAe,wBAAwB,CAAC;AAKrD,uFAAuF;AACvF,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAIlD;AAkCD;;;;;;;;;;GAUG;AACH,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,SAAS,WAAW,EAAE,EAC5B,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAOlC;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAMvH;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EACvC,KAAK,EAAE,mBAAmB,GAAG,SAAS,GACrC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAqBlC;AAED,gHAAgH;AAChH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,CAAC,EAAE,CAAC,EACJ,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAC7F,mBAAmB,CAErB"}
1
+ {"version":3,"file":"ruling-evidence-resolution.d.ts","sourceRoot":"","sources":["../../../src/verify/shortfalls/ruling-evidence-resolution.ts"],"names":[],"mappings":"AA0CA,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AASvF,4DAA4D;AAC5D,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;AAErH,sGAAsG;AACtG,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAClC;AAED,oEAAoE;AACpE,eAAO,MAAM,eAAe,wBAAwB,CAAC;AAKrD,uFAAuF;AACvF,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAIlD;AAkCD;;;;;;;;;;GAUG;AACH,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,SAAS,WAAW,EAAE,EAC5B,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAOlC;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAMvH;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EACvC,KAAK,EAAE,mBAAmB,GAAG,SAAS,GACrC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAqBlC;AAED,gHAAgH;AAChH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,CAAC,EAAE,CAAC,EACJ,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAC7F,mBAAmB,CAErB"}
@@ -15,7 +15,10 @@
15
15
  * the review_complete boundary also uses (`parseEvidenceRef`,
16
16
  * drift/artifact-ref-shape.ts):
17
17
  * - `path` the path is a file (blob) at the commit;
18
- * - `path::test name` the file exists and the test name appears in its content;
18
+ * - `path::test name` the file exists and the test name appears in its content,
19
+ * or is the expanded name of a test the file GENERATES
20
+ * (it.each / test.each / describe.each format strings,
21
+ * template-literal titles: verify/shortfalls/generated-test-titles.ts);
19
22
  * - `path:LINE` the file exists and has at least LINE lines.
20
23
  * Read through `git cat-file` on the commit's object -- no checkout is touched,
21
24
  * nothing is written, and no model is called. Whether the test PASSES, or the
@@ -37,6 +40,7 @@ import { execFile } from 'node:child_process';
37
40
  import { promisify } from 'node:util';
38
41
  import { parseEvidenceRef } from '../../drift/artifact-ref-shape.js';
39
42
  import { hermeticGitEnv } from '../effect-reconciliation/judge-checkout.js';
43
+ import { matchesGeneratedTestTitle } from './generated-test-titles.js';
40
44
  const execFileAsync = promisify(execFile);
41
45
  /** A full 40/64-hex commit sha -- the only thing a reference is resolved at. */
42
46
  const COMMIT_SHA_RE = /^[0-9a-f]{40}([0-9a-f]{24})?$/i;
@@ -77,7 +81,7 @@ async function resolveOne(repoPath, ref, sha) {
77
81
  const blob = await git(repoPath, ['cat-file', 'blob', object]);
78
82
  if (!blob.ok)
79
83
  return `${ref.path} could not be read at ${sha.slice(0, 12)} (${blob.message})`;
80
- if (ref.testName !== undefined && !blob.stdout.includes(ref.testName)) {
84
+ if (ref.testName !== undefined && !blob.stdout.includes(ref.testName) && !matchesGeneratedTestTitle(blob.stdout, ref.testName)) {
81
85
  return `test "${ref.testName}" does not appear in ${ref.path} at ${sha.slice(0, 12)}`;
82
86
  }
83
87
  if (ref.line !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"ruling-evidence-resolution.js","sourceRoot":"","sources":["../../../src/verify/shortfalls/ruling-evidence-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ruling-evidence-resolution.js","sourceRoot":"","sources":["../../../src/verify/shortfalls/ruling-evidence-resolution.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telora/daemon",
3
- "version": "0.22.293",
3
+ "version": "0.22.306",
4
4
  "description": "Agent orchestration daemon for Telora - spawns and manages Claude Code instances",
5
5
  "type": "module",
6
6
  "bin": {