@dzhechkov/harness-core 0.8.21 → 0.8.23

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 (54) hide show
  1. package/.dz-manifest.json +68 -48
  2. package/README.md +163 -0
  3. package/dist/amendment-trace.d.ts.map +1 -1
  4. package/dist/amendment-trace.js +5 -140
  5. package/dist/amendment-trace.js.map +1 -1
  6. package/dist/claude-hooks-assets.d.ts +3 -3
  7. package/dist/claude-hooks-assets.d.ts.map +1 -1
  8. package/dist/claude-hooks-assets.js +24 -11
  9. package/dist/claude-hooks-assets.js.map +1 -1
  10. package/dist/discrimination-gate.d.ts.map +1 -1
  11. package/dist/discrimination-gate.js +2 -1
  12. package/dist/discrimination-gate.js.map +1 -1
  13. package/dist/feature-adr-routing.d.ts +3 -1
  14. package/dist/feature-adr-routing.d.ts.map +1 -1
  15. package/dist/feature-adr-routing.js +17 -10
  16. package/dist/feature-adr-routing.js.map +1 -1
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/loop-blobs.generated.js +2 -2
  22. package/dist/loop-blobs.generated.js.map +1 -1
  23. package/dist/markdown-masker.d.ts +21 -0
  24. package/dist/markdown-masker.d.ts.map +1 -0
  25. package/dist/markdown-masker.js +119 -0
  26. package/dist/markdown-masker.js.map +1 -0
  27. package/dist/mutation-gate.d.ts +16 -7
  28. package/dist/mutation-gate.d.ts.map +1 -1
  29. package/dist/mutation-gate.js +141 -30
  30. package/dist/mutation-gate.js.map +1 -1
  31. package/dist/statusline.d.ts +14 -0
  32. package/dist/statusline.d.ts.map +1 -1
  33. package/dist/statusline.js +24 -1
  34. package/dist/statusline.js.map +1 -1
  35. package/dist/store-counts.d.ts +12 -0
  36. package/dist/store-counts.d.ts.map +1 -1
  37. package/dist/store-counts.js +30 -12
  38. package/dist/store-counts.js.map +1 -1
  39. package/dist/swarm-brief.d.ts.map +1 -1
  40. package/dist/swarm-brief.js +13 -144
  41. package/dist/swarm-brief.js.map +1 -1
  42. package/package.json +6 -6
  43. package/sbom.json +97 -47
  44. package/src/amendment-trace.ts +6 -123
  45. package/src/claude-hooks-assets.ts +24 -11
  46. package/src/discrimination-gate.ts +2 -1
  47. package/src/feature-adr-routing.ts +21 -11
  48. package/src/index.ts +2 -0
  49. package/src/loop-blobs.generated.ts +2 -2
  50. package/src/markdown-masker.ts +109 -0
  51. package/src/mutation-gate.ts +167 -31
  52. package/src/statusline.ts +35 -1
  53. package/src/store-counts.ts +44 -13
  54. package/src/swarm-brief.ts +13 -104
