@3f-consulting/spec-controller-core 0.1.0-alpha.3 → 0.1.0-alpha.5
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/README.md +1 -1
- package/dist/assemble/evidenceReconciliationFromSources.d.ts +8 -15
- package/dist/assemble/evidenceReconciliationFromSources.d.ts.map +1 -1
- package/dist/assemble/evidenceReconciliationFromSources.js +21 -24
- package/dist/assemble/evidenceReconciliationFromSources.js.map +1 -1
- package/dist/domain/checkCharacteristics.d.ts +24 -15
- package/dist/domain/checkCharacteristics.d.ts.map +1 -1
- package/dist/domain/checkCharacteristics.js +24 -15
- package/dist/domain/checkCharacteristics.js.map +1 -1
- package/dist/domain/evidenceReconciliation.d.ts +26 -2
- package/dist/domain/evidenceReconciliation.d.ts.map +1 -1
- package/dist/domain/evidenceReconciliation.js +164 -61
- package/dist/domain/evidenceReconciliation.js.map +1 -1
- package/dist/domain/fitnessChecks.d.ts +24 -35
- package/dist/domain/fitnessChecks.d.ts.map +1 -1
- package/dist/domain/fitnessChecks.js +3 -30
- package/dist/domain/fitnessChecks.js.map +1 -1
- package/dist/domain/journal.d.ts +13 -103
- package/dist/domain/journal.d.ts.map +1 -1
- package/dist/domain/journal.js +6 -19
- package/dist/domain/journal.js.map +1 -1
- package/dist/domain/ledger.d.ts.map +1 -1
- package/dist/domain/ledger.js +45 -34
- package/dist/domain/ledger.js.map +1 -1
- package/dist/domain/posting.d.ts.map +1 -1
- package/dist/domain/posting.js +4 -7
- package/dist/domain/posting.js.map +1 -1
- package/dist/domain/qualityCheckFaultMessages.d.ts +7 -2
- package/dist/domain/qualityCheckFaultMessages.d.ts.map +1 -1
- package/dist/domain/qualityCheckFaultMessages.js +7 -2
- package/dist/domain/qualityCheckFaultMessages.js.map +1 -1
- package/dist/domain/qualityCheckReconciliation.d.ts +23 -2
- package/dist/domain/qualityCheckReconciliation.d.ts.map +1 -1
- package/dist/domain/qualityCheckReconciliation.js +40 -105
- package/dist/domain/qualityCheckReconciliation.js.map +1 -1
- package/dist/domain/qualityCheckReconciliationFault.d.ts +3 -1
- package/dist/domain/qualityCheckReconciliationFault.d.ts.map +1 -1
- package/dist/domain/qualityCheckReconciliationFault.js +3 -1
- package/dist/domain/qualityCheckReconciliationFault.js.map +1 -1
- package/dist/index.d.ts +17 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -19
- package/dist/index.js.map +1 -1
- package/dist/internal.d.ts +8 -15
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +37 -84
- package/dist/internal.js.map +1 -1
- package/dist/model.d.ts +3 -2
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +3 -2
- package/dist/model.js.map +1 -1
- package/dist/parse/checkScriptsRunInCI.d.ts +8 -7
- package/dist/parse/checkScriptsRunInCI.d.ts.map +1 -1
- package/dist/parse/checkScriptsRunInCI.js +7 -6
- package/dist/parse/checkScriptsRunInCI.js.map +1 -1
- package/dist/parse/ciStepRecord.d.ts +5 -17
- package/dist/parse/ciStepRecord.d.ts.map +1 -1
- package/dist/parse/ciStepRecord.js +7 -27
- package/dist/parse/ciStepRecord.js.map +1 -1
- package/dist/parse/corpusCodeFaults.d.ts +4 -4
- package/dist/parse/corpusCodeFaults.js +4 -4
- package/dist/parse/corpusFaults.d.ts +26 -37
- package/dist/parse/corpusFaults.d.ts.map +1 -1
- package/dist/parse/corpusFaults.js +18 -33
- package/dist/parse/corpusFaults.js.map +1 -1
- package/dist/parse/corpusGrammarFaults.d.ts +11 -73
- package/dist/parse/corpusGrammarFaults.d.ts.map +1 -1
- package/dist/parse/corpusGrammarFaults.js +27 -58
- package/dist/parse/corpusGrammarFaults.js.map +1 -1
- package/dist/parse/runningStaticChecks.d.ts +3 -2
- package/dist/parse/runningStaticChecks.d.ts.map +1 -1
- package/dist/parse/runningStaticChecks.js +3 -2
- package/dist/parse/runningStaticChecks.js.map +1 -1
- package/dist/parse/scenarios.d.ts +28 -13
- package/dist/parse/scenarios.d.ts.map +1 -1
- package/dist/parse/scenarios.js +48 -86
- package/dist/parse/scenarios.js.map +1 -1
- package/dist/parse/targetCorpus.d.ts +21 -11
- package/dist/parse/targetCorpus.d.ts.map +1 -1
- package/dist/parse/targetCorpus.js +16 -19
- package/dist/parse/targetCorpus.js.map +1 -1
- package/dist/parse/targetManifest.d.ts +12 -86
- package/dist/parse/targetManifest.d.ts.map +1 -1
- package/dist/parse/targetManifest.js +49 -138
- package/dist/parse/targetManifest.js.map +1 -1
- package/dist/provenance/provenance.d.ts +8 -11
- package/dist/provenance/provenance.d.ts.map +1 -1
- package/dist/provenance/provenance.js +2 -3
- package/dist/provenance/provenance.js.map +1 -1
- package/dist/render/evidenceGrid.d.ts +45 -0
- package/dist/render/evidenceGrid.d.ts.map +1 -0
- package/dist/render/evidenceGrid.js +145 -0
- package/dist/render/evidenceGrid.js.map +1 -0
- package/dist/render/markdown.d.ts.map +1 -1
- package/dist/render/markdown.js +85 -190
- package/dist/render/markdown.js.map +1 -1
- package/dist/render/runVerdict.d.ts +3 -2
- package/dist/render/runVerdict.d.ts.map +1 -1
- package/dist/render/runVerdict.js +11 -4
- package/dist/render/runVerdict.js.map +1 -1
- package/dist/render/staticChecks.d.ts.map +1 -1
- package/dist/render/staticChecks.js +10 -1
- package/dist/render/staticChecks.js.map +1 -1
- package/package.json +1 -6
- package/dist/domain/thresholds.d.ts +0 -123
- package/dist/domain/thresholds.d.ts.map +0 -1
- package/dist/domain/thresholds.js +0 -185
- package/dist/domain/thresholds.js.map +0 -1
- package/dist/parse/checkStaticEvidenceObligations.d.ts +0 -32
- package/dist/parse/checkStaticEvidenceObligations.d.ts.map +0 -1
- package/dist/parse/checkStaticEvidenceObligations.js +0 -78
- package/dist/parse/checkStaticEvidenceObligations.js.map +0 -1
- package/dist/parse/corpusClaimFaults.d.ts +0 -104
- package/dist/parse/corpusClaimFaults.d.ts.map +0 -1
- package/dist/parse/corpusClaimFaults.js +0 -128
- package/dist/parse/corpusClaimFaults.js.map +0 -1
- package/dist/parse/measurements.d.ts +0 -47
- package/dist/parse/measurements.d.ts.map +0 -1
- package/dist/parse/measurements.js +0 -65
- package/dist/parse/measurements.js.map +0 -1
- package/dist/render/measuredItem.d.ts +0 -30
- package/dist/render/measuredItem.d.ts.map +0 -1
- package/dist/render/measuredItem.js +0 -43
- package/dist/render/measuredItem.js.map +0 -1
package/README.md
CHANGED
|
@@ -46,7 +46,7 @@ The types these functions take and return are exported alongside them, so a cons
|
|
|
46
46
|
|
|
47
47
|
## The surface is a contract
|
|
48
48
|
|
|
49
|
-
This barrel is the whole public surface — the package publishes exactly one entrypoint, and what that entrypoint exports is
|
|
49
|
+
This barrel is the whole public surface — the package publishes exactly one entrypoint, and what that entrypoint exports is the contract you build on. **Nothing checks it for drift.** A symbol quietly added to the barrel, or quietly dropped from it, reds no build today: the surface is not held against a written-down list, and a generated API report will be adopted at `1.0`, where the compatibility promise comes back. Until then: the package is at a `0.x` version and makes no compatibility promise — see [`doc/compatibility.md`](https://github.com/3f-consulting/spec-controller/blob/main/doc/compatibility.md). Pin an exact version.
|
|
50
50
|
|
|
51
51
|
Source, issues and history: [github.com/3f-consulting/spec-controller](https://github.com/3f-consulting/spec-controller).
|
|
52
52
|
|
|
@@ -13,35 +13,30 @@
|
|
|
13
13
|
* (`3F-2804`). Nothing here is re-exported: the nine stay internal.
|
|
14
14
|
*
|
|
15
15
|
* WHY THE ARGUMENTS ARE DATA AND NOT READERS. Everything below is already in memory by the time
|
|
16
|
-
* the edge calls this — the feature bytes, the manifest object, the CI bytes, the
|
|
17
|
-
*
|
|
18
|
-
* engine wearing a callback, and
|
|
19
|
-
*
|
|
20
|
-
* closure already exists at the edge and already carries that guarantee, so injecting it preserves
|
|
21
|
-
* a behaviour rather than inventing a seam — and it is what keeps the engine from ever learning
|
|
22
|
-
* that mutation ratchets exist (`3F-2841`'s pattern, and `3F-2859` stands).
|
|
16
|
+
* the edge calls this — the feature bytes, the manifest object, the CI bytes, the CI run's own
|
|
17
|
+
* record, the runtime observations. Handing a reader for any of them would move I/O into the
|
|
18
|
+
* engine wearing a callback, and `lint:boundaries`' `core-imports-io` rule reds over exactly that
|
|
19
|
+
* (@SCN-EPG-001's `io-import` arm until 3F-3437).
|
|
23
20
|
*
|
|
24
21
|
* THE TARGET ROOT DOES NOT CROSS. It is resolved at the edge and every remaining use of it is
|
|
25
|
-
* there:
|
|
22
|
+
* there: relativising the runtime observations before they arrive.
|
|
26
23
|
* Threading it in as well would put `node:child_process` and `process.cwd()`'s answer inside the
|
|
27
24
|
* engine to be read by nothing.
|
|
28
25
|
*
|
|
29
26
|
* THE INPUT IS AN INLINE OBJECT TYPE, deliberately. A named exported interface would be a second
|
|
30
|
-
* symbol on the
|
|
31
|
-
* that
|
|
27
|
+
* symbol on the public v1 surface for a shape only this function takes — one entry point means one
|
|
28
|
+
* name. Nothing has reconciled that surface against a written-down list since 3F-3449, so the
|
|
29
|
+
* restraint is a judgement rather than something a guard would catch.
|
|
32
30
|
*/
|
|
33
31
|
import type { EvidenceObservation } from "../model.js";
|
|
34
32
|
import type { PackageJsonScripts } from "../parse/checkScriptsRunInCI.js";
|
|
35
|
-
import { type MeasurementReport } from "../parse/measurements.js";
|
|
36
33
|
import { type CiStepRecord } from "../parse/ciStepRecord.js";
|
|
37
|
-
import { type KillFloorReader } from "../parse/targetManifest.js";
|
|
38
34
|
import type { EvidenceReconciliation } from "./renderInput.js";
|
|
39
35
|
/** A target's manifest as this composition reads it — its scripts, and its `specController` block. */
|
|
40
36
|
type TargetManifest = PackageJsonScripts & {
|
|
41
37
|
specController?: {
|
|
42
38
|
deferralTags?: unknown;
|
|
43
39
|
staticChecks?: unknown;
|
|
44
|
-
thresholds?: unknown;
|
|
45
40
|
fitnessChecks?: unknown;
|
|
46
41
|
runners?: unknown;
|
|
47
42
|
notChecks?: unknown;
|
|
@@ -61,10 +56,8 @@ export interface EvidenceReconciliationSources {
|
|
|
61
56
|
ciSources: readonly string[];
|
|
62
57
|
ciSourceNames?: readonly string[];
|
|
63
58
|
reconcilerInvocation?: string;
|
|
64
|
-
measurements: MeasurementReport;
|
|
65
59
|
runtimeObservations: readonly EvidenceObservation[];
|
|
66
60
|
deferralTags: readonly string[];
|
|
67
|
-
killFloor: KillFloorReader;
|
|
68
61
|
ciStepRecord?: CiStepRecord;
|
|
69
62
|
}
|
|
70
63
|
export declare function evidenceReconciliationFromSources(input: EvidenceReconciliationSources): EvidenceReconciliation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidenceReconciliationFromSources.d.ts","sourceRoot":"","sources":["../../src/assemble/evidenceReconciliationFromSources.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"evidenceReconciliationFromSources.d.ts","sourceRoot":"","sources":["../../src/assemble/evidenceReconciliationFromSources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EAAkB,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAiBlF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,sGAAsG;AACtG,KAAK,cAAc,GAAG,kBAAkB,GAAG;IACzC,cAAc,CAAC,EAAE;QACf,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;CACH,CAAC;AA4EF;;;;;;GAMG;AACH,MAAM,WAAW,6BAA6B;IAC5C,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,WAAW,EAAE,cAAc,CAAC;IAC5B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAqGD,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,6BAA6B,GACnC,sBAAsB,CA4CxB"}
|
|
@@ -13,26 +13,23 @@
|
|
|
13
13
|
* (`3F-2804`). Nothing here is re-exported: the nine stay internal.
|
|
14
14
|
*
|
|
15
15
|
* WHY THE ARGUMENTS ARE DATA AND NOT READERS. Everything below is already in memory by the time
|
|
16
|
-
* the edge calls this — the feature bytes, the manifest object, the CI bytes, the
|
|
17
|
-
*
|
|
18
|
-
* engine wearing a callback, and
|
|
19
|
-
*
|
|
20
|
-
* closure already exists at the edge and already carries that guarantee, so injecting it preserves
|
|
21
|
-
* a behaviour rather than inventing a seam — and it is what keeps the engine from ever learning
|
|
22
|
-
* that mutation ratchets exist (`3F-2841`'s pattern, and `3F-2859` stands).
|
|
16
|
+
* the edge calls this — the feature bytes, the manifest object, the CI bytes, the CI run's own
|
|
17
|
+
* record, the runtime observations. Handing a reader for any of them would move I/O into the
|
|
18
|
+
* engine wearing a callback, and `lint:boundaries`' `core-imports-io` rule reds over exactly that
|
|
19
|
+
* (@SCN-EPG-001's `io-import` arm until 3F-3437).
|
|
23
20
|
*
|
|
24
21
|
* THE TARGET ROOT DOES NOT CROSS. It is resolved at the edge and every remaining use of it is
|
|
25
|
-
* there:
|
|
22
|
+
* there: relativising the runtime observations before they arrive.
|
|
26
23
|
* Threading it in as well would put `node:child_process` and `process.cwd()`'s answer inside the
|
|
27
24
|
* engine to be read by nothing.
|
|
28
25
|
*
|
|
29
26
|
* THE INPUT IS AN INLINE OBJECT TYPE, deliberately. A named exported interface would be a second
|
|
30
|
-
* symbol on the
|
|
31
|
-
* that
|
|
27
|
+
* symbol on the public v1 surface for a shape only this function takes — one entry point means one
|
|
28
|
+
* name. Nothing has reconciled that surface against a written-down list since 3F-3449, so the
|
|
29
|
+
* restraint is a judgement rather than something a guard would catch.
|
|
32
30
|
*/
|
|
33
31
|
import { evidenceReconciliationOf } from "../domain/evidenceReconciliation.js";
|
|
34
32
|
import { bareTerm } from "../lib/bareTerm.js";
|
|
35
|
-
import { parseMeasuredEvidenceObservations, } from "../parse/measurements.js";
|
|
36
33
|
import { ciStepRecordCredits } from "../parse/ciStepRecord.js";
|
|
37
34
|
import { recognisedRunners, runningStaticChecks } from "../parse/runningStaticChecks.js";
|
|
38
35
|
import { readTargetCorpus } from "../parse/targetCorpus.js";
|
|
@@ -40,9 +37,10 @@ import { stepExclusions } from "../parse/stepExclusions.js";
|
|
|
40
37
|
import { discoveryScope } from "../parse/discoveryScope.js";
|
|
41
38
|
import { stepAccounting } from "../parse/stepAccounting.js";
|
|
42
39
|
import { reconcilerSteps } from "../parse/reconcilerSteps.js";
|
|
43
|
-
import { resolveDeferralTags, resolveNotChecks, resolveRetiredKeys, resolveRunners,
|
|
40
|
+
import { resolveDeferralTags, resolveNotChecks, resolveRetiredKeys, resolveRunners, resolveFitnessChecks, } from "../parse/targetManifest.js";
|
|
44
41
|
/**
|
|
45
|
-
* THE
|
|
42
|
+
* THE THREE OBSERVATION STREAMS a `balance` run reconciles, in one place — a fourth, the
|
|
43
|
+
* measurements, left with the measured axis (3F-3516).
|
|
46
44
|
*
|
|
47
45
|
* ITS OWN FUNCTION, extracted when the consumer's exclusion seam (@SCN-USG-015) took the
|
|
48
46
|
* composition past the `max-lines-per-function` ceiling — `withUnconfiguredFitnessScenarios`'s
|
|
@@ -52,13 +50,12 @@ import { resolveDeferralTags, resolveNotChecks, resolveRetiredKeys, resolveRunne
|
|
|
52
50
|
*/
|
|
53
51
|
function observationStreams(input, corpus, packageJson, fitnessChecks, runnerTiers, isExcluded) {
|
|
54
52
|
// WHICH ROWS THE RUN'S OWN RECORD ANSWERS FOR, so the derivation reader does not answer them
|
|
55
|
-
// again (@SCN-LNT-021, @SCN-LNT-
|
|
53
|
+
// again (@SCN-LNT-021, @SCN-LNT-030; forced by @SCN-USG-004). A converted check
|
|
56
54
|
// used to be one no discovery reader could SEE — its command is not a script of the manifest, so
|
|
57
55
|
// no prefix reached it — and that accident is what kept one check from being observed twice.
|
|
58
56
|
// Under the inverted membership rule every step is discovered, so the guarantee has to be a
|
|
59
57
|
// mechanism: where a run is handed its own record, the CONFIGURED rows are answered by that
|
|
60
|
-
// record
|
|
61
|
-
// residue — the steps citing no configured row at all.
|
|
58
|
+
// record, and derivation answers the residue — the steps citing no configured row at all.
|
|
62
59
|
//
|
|
63
60
|
// IT IS THE ROWS AND NOT THE ENTRIES, because the record answers for a row it holds NO entry for
|
|
64
61
|
// too: that is broken evidence naming the row (@SCN-LNT-027), and a derivation credit landing
|
|
@@ -93,11 +90,6 @@ function observationStreams(input, corpus, packageJson, fitnessChecks, runnerTie
|
|
|
93
90
|
// named not one of these steps, which is every configured check broken. The reader tells
|
|
94
91
|
// them apart; nothing here may.
|
|
95
92
|
...ciStepRecordCredits(input.ciStepRecord, fitnessChecks),
|
|
96
|
-
// THE THIRD STREAM (@SCN-CIP-003) — the measurements, which arrive already citing. They are
|
|
97
|
-
// read here rather than folded into `checkObservations` because that function's observer
|
|
98
|
-
// reads the target's CONFIG; a measurement is a fact about a run, and the only thing the
|
|
99
|
-
// three share is the axis they ride.
|
|
100
|
-
...parseMeasuredEvidenceObservations(input.measurements),
|
|
101
93
|
];
|
|
102
94
|
}
|
|
103
95
|
function pipelineReadings(input) {
|
|
@@ -142,8 +134,8 @@ export function evidenceReconciliationFromSources(input) {
|
|
|
142
134
|
// the characteristic a converted scenario owes and the CREDIT for the characteristic its reported
|
|
143
135
|
// scenario answers, and two resolutions would be free to disagree about a manifest neither of
|
|
144
136
|
// them wrote — the same guarantee `readTargetCorpus` composes its three readings for.
|
|
145
|
-
const fitnessChecks = resolveFitnessChecks(packageJson
|
|
146
|
-
const corpus = readTargetCorpus(input.featureSources, resolveDeferralTags(packageJson, input.deferralTags),
|
|
137
|
+
const fitnessChecks = resolveFitnessChecks(packageJson);
|
|
138
|
+
const corpus = readTargetCorpus(input.featureSources, resolveDeferralTags(packageJson, input.deferralTags), fitnessChecks);
|
|
147
139
|
// WHAT THE TARGET SAID ABOUT ITS OWN PIPELINE, read once (see `pipelineReadings`).
|
|
148
140
|
const { runners, exclusions, reconciler, isExcluded } = pipelineReadings(input);
|
|
149
141
|
// The feature corpus is BOTH halves: the @SCN-tagged scenarios AND the untagged ones
|
|
@@ -152,7 +144,12 @@ export function evidenceReconciliationFromSources(input) {
|
|
|
152
144
|
// THE CONCEPT, BUILT BY ITS OWN FACTORY (3F-2233) — nobody assembles a Ledger and leaves someone
|
|
153
145
|
// downstream to total it. The two axis GATES are always on for a `balance` run: both the
|
|
154
146
|
// runtime-observation and the static-check streams are threaded.
|
|
155
|
-
const reconciliation = evidenceReconciliationOf(corpus.scenarios, observationStreams(input, corpus, packageJson, fitnessChecks, runners.tiers, isExcluded), [...input.untaggedScenarios], true, true
|
|
147
|
+
const reconciliation = evidenceReconciliationOf(corpus.scenarios, observationStreams(input, corpus, packageJson, fitnessChecks, runners.tiers, isExcluded), [...input.untaggedScenarios], true, true,
|
|
148
|
+
// THE FOURTH POPULATION (@SCN-LNT-027, 3F-3472) — the configured rows this corpus carries no
|
|
149
|
+
// scenario for, taken from the SAME corpus reading the obligations were raised from. A row
|
|
150
|
+
// with no scenario raises nothing on the corpus side, so without this the check it declares
|
|
151
|
+
// reaches the books nowhere and the run reads balanced over it.
|
|
152
|
+
corpus.unspecifiedFitnessRows);
|
|
156
153
|
return withReaderAccounts(reconciliation, corpus, input, packageJson, runners, exclusions, reconciler, isExcluded);
|
|
157
154
|
}
|
|
158
155
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidenceReconciliationFromSources.js","sourceRoot":"","sources":["../../src/assemble/evidenceReconciliationFromSources.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"evidenceReconciliationFromSources.js","sourceRoot":"","sources":["../../src/assemble/evidenceReconciliationFromSources.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,10 +27,18 @@
|
|
|
27
27
|
* refuse a build.
|
|
28
28
|
*
|
|
29
29
|
* ON THE PUBLIC `.` BARREL, NEVER `./internal`. A roster only the monorepo can import is
|
|
30
|
-
* reachable by exactly the one product that does not need it.
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
30
|
+
* reachable by exactly the one product that does not need it.
|
|
31
|
+
*
|
|
32
|
+
* AND THE BARREL ENTRY IS NOT A FROZEN CONTRACT — it stays on its merits (3F-3410). This used to
|
|
33
|
+
* say the entry was a "v1 contract change", reconciled against a hand-written surface updated in
|
|
34
|
+
* the same act. Both halves are gone: that surface left at 3F-3449, and a 0.x package does not
|
|
35
|
+
* freeze its exports, it drops the dead ones in a prerelease (operator, 2026-09-16). So nothing
|
|
36
|
+
* keeps this export here by inertia, and 3F-3410 — which deleted the obligation-side observer from
|
|
37
|
+
* this same barrel for having no caller — asked directly whether this one had one. It does, and not
|
|
38
|
+
* in this repository: canon names it (below), and a sibling product holds a vendored copy naming
|
|
39
|
+
* this module as its source, to be replaced by the import. A shared vocabulary's consumers are
|
|
40
|
+
* outside the repository that publishes it, so a grep of this tree is the wrong population to
|
|
41
|
+
* measure it by.
|
|
34
42
|
*
|
|
35
43
|
* ═══ THIS FILE IS A VENDORED COPY, AND SAYS SO ═══
|
|
36
44
|
*
|
|
@@ -42,22 +50,23 @@
|
|
|
42
50
|
* forgotten.
|
|
43
51
|
*
|
|
44
52
|
* PURE DATA AND ONE PREDICATE — no I/O, nothing imported, so it sits in `domain/` beside
|
|
45
|
-
* the fitness-row readers, and `
|
|
53
|
+
* the fitness-row readers, and `pnpm lint:boundaries` stays green by construction — the whole of
|
|
54
|
+
* what asks that question, now that `domainPurity` has gone at 3F-3438.
|
|
46
55
|
*/
|
|
47
56
|
/**
|
|
48
57
|
* The characteristics the portfolio carries, transcribed from `fitness-functions.md`.
|
|
49
58
|
*
|
|
50
|
-
*
|
|
51
|
-
* (
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
* `
|
|
56
|
-
*
|
|
57
|
-
* check over the PRODUCED EVIDENCE rather than the source (canon, *Self-reconciliation*).
|
|
59
|
+
* THE WORDS ONLY — WHICH CHECKS SIT UNDER EACH IS NOT RECORDED HERE, AND THAT IS THE POINT
|
|
60
|
+
* (3F-3410). This docblock used to carry canon's grouped-by-characteristic sentence, naming the
|
|
61
|
+
* member checks per word. Canon removed that column on 2026-09-16 and said why in terms: the list
|
|
62
|
+
* had been transcribed HERE, so one unread list had become two drifting ones, and by then most of
|
|
63
|
+
* the checks it named had been deleted from this repository. Membership is recorded once, on each
|
|
64
|
+
* product's own `specController.fitnessChecks` rows — the only place the answer is true and the
|
|
65
|
+
* only place any reconciliation reads it (`dry`: the rows are the fact).
|
|
58
66
|
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
67
|
+
* TWO GROUPS, WHICH IS CANON'S OWN SPLIT AND NOT A MEMBERSHIP CLAIM. The static checks read the
|
|
68
|
+
* source (or, for `self-balance`, the PRODUCED EVIDENCE rather than the source); the measured ones
|
|
69
|
+
* are assessed by running the suite and measuring it (canon, *Runtime fitness functions*).
|
|
61
70
|
*
|
|
62
71
|
* BARE, AND SORTED BY NEITHER. The words carry no `@` because every reader hands this list bare
|
|
63
72
|
* terms (`bareTerm`, 3F-2976), and the order is canon's own so a reader diffing the two documents
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkCharacteristics.d.ts","sourceRoot":"","sources":["../../src/domain/checkCharacteristics.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"checkCharacteristics.d.ts","sourceRoot":"","sources":["../../src/domain/checkCharacteristics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,MAAM,EAmB5D,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAEzE"}
|
|
@@ -27,10 +27,18 @@
|
|
|
27
27
|
* refuse a build.
|
|
28
28
|
*
|
|
29
29
|
* ON THE PUBLIC `.` BARREL, NEVER `./internal`. A roster only the monorepo can import is
|
|
30
|
-
* reachable by exactly the one product that does not need it.
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
30
|
+
* reachable by exactly the one product that does not need it.
|
|
31
|
+
*
|
|
32
|
+
* AND THE BARREL ENTRY IS NOT A FROZEN CONTRACT — it stays on its merits (3F-3410). This used to
|
|
33
|
+
* say the entry was a "v1 contract change", reconciled against a hand-written surface updated in
|
|
34
|
+
* the same act. Both halves are gone: that surface left at 3F-3449, and a 0.x package does not
|
|
35
|
+
* freeze its exports, it drops the dead ones in a prerelease (operator, 2026-09-16). So nothing
|
|
36
|
+
* keeps this export here by inertia, and 3F-3410 — which deleted the obligation-side observer from
|
|
37
|
+
* this same barrel for having no caller — asked directly whether this one had one. It does, and not
|
|
38
|
+
* in this repository: canon names it (below), and a sibling product holds a vendored copy naming
|
|
39
|
+
* this module as its source, to be replaced by the import. A shared vocabulary's consumers are
|
|
40
|
+
* outside the repository that publishes it, so a grep of this tree is the wrong population to
|
|
41
|
+
* measure it by.
|
|
34
42
|
*
|
|
35
43
|
* ═══ THIS FILE IS A VENDORED COPY, AND SAYS SO ═══
|
|
36
44
|
*
|
|
@@ -42,22 +50,23 @@
|
|
|
42
50
|
* forgotten.
|
|
43
51
|
*
|
|
44
52
|
* PURE DATA AND ONE PREDICATE — no I/O, nothing imported, so it sits in `domain/` beside
|
|
45
|
-
* the fitness-row readers, and `
|
|
53
|
+
* the fitness-row readers, and `pnpm lint:boundaries` stays green by construction — the whole of
|
|
54
|
+
* what asks that question, now that `domainPurity` has gone at 3F-3438.
|
|
46
55
|
*/
|
|
47
56
|
/**
|
|
48
57
|
* The characteristics the portfolio carries, transcribed from `fitness-functions.md`.
|
|
49
58
|
*
|
|
50
|
-
*
|
|
51
|
-
* (
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
* `
|
|
56
|
-
*
|
|
57
|
-
* check over the PRODUCED EVIDENCE rather than the source (canon, *Self-reconciliation*).
|
|
59
|
+
* THE WORDS ONLY — WHICH CHECKS SIT UNDER EACH IS NOT RECORDED HERE, AND THAT IS THE POINT
|
|
60
|
+
* (3F-3410). This docblock used to carry canon's grouped-by-characteristic sentence, naming the
|
|
61
|
+
* member checks per word. Canon removed that column on 2026-09-16 and said why in terms: the list
|
|
62
|
+
* had been transcribed HERE, so one unread list had become two drifting ones, and by then most of
|
|
63
|
+
* the checks it named had been deleted from this repository. Membership is recorded once, on each
|
|
64
|
+
* product's own `specController.fitnessChecks` rows — the only place the answer is true and the
|
|
65
|
+
* only place any reconciliation reads it (`dry`: the rows are the fact).
|
|
58
66
|
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
67
|
+
* TWO GROUPS, WHICH IS CANON'S OWN SPLIT AND NOT A MEMBERSHIP CLAIM. The static checks read the
|
|
68
|
+
* source (or, for `self-balance`, the PRODUCED EVIDENCE rather than the source); the measured ones
|
|
69
|
+
* are assessed by running the suite and measuring it (canon, *Runtime fitness functions*).
|
|
61
70
|
*
|
|
62
71
|
* BARE, AND SORTED BY NEITHER. The words carry no `@` because every reader hands this list bare
|
|
63
72
|
* terms (`bareTerm`, 3F-2976), and the order is canon's own so a reader diffing the two documents
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkCharacteristics.js","sourceRoot":"","sources":["../../src/domain/checkCharacteristics.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"checkCharacteristics.js","sourceRoot":"","sources":["../../src/domain/checkCharacteristics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAsB;IAChE,gBAAgB;IAChB,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;IAClB,OAAO;IACP,cAAc;IACd,MAAM;IACN,cAAc;IACd,cAAc;IACd,WAAW;IACX,UAAU;IACV,SAAS;IACT,aAAa;IACb,cAAc;IACd,WAAW;IACX,aAAa;IACb,UAAU;IACV,UAAU;CACX,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,cAAsB;IAC9D,OAAO,+BAA+B,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AAClE,CAAC"}
|
|
@@ -48,8 +48,21 @@
|
|
|
48
48
|
* Parent: @SCN-LDG-001.
|
|
49
49
|
*/
|
|
50
50
|
import type { RuntimeQualityCheck, Scenario, EvidenceObservation, Ledger } from "../model.js";
|
|
51
|
+
import type { UnspecifiedFitnessRow } from "./fitnessChecks.js";
|
|
51
52
|
import type { ScenarioReconciliationTotals, EvidenceObligationTotals, LintTally } from "./ledger.js";
|
|
52
|
-
export declare function reconcile(scenarios: Scenario[], evidenceObservations: EvidenceObservation[], untaggedScenarios?: readonly string[]
|
|
53
|
+
export declare function reconcile(scenarios: Scenario[], evidenceObservations: EvidenceObservation[], untaggedScenarios?: readonly string[],
|
|
54
|
+
/**
|
|
55
|
+
* The CONFIGURED ROWS the target's corpus carries no scenario for (@SCN-LNT-027, 3F-3472) — the
|
|
56
|
+
* fourth population, minted below.
|
|
57
|
+
*
|
|
58
|
+
* IT DEFAULTS, WHERE THE TWO GATES BELOW DELIBERATELY DO NOT (3F-2875). A gate that defaults is a
|
|
59
|
+
* gate a caller can forget and thereby CHANGE what the summary claims. This is a population, and
|
|
60
|
+
* an omitted population is indistinguishable from an empty one in the only way that matters:
|
|
61
|
+
* both mint no rows, and neither says anything about a manifest. Every caller that constructs
|
|
62
|
+
* `Scenario[]` by hand has no manifest to read rows from, which is `untaggedScenarios`' own
|
|
63
|
+
* argument for the default it already carries.
|
|
64
|
+
*/
|
|
65
|
+
unspecifiedFitnessRows?: readonly UnspecifiedFitnessRow[]): Ledger;
|
|
53
66
|
/**
|
|
54
67
|
* The materialised test-volume totals (RMD-005) — the runtime evidence-observation kind-counts
|
|
55
68
|
* the markdown's `### Test volume` identity line derives, carried AS DATA. The identity
|
|
@@ -279,6 +292,10 @@ export interface Summary {
|
|
|
279
292
|
* are simply not there for anything downstream to find; naming the key is the only way a
|
|
280
293
|
* consumer who wrote it in good faith learns that none of it is taking effect.
|
|
281
294
|
*
|
|
295
|
+
* AND A BAR A CONFIGURED ROW STILL CARRIES (@SCN-LNT-035), named with its row —
|
|
296
|
+
* `fitnessChecks[SCN-XXX-NNN].atLeast` / `.atMost` — in the same account, in manifest order.
|
|
297
|
+
* The row itself still reaches the books, credited by its step's outcome; only the bar is unread.
|
|
298
|
+
*
|
|
282
299
|
* PRESENT ONLY WHEN NON-EMPTY, so a target that carries no retired key — every target today
|
|
283
300
|
* that has never written one — renders and serialises byte-identically to before.
|
|
284
301
|
*/
|
|
@@ -413,5 +430,12 @@ export declare function summaryOf(ledger: Ledger, withRuntimeObservations: boole
|
|
|
413
430
|
* so. A default is the wrong shape for an argument whose omission is indistinguishable from a
|
|
414
431
|
* deliberate `false`.
|
|
415
432
|
*/
|
|
416
|
-
export declare function evidenceReconciliationOf(scenarios: Scenario[], evidenceObservations: EvidenceObservation[], untaggedScenarios: readonly string[], withRuntimeObservations: boolean, withStaticChecks: boolean
|
|
433
|
+
export declare function evidenceReconciliationOf(scenarios: Scenario[], evidenceObservations: EvidenceObservation[], untaggedScenarios: readonly string[], withRuntimeObservations: boolean, withStaticChecks: boolean,
|
|
434
|
+
/**
|
|
435
|
+
* The CONFIGURED ROWS the corpus carries no scenario for (@SCN-LNT-027, 3F-3472) — passed
|
|
436
|
+
* through to `reconcile`, which mints one row apiece. It defaults for the reason given there, and
|
|
437
|
+
* that reason is NOT the trailing three's: a population omitted mints nothing and claims nothing,
|
|
438
|
+
* where a gate omitted silently changes what the summary says is in play.
|
|
439
|
+
*/
|
|
440
|
+
unspecifiedFitnessRows?: readonly UnspecifiedFitnessRow[]): EvidenceReconciliation;
|
|
417
441
|
//# sourceMappingURL=evidenceReconciliation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidenceReconciliation.d.ts","sourceRoot":"","sources":["../../src/domain/evidenceReconciliation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,QAAQ,EAGR,mBAAmB,EAInB,MAAM,EACP,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"evidenceReconciliation.d.ts","sourceRoot":"","sources":["../../src/domain/evidenceReconciliation.ts"],"names":[],"mappings":"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"}
|