@gate-forge/core 0.1.0
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/LICENSE +202 -0
- package/dist/baselines/adoption.d.ts +76 -0
- package/dist/baselines/adoption.d.ts.map +1 -0
- package/dist/baselines/adoption.js +163 -0
- package/dist/baselines/adoption.js.map +1 -0
- package/dist/baselines/index.d.ts +102 -0
- package/dist/baselines/index.d.ts.map +1 -0
- package/dist/baselines/index.js +186 -0
- package/dist/baselines/index.js.map +1 -0
- package/dist/canonical-json.d.ts +51 -0
- package/dist/canonical-json.d.ts.map +1 -0
- package/dist/canonical-json.js +112 -0
- package/dist/canonical-json.js.map +1 -0
- package/dist/classifier/bind.d.ts +64 -0
- package/dist/classifier/bind.d.ts.map +1 -0
- package/dist/classifier/bind.js +188 -0
- package/dist/classifier/bind.js.map +1 -0
- package/dist/classifier/classify.d.ts +154 -0
- package/dist/classifier/classify.d.ts.map +1 -0
- package/dist/classifier/classify.js +1207 -0
- package/dist/classifier/classify.js.map +1 -0
- package/dist/classifier/glob.d.ts +48 -0
- package/dist/classifier/glob.d.ts.map +1 -0
- package/dist/classifier/glob.js +104 -0
- package/dist/classifier/glob.js.map +1 -0
- package/dist/classifier/index.d.ts +10 -0
- package/dist/classifier/index.d.ts.map +1 -0
- package/dist/classifier/index.js +21 -0
- package/dist/classifier/index.js.map +1 -0
- package/dist/classifier/schema.d.ts +150 -0
- package/dist/classifier/schema.d.ts.map +1 -0
- package/dist/classifier/schema.js +139 -0
- package/dist/classifier/schema.js.map +1 -0
- package/dist/config/index.d.ts +259 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +523 -0
- package/dist/config/index.js.map +1 -0
- package/dist/fingerprints.d.ts +56 -0
- package/dist/fingerprints.d.ts.map +1 -0
- package/dist/fingerprints.js +59 -0
- package/dist/fingerprints.js.map +1 -0
- package/dist/graph/build.d.ts +16 -0
- package/dist/graph/build.d.ts.map +1 -0
- package/dist/graph/build.js +423 -0
- package/dist/graph/build.js.map +1 -0
- package/dist/graph/index.d.ts +12 -0
- package/dist/graph/index.d.ts.map +1 -0
- package/dist/graph/index.js +10 -0
- package/dist/graph/index.js.map +1 -0
- package/dist/graph/schema.d.ts +448 -0
- package/dist/graph/schema.d.ts.map +1 -0
- package/dist/graph/schema.js +237 -0
- package/dist/graph/schema.js.map +1 -0
- package/dist/graph/symbols.d.ts +129 -0
- package/dist/graph/symbols.d.ts.map +1 -0
- package/dist/graph/symbols.js +177 -0
- package/dist/graph/symbols.js.map +1 -0
- package/dist/graph/util.d.ts +40 -0
- package/dist/graph/util.d.ts.map +1 -0
- package/dist/graph/util.js +41 -0
- package/dist/graph/util.js.map +1 -0
- package/dist/index.d.ts +683 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +563 -0
- package/dist/index.js.map +1 -0
- package/dist/mapping/resolve.d.ts +177 -0
- package/dist/mapping/resolve.d.ts.map +1 -0
- package/dist/mapping/resolve.js +523 -0
- package/dist/mapping/resolve.js.map +1 -0
- package/dist/policy/coverage.d.ts +79 -0
- package/dist/policy/coverage.d.ts.map +1 -0
- package/dist/policy/coverage.js +119 -0
- package/dist/policy/coverage.js.map +1 -0
- package/dist/policy/evaluate.d.ts +275 -0
- package/dist/policy/evaluate.d.ts.map +1 -0
- package/dist/policy/evaluate.js +382 -0
- package/dist/policy/evaluate.js.map +1 -0
- package/dist/policy/index.d.ts +15 -0
- package/dist/policy/index.d.ts.map +1 -0
- package/dist/policy/index.js +14 -0
- package/dist/policy/index.js.map +1 -0
- package/dist/policy/trusted.d.ts +59 -0
- package/dist/policy/trusted.d.ts.map +1 -0
- package/dist/policy/trusted.js +96 -0
- package/dist/policy/trusted.js.map +1 -0
- package/dist/provenance.d.ts +170 -0
- package/dist/provenance.d.ts.map +1 -0
- package/dist/provenance.js +306 -0
- package/dist/provenance.js.map +1 -0
- package/dist/receipt/index.d.ts +74 -0
- package/dist/receipt/index.d.ts.map +1 -0
- package/dist/receipt/index.js +154 -0
- package/dist/receipt/index.js.map +1 -0
- package/dist/report/index.d.ts +100 -0
- package/dist/report/index.d.ts.map +1 -0
- package/dist/report/index.js +355 -0
- package/dist/report/index.js.map +1 -0
- package/dist/schemas/adoption.d.ts +40 -0
- package/dist/schemas/adoption.d.ts.map +1 -0
- package/dist/schemas/adoption.js +87 -0
- package/dist/schemas/adoption.js.map +1 -0
- package/dist/schemas/baseline.d.ts +19 -0
- package/dist/schemas/baseline.d.ts.map +1 -0
- package/dist/schemas/baseline.js +45 -0
- package/dist/schemas/baseline.js.map +1 -0
- package/dist/schemas/claim.d.ts +32 -0
- package/dist/schemas/claim.d.ts.map +1 -0
- package/dist/schemas/claim.js +34 -0
- package/dist/schemas/claim.js.map +1 -0
- package/dist/schemas/classification-policy.d.ts +84 -0
- package/dist/schemas/classification-policy.d.ts.map +1 -0
- package/dist/schemas/classification-policy.js +130 -0
- package/dist/schemas/classification-policy.js.map +1 -0
- package/dist/schemas/classification-signal.d.ts +125 -0
- package/dist/schemas/classification-signal.d.ts.map +1 -0
- package/dist/schemas/classification-signal.js +126 -0
- package/dist/schemas/classification-signal.js.map +1 -0
- package/dist/schemas/classification.d.ts +120 -0
- package/dist/schemas/classification.d.ts.map +1 -0
- package/dist/schemas/classification.js +154 -0
- package/dist/schemas/classification.js.map +1 -0
- package/dist/schemas/common.d.ts +73 -0
- package/dist/schemas/common.d.ts.map +1 -0
- package/dist/schemas/common.js +60 -0
- package/dist/schemas/common.js.map +1 -0
- package/dist/schemas/coverage-policy.d.ts +89 -0
- package/dist/schemas/coverage-policy.d.ts.map +1 -0
- package/dist/schemas/coverage-policy.js +81 -0
- package/dist/schemas/coverage-policy.js.map +1 -0
- package/dist/schemas/evidence.d.ts +65 -0
- package/dist/schemas/evidence.d.ts.map +1 -0
- package/dist/schemas/evidence.js +64 -0
- package/dist/schemas/evidence.js.map +1 -0
- package/dist/schemas/execution-result.d.ts +214 -0
- package/dist/schemas/execution-result.d.ts.map +1 -0
- package/dist/schemas/execution-result.js +240 -0
- package/dist/schemas/execution-result.js.map +1 -0
- package/dist/schemas/gate-receipt.d.ts +86 -0
- package/dist/schemas/gate-receipt.d.ts.map +1 -0
- package/dist/schemas/gate-receipt.js +193 -0
- package/dist/schemas/gate-receipt.js.map +1 -0
- package/dist/schemas/index.d.ts +22 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +22 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/obligation.d.ts +37 -0
- package/dist/schemas/obligation.d.ts.map +1 -0
- package/dist/schemas/obligation.js +46 -0
- package/dist/schemas/obligation.js.map +1 -0
- package/dist/schemas/plugin.d.ts +19 -0
- package/dist/schemas/plugin.d.ts.map +1 -0
- package/dist/schemas/plugin.js +20 -0
- package/dist/schemas/plugin.js.map +1 -0
- package/dist/schemas/policy.d.ts +73 -0
- package/dist/schemas/policy.d.ts.map +1 -0
- package/dist/schemas/policy.js +46 -0
- package/dist/schemas/policy.js.map +1 -0
- package/dist/schemas/resource.d.ts +26 -0
- package/dist/schemas/resource.d.ts.map +1 -0
- package/dist/schemas/resource.js +29 -0
- package/dist/schemas/resource.js.map +1 -0
- package/dist/schemas/run-manifest.d.ts +72 -0
- package/dist/schemas/run-manifest.d.ts.map +1 -0
- package/dist/schemas/run-manifest.js +125 -0
- package/dist/schemas/run-manifest.js.map +1 -0
- package/dist/schemas/runner-adapter.d.ts +169 -0
- package/dist/schemas/runner-adapter.d.ts.map +1 -0
- package/dist/schemas/runner-adapter.js +2 -0
- package/dist/schemas/runner-adapter.js.map +1 -0
- package/dist/schemas/test-catalog.d.ts +472 -0
- package/dist/schemas/test-catalog.d.ts.map +1 -0
- package/dist/schemas/test-catalog.js +311 -0
- package/dist/schemas/test-catalog.js.map +1 -0
- package/dist/schemas/test-map.d.ts +99 -0
- package/dist/schemas/test-map.d.ts.map +1 -0
- package/dist/schemas/test-map.js +103 -0
- package/dist/schemas/test-map.js.map +1 -0
- package/dist/schemas/verdict.d.ts +73 -0
- package/dist/schemas/verdict.d.ts.map +1 -0
- package/dist/schemas/verdict.js +92 -0
- package/dist/schemas/verdict.js.map +1 -0
- package/dist/schemas/waiver.d.ts +36 -0
- package/dist/schemas/waiver.d.ts.map +1 -0
- package/dist/schemas/waiver.js +42 -0
- package/dist/schemas/waiver.js.map +1 -0
- package/dist/supervision/index.d.ts +170 -0
- package/dist/supervision/index.d.ts.map +1 -0
- package/dist/supervision/index.js +354 -0
- package/dist/supervision/index.js.map +1 -0
- package/dist/testing/clock.d.ts +50 -0
- package/dist/testing/clock.d.ts.map +1 -0
- package/dist/testing/clock.js +75 -0
- package/dist/testing/clock.js.map +1 -0
- package/dist/testing/env.d.ts +66 -0
- package/dist/testing/env.d.ts.map +1 -0
- package/dist/testing/env.js +106 -0
- package/dist/testing/env.js.map +1 -0
- package/dist/testing/gate-runner.d.ts +141 -0
- package/dist/testing/gate-runner.d.ts.map +1 -0
- package/dist/testing/gate-runner.js +173 -0
- package/dist/testing/gate-runner.js.map +1 -0
- package/dist/testing/gf19.d.ts +106 -0
- package/dist/testing/gf19.d.ts.map +1 -0
- package/dist/testing/gf19.js +282 -0
- package/dist/testing/gf19.js.map +1 -0
- package/dist/testing/index.d.ts +20 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +14 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/red-probe.d.ts +138 -0
- package/dist/testing/red-probe.d.ts.map +1 -0
- package/dist/testing/red-probe.js +251 -0
- package/dist/testing/red-probe.js.map +1 -0
- package/dist/testing/temp-repo.d.ts +126 -0
- package/dist/testing/temp-repo.d.ts.map +1 -0
- package/dist/testing/temp-repo.js +214 -0
- package/dist/testing/temp-repo.js.map +1 -0
- package/dist/verdict/cause.d.ts +99 -0
- package/dist/verdict/cause.d.ts.map +1 -0
- package/dist/verdict/cause.js +206 -0
- package/dist/verdict/cause.js.map +1 -0
- package/dist/verdict/evaluate.d.ts +135 -0
- package/dist/verdict/evaluate.d.ts.map +1 -0
- package/dist/verdict/evaluate.js +1513 -0
- package/dist/verdict/evaluate.js.map +1 -0
- package/dist/verdict/index.d.ts +21 -0
- package/dist/verdict/index.d.ts.map +1 -0
- package/dist/verdict/index.js +20 -0
- package/dist/verdict/index.js.map +1 -0
- package/dist/verdict/pack-verifiers.d.ts +97 -0
- package/dist/verdict/pack-verifiers.d.ts.map +1 -0
- package/dist/verdict/pack-verifiers.js +763 -0
- package/dist/verdict/pack-verifiers.js.map +1 -0
- package/dist/verdict/registry.d.ts +180 -0
- package/dist/verdict/registry.d.ts.map +1 -0
- package/dist/verdict/registry.js +67 -0
- package/dist/verdict/registry.js.map +1 -0
- package/dist/waivers/index.d.ts +103 -0
- package/dist/waivers/index.d.ts.map +1 -0
- package/dist/waivers/index.js +192 -0
- package/dist/waivers/index.js.map +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import type { Location } from '../schemas/common.js';
|
|
2
|
+
import { type Classification } from '../schemas/classification.js';
|
|
3
|
+
import type { ClassificationPolicy } from '../schemas/classification-policy.js';
|
|
4
|
+
import { type ClassificationSignal } from '../schemas/classification-signal.js';
|
|
5
|
+
import { type ClassifierBlock, type ClassificationDecisionTrace } from './schema.js';
|
|
6
|
+
/** The resources the classifier classifies (graph resources, pre-binding). */
|
|
7
|
+
export interface ClassifierResourceRef {
|
|
8
|
+
/** Bare resource name (the `resourceName` attribute). */
|
|
9
|
+
name: string;
|
|
10
|
+
/** Plane-qualified id when already derivable, else `null`. */
|
|
11
|
+
id: string | null;
|
|
12
|
+
/** Detector framework kind. */
|
|
13
|
+
kind: string;
|
|
14
|
+
/** Repo-root-relative source path. */
|
|
15
|
+
source: string;
|
|
16
|
+
/** Exact declaration location. */
|
|
17
|
+
location: Location;
|
|
18
|
+
/** Detector provenance. */
|
|
19
|
+
detector: {
|
|
20
|
+
id: string;
|
|
21
|
+
version: string;
|
|
22
|
+
};
|
|
23
|
+
/** Detector attributes (read for `classQname`/`symbol`/`plane` facts). */
|
|
24
|
+
attributes: Record<string, unknown>;
|
|
25
|
+
}
|
|
26
|
+
/** Per-detector reported coverage (red-team round 3). */
|
|
27
|
+
export interface DetectorCoverage {
|
|
28
|
+
/** Plugin id of the reporting detector. */
|
|
29
|
+
detector: string;
|
|
30
|
+
/** Repo-root-relative files the detector examined successfully. */
|
|
31
|
+
scannedPaths: string[];
|
|
32
|
+
}
|
|
33
|
+
/** Scan knowledge used to validate closed-world proofs. */
|
|
34
|
+
export interface ClassifierScanInput {
|
|
35
|
+
requestedPaths?: string[];
|
|
36
|
+
/** Paths successfully covered by the detector run (union floor). */
|
|
37
|
+
scannedPaths?: string[];
|
|
38
|
+
/** Per-detector coverage reports; policy coverage rules are judged
|
|
39
|
+
* against THESE, never against a flattened union. */
|
|
40
|
+
coverage?: DetectorCoverage[];
|
|
41
|
+
/** Number of configured detectors that completed successfully. */
|
|
42
|
+
configuredDetectors?: number;
|
|
43
|
+
/** Number of detector contributions received by the host. */
|
|
44
|
+
successfulDetectors?: number;
|
|
45
|
+
/** Detector/graph findings; any in-scope finding invalidates negative proofs. */
|
|
46
|
+
findings: Array<{
|
|
47
|
+
code: string;
|
|
48
|
+
locations: Location[];
|
|
49
|
+
}>;
|
|
50
|
+
/** Unresolved entries; any in-scope entry invalidates negative proofs. */
|
|
51
|
+
unresolved: Array<{
|
|
52
|
+
location: Location;
|
|
53
|
+
}>;
|
|
54
|
+
}
|
|
55
|
+
/** Everything one classification pass needs. */
|
|
56
|
+
export interface ClassifyResourcesInput {
|
|
57
|
+
/** Resources to classify (any order; output is deterministic). */
|
|
58
|
+
resources: ClassifierResourceRef[];
|
|
59
|
+
/**
|
|
60
|
+
* DETECTOR-channel signals (plugin output, any order). Structurally
|
|
61
|
+
* NON-authoritative for suppressive dimensions: a suppressive-shaped
|
|
62
|
+
* signal here is rejected with `UNAUTHORIZED_SUPPRESSIVE_SIGNAL`
|
|
63
|
+
* whatever detector identity it claims — the channel, not an
|
|
64
|
+
* identity string, is the trust boundary (ADR 0003 D2).
|
|
65
|
+
*/
|
|
66
|
+
signals: ClassificationSignal[];
|
|
67
|
+
/**
|
|
68
|
+
* HOST-ISSUED authority channel: declarations and closed-world proofs
|
|
69
|
+
* minted by the engine itself (never forwarded plugin output). This is
|
|
70
|
+
* the ONLY channel that can carry suppressive intent. Direct callers
|
|
71
|
+
* control both arguments in-process — the boundary the API enforces is
|
|
72
|
+
* the pipeline: plugin output flows exclusively into `signals`.
|
|
73
|
+
*/
|
|
74
|
+
authority?: ClassificationSignal[];
|
|
75
|
+
/** The validated classification policy (scan roots, categories, rules). */
|
|
76
|
+
policy: ClassificationPolicy;
|
|
77
|
+
/** Reviewed adapter names available for binding. */
|
|
78
|
+
adapters: readonly string[];
|
|
79
|
+
/** Findings/unresolved entries the complete-scan attestation is judged against. */
|
|
80
|
+
scan: ClassifierScanInput;
|
|
81
|
+
}
|
|
82
|
+
/** One per-resource classifier outcome. */
|
|
83
|
+
export interface ClassificationDecision {
|
|
84
|
+
/** Plane-qualified id when derivable, else `null`. */
|
|
85
|
+
resourceId: string | null;
|
|
86
|
+
/** Bare resource name. */
|
|
87
|
+
name: string;
|
|
88
|
+
/** Detector framework kind. */
|
|
89
|
+
kind: string;
|
|
90
|
+
/** Repo-root-relative source path (binding key; matches the graph). */
|
|
91
|
+
source: string;
|
|
92
|
+
/** Exact declaration location (binding key; matches the graph). */
|
|
93
|
+
location: Location;
|
|
94
|
+
/**
|
|
95
|
+
* The effective classification (plain `Classification` fields plus
|
|
96
|
+
* trace metadata), or `null` when a definitional block prevents
|
|
97
|
+
* constructing one (no plane/identity, unresolved delete semantics,
|
|
98
|
+
* missing adapter). Contradiction and unprovable-intent blocks KEEP
|
|
99
|
+
* the conservative decision — obligations still accrue — while the
|
|
100
|
+
* blocks keep the gate red.
|
|
101
|
+
*/
|
|
102
|
+
classification: (Classification & ClassificationDecisionTrace) | null;
|
|
103
|
+
/** Typed machine-actionable blocks (empty for a clean decision). */
|
|
104
|
+
blocks: ClassifierBlock[];
|
|
105
|
+
}
|
|
106
|
+
/** The complete classifier result: deterministic, fully sorted. */
|
|
107
|
+
export interface ClassificationResult {
|
|
108
|
+
schemaVersion: 1;
|
|
109
|
+
/** One decision per input resource, sorted like graph resources. */
|
|
110
|
+
decisions: ClassificationDecision[];
|
|
111
|
+
/** Signals whose target matched no resource (stale), sorted. */
|
|
112
|
+
staleTargets: ClassifierBlock[];
|
|
113
|
+
/** Signals whose assertion shape contradicts their dimension, sorted. */
|
|
114
|
+
invalidSignals: ClassifierBlock[];
|
|
115
|
+
/**
|
|
116
|
+
* Detector-channel signals with a suppressive shape, rejected by
|
|
117
|
+
* CHANNEL (not by claimed identity): suppressive authority is
|
|
118
|
+
* host-issued, so a plugin can never carry it, whatever `detector`
|
|
119
|
+
* string it claims. Sorted; each entry blocks the gate.
|
|
120
|
+
*/
|
|
121
|
+
unauthorizedSuppressive: ClassifierBlock[];
|
|
122
|
+
}
|
|
123
|
+
/** Stable rule ids rendered in decision traces (ADR 0003 D2). */
|
|
124
|
+
export declare const RULES: {
|
|
125
|
+
readonly exposurePositive: "EXPOSURE_POSITIVE_SIGNAL";
|
|
126
|
+
readonly exposureInternalCertificate: "EXPOSURE_INTERNAL_CERTIFICATE";
|
|
127
|
+
readonly exposureDefault: "EXPOSURE_DEFAULT_USER_FACING";
|
|
128
|
+
readonly exposureOperationalProbe: "EXPOSURE_OPERATIONAL_PROBE";
|
|
129
|
+
readonly lifecyclePositive: "LIFECYCLE_POSITIVE_SIGNAL";
|
|
130
|
+
readonly lifecycleDeclaredSupported: "LIFECYCLE_DECLARED_SUPPORTED";
|
|
131
|
+
readonly lifecycleClosedWorldDisabled: "LIFECYCLE_CLOSED_WORLD_DISABLED";
|
|
132
|
+
readonly lifecycleDefault: "LIFECYCLE_DEFAULT_ENABLED";
|
|
133
|
+
readonly deleteProvenHard: "DELETE_SEMANTICS_PROVEN_HARD";
|
|
134
|
+
readonly deleteProvenArchive: "DELETE_SEMANTICS_PROVEN_ARCHIVE";
|
|
135
|
+
readonly planeEvidence: "PLANE_DETECTOR_EVIDENCE";
|
|
136
|
+
readonly lifecycleEndpointHttp: "LIFECYCLE_ENDPOINT_HTTP";
|
|
137
|
+
readonly identityEvidence: "IDENTITY_DETECTOR_EVIDENCE";
|
|
138
|
+
readonly adapterNameMatch: "ADAPTER_NAME_MATCH";
|
|
139
|
+
readonly orgInternalRule: "ORGANIZATION_INTERNAL_RULE";
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Classifies every resource through the deterministic lattice (ADR 0003 D2).
|
|
143
|
+
*
|
|
144
|
+
* Args:
|
|
145
|
+
* input: resources, detector signals, host-issued authority signals,
|
|
146
|
+
* policy, adapters, and scan knowledge.
|
|
147
|
+
*
|
|
148
|
+
* Returns:
|
|
149
|
+
* ClassificationResult: one decision (or typed blocks) per resource,
|
|
150
|
+
* plus document-level stale/invalid/unauthorized-signal blocks — all
|
|
151
|
+
* sorted.
|
|
152
|
+
*/
|
|
153
|
+
export declare function classifyResources(input: ClassifyResourcesInput): ClassificationResult;
|
|
154
|
+
//# sourceMappingURL=classify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classify.d.ts","sourceRoot":"","sources":["../../src/classifier/classify.ts"],"names":[],"mappings":"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"}
|