@dzhechkov/harness-core 0.8.39 → 0.8.41
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/.dz-manifest.json +235 -135
- package/README.md +91 -8
- package/dist/__tests__/golden-baseline.test.js +1 -1
- package/dist/__tests__/golden-baseline.test.js.map +1 -1
- package/dist/agentdb-index.js +3 -3
- package/dist/agentdb-index.js.map +1 -1
- package/dist/agentdb-reindex-marker.d.ts +2 -2
- package/dist/agentdb-reindex-marker.js +4 -4
- package/dist/agentdb-reindex-marker.js.map +1 -1
- package/dist/agentdb-snapshot-rotation.d.ts +1 -1
- package/dist/agentdb-snapshot-rotation.js +1 -1
- package/dist/backup-freshness.d.ts +32 -0
- package/dist/backup-freshness.d.ts.map +1 -0
- package/dist/backup-freshness.js +69 -0
- package/dist/backup-freshness.js.map +1 -0
- package/dist/cmd-usage.d.ts +2 -2
- package/dist/cmd-usage.d.ts.map +1 -1
- package/dist/cmd-usage.js +56 -8
- package/dist/cmd-usage.js.map +1 -1
- package/dist/codex-hooks-assets.d.ts +2 -1
- package/dist/codex-hooks-assets.d.ts.map +1 -1
- package/dist/codex-hooks-assets.js +15 -2
- package/dist/codex-hooks-assets.js.map +1 -1
- package/dist/compounding.d.ts +109 -1
- package/dist/compounding.d.ts.map +1 -1
- package/dist/compounding.js +172 -9
- package/dist/compounding.js.map +1 -1
- package/dist/discrimination-gate.d.ts +0 -3
- package/dist/discrimination-gate.d.ts.map +1 -1
- package/dist/discrimination-gate.js +2 -2
- package/dist/discrimination-gate.js.map +1 -1
- package/dist/doctor-instrument.d.ts +65 -0
- package/dist/doctor-instrument.d.ts.map +1 -0
- package/dist/doctor-instrument.js +91 -0
- package/dist/doctor-instrument.js.map +1 -0
- package/dist/feature-tier.d.ts.map +1 -1
- package/dist/feature-tier.js +13 -1
- package/dist/feature-tier.js.map +1 -1
- package/dist/guard.d.ts +39 -2
- package/dist/guard.d.ts.map +1 -1
- package/dist/guard.js +117 -14
- package/dist/guard.js.map +1 -1
- package/dist/index.d.ts +20 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -6
- package/dist/index.js.map +1 -1
- package/dist/integration-apply.js +2 -2
- package/dist/integration-apply.js.map +1 -1
- package/dist/lesson-payoff.js +3 -3
- package/dist/lesson-payoff.js.map +1 -1
- package/dist/mutation-gate.d.ts +30 -0
- package/dist/mutation-gate.d.ts.map +1 -1
- package/dist/mutation-gate.js +45 -1
- package/dist/mutation-gate.js.map +1 -1
- package/dist/named-lock.d.ts +5 -2
- package/dist/named-lock.d.ts.map +1 -1
- package/dist/named-lock.js +30 -10
- package/dist/named-lock.js.map +1 -1
- package/dist/operations.d.ts +13 -0
- package/dist/operations.d.ts.map +1 -1
- package/dist/operations.js +112 -2
- package/dist/operations.js.map +1 -1
- package/dist/pack-inventory.d.ts +51 -0
- package/dist/pack-inventory.d.ts.map +1 -0
- package/dist/pack-inventory.js +306 -0
- package/dist/pack-inventory.js.map +1 -0
- package/dist/package-skill-layouts.d.ts +3 -2
- package/dist/package-skill-layouts.d.ts.map +1 -1
- package/dist/package-skill-layouts.js +3 -2
- package/dist/package-skill-layouts.js.map +1 -1
- package/dist/patterns.d.ts +8 -0
- package/dist/patterns.d.ts.map +1 -1
- package/dist/patterns.js +11 -1
- package/dist/patterns.js.map +1 -1
- package/dist/publish.d.ts +29 -7
- package/dist/publish.d.ts.map +1 -1
- package/dist/publish.js +92 -15
- package/dist/publish.js.map +1 -1
- package/dist/registry.d.ts +58 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +86 -25
- package/dist/registry.js.map +1 -1
- package/dist/release.d.ts +18 -0
- package/dist/release.d.ts.map +1 -1
- package/dist/release.js +30 -0
- package/dist/release.js.map +1 -1
- package/dist/reqe-verdict.d.ts +55 -0
- package/dist/reqe-verdict.d.ts.map +1 -0
- package/dist/reqe-verdict.js +173 -0
- package/dist/reqe-verdict.js.map +1 -0
- package/dist/reqe.d.ts +35 -14
- package/dist/reqe.d.ts.map +1 -1
- package/dist/reqe.js +85 -32
- package/dist/reqe.js.map +1 -1
- package/dist/round-exec.d.ts +10 -0
- package/dist/round-exec.d.ts.map +1 -1
- package/dist/round-exec.js +3 -2
- package/dist/round-exec.js.map +1 -1
- package/dist/round.d.ts +29 -0
- package/dist/round.d.ts.map +1 -1
- package/dist/round.js +8 -0
- package/dist/round.js.map +1 -1
- package/dist/session-retro.d.ts +1 -1
- package/dist/session-retro.js +3 -3
- package/dist/session-retro.js.map +1 -1
- package/dist/skill-drift.d.ts +18 -1
- package/dist/skill-drift.d.ts.map +1 -1
- package/dist/skill-drift.js +46 -13
- package/dist/skill-drift.js.map +1 -1
- package/dist/statusline.js +2 -2
- package/dist/statusline.js.map +1 -1
- package/dist/store-guard.js +3 -3
- package/dist/store-guard.js.map +1 -1
- package/dist/store-lock.d.ts +9 -0
- package/dist/store-lock.d.ts.map +1 -1
- package/dist/store-lock.js +22 -3
- package/dist/store-lock.js.map +1 -1
- package/dist/test-receipt.d.ts +66 -0
- package/dist/test-receipt.d.ts.map +1 -0
- package/dist/test-receipt.js +73 -0
- package/dist/test-receipt.js.map +1 -0
- package/dist/workflow-run.d.ts.map +1 -1
- package/dist/workflow-run.js +7 -8
- package/dist/workflow-run.js.map +1 -1
- package/package.json +1 -1
- package/sbom.json +384 -134
- package/src/__tests__/golden-baseline.test.ts +1 -1
- package/src/agentdb-index.ts +3 -3
- package/src/agentdb-reindex-marker.ts +4 -4
- package/src/agentdb-snapshot-rotation.ts +1 -1
- package/src/backup-freshness.ts +96 -0
- package/src/cmd-usage.ts +59 -8
- package/src/codex-hooks-assets.ts +15 -2
- package/src/compounding.ts +244 -10
- package/src/discrimination-gate.ts +2 -5
- package/src/doctor-instrument.ts +153 -0
- package/src/feature-tier.ts +14 -1
- package/src/guard.ts +128 -17
- package/src/index.ts +28 -7
- package/src/integration-apply.ts +2 -2
- package/src/lesson-payoff.ts +3 -3
- package/src/mutation-gate.ts +54 -1
- package/src/named-lock.ts +36 -11
- package/src/operations.ts +109 -3
- package/src/pack-inventory.ts +313 -0
- package/src/package-skill-layouts.ts +3 -2
- package/src/patterns.ts +18 -1
- package/src/publish.ts +101 -22
- package/src/registry.ts +114 -18
- package/src/release.ts +36 -0
- package/src/reqe-verdict.ts +174 -0
- package/src/reqe.ts +111 -35
- package/src/round-exec.ts +13 -2
- package/src/round.ts +38 -0
- package/src/session-retro.ts +3 -3
- package/src/skill-drift.ts +66 -12
- package/src/statusline.ts +2 -2
- package/src/store-guard.ts +3 -3
- package/src/store-lock.ts +20 -3
- package/src/test-receipt.ts +106 -0
- package/src/workflow-run.ts +7 -8
package/dist/compounding.d.ts
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
*
|
|
15
15
|
* Everything here is PURE: callers gather facts (files, store rows); this module only computes.
|
|
16
16
|
*/
|
|
17
|
+
import type { GuardOp } from './guard.js';
|
|
17
18
|
import { type PromotionAcceptanceEvidence, type PromotionRunEvidence } from './guard-promotion.js';
|
|
18
19
|
/** Deterministic PRNG — same seed, same stream, byte-identical reports. */
|
|
19
20
|
export declare function mulberry32(seed: number): () => number;
|
|
@@ -73,13 +74,18 @@ export interface ReplayInstance {
|
|
|
73
74
|
export declare function replayableInstances(usage: readonly UsageEvent[], lessonText?: ReadonlyMap<string, string>): ReplayInstance[];
|
|
74
75
|
export interface GuardEvent {
|
|
75
76
|
readonly ts: string;
|
|
76
|
-
readonly op?:
|
|
77
|
+
readonly op?: GuardOp;
|
|
77
78
|
readonly verdict: string;
|
|
78
79
|
readonly rules: readonly string[];
|
|
79
80
|
readonly violations?: readonly {
|
|
80
81
|
readonly rule: string;
|
|
81
82
|
readonly contentAnchor?: string;
|
|
82
83
|
}[];
|
|
84
|
+
/**
|
|
85
|
+
* 1-based position of this record among the log's non-empty lines — the ONLY thing that can place
|
|
86
|
+
* it relative to a chain defect. Absent when the caller read the rows without a chain.
|
|
87
|
+
*/
|
|
88
|
+
readonly chainLine?: number;
|
|
83
89
|
}
|
|
84
90
|
export type FunnelEvidenceSource<T> = {
|
|
85
91
|
readonly status: 'measured';
|
|
@@ -88,9 +94,24 @@ export type FunnelEvidenceSource<T> = {
|
|
|
88
94
|
readonly status: 'not-measured';
|
|
89
95
|
readonly reason: string;
|
|
90
96
|
};
|
|
97
|
+
/**
|
|
98
|
+
* Where the guard journal's chain damage sits, so a PERIOD can be judged instead of the whole FILE.
|
|
99
|
+
*
|
|
100
|
+
* A log damaged once in March and unbroken since is not evidence against September's rows, and
|
|
101
|
+
* refusing to measure September because of March is the same "verdict answers a different question"
|
|
102
|
+
* defect the chain headline was fixed for (backlog b38dd3ba, MEASURED 2026-09-21: 28 defects, all
|
|
103
|
+
* before a run of 1169 unbroken records, suppressed BOTH measured months).
|
|
104
|
+
*/
|
|
105
|
+
export interface GuardAuditChainWindow {
|
|
106
|
+
/** First non-empty line of the current unbroken run: one past the last defect. */
|
|
107
|
+
readonly runFrom: number;
|
|
108
|
+
/** Total defects in the file. Zero means the window imposes nothing. */
|
|
109
|
+
readonly defects: number;
|
|
110
|
+
}
|
|
91
111
|
export interface LessonToRuleFunnelFacts {
|
|
92
112
|
readonly promotionRuns: FunnelEvidenceSource<PromotionRunEvidence>;
|
|
93
113
|
readonly guardAudits: FunnelEvidenceSource<GuardEvent>;
|
|
114
|
+
readonly guardAuditChain?: GuardAuditChainWindow;
|
|
94
115
|
readonly promotionAcceptances?: readonly PromotionAcceptanceEvidence[];
|
|
95
116
|
readonly truncatedPromotionPeriods?: readonly string[];
|
|
96
117
|
readonly acceptanceHistoryComplete?: boolean;
|
|
@@ -187,6 +208,20 @@ export interface EvidenceChainHealth {
|
|
|
187
208
|
readonly preChainPrefix: number;
|
|
188
209
|
readonly defects: number;
|
|
189
210
|
readonly defectKinds: readonly string[];
|
|
211
|
+
/**
|
|
212
|
+
* WHERE the defects sit relative to the log's current unbroken run, and HOW MUCH of a run that is.
|
|
213
|
+
* Without this a bare `FAILED` over a log whose damage is entirely historical reads as "today's
|
|
214
|
+
* numbers are garbage", while `dz chain` over the SAME file says "healed … verdicts over those are
|
|
215
|
+
* sound" — MEASURED 2026-09-20 on `.dz/guard-audit.jsonl`: 28 defects, all before the current run,
|
|
216
|
+
* 1095 unbroken records after them; one instrument printed FAILED, the other healed, both exit 0
|
|
217
|
+
* (backlog 79ce6262). Neither was lying; neither named its WINDOW. `event-chain.ts` says it
|
|
218
|
+
* outright: a caller that reports soundness without printing the run size overclaims on its behalf,
|
|
219
|
+
* and the same holds for a caller that reports damage without printing where the damage sits.
|
|
220
|
+
*/
|
|
221
|
+
readonly defectsBeforeRun: number;
|
|
222
|
+
readonly defectsInRun: number;
|
|
223
|
+
/** Records in the current unbroken run — the evidence behind any "sound for today" reading. */
|
|
224
|
+
readonly runRecords: number;
|
|
190
225
|
}
|
|
191
226
|
export interface InstrumentationHealth {
|
|
192
227
|
readonly lastUsageTs: string | null;
|
|
@@ -212,5 +247,78 @@ export interface CompoundingReport {
|
|
|
212
247
|
}
|
|
213
248
|
export declare function assembleLessonToRuleFunnel(facts: LessonToRuleFunnelFacts, nowTs: string): LessonToRuleFunnelReport;
|
|
214
249
|
export declare function assembleCompoundingReport(facts: CompoundingFacts): CompoundingReport;
|
|
250
|
+
/**
|
|
251
|
+
* The HEADLINE verdict over every evidence log — three-valued, because two values lied.
|
|
252
|
+
*
|
|
253
|
+
* MEASURED 2026-09-21 on `.dz/guard-audit.jsonl`: 28 defects, the LAST of them dated 2026-09-05,
|
|
254
|
+
* followed by more than a thousand unbroken records. The old headline read
|
|
255
|
+
* "CORRUPT — the numbers above are computed from a damaged log", which is true of the FILE'S
|
|
256
|
+
* HISTORY and false about the numbers it was printed next to. The distinction already existed one
|
|
257
|
+
* function below, in {@link chainVerdictPhrase}; it simply never reached the line a reader sees
|
|
258
|
+
* first. That is the same defect class this report exists to find: a verdict answering a different
|
|
259
|
+
* question than the one it appears to answer.
|
|
260
|
+
*/
|
|
261
|
+
/**
|
|
262
|
+
* Whether the report's OWN numbers may be trusted, as a value the caller can turn into an exit code.
|
|
263
|
+
*
|
|
264
|
+
* Backlog 79ce6262 named the defect: the report printed "the numbers above are computed from a
|
|
265
|
+
* damaged log" and exited 0 anyway — a tool announcing its own output untrustworthy and reporting
|
|
266
|
+
* success. That record offered two lawful cures and asked which applies. Both do, on different
|
|
267
|
+
* branches, and only the three-valued verdict lets them coexist: damage BEHIND the current run
|
|
268
|
+
* narrows the WORDING (the numbers stand, exit 0), damage INSIDE it makes the numbers genuinely
|
|
269
|
+
* unreliable and must reach the exit code.
|
|
270
|
+
*
|
|
271
|
+
* `'trusted'` ⇒ 0. `'unreliable'` ⇒ a non-zero the caller chooses — the run succeeded, the verdict
|
|
272
|
+
* cannot be relied on, which is this repository's INCONCLUSIVE shape, not its failure shape.
|
|
273
|
+
*/
|
|
274
|
+
export declare function chainTrust(chains: readonly EvidenceChainHealth[]): 'trusted' | 'unreliable';
|
|
275
|
+
export declare function chainHeadline(chains: readonly EvidenceChainHealth[]): string;
|
|
276
|
+
/**
|
|
277
|
+
* The verdict phrase for one evidence log, with its WINDOW named. A bare `FAILED` over damage that an
|
|
278
|
+
* unbroken run has already followed is true of the FILE and misleading about TODAY — see
|
|
279
|
+
* {@link EvidenceChainHealth.defectsBeforeRun}.
|
|
280
|
+
*/
|
|
281
|
+
export declare function chainVerdictPhrase(c: EvidenceChainHealth): string;
|
|
215
282
|
export declare function renderCompoundingReport(r: CompoundingReport): string;
|
|
283
|
+
export interface LessonOutcomeRow {
|
|
284
|
+
readonly lessons?: readonly string[];
|
|
285
|
+
readonly outcome?: string;
|
|
286
|
+
readonly grade?: string | null;
|
|
287
|
+
readonly slug?: string;
|
|
288
|
+
readonly stage?: string;
|
|
289
|
+
}
|
|
290
|
+
export interface LessonOutcomeCounters {
|
|
291
|
+
pairs: number;
|
|
292
|
+
shipped: number;
|
|
293
|
+
refuted: number;
|
|
294
|
+
blocked: number;
|
|
295
|
+
other: number;
|
|
296
|
+
graded: number;
|
|
297
|
+
grades: Record<string, number>;
|
|
298
|
+
}
|
|
299
|
+
export interface LessonOutcomeCoverage {
|
|
300
|
+
readonly lessonsWithOutcome: number;
|
|
301
|
+
readonly pairsTotal: number;
|
|
302
|
+
readonly pairsUngraded: number;
|
|
303
|
+
readonly duplicateRowsDropped: number;
|
|
304
|
+
}
|
|
305
|
+
export interface JoinedLessonOutcomes {
|
|
306
|
+
readonly perLesson: ReadonlyMap<string, LessonOutcomeCounters>;
|
|
307
|
+
readonly totals: LessonOutcomeCounters;
|
|
308
|
+
readonly coverage: LessonOutcomeCoverage;
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Считает пары «урок ↔ исход работы» из уже прочитанных строк леджера.
|
|
312
|
+
* unknown допускает мусор после разбора JSON; поля проверяются перед использованием.
|
|
313
|
+
* Неизвестный или отсутствующий исход попадает в other, пустой грейд — в пары без грейда.
|
|
314
|
+
* Буквы грейдов сохраняются как категории, без перевода в единый балл пользы.
|
|
315
|
+
* Полные JSON-дубликаты строк и повторные id внутри одной строки не умножают пары.
|
|
316
|
+
*/
|
|
317
|
+
export declare function joinLessonOutcomes(rows: readonly unknown[]): JoinedLessonOutcomes;
|
|
318
|
+
/**
|
|
319
|
+
* Размер стора передаёт вызывающий код: в строках леджера этого знаменателя нет.
|
|
320
|
+
* Для доли покрытия набор joined должен относиться к урокам этого стора.
|
|
321
|
+
* Без знаменателя доля остаётся неизвестной, а не превращается в 100%.
|
|
322
|
+
*/
|
|
323
|
+
export declare function renderLessonOutcomes(joined: JoinedLessonOutcomes, storeLessonCount?: number): string;
|
|
216
324
|
//# sourceMappingURL=compounding.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compounding.d.ts","sourceRoot":"","sources":["../src/compounding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAI9B,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,MAAM,CASrD;AAED,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC;mDACmD;AACnD,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,kGAAkG;IAClG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,2DAA2D;AAC3D,wBAAgB,cAAc,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,SAAK,GAAG,cAAc,GAAG,IAAI,CAsB3G;AAED,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,mBAAmB,CAAC;AAE1E,+FAA+F;AAC/F,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,EAAE,QAAQ,SAAI,GAAG,gBAAgB,CAc5F;AAID,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;4EACwE;IACxE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,6FAA6F;IAC7F,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mGAAmG;IACnG,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,UAAU,GAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAa,GAClD,cAAc,EAAE,CAclB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"compounding.d.ts","sourceRoot":"","sources":["../src/compounding.ts"],"names":[],"mappings":"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"}
|
package/dist/compounding.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
*
|
|
15
15
|
* Everything here is PURE: callers gather facts (files, store rows); this module only computes.
|
|
16
16
|
*/
|
|
17
|
-
import { EVENT_CHAIN_SCOPE, verifyEventChainText } from './event-chain.js';
|
|
17
|
+
import { EVENT_CHAIN_SCOPE, classifyChainDefects, verifyEventChainText } from './event-chain.js';
|
|
18
18
|
import { isOffsetIsoTimestamp, } from './guard-promotion.js';
|
|
19
19
|
// ── Seeded statistics (verbatim-shape port from darwin-mode bench/stats.ts) ──
|
|
20
20
|
/** Deterministic PRNG — same seed, same stream, byte-identical reports. */
|
|
@@ -188,6 +188,13 @@ function executionMeasurement(facts, period) {
|
|
|
188
188
|
if (periodAudits.length === 0) {
|
|
189
189
|
return LESSON_TO_RULE_FUNNEL_POLICY.unavailable(`guard-audit-not-recorded:${period}`);
|
|
190
190
|
}
|
|
191
|
+
// Damage that PRECEDES this period's rows says nothing about them; damage that touches them does.
|
|
192
|
+
// A row with no position cannot be placed, and unplaceable is not the same as sound — it refuses.
|
|
193
|
+
const chain = facts.guardAuditChain;
|
|
194
|
+
if (chain !== undefined && chain.defects > 0
|
|
195
|
+
&& periodAudits.some((row) => row.chainLine === undefined || row.chainLine < chain.runFrom)) {
|
|
196
|
+
return LESSON_TO_RULE_FUNNEL_POLICY.unavailable(`guard-audit-chain-damaged:${period}`);
|
|
197
|
+
}
|
|
191
198
|
const audits = periodAudits.filter((row) => row.op === 'publish');
|
|
192
199
|
if (audits.length === 0) {
|
|
193
200
|
return LESSON_TO_RULE_FUNNEL_POLICY.unavailable(`guard-publish-not-recorded:${period}`);
|
|
@@ -376,6 +383,11 @@ export function assembleCompoundingReport(facts) {
|
|
|
376
383
|
preChainPrefix: v.preChainPrefix,
|
|
377
384
|
defects: v.defects.length,
|
|
378
385
|
defectKinds: [...new Set(v.defects.map((d) => d.kind))],
|
|
386
|
+
...((age) => ({
|
|
387
|
+
defectsBeforeRun: age.beforeRun.length,
|
|
388
|
+
defectsInRun: age.inRun.length,
|
|
389
|
+
runRecords: age.runRecords,
|
|
390
|
+
}))(classifyChainDefects(v, v.lines)),
|
|
379
391
|
};
|
|
380
392
|
});
|
|
381
393
|
const instrumentation = {
|
|
@@ -398,13 +410,7 @@ export function assembleCompoundingReport(facts) {
|
|
|
398
410
|
trajectory.length > 0 ? `guard: ${improvedRules}/${trajectory.length} rules recur less in the later half` : 'guard: not enough history',
|
|
399
411
|
`cold-vs-warm: ${replay.verdict === 'insufficient-data' ? 'INSUFFICIENT DATA (accruing)' : 'READY to measure'}`,
|
|
400
412
|
instrumentation.applyLegLive ? 'apply leg: live' : 'apply leg: STALE — fix the instrumentation before trusting anything above',
|
|
401
|
-
...(chains.length === 0
|
|
402
|
-
? []
|
|
403
|
-
: [
|
|
404
|
-
instrumentation.chainsOk
|
|
405
|
-
? 'evidence chain: verified'
|
|
406
|
-
: 'evidence chain: CORRUPT — the numbers above are computed from a damaged log',
|
|
407
|
-
]),
|
|
413
|
+
...(chains.length === 0 ? [] : [chainHeadline(chains)]),
|
|
408
414
|
].join(' · ');
|
|
409
415
|
return { pool, guardTrajectory: trajectory, replay, instrumentation, lessonToRuleFunnel, verdict };
|
|
410
416
|
}
|
|
@@ -437,6 +443,67 @@ function renderFunnelPeriodMeasurements(row) {
|
|
|
437
443
|
}
|
|
438
444
|
return `${renderPromotionMeasurements(row)} · ${renderFunnelMeasurement('executions', row.executions)}`;
|
|
439
445
|
}
|
|
446
|
+
/**
|
|
447
|
+
* The HEADLINE verdict over every evidence log — three-valued, because two values lied.
|
|
448
|
+
*
|
|
449
|
+
* MEASURED 2026-09-21 on `.dz/guard-audit.jsonl`: 28 defects, the LAST of them dated 2026-09-05,
|
|
450
|
+
* followed by more than a thousand unbroken records. The old headline read
|
|
451
|
+
* "CORRUPT — the numbers above are computed from a damaged log", which is true of the FILE'S
|
|
452
|
+
* HISTORY and false about the numbers it was printed next to. The distinction already existed one
|
|
453
|
+
* function below, in {@link chainVerdictPhrase}; it simply never reached the line a reader sees
|
|
454
|
+
* first. That is the same defect class this report exists to find: a verdict answering a different
|
|
455
|
+
* question than the one it appears to answer.
|
|
456
|
+
*/
|
|
457
|
+
/**
|
|
458
|
+
* Whether the report's OWN numbers may be trusted, as a value the caller can turn into an exit code.
|
|
459
|
+
*
|
|
460
|
+
* Backlog 79ce6262 named the defect: the report printed "the numbers above are computed from a
|
|
461
|
+
* damaged log" and exited 0 anyway — a tool announcing its own output untrustworthy and reporting
|
|
462
|
+
* success. That record offered two lawful cures and asked which applies. Both do, on different
|
|
463
|
+
* branches, and only the three-valued verdict lets them coexist: damage BEHIND the current run
|
|
464
|
+
* narrows the WORDING (the numbers stand, exit 0), damage INSIDE it makes the numbers genuinely
|
|
465
|
+
* unreliable and must reach the exit code.
|
|
466
|
+
*
|
|
467
|
+
* `'trusted'` ⇒ 0. `'unreliable'` ⇒ a non-zero the caller chooses — the run succeeded, the verdict
|
|
468
|
+
* cannot be relied on, which is this repository's INCONCLUSIVE shape, not its failure shape.
|
|
469
|
+
*/
|
|
470
|
+
export function chainTrust(chains) {
|
|
471
|
+
return chains.some((c) => !c.ok && c.defectsInRun > 0) ? 'unreliable' : 'trusted';
|
|
472
|
+
}
|
|
473
|
+
export function chainHeadline(chains) {
|
|
474
|
+
const broken = chains.filter((c) => !c.ok);
|
|
475
|
+
if (broken.length === 0)
|
|
476
|
+
return 'evidence chain: verified';
|
|
477
|
+
const live = broken.filter((c) => c.defectsInRun > 0);
|
|
478
|
+
if (live.length === 0) {
|
|
479
|
+
const runs = broken.reduce((n, c) => n + c.runRecords, 0);
|
|
480
|
+
const defects = broken.reduce((n, c) => n + c.defects, 0);
|
|
481
|
+
return `evidence chain: damaged EARLIER — ${defects} defect(s), none inside the current run of `
|
|
482
|
+
+ `${runs} unbroken record(s); the numbers above stand, the file's history does not`;
|
|
483
|
+
}
|
|
484
|
+
const inRun = live.reduce((n, c) => n + c.defectsInRun, 0);
|
|
485
|
+
return `evidence chain: CORRUPT — ${inRun} defect(s) INSIDE the current run; the numbers above are `
|
|
486
|
+
+ 'computed from a damaged log';
|
|
487
|
+
}
|
|
488
|
+
/**
|
|
489
|
+
* The verdict phrase for one evidence log, with its WINDOW named. A bare `FAILED` over damage that an
|
|
490
|
+
* unbroken run has already followed is true of the FILE and misleading about TODAY — see
|
|
491
|
+
* {@link EvidenceChainHealth.defectsBeforeRun}.
|
|
492
|
+
*/
|
|
493
|
+
export function chainVerdictPhrase(c) {
|
|
494
|
+
if (c.ok)
|
|
495
|
+
return 'verified';
|
|
496
|
+
const kinds = `[${c.defectKinds.join(', ')}]`;
|
|
497
|
+
if (c.defectsInRun === 0) {
|
|
498
|
+
return `DAMAGED EARLIER — ${c.defects} defect(s) ${kinds}, all BEFORE the current run of `
|
|
499
|
+
+ `${c.runRecords} unbroken record(s); numbers over that run stand, the file's history does not`;
|
|
500
|
+
}
|
|
501
|
+
if (c.defectsBeforeRun === 0) {
|
|
502
|
+
return `FAILED — ${c.defects} defect(s) ${kinds} with NO sound records after them`;
|
|
503
|
+
}
|
|
504
|
+
return `FAILED — ${c.defects} defect(s) ${kinds}: ${c.defectsInRun} inside the current run of `
|
|
505
|
+
+ `${c.runRecords} record(s), ${c.defectsBeforeRun} before it`;
|
|
506
|
+
}
|
|
440
507
|
export function renderCompoundingReport(r) {
|
|
441
508
|
const out = [];
|
|
442
509
|
out.push('dz compounding — does the learning loop pay? (honest report: gates without data say so)');
|
|
@@ -459,7 +526,7 @@ export function renderCompoundingReport(r) {
|
|
|
459
526
|
(r.instrumentation.gapDays !== null ? ` (${r.instrumentation.gapDays}d ago)` : '') +
|
|
460
527
|
` — ${r.instrumentation.applyLegLive ? 'live' : 'STALE'}`);
|
|
461
528
|
for (const c of r.instrumentation.chains) {
|
|
462
|
-
out.push(` EVIDENCE CHAIN ${c.log}: ${
|
|
529
|
+
out.push(` EVIDENCE CHAIN ${c.log}: ${chainVerdictPhrase(c)}` +
|
|
463
530
|
` · ${c.chained} chained · ${c.preChainPrefix} pre-chain (uncovered)`);
|
|
464
531
|
}
|
|
465
532
|
out.push(` COMMAND USAGE: ${r.instrumentation.cmdUsageDepthDays === null
|
|
@@ -482,4 +549,100 @@ export function renderCompoundingReport(r) {
|
|
|
482
549
|
out.push(` VERDICT: ${r.verdict}`);
|
|
483
550
|
return out.join('\n');
|
|
484
551
|
}
|
|
552
|
+
function emptyLessonOutcomeCounters() {
|
|
553
|
+
return {
|
|
554
|
+
pairs: 0, shipped: 0, refuted: 0, blocked: 0, other: 0, graded: 0,
|
|
555
|
+
grades: Object.create(null),
|
|
556
|
+
};
|
|
557
|
+
}
|
|
558
|
+
/**
|
|
559
|
+
* Считает пары «урок ↔ исход работы» из уже прочитанных строк леджера.
|
|
560
|
+
* unknown допускает мусор после разбора JSON; поля проверяются перед использованием.
|
|
561
|
+
* Неизвестный или отсутствующий исход попадает в other, пустой грейд — в пары без грейда.
|
|
562
|
+
* Буквы грейдов сохраняются как категории, без перевода в единый балл пользы.
|
|
563
|
+
* Полные JSON-дубликаты строк и повторные id внутри одной строки не умножают пары.
|
|
564
|
+
*/
|
|
565
|
+
export function joinLessonOutcomes(rows) {
|
|
566
|
+
const perLesson = new Map();
|
|
567
|
+
const totals = emptyLessonOutcomeCounters();
|
|
568
|
+
const seenRows = new Set();
|
|
569
|
+
let duplicateRowsDropped = 0;
|
|
570
|
+
for (const value of rows) {
|
|
571
|
+
if (value === null || typeof value !== 'object' || Array.isArray(value))
|
|
572
|
+
continue;
|
|
573
|
+
const row = value;
|
|
574
|
+
if (!Array.isArray(row.lessons))
|
|
575
|
+
continue;
|
|
576
|
+
// Compare ALL fields; object key order is irrelevant, array order is preserved.
|
|
577
|
+
const canonicalRow = JSON.stringify(value, (_key, part) => {
|
|
578
|
+
if (part === null || typeof part !== 'object' || Array.isArray(part))
|
|
579
|
+
return part;
|
|
580
|
+
const object = part;
|
|
581
|
+
return Object.fromEntries(Object.keys(object).sort().map((key) => [key, object[key]]));
|
|
582
|
+
});
|
|
583
|
+
if (seenRows.has(canonicalRow)) {
|
|
584
|
+
duplicateRowsDropped++;
|
|
585
|
+
continue;
|
|
586
|
+
}
|
|
587
|
+
seenRows.add(canonicalRow);
|
|
588
|
+
const outcome = row.outcome === 'shipped' || row.outcome === 'refuted' || row.outcome === 'blocked'
|
|
589
|
+
? row.outcome : 'other';
|
|
590
|
+
const grade = typeof row.grade === 'string' ? row.grade.trim() : '';
|
|
591
|
+
for (const dzId of new Set(row.lessons)) {
|
|
592
|
+
if (typeof dzId !== 'string' || !dzId.startsWith('teach:'))
|
|
593
|
+
continue;
|
|
594
|
+
const counts = perLesson.get(dzId) ?? emptyLessonOutcomeCounters();
|
|
595
|
+
perLesson.set(dzId, counts);
|
|
596
|
+
for (const target of [counts, totals]) {
|
|
597
|
+
target.pairs++;
|
|
598
|
+
target[outcome]++;
|
|
599
|
+
if (grade !== '') {
|
|
600
|
+
target.graded++;
|
|
601
|
+
target.grades[grade] = (target.grades[grade] ?? 0) + 1;
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
return {
|
|
607
|
+
perLesson,
|
|
608
|
+
totals,
|
|
609
|
+
coverage: {
|
|
610
|
+
lessonsWithOutcome: perLesson.size,
|
|
611
|
+
pairsTotal: totals.pairs,
|
|
612
|
+
pairsUngraded: totals.pairs - totals.graded,
|
|
613
|
+
duplicateRowsDropped,
|
|
614
|
+
},
|
|
615
|
+
};
|
|
616
|
+
}
|
|
617
|
+
/**
|
|
618
|
+
* Размер стора передаёт вызывающий код: в строках леджера этого знаменателя нет.
|
|
619
|
+
* Для доли покрытия набор joined должен относиться к урокам этого стора.
|
|
620
|
+
* Без знаменателя доля остаётся неизвестной, а не превращается в 100%.
|
|
621
|
+
*/
|
|
622
|
+
export function renderLessonOutcomes(joined, storeLessonCount) {
|
|
623
|
+
const { totals, coverage } = joined;
|
|
624
|
+
const percent = (part, whole) => `${(whole === 0 ? 0 : part / whole * 100).toFixed(1).replace('.', ',')}%`;
|
|
625
|
+
const validStoreCount = typeof storeLessonCount === 'number'
|
|
626
|
+
&& Number.isSafeInteger(storeLessonCount)
|
|
627
|
+
&& storeLessonCount >= coverage.lessonsWithOutcome;
|
|
628
|
+
const storeCoverage = validStoreCount
|
|
629
|
+
? `${coverage.lessonsWithOutcome}/${storeLessonCount} (${percent(coverage.lessonsWithOutcome, storeLessonCount)})`
|
|
630
|
+
: `${coverage.lessonsWithOutcome}/неизвестно (доля неизвестна: размер стора не задан или некорректен)`;
|
|
631
|
+
const grades = Object.entries(totals.grades)
|
|
632
|
+
.sort(([a], [b]) => a.localeCompare(b, 'ru'))
|
|
633
|
+
.map(([grade, count]) => `${grade}: ${count}`)
|
|
634
|
+
.join(', ');
|
|
635
|
+
return [
|
|
636
|
+
'ДОВЕДЁННАЯ РАБОТА — дополнительная метрика пользы уроков',
|
|
637
|
+
` Пар «урок ↔ исход работы»: ${totals.pairs}; доведено (shipped): ${totals.shipped}; `
|
|
638
|
+
+ `опровергнуто (refuted): ${totals.refuted}; заблокировано (blocked): ${totals.blocked}; прочие исходы: ${totals.other}.`,
|
|
639
|
+
` Грейды (${totals.graded} пар): ${grades || 'нет'}; самоотчёт — грейд ставит ведущий при закрытии круга, это не независимая оценка.`,
|
|
640
|
+
` Доля пар без грейда: ${coverage.pairsUngraded}/${coverage.pairsTotal} (${percent(coverage.pairsUngraded, coverage.pairsTotal)}).`,
|
|
641
|
+
` Покрытие уроков стора хотя бы одной парой: ${storeCoverage}.`,
|
|
642
|
+
...(coverage.duplicateRowsDropped > 0
|
|
643
|
+
? [` Отброшено дубликатов строк леджера: ${coverage.duplicateRowsDropped}.`]
|
|
644
|
+
: []),
|
|
645
|
+
' Отбор уроков по-прежнему использует оценку намерения.',
|
|
646
|
+
].join('\n');
|
|
647
|
+
}
|
|
485
648
|
//# sourceMappingURL=compounding.js.map
|
package/dist/compounding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compounding.js","sourceRoot":"","sources":["../src/compounding.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compounding.js","sourceRoot":"","sources":["../src/compounding.ts"],"names":[],"mappings":"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"}
|
|
@@ -195,9 +195,6 @@ export interface DiscriminationResult {
|
|
|
195
195
|
/** compat scalar: worst-of via RANK. A total order can only answer "worst thing present" —
|
|
196
196
|
* everything it destroys travels in findings[] / measurementValid / primaryAction. */
|
|
197
197
|
readonly aggregate: DiscriminationVerdict;
|
|
198
|
-
/** @deprecated compat alias for ONE release — always `findings[0] ?? null` (worst first).
|
|
199
|
-
* Removal in the next minor is a recorded release obligation (ADR-002 Decision item 6). */
|
|
200
|
-
readonly finding: DiscriminationFinding | null;
|
|
201
198
|
/** one per distinct non-clean verdict present, worst-first. */
|
|
202
199
|
readonly findings: readonly DiscriminationFinding[];
|
|
203
200
|
readonly measurementValid: MeasurementValid;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discrimination-gate.d.ts","sourceRoot":"","sources":["../src/discrimination-gate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"discrimination-gate.d.ts","sourceRoot":"","sources":["../src/discrimination-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -562,7 +562,7 @@ export function classifyDiscrimination(input) {
|
|
|
562
562
|
title: 'discrimination gate: no property test to check',
|
|
563
563
|
detail: 'No test was mapped to the ADR safety property, so discrimination could not be evaluated — this is the existing "property untested" finding. Action: map-a-test.',
|
|
564
564
|
};
|
|
565
|
-
return { perTest: [], aggregate: 'CANNOT_ISOLATE',
|
|
565
|
+
return { perTest: [], aggregate: 'CANNOT_ISOLATE', findings: [finding], measurementValid: false, primaryAction: 'map-a-test' };
|
|
566
566
|
}
|
|
567
567
|
let missingRow = false;
|
|
568
568
|
const perTest = propertyTests.map((t) => {
|
|
@@ -609,6 +609,6 @@ export function classifyDiscrimination(input) {
|
|
|
609
609
|
// primaryAction: the worst-ranked verdict's action. CANNOT_ISOLATE splits — a target with no
|
|
610
610
|
// mapped/observed row is a MAPPING repair; every other degradation is an INVOCATION repair.
|
|
611
611
|
const primaryAction = aggregate === 'CANNOT_ISOLATE' && missingRow ? 'map-a-test' : ACTION_OF[aggregate];
|
|
612
|
-
return { perTest, aggregate,
|
|
612
|
+
return { perTest, aggregate, findings, measurementValid, primaryAction };
|
|
613
613
|
}
|
|
614
614
|
//# sourceMappingURL=discrimination-gate.js.map
|