@@ -56,6 +56,29 @@ export function runWithOneInternalRetry(runner) {
56
56
  const SAFE_ID = /^[a-z0-9][a-z0-9-]{0,79}$/;
57
57
  /** same shape as discrimination-gate's path rule: package-relative, no traversal, no metacharacters. */
58
58
  const UNSAFE_FILE = /(^\/)|(^[A-Za-z]:)|(^~)|(^-)|(\/-)|(\.\.(\/|\\|$))|[\0`$;&|<>*?"'\n\r\t\\]/;
59
+ function preclassifiedEntryResult(index, raw, verdict, detail, idOverride) {
60
+ const rawId = typeof raw['id'] === 'string' ? raw['id'] : '';
61
+ const id = idOverride ?? (SAFE_ID.test(rawId) ? rawId : `entry-${index + 1}-invalid`);
62
+ const property = typeof raw['property'] === 'string' && raw['property'].trim() !== ''
63
+ ? raw['property'].trim()
64
+ : `Registry entry ${index + 1}`;
65
+ const file = typeof raw['file'] === 'string' && raw['file'].trim() !== ''
66
+ ? raw['file'].trim()
67
+ : '<not provided>';
68
+ return {
69
+ id,
70
+ property,
71
+ file,
72
+ applied: false,
73
+ occurrences: 0,
74
+ exitCode: null,
75
+ failingCount: null,
76
+ verdict,
77
+ drop: false,
78
+ dropComparable: false,
79
+ detail,
80
+ };
81
+ }
59
82
  /** Parse + validate a registry JSON text. Accepts a bare array or `{testCommand?, requireCompletionReceipt?, entries}`. */
60
83
  export function parseMutationRegistry(text) {
61
84
  let raw;
@@ -63,7 +86,7 @@ export function parseMutationRegistry(text) {
63
86
  raw = JSON.parse(text);
64
87
  }
65
88
  catch (e) {
66
- return { registry: null, errors: [`registry is not valid JSON: ${String(e.message).slice(0, 120)}`] };
89
+ return { registry: null, entryResults: [], errors: [`registry is not valid JSON: ${String(e.message).slice(0, 120)}`] };
67
90
  }
68
91
  let entriesRaw;
69
92
  let testCommand;
@@ -76,51 +99,75 @@ export function parseMutationRegistry(text) {
76
99
  entriesRaw = obj.entries;
77
100
  if (obj.testCommand !== undefined) {
78
101
  if (typeof obj.testCommand !== 'string' || obj.testCommand.trim() === '') {
79
- return { registry: null, errors: ['testCommand must be a non-empty string when present'] };
102
+ return { registry: null, entryResults: [], errors: ['testCommand must be a non-empty string when present'] };
80
103
  }
81
104
  testCommand = obj.testCommand.trim();
82
105
  }
83
106
  if (obj.requireCompletionReceipt !== undefined) {
84
107
  if (typeof obj.requireCompletionReceipt !== 'boolean') {
85
- return { registry: null, errors: ['requireCompletionReceipt must be a boolean when present'] };
108
+ return { registry: null, entryResults: [], errors: ['requireCompletionReceipt must be a boolean when present'] };
86
109
  }
87
110
  requireCompletionReceipt = obj.requireCompletionReceipt;
88
111
  }
89
112
  }
90
113
  if (!Array.isArray(entriesRaw)) {
91
- return { registry: null, errors: ['registry must be an array of entries or {testCommand?, requireCompletionReceipt?, entries: [...]}'] };
114
+ return { registry: null, entryResults: [], errors: ['registry must be an array of entries or {testCommand?, requireCompletionReceipt?, entries: [...]}'] };
92
115
  }
93
116
  if (entriesRaw.length === 0) {
94
117
  // An empty registry "passes" by testing nothing — the same silent hole as a skipped mutation.
95
- return { registry: null, errors: ['registry has no entries — an empty registry proves nothing and is refused'] };
118
+ return { registry: null, entryResults: [], errors: ['registry has no entries — an empty registry proves nothing and is refused'] };
96
119
  }
97
120
  const errors = [];
98
121
  const entries = [];
122
+ const entryResults = [];
99
123
  const seen = new Set();
100
124
  entriesRaw.forEach((e, i) => {
101
125
  const at = `entries[${i}]`;
126
+ const rawForResult = e && typeof e === 'object' ? e : {};
127
+ const reject = (detail, idOverride) => {
128
+ errors.push(detail);
129
+ entryResults.push(preclassifiedEntryResult(i, rawForResult, 'ENTRY_INVALID', detail, idOverride));
130
+ };
102
131
  if (!e || typeof e !== 'object') {
103
- errors.push(`${at}: not an object`);
132
+ reject(`${at}: not an object`);
104
133
  return;
105
134
  }
106
135
  const o = e;
107
136
  const id = typeof o['id'] === 'string' ? o['id'] : '';
108
137
  if (!SAFE_ID.test(id)) {
109
- errors.push(`${at}: id must be kebab-case [a-z0-9-], got ${JSON.stringify(o['id'])}`);
138
+ reject(`${at}: id must be kebab-case [a-z0-9-], got ${JSON.stringify(o['id'])}`);
110
139
  return;
111
140
  }
112
141
  if (seen.has(id)) {
113
- errors.push(`${at}: duplicate id '${id}'`);
142
+ reject(`${at}: duplicate id '${id}'`, `entry-${i + 1}-invalid`);
114
143
  return;
115
144
  }
116
145
  seen.add(id);
117
146
  if (typeof o['property'] !== 'string' || o['property'].trim() === '') {
118
- errors.push(`${id}: property (the claimed sentence) is required`);
147
+ reject(`${id}: property (the claimed sentence) is required`);
148
+ return;
149
+ }
150
+ if (o['uncoverable'] !== undefined && o['uncoverable'] !== true) {
151
+ reject(`${id}: uncoverable must be true when present`);
152
+ return;
153
+ }
154
+ if (o['uncoverable'] === true) {
155
+ const reason = typeof o['reason'] === 'string' ? o['reason'].trim() : '';
156
+ if (reason === '') {
157
+ reject(`${id}: reason is required when uncoverable is true`);
158
+ return;
159
+ }
160
+ const declaredFile = typeof o['file'] === 'string' ? o['file'].trim() : '';
161
+ if (declaredFile === '' || /[\u0000-\u001f\u007f]/.test(declaredFile)) {
162
+ reject(`${id}: file must be a non-empty single-line path for an uncoverable declaration`);
163
+ return;
164
+ }
165
+ entryResults.push(preclassifiedEntryResult(i, o, 'COVERAGE_GAP', `declared uncoverable: ${reason} — author declaration, not a measurement; no mutation ran`));
119
166
  return;
120
167
  }
121
168
  const file = typeof o['file'] === 'string' ? o['file'] : '';
122
169
  if (file === '' || UNSAFE_FILE.test(file)) {
123
- errors.push(`${id}: file must be a plain package-relative path, got ${JSON.stringify(o['file'])}`);
170
+ reject(`${id}: file must be a plain package-relative path, got ${JSON.stringify(o['file'])}`);
124
171
  return;
125
172
  }
126
173
  // A registry file under node_modules/ is refused OUTRIGHT (F-2): the registry names protections
@@ -130,22 +177,22 @@ export function parseMutationRegistry(text) {
130
177
  // the real working tree (SPEC rule 3). The executor's realpath containment is the belt; this
131
178
  // is the cheaper layer-1 refusal for the case that is always a mistake.
132
179
  if (file.split('/').includes('node_modules')) {
133
- errors.push(`${id}: file targets node_modules/ (${JSON.stringify(file)}) — refused: a dependency file is not this package's protection, and the scratch copy shares node_modules with the REAL tree (rule 3: never mutate the working tree)`);
180
+ reject(`${id}: file targets node_modules/ (${JSON.stringify(file)}) — refused: a dependency file is not this package's protection, and the scratch copy shares node_modules with the REAL tree (rule 3: never mutate the working tree)`);
134
181
  return;
135
182
  }
136
183
  const mut = o['mutation'];
137
184
  if (!mut || typeof mut !== 'object' || typeof mut.find !== 'string' || mut.find.length === 0 || typeof mut.replace !== 'string') {
138
- errors.push(`${id}: mutation must be {find: <non-empty string>, replace: <string>}`);
185
+ reject(`${id}: mutation must be {find: <non-empty string>, replace: <string>}`);
139
186
  return;
140
187
  }
141
188
  if (mut.find === mut.replace) {
142
- errors.push(`${id}: mutation.replace equals mutation.find — a no-op mutation tests nothing`);
189
+ reject(`${id}: mutation.replace equals mutation.find — a no-op mutation tests nothing`);
143
190
  return;
144
191
  }
145
192
  let minFailing = 1;
146
193
  if (o['minFailing'] !== undefined) {
147
194
  if (typeof o['minFailing'] !== 'number' || !Number.isInteger(o['minFailing']) || o['minFailing'] < 1) {
148
- errors.push(`${id}: minFailing must be a positive integer`);
195
+ reject(`${id}: minFailing must be a positive integer`);
149
196
  return;
150
197
  }
151
198
  minFailing = o['minFailing'];
@@ -153,7 +200,7 @@ export function parseMutationRegistry(text) {
153
200
  let observed;
154
201
  if (o['observed'] !== undefined) {
155
202
  if (typeof o['observed'] !== 'number' || !Number.isInteger(o['observed']) || o['observed'] < 1) {
156
- errors.push(`${id}: observed must be a positive integer when present`);
203
+ reject(`${id}: observed must be a positive integer when present`);
157
204
  return;
158
205
  }
159
206
  observed = o['observed'];
@@ -161,11 +208,11 @@ export function parseMutationRegistry(text) {
161
208
  let maxFailing;
162
209
  if (o['maxFailing'] !== undefined) {
163
210
  if (typeof o['maxFailing'] !== 'number' || !Number.isInteger(o['maxFailing']) || o['maxFailing'] < 1) {
164
- errors.push(`${id}: maxFailing must be a positive integer when present`);
211
+ reject(`${id}: maxFailing must be a positive integer when present`);
165
212
  return;
166
213
  }
167
214
  if (o['maxFailing'] < minFailing) {
168
- errors.push(`${id}: maxFailing (${o['maxFailing']}) must be >= minFailing (${minFailing}) — a contradictory bound can never pass`);
215
+ reject(`${id}: maxFailing (${o['maxFailing']}) must be >= minFailing (${minFailing}) — a contradictory bound can never pass`);
169
216
  return;
170
217
  }
171
218
  maxFailing = o['maxFailing'];
@@ -181,15 +228,14 @@ export function parseMutationRegistry(text) {
181
228
  };
182
229
  entries.push(entry);
183
230
  });
184
- if (errors.length > 0)
185
- return { registry: null, errors };
186
231
  return {
187
232
  registry: {
188
233
  ...(testCommand !== undefined ? { testCommand } : {}),
189
234
  ...(requireCompletionReceipt !== undefined ? { requireCompletionReceipt } : {}),
190
235
  entries,
191
236
  },
192
- errors: [],
237
+ entryResults,
238
+ errors,
193
239
  };
194
240
  }
195
241
  /** Count NON-OVERLAPPING occurrences and apply only when the count is exactly 1. */
@@ -247,6 +293,19 @@ export function countFailingTests(rawOutput) {
247
293
  const notOk = output.match(/^not ok\b/gm);
248
294
  if (notOk !== null && notOk.length > 0)
249
295
  return notOk.length;
296
+ // Zero requires a complete, recognised vitest summary, never the absence of failure text.
297
+ // Keep TAP and every existing positive-count path above this additional fallback.
298
+ if (detectRunnerKind(output) === 'vitest') {
299
+ const zero = /^[ \t]*Tests[ \t]+(\d+[ \t]+(?:passed|skipped|todo)(?:[ \t]*\|[ \t]*\d+[ \t]+(?:passed|skipped|todo))*)[ \t]+\((\d+)\)[ \t]*\r?$/m.exec(output);
300
+ if (zero !== null) {
301
+ const counts = [...zero[1].matchAll(/(\d+)[ \t]+(?:passed|skipped|todo)/g)]
302
+ .map((match) => Number(match[1]));
303
+ const total = Number(zero[2]);
304
+ if (Number.isSafeInteger(total) && total > 0 && counts.every(Number.isSafeInteger)
305
+ && counts.reduce((sum, count) => sum + count, 0) === total)
306
+ return 0;
307
+ }
308
+ }
250
309
  return null;
251
310
  }
252
311
  // ── Run-failure classification — the route-a′ signal, from THE RUN ITSELF (round-6 rework) ────
@@ -380,6 +439,15 @@ export function classifyRunFailure(rawOutput) {
380
439
  if (/^\s*Tests\s+[^|\n]*?\d+\s+failed/m.test(output) || /\bFailed Tests\s+\d+\b/.test(output)) {
381
440
  return { runner: 'vitest', kind: 'assertions' };
382
441
  }
442
+ const workerTimeout = /\[vitest-worker\]: Timeout calling "([^"\r\n]+)"/.exec(output);
443
+ if (countFailingTests(output) === 0 && workerTimeout !== null) {
444
+ return {
445
+ runner: 'vitest',
446
+ kind: 'runner-infrastructure',
447
+ reason: 'worker-rpc-timeout',
448
+ evidence: `vitest worker RPC timeout (${workerTimeout[1]}), 0 failing tests`,
449
+ };
450
+ }
383
451
  return { runner: 'vitest', kind: 'unrecognised', evidence: 'red vitest run with neither Failed Suites nor failed tests in the output — the redness has no classifiable source (unhandled error outside any test?)' };
384
452
  }
385
453
  return {
@@ -420,6 +488,10 @@ export function attributeBaselineRedness(rawOutput, registryFiles) {
420
488
  ? 'unparseable'
421
489
  : vitestMatches.length > 0 ? 'vitest' : 'node-test';
422
490
  if (parsedFrom === 'unparseable') {
491
+ const failure = classifyRunFailure(output);
492
+ if (failure.kind === 'runner-infrastructure') {
493
+ return { parsedFrom, failingFiles: [], covered: [], extraneous: [], infrastructureFailure: failure };
494
+ }
423
495
  return { parsedFrom, failingFiles: [], covered: [], extraneous: [] };
424
496
  }
425
497
  const normalisedRegistry = registryFiles
@@ -443,6 +515,14 @@ export function classifyBaseline(exitCode, runFailureReason, attribution) {
443
515
  detail: `baseline INCONCLUSIVE — suite produced no exit code (${runFailureReason ?? 'unknown timeout/spawn failure'}) — the copy is not runnable; do not read this as a mutation result`,
444
516
  };
445
517
  }
518
+ const infrastructure = attribution?.infrastructureFailure;
519
+ if (infrastructure?.kind === 'runner-infrastructure') {
520
+ return {
521
+ ok: false,
522
+ ...(infrastructure.reason !== undefined ? { reason: infrastructure.reason } : {}),
523
+ detail: `baseline suite RED (exit ${exitCode}) in the UNMUTATED scratch copy — runner infrastructure failure: ${infrastructure.reason} — ${infrastructure.evidence}; the broken copy cannot prove anything`,
524
+ };
525
+ }
446
526
  if (attribution === undefined || attribution.parsedFrom === 'unparseable') {
447
527
  return {
448
528
  ok: false,
@@ -596,9 +676,12 @@ function classifyMutationOutcomeWithoutAttemptLog(obs) {
596
676
  // not come back green, so the suite is flaky and an unrelated neighbour may be what went red.
597
677
  // Not attributable ⇒ INCONCLUSIVE (a failure, never a pass).
598
678
  if (obs.rebaselineExitCode !== undefined && obs.rebaselineExitCode !== 0) {
599
- const failing = obs.rebaselineAttribution === undefined || obs.rebaselineAttribution.parsedFrom === 'unparseable'
600
- ? 'failing files: unparseable from runner output'
601
- : `failing files: ${obs.rebaselineAttribution.failingFiles.join(', ')}`;
679
+ const infrastructure = obs.rebaselineAttribution?.infrastructureFailure;
680
+ const failing = infrastructure?.kind === 'runner-infrastructure'
681
+ ? `runner infrastructure failure: ${infrastructure.reason} — ${infrastructure.evidence}`
682
+ : obs.rebaselineAttribution === undefined || obs.rebaselineAttribution.parsedFrom === 'unparseable'
683
+ ? 'failing files: unparseable from runner output'
684
+ : `failing files: ${obs.rebaselineAttribution.failingFiles.join(', ')}`;
602
685
  return {
603
686
  ...base,
604
687
  applied: true,
@@ -646,20 +729,44 @@ export function classifyMutationOutcome(obs) {
646
729
  return result;
647
730
  return { ...result, detail: `${result.detail}; ${obs.internalAttemptLog}` };
648
731
  }
649
- /** Verdicts that fail the gate. INCONCLUSIVE and NOT_APPLIED fail (inconclusive ≠ pass). */
650
- const FAILING_VERDICTS = new Set(['UNDEFENDED', 'RECEIPT_MISMATCH', 'NOT_APPLIED', 'BELOW_MIN', 'MUTATION_UNPARSEABLE', 'MUTATION_LOAD_FATAL', 'OVER_FAILING', 'INCONCLUSIVE']);
651
- /** Exit contract: 0 all proven · 1 any entry failed (or red baseline) · (2 = usage/setup, CLI-side). */
732
+ /**
733
+ * Verdicts that fail the gate. INCONCLUSIVE and NOT_APPLIED fail (inconclusive pass).
734
+ *
735
+ * COVERAGE_GAP is deliberately NOT here (owner decision 2026-09-09, option A). A declared gap is a
736
+ * DEBT, not a breakage: the orchestrator script is uncoverable by construction, so failing on gaps
737
+ * would make this package's gate red FOREVER — and a lamp that is always on is read exactly like a
738
+ * lamp that is off. What the mechanism owes is COUNTABILITY, and the summary delivers it: gaps are
739
+ * counted on their own line, carry their own per-entry verdict, and can never be mistaken for a
740
+ * proven protection. ENTRY_INVALID stays failing — a malformed entry is a broken claim, not a
741
+ * declared one, and it has an author who can fix it today.
742
+ */
743
+ const FAILING_VERDICTS = new Set([
744
+ 'ENTRY_INVALID',
745
+ 'UNDEFENDED',
746
+ 'RECEIPT_MISMATCH',
747
+ 'NOT_APPLIED',
748
+ 'BELOW_MIN',
749
+ 'MUTATION_UNPARSEABLE',
750
+ 'MUTATION_LOAD_FATAL',
751
+ 'OVER_FAILING',
752
+ 'INCONCLUSIVE',
753
+ ]);
754
+ /** Exit contract: 0 all runnable entries proven · 1 a runnable entry failed (or red baseline) ·
755
+ * 2 no mutation-eligible entry exists, so the registry/selection is unusable as a run. */
652
756
  export function mutationGateExitCode(results, baselineOk) {
757
+ const hasRunnableEntry = results.some((result) => result.verdict !== 'ENTRY_INVALID' && result.verdict !== 'COVERAGE_GAP');
758
+ if (!hasRunnableEntry)
759
+ return 2;
653
760
  if (!baselineOk)
654
761
  return 1;
655
- if (results.length === 0)
656
- return 1; // nothing ran ⇒ nothing proven
657
762
  return results.some((r) => FAILING_VERDICTS.has(r.verdict)) ? 1 : 0;
658
763
  }
659
764
  export function summarizeMutationResults(results) {
660
765
  return {
661
766
  total: results.length,
662
767
  proven: results.filter((r) => r.verdict === 'PROVEN').length,
768
+ entryInvalid: results.filter((r) => r.verdict === 'ENTRY_INVALID').length,
769
+ coverageGaps: results.filter((r) => r.verdict === 'COVERAGE_GAP').length,
663
770
  undefended: results.filter((r) => r.verdict === 'UNDEFENDED').length,
664
771
  receiptMismatch: results.filter((r) => r.verdict === 'RECEIPT_MISMATCH').length,
665
772
  notApplied: results.filter((r) => r.verdict === 'NOT_APPLIED').length,
@@ -674,6 +781,10 @@ export function summarizeMutationResults(results) {
674
781
  }
675
782
  const VERDICT_MARK = {
676
783
  PROVEN: '✓',
784
+ ENTRY_INVALID: '✗',
785
+ // Пробел — объявленный ДОЛГ, а не отказ (вариант А владельца 2026-09-09): свой значок, чтобы
786
+ // строку нельзя было прочитать как провал защиты.
787
+ COVERAGE_GAP: '⚠',
677
788
  UNDEFENDED: '✗',
678
789
  RECEIPT_MISMATCH: '✗',
679
790
  NOT_APPLIED: '✗',
@@ -696,10 +807,10 @@ export function renderMutationReport(results, baseline, packageDir) {
696
807
  lines.push(` ${r.detail}`);
697
808
  }
698
809
  const s = summarizeMutationResults(results);
699
- lines.push(` summary: ${s.proven}/${s.total} proven · ${s.undefended} undefended · ${s.receiptMismatch} receipt-mismatch · ${s.notApplied} not-applied · ${s.belowMin} below-min · ${s.unparseable} unparseable · ${s.loadFatal} load-fatal · ${s.overFailing} over-failing · ${s.inconclusive} inconclusive · ${s.drops} coverage drop(s) among ${s.dropComparable}/${s.total} observed-anchored entries (a drop is undetectable without an \`observed\` anchor)`);
810
+ lines.push(` summary: ${s.proven}/${s.total} proven · ${s.entryInvalid} entry-invalid · ${s.coverageGaps} coverage-gap · ${s.undefended} undefended · ${s.receiptMismatch} receipt-mismatch · ${s.notApplied} not-applied · ${s.belowMin} below-min · ${s.unparseable} unparseable · ${s.loadFatal} load-fatal · ${s.overFailing} over-failing · ${s.inconclusive} inconclusive · ${s.drops} coverage drop(s) among ${s.dropComparable}/${s.total} observed-anchored entries (a drop is undetectable without an \`observed\` anchor)`);
700
811
  lines.push(mutationGateExitCode(results, baseline.ok) === 0
701
812
  ? ' verdict: PASS — every named protection has a test that goes red when the protection is deleted'
702
- : ' verdict: FAIL — at least one named protection is undefended, unmutable, or unproven');
813
+ : ' verdict: FAIL — at least one named protection is invalid, undefended, unmutable, or unproven');
703
814
  return lines.join('\n');
704
815
  }
705
816
  //# sourceMappingURL=mutation-gate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-gate.js","sourceRoot":"","sources":["../src/mutation-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutation-gate.js","sourceRoot":"","sources":["../src/mutation-gate.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,14 @@ export interface FeatureAdrState {
52
52
  export interface StatuslineData {
53
53
  /** Count of learned patterns in the project's unified memory store. */
54
54
  readonly patterns: number;
55
+ /** Absent on parity; missing/unreadable mirror is explicitly unavailable. */
56
+ readonly patternMirror?: {
57
+ readonly state: 'different';
58
+ readonly lexical: number;
59
+ readonly vector: number;
60
+ } | {
61
+ readonly state: 'unavailable';
62
+ };
55
63
  /** Exact lexical-tier availability split; omitted when the enhanced readonly count cannot be established. */
56
64
  readonly patternBreakdown?: {
57
65
  readonly source: 'lexical';
@@ -66,6 +74,12 @@ export interface StatuslineData {
66
74
  readonly usedPatterns?: number;
67
75
  /** Number of sources registered in the durable cross-project knowledge brain. */
68
76
  readonly brainSources: number;
77
+ /**
78
+ * KU-объём КАЖДОГО источника, в том же порядке, что их перечисляет brain. Владелец 2026-09-09:
79
+ * одно число источников не говорит, велик ли корпус и не пуст ли какой-то из них.
80
+ * Пустой массив означает «перечислить не удалось», а не «источников нет» — их число рядом.
81
+ */
82
+ readonly brainKuCounts: readonly number[];
69
83
  /** Hours since the last `dz consolidate` run, if a watermark is present. */
70
84
  readonly consolidatedAgeH?: number;
71
85
  /** Live `/feature-adr` learning state — present ONLY when a fresh run is in flight. */
@@ -1 +1 @@
1
- {"version":3,"file":"statusline.d.ts","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statusline.d.ts","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"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"}
@@ -502,6 +502,23 @@ export function statuslineData(projectRoot, now = Date.now()) {
502
502
  catch {
503
503
  storeHealth = undefined;
504
504
  }
505
+ // Сравнивать можно только сравнимое: слева уроки лексического слоя, справа уроки зеркала.
506
+ // Полный объём зеркала (`vectorRows`) для этого не годится — в него входят идеи бэклога и
507
+ // книжные единицы, и показатель на нём горел бы всегда. Неизвестное число уроков — это
508
+ // ТРЕТЬЕ состояние «не читается», а не молчание: молчание означает «величины сошлись».
509
+ // ОТСУТСТВИЕ зеркала и НЕЧИТАЕМОСТЬ зеркала — разные положения (решение владельца 2026-09-09).
510
+ // Зеркала нет вовсе: сравнивать не с чем, показатель молчит — иначе у любого проекта, который
511
+ // зеркалом не пользуется, он горел бы всегда, а вечно горящий показатель не несёт сведений.
512
+ // Зеркало ЕСТЬ, но прочитать или разложить его не удалось: это отказ инструмента, и он горит.
513
+ const mirrorLessons = storeRows?.vectorLessonRows;
514
+ const mirrorAbsent = storeRows !== undefined && storeRows.vectorSourcePath === undefined;
515
+ const patternMirror = mirrorAbsent
516
+ ? undefined
517
+ : storeRows === undefined || storeRows.vectorRows === 'unreadable' || mirrorLessons === undefined
518
+ ? { state: 'unavailable' }
519
+ : mirrorLessons !== patterns
520
+ ? { state: 'different', lexical: patterns, vector: mirrorLessons }
521
+ : undefined;
505
522
  let patternBreakdown;
506
523
  try {
507
524
  if (storeRows !== undefined
@@ -524,11 +541,15 @@ export function statuslineData(projectRoot, now = Date.now()) {
524
541
  patternBreakdown = undefined;
525
542
  }
526
543
  let brainSources = 0;
544
+ let brainKuCounts = [];
527
545
  try {
528
- brainSources = listBrain().length;
546
+ const sources = listBrain();
547
+ brainSources = sources.length;
548
+ brainKuCounts = sources.map((s) => (typeof s.kuCount === 'number' ? s.kuCount : 0));
529
549
  }
530
550
  catch {
531
551
  brainSources = 0;
552
+ brainKuCounts = [];
532
553
  }
533
554
  let usedPatterns;
534
555
  try {
@@ -548,9 +569,11 @@ export function statuslineData(projectRoot, now = Date.now()) {
548
569
  }
549
570
  return {
550
571
  patterns,
572
+ ...(patternMirror !== undefined ? { patternMirror } : {}),
551
573
  ...(patternBreakdown !== undefined ? { patternBreakdown } : {}),
552
574
  ...(usedPatterns !== undefined ? { usedPatterns } : {}),
553
575
  brainSources,
576
+ brainKuCounts,
554
577
  ...(ageH !== undefined ? { consolidatedAgeH: ageH } : {}),
555
578
  ...(featureAdr !== undefined ? { featureAdr } : {}),
556
579
  ...(storeHealth !== undefined ? { storeHealth } : {}),