critical-gate 2.0.1 → 2.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/README.md +163 -0
- package/dist/cli.d.ts +7 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +469 -20
- package/dist/cli.js.map +1 -1
- package/dist/config/critical-gate-config.d.ts +41 -0
- package/dist/config/critical-gate-config.d.ts.map +1 -1
- package/dist/config/critical-gate-config.js +193 -4
- package/dist/config/critical-gate-config.js.map +1 -1
- package/dist/config/index.d.ts +2 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -1
- package/dist/config/index.js.map +1 -1
- package/dist/config/learning-policy.d.ts +9 -0
- package/dist/config/learning-policy.d.ts.map +1 -0
- package/dist/config/learning-policy.js +34 -0
- package/dist/config/learning-policy.js.map +1 -0
- package/dist/detectors/api-surface-detector.d.ts.map +1 -1
- package/dist/detectors/api-surface-detector.js +123 -5
- package/dist/detectors/api-surface-detector.js.map +1 -1
- package/dist/detectors/confidence-calibration.d.ts +11 -0
- package/dist/detectors/confidence-calibration.d.ts.map +1 -0
- package/dist/detectors/confidence-calibration.js +53 -0
- package/dist/detectors/confidence-calibration.js.map +1 -0
- package/dist/detectors/existing-solution-detector.js +6 -0
- package/dist/detectors/existing-solution-detector.js.map +1 -1
- package/dist/detectors/expected-companions-detector.d.ts.map +1 -1
- package/dist/detectors/expected-companions-detector.js +208 -10
- package/dist/detectors/expected-companions-detector.js.map +1 -1
- package/dist/detectors/index.d.ts +1 -0
- package/dist/detectors/index.d.ts.map +1 -1
- package/dist/detectors/index.js +1 -0
- package/dist/detectors/index.js.map +1 -1
- package/dist/detectors/intent-verification-detector.d.ts.map +1 -1
- package/dist/detectors/intent-verification-detector.js +64 -1
- package/dist/detectors/intent-verification-detector.js.map +1 -1
- package/dist/detectors/reason-chain.d.ts +4 -0
- package/dist/detectors/reason-chain.d.ts.map +1 -0
- package/dist/detectors/reason-chain.js +102 -0
- package/dist/detectors/reason-chain.js.map +1 -0
- package/dist/detectors/repair-contract.d.ts +4 -0
- package/dist/detectors/repair-contract.d.ts.map +1 -0
- package/dist/detectors/repair-contract.js +45 -0
- package/dist/detectors/repair-contract.js.map +1 -0
- package/dist/detectors/repository-intelligence-detector.d.ts.map +1 -1
- package/dist/detectors/repository-intelligence-detector.js +17 -4
- package/dist/detectors/repository-intelligence-detector.js.map +1 -1
- package/dist/detectors/rewrite-detector.d.ts.map +1 -1
- package/dist/detectors/rewrite-detector.js +5 -2
- package/dist/detectors/rewrite-detector.js.map +1 -1
- package/dist/detectors/runner.d.ts +1 -0
- package/dist/detectors/runner.d.ts.map +1 -1
- package/dist/detectors/runner.js +50 -3
- package/dist/detectors/runner.js.map +1 -1
- package/dist/detectors/secret-path-detector.js +1 -1
- package/dist/detectors/secret-path-detector.js.map +1 -1
- package/dist/detectors/test-weakening-detector.d.ts.map +1 -1
- package/dist/detectors/test-weakening-detector.js +188 -39
- package/dist/detectors/test-weakening-detector.js.map +1 -1
- package/dist/detectors/types.d.ts +2 -0
- package/dist/detectors/types.d.ts.map +1 -1
- package/dist/diff/git-diff-reader.d.ts +1 -0
- package/dist/diff/git-diff-reader.d.ts.map +1 -1
- package/dist/diff/git-diff-reader.js +6 -3
- package/dist/diff/git-diff-reader.js.map +1 -1
- package/dist/diff/path-classifier.d.ts.map +1 -1
- package/dist/diff/path-classifier.js +9 -1
- package/dist/diff/path-classifier.js.map +1 -1
- package/dist/frameworks/detect.d.ts +11 -0
- package/dist/frameworks/detect.d.ts.map +1 -0
- package/dist/frameworks/detect.js +29 -0
- package/dist/frameworks/detect.js.map +1 -0
- package/dist/frameworks/index.d.ts +5 -0
- package/dist/frameworks/index.d.ts.map +1 -0
- package/dist/frameworks/index.js +4 -0
- package/dist/frameworks/index.js.map +1 -0
- package/dist/frameworks/packs.d.ts +3 -0
- package/dist/frameworks/packs.d.ts.map +1 -0
- package/dist/frameworks/packs.js +146 -0
- package/dist/frameworks/packs.js.map +1 -0
- package/dist/frameworks/path-patterns.d.ts +3 -0
- package/dist/frameworks/path-patterns.d.ts.map +1 -0
- package/dist/frameworks/path-patterns.js +16 -0
- package/dist/frameworks/path-patterns.js.map +1 -0
- package/dist/frameworks/types.d.ts +15 -0
- package/dist/frameworks/types.d.ts.map +1 -0
- package/dist/frameworks/types.js +2 -0
- package/dist/frameworks/types.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/intent/diff-coherence-score.d.ts +13 -0
- package/dist/intent/diff-coherence-score.d.ts.map +1 -0
- package/dist/intent/diff-coherence-score.js +125 -0
- package/dist/intent/diff-coherence-score.js.map +1 -0
- package/dist/intent/index.d.ts +2 -0
- package/dist/intent/index.d.ts.map +1 -1
- package/dist/intent/index.js +2 -0
- package/dist/intent/index.js.map +1 -1
- package/dist/intent/intent-core.d.ts.map +1 -1
- package/dist/intent/intent-core.js +17 -1
- package/dist/intent/intent-core.js.map +1 -1
- package/dist/intent/intent-model.d.ts.map +1 -1
- package/dist/intent/intent-model.js +39 -2
- package/dist/intent/intent-model.js.map +1 -1
- package/dist/intent/task-intent-quality.d.ts +4 -0
- package/dist/intent/task-intent-quality.d.ts.map +1 -0
- package/dist/intent/task-intent-quality.js +98 -0
- package/dist/intent/task-intent-quality.js.map +1 -0
- package/dist/knowledge/history-index.d.ts.map +1 -1
- package/dist/knowledge/history-index.js +10 -3
- package/dist/knowledge/history-index.js.map +1 -1
- package/dist/knowledge/index.d.ts +2 -1
- package/dist/knowledge/index.d.ts.map +1 -1
- package/dist/knowledge/index.js +1 -0
- package/dist/knowledge/index.js.map +1 -1
- package/dist/knowledge/normal-change-model.d.ts +8 -0
- package/dist/knowledge/normal-change-model.d.ts.map +1 -0
- package/dist/knowledge/normal-change-model.js +121 -0
- package/dist/knowledge/normal-change-model.js.map +1 -0
- package/dist/knowledge/solution-index.d.ts.map +1 -1
- package/dist/knowledge/solution-index.js +43 -3
- package/dist/knowledge/solution-index.js.map +1 -1
- package/dist/knowledge/types.d.ts +11 -0
- package/dist/knowledge/types.d.ts.map +1 -1
- package/dist/reporters/index.d.ts +4 -1
- package/dist/reporters/index.d.ts.map +1 -1
- package/dist/reporters/index.js +6 -0
- package/dist/reporters/index.js.map +1 -1
- package/dist/reporters/markdown-reporter.d.ts.map +1 -1
- package/dist/reporters/markdown-reporter.js +67 -0
- package/dist/reporters/markdown-reporter.js.map +1 -1
- package/dist/reporters/pr-comment-reporter.d.ts +3 -0
- package/dist/reporters/pr-comment-reporter.d.ts.map +1 -0
- package/dist/reporters/pr-comment-reporter.js +105 -0
- package/dist/reporters/pr-comment-reporter.js.map +1 -0
- package/dist/reporters/repair-contract.d.ts +3 -0
- package/dist/reporters/repair-contract.d.ts.map +1 -0
- package/dist/reporters/repair-contract.js +25 -0
- package/dist/reporters/repair-contract.js.map +1 -0
- package/dist/reporters/repair-reporter.d.ts.map +1 -1
- package/dist/reporters/repair-reporter.js +19 -1
- package/dist/reporters/repair-reporter.js.map +1 -1
- package/dist/reporters/reviewer-checklist.d.ts +10 -0
- package/dist/reporters/reviewer-checklist.d.ts.map +1 -0
- package/dist/reporters/reviewer-checklist.js +112 -0
- package/dist/reporters/reviewer-checklist.js.map +1 -0
- package/dist/repository/api-snapshot.d.ts +41 -0
- package/dist/repository/api-snapshot.d.ts.map +1 -0
- package/dist/repository/api-snapshot.js +219 -0
- package/dist/repository/api-snapshot.js.map +1 -0
- package/dist/repository/index.d.ts +2 -0
- package/dist/repository/index.d.ts.map +1 -1
- package/dist/repository/index.js +2 -0
- package/dist/repository/index.js.map +1 -1
- package/dist/repository/monorepo.d.ts +7 -0
- package/dist/repository/monorepo.d.ts.map +1 -0
- package/dist/repository/monorepo.js +189 -0
- package/dist/repository/monorepo.js.map +1 -0
- package/dist/schema/gate-result.schema.d.ts +272 -0
- package/dist/schema/gate-result.schema.d.ts.map +1 -1
- package/dist/schema/gate-result.schema.js +148 -1
- package/dist/schema/gate-result.schema.js.map +1 -1
- package/dist/schema/index.d.ts +1 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/types.d.ts +63 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { join } from "node:path";
|
|
2
|
+
export function detectMonorepoContext(root, files, reader = {}) {
|
|
3
|
+
const workspaceGlobs = [];
|
|
4
|
+
const tools = new Set();
|
|
5
|
+
const configFiles = [];
|
|
6
|
+
const typescriptPathAliases = [];
|
|
7
|
+
const rootPackage = readJsonFile(root, "package.json", reader);
|
|
8
|
+
const packageWorkspaceGlobs = getPackageJsonWorkspaces(rootPackage);
|
|
9
|
+
if (packageWorkspaceGlobs.length > 0) {
|
|
10
|
+
workspaceGlobs.push(...packageWorkspaceGlobs);
|
|
11
|
+
}
|
|
12
|
+
const pnpmWorkspace = readTextFile(root, "pnpm-workspace.yaml", reader);
|
|
13
|
+
if (pnpmWorkspace !== undefined) {
|
|
14
|
+
tools.add("pnpm");
|
|
15
|
+
configFiles.push("pnpm-workspace.yaml");
|
|
16
|
+
workspaceGlobs.push(...parsePnpmWorkspacePackages(pnpmWorkspace));
|
|
17
|
+
}
|
|
18
|
+
const turboJson = readJsonFile(root, "turbo.json", reader);
|
|
19
|
+
if (turboJson !== undefined) {
|
|
20
|
+
tools.add("turbo");
|
|
21
|
+
configFiles.push("turbo.json");
|
|
22
|
+
}
|
|
23
|
+
const nxJson = readJsonFile(root, "nx.json", reader);
|
|
24
|
+
if (nxJson !== undefined) {
|
|
25
|
+
tools.add("nx");
|
|
26
|
+
configFiles.push("nx.json");
|
|
27
|
+
workspaceGlobs.push(...getNxWorkspaceGlobs(nxJson));
|
|
28
|
+
}
|
|
29
|
+
const lernaJson = readJsonFile(root, "lerna.json", reader);
|
|
30
|
+
if (lernaJson !== undefined) {
|
|
31
|
+
tools.add("lerna");
|
|
32
|
+
configFiles.push("lerna.json");
|
|
33
|
+
workspaceGlobs.push(...getStringArrayProperty(lernaJson, "packages"));
|
|
34
|
+
}
|
|
35
|
+
const tsconfigJson = readJsonFile(root, "tsconfig.json", reader);
|
|
36
|
+
const pathAliases = getTypeScriptPathAliases(tsconfigJson);
|
|
37
|
+
if (pathAliases.length > 0) {
|
|
38
|
+
configFiles.push("tsconfig.json");
|
|
39
|
+
typescriptPathAliases.push(...pathAliases);
|
|
40
|
+
}
|
|
41
|
+
const uniqueGlobs = [...new Set(workspaceGlobs)].filter((glob) => glob.length > 0);
|
|
42
|
+
const packages = inferChangedPackages(root, files, uniqueGlobs, reader);
|
|
43
|
+
if (uniqueGlobs.length === 0 &&
|
|
44
|
+
tools.size === 0 &&
|
|
45
|
+
packages.length === 0 &&
|
|
46
|
+
typescriptPathAliases.length === 0) {
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
return {
|
|
50
|
+
tools: [...tools].sort(),
|
|
51
|
+
configFiles: [...new Set(configFiles)],
|
|
52
|
+
workspaceGlobs: uniqueGlobs,
|
|
53
|
+
typescriptPathAliases: typescriptPathAliases.length === 0 ? undefined : [...new Set(typescriptPathAliases)].sort(),
|
|
54
|
+
packages
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function inferChangedPackages(root, files, workspaceGlobs, reader) {
|
|
58
|
+
const packageRoots = new Set();
|
|
59
|
+
for (const file of files) {
|
|
60
|
+
for (const glob of workspaceGlobs) {
|
|
61
|
+
const packageRoot = getPackageRootForGlob(file.path, glob);
|
|
62
|
+
if (packageRoot !== undefined) {
|
|
63
|
+
packageRoots.add(packageRoot);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return [...packageRoots].sort().map((path) => ({
|
|
68
|
+
path,
|
|
69
|
+
name: getPackageName(root, path, reader)
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
function getPackageRootForGlob(path, glob) {
|
|
73
|
+
const normalizedPath = normalizePath(path);
|
|
74
|
+
const normalizedGlob = normalizePath(glob);
|
|
75
|
+
const wildcardIndex = normalizedGlob.indexOf("*");
|
|
76
|
+
if (wildcardIndex === -1) {
|
|
77
|
+
return normalizedPath === normalizedGlob || normalizedPath.startsWith(`${normalizedGlob}/`)
|
|
78
|
+
? normalizedGlob
|
|
79
|
+
: undefined;
|
|
80
|
+
}
|
|
81
|
+
const prefix = normalizedGlob.slice(0, wildcardIndex).replace(/\/$/, "");
|
|
82
|
+
const suffix = normalizedGlob.slice(wildcardIndex + 1).replace(/^\//, "");
|
|
83
|
+
if (!normalizedPath.startsWith(`${prefix}/`)) {
|
|
84
|
+
return undefined;
|
|
85
|
+
}
|
|
86
|
+
const rest = normalizedPath.slice(prefix.length + 1);
|
|
87
|
+
const [packageSegment] = rest.split("/");
|
|
88
|
+
if (packageSegment === undefined || packageSegment.length === 0) {
|
|
89
|
+
return undefined;
|
|
90
|
+
}
|
|
91
|
+
const packageRoot = `${prefix}/${packageSegment}`;
|
|
92
|
+
if (suffix.length > 0 && !normalizedPath.startsWith(`${packageRoot}/${suffix}`)) {
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
return packageRoot;
|
|
96
|
+
}
|
|
97
|
+
function getPackageName(root, packageRoot, reader) {
|
|
98
|
+
const packageJson = readJsonFile(root, `${packageRoot}/package.json`, reader);
|
|
99
|
+
if (isRecord(packageJson) && typeof packageJson.name === "string") {
|
|
100
|
+
return packageJson.name;
|
|
101
|
+
}
|
|
102
|
+
return undefined;
|
|
103
|
+
}
|
|
104
|
+
function getPackageJsonWorkspaces(value) {
|
|
105
|
+
if (!isRecord(value)) {
|
|
106
|
+
return [];
|
|
107
|
+
}
|
|
108
|
+
if (Array.isArray(value.workspaces)) {
|
|
109
|
+
return value.workspaces.filter((entry) => typeof entry === "string");
|
|
110
|
+
}
|
|
111
|
+
if (isRecord(value.workspaces) && Array.isArray(value.workspaces.packages)) {
|
|
112
|
+
return value.workspaces.packages.filter((entry) => typeof entry === "string");
|
|
113
|
+
}
|
|
114
|
+
return [];
|
|
115
|
+
}
|
|
116
|
+
function getNxWorkspaceGlobs(value) {
|
|
117
|
+
if (!isRecord(value) || !isRecord(value.workspaceLayout)) {
|
|
118
|
+
return ["apps/*", "libs/*"];
|
|
119
|
+
}
|
|
120
|
+
const appsDir = typeof value.workspaceLayout.appsDir === "string" ? value.workspaceLayout.appsDir : "apps";
|
|
121
|
+
const libsDir = typeof value.workspaceLayout.libsDir === "string" ? value.workspaceLayout.libsDir : "libs";
|
|
122
|
+
return [`${appsDir}/*`, `${libsDir}/*`];
|
|
123
|
+
}
|
|
124
|
+
function getStringArrayProperty(value, key) {
|
|
125
|
+
if (!isRecord(value) || !Array.isArray(value[key])) {
|
|
126
|
+
return [];
|
|
127
|
+
}
|
|
128
|
+
return value[key].filter((entry) => typeof entry === "string");
|
|
129
|
+
}
|
|
130
|
+
function getTypeScriptPathAliases(value) {
|
|
131
|
+
if (!isRecord(value) ||
|
|
132
|
+
!isRecord(value.compilerOptions) ||
|
|
133
|
+
!isRecord(value.compilerOptions.paths)) {
|
|
134
|
+
return [];
|
|
135
|
+
}
|
|
136
|
+
return Object.keys(value.compilerOptions.paths).sort();
|
|
137
|
+
}
|
|
138
|
+
function parsePnpmWorkspacePackages(content) {
|
|
139
|
+
const lines = content.split(/\r?\n/);
|
|
140
|
+
const packages = [];
|
|
141
|
+
let inPackages = false;
|
|
142
|
+
for (const rawLine of lines) {
|
|
143
|
+
const line = rawLine.trim();
|
|
144
|
+
if (line.length === 0 || line.startsWith("#")) {
|
|
145
|
+
continue;
|
|
146
|
+
}
|
|
147
|
+
if (/^packages\s*:/.test(line)) {
|
|
148
|
+
inPackages = true;
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
if (inPackages && line.startsWith("-")) {
|
|
152
|
+
packages.push(line
|
|
153
|
+
.slice(1)
|
|
154
|
+
.trim()
|
|
155
|
+
.replace(/^["']|["']$/g, ""));
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
if (!rawLine.startsWith(" ") && !rawLine.startsWith("\t")) {
|
|
159
|
+
inPackages = false;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
return packages;
|
|
163
|
+
}
|
|
164
|
+
function readJsonFile(root, relativePath, reader) {
|
|
165
|
+
const content = readTextFile(root, relativePath, reader);
|
|
166
|
+
if (content === undefined) {
|
|
167
|
+
return undefined;
|
|
168
|
+
}
|
|
169
|
+
try {
|
|
170
|
+
return JSON.parse(content);
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
return undefined;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
function readTextFile(root, relativePath, reader) {
|
|
177
|
+
const path = join(root, relativePath);
|
|
178
|
+
if (reader.exists?.(path) !== true) {
|
|
179
|
+
return undefined;
|
|
180
|
+
}
|
|
181
|
+
return reader.readFile?.(path);
|
|
182
|
+
}
|
|
183
|
+
function normalizePath(value) {
|
|
184
|
+
return value.replaceAll("\\", "/").replace(/^\.\//, "").replace(/\/$/, "");
|
|
185
|
+
}
|
|
186
|
+
function isRecord(value) {
|
|
187
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
188
|
+
}
|
|
189
|
+
//# sourceMappingURL=monorepo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monorepo.js","sourceRoot":"","sources":["../../src/repository/monorepo.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,9 @@ export declare const gateResultJsonSchema: {
|
|
|
34
34
|
readonly intentVerification: {
|
|
35
35
|
readonly $ref: "#/$defs/intentVerificationSummary";
|
|
36
36
|
};
|
|
37
|
+
readonly intentQuality: {
|
|
38
|
+
readonly $ref: "#/$defs/taskIntentQualitySummary";
|
|
39
|
+
};
|
|
37
40
|
readonly metadata: {
|
|
38
41
|
readonly type: "object";
|
|
39
42
|
readonly additionalProperties: true;
|
|
@@ -182,6 +185,9 @@ export declare const gateResultJsonSchema: {
|
|
|
182
185
|
readonly packageManager: {
|
|
183
186
|
readonly enum: readonly ["pnpm", "npm", "yarn", "bun", "unknown"];
|
|
184
187
|
};
|
|
188
|
+
readonly monorepo: {
|
|
189
|
+
readonly $ref: "#/$defs/monorepoContext";
|
|
190
|
+
};
|
|
185
191
|
readonly manifests: {
|
|
186
192
|
readonly type: "array";
|
|
187
193
|
readonly items: {
|
|
@@ -200,12 +206,21 @@ export declare const gateResultJsonSchema: {
|
|
|
200
206
|
readonly type: "string";
|
|
201
207
|
};
|
|
202
208
|
};
|
|
209
|
+
readonly frameworkPacks: {
|
|
210
|
+
readonly type: "array";
|
|
211
|
+
readonly items: {
|
|
212
|
+
readonly type: "string";
|
|
213
|
+
};
|
|
214
|
+
};
|
|
203
215
|
readonly publicEntrypoints: {
|
|
204
216
|
readonly type: "array";
|
|
205
217
|
readonly items: {
|
|
206
218
|
readonly type: "string";
|
|
207
219
|
};
|
|
208
220
|
};
|
|
221
|
+
readonly apiSnapshot: {
|
|
222
|
+
readonly $ref: "#/$defs/apiSnapshotSummary";
|
|
223
|
+
};
|
|
209
224
|
readonly repositoryProfile: {
|
|
210
225
|
readonly $ref: "#/$defs/repositoryProfile";
|
|
211
226
|
};
|
|
@@ -226,6 +241,83 @@ export declare const gateResultJsonSchema: {
|
|
|
226
241
|
};
|
|
227
242
|
};
|
|
228
243
|
};
|
|
244
|
+
readonly monorepoContext: {
|
|
245
|
+
readonly type: "object";
|
|
246
|
+
readonly additionalProperties: false;
|
|
247
|
+
readonly required: readonly ["configFiles", "workspaceGlobs", "packages"];
|
|
248
|
+
readonly properties: {
|
|
249
|
+
readonly tools: {
|
|
250
|
+
readonly type: "array";
|
|
251
|
+
readonly items: {
|
|
252
|
+
readonly enum: readonly ["pnpm", "turbo", "nx", "lerna"];
|
|
253
|
+
};
|
|
254
|
+
};
|
|
255
|
+
readonly configFiles: {
|
|
256
|
+
readonly type: "array";
|
|
257
|
+
readonly items: {
|
|
258
|
+
readonly type: "string";
|
|
259
|
+
};
|
|
260
|
+
};
|
|
261
|
+
readonly workspaceGlobs: {
|
|
262
|
+
readonly type: "array";
|
|
263
|
+
readonly items: {
|
|
264
|
+
readonly type: "string";
|
|
265
|
+
};
|
|
266
|
+
};
|
|
267
|
+
readonly typescriptPathAliases: {
|
|
268
|
+
readonly type: "array";
|
|
269
|
+
readonly items: {
|
|
270
|
+
readonly type: "string";
|
|
271
|
+
};
|
|
272
|
+
};
|
|
273
|
+
readonly packages: {
|
|
274
|
+
readonly type: "array";
|
|
275
|
+
readonly items: {
|
|
276
|
+
readonly $ref: "#/$defs/monorepoPackage";
|
|
277
|
+
};
|
|
278
|
+
};
|
|
279
|
+
};
|
|
280
|
+
};
|
|
281
|
+
readonly monorepoPackage: {
|
|
282
|
+
readonly type: "object";
|
|
283
|
+
readonly additionalProperties: false;
|
|
284
|
+
readonly required: readonly ["path"];
|
|
285
|
+
readonly properties: {
|
|
286
|
+
readonly path: {
|
|
287
|
+
readonly type: "string";
|
|
288
|
+
readonly minLength: 1;
|
|
289
|
+
};
|
|
290
|
+
readonly name: {
|
|
291
|
+
readonly type: "string";
|
|
292
|
+
readonly minLength: 1;
|
|
293
|
+
};
|
|
294
|
+
};
|
|
295
|
+
};
|
|
296
|
+
readonly apiSnapshotSummary: {
|
|
297
|
+
readonly type: "object";
|
|
298
|
+
readonly additionalProperties: false;
|
|
299
|
+
readonly required: readonly ["path", "schemaVersion", "exportCount", "entrypoints"];
|
|
300
|
+
readonly properties: {
|
|
301
|
+
readonly path: {
|
|
302
|
+
readonly type: "string";
|
|
303
|
+
readonly minLength: 1;
|
|
304
|
+
};
|
|
305
|
+
readonly schemaVersion: {
|
|
306
|
+
readonly type: "string";
|
|
307
|
+
readonly minLength: 1;
|
|
308
|
+
};
|
|
309
|
+
readonly exportCount: {
|
|
310
|
+
readonly type: "integer";
|
|
311
|
+
readonly minimum: 0;
|
|
312
|
+
};
|
|
313
|
+
readonly entrypoints: {
|
|
314
|
+
readonly type: "array";
|
|
315
|
+
readonly items: {
|
|
316
|
+
readonly type: "string";
|
|
317
|
+
};
|
|
318
|
+
};
|
|
319
|
+
};
|
|
320
|
+
};
|
|
229
321
|
readonly repositoryProfile: {
|
|
230
322
|
readonly type: "object";
|
|
231
323
|
readonly additionalProperties: false;
|
|
@@ -346,6 +438,12 @@ export declare const gateResultJsonSchema: {
|
|
|
346
438
|
readonly $ref: "#/$defs/findingEvidence";
|
|
347
439
|
};
|
|
348
440
|
};
|
|
441
|
+
readonly reasonChain: {
|
|
442
|
+
readonly $ref: "#/$defs/findingReasonChain";
|
|
443
|
+
};
|
|
444
|
+
readonly repairContract: {
|
|
445
|
+
readonly $ref: "#/$defs/findingRepairContract";
|
|
446
|
+
};
|
|
349
447
|
readonly repair: {
|
|
350
448
|
readonly type: "string";
|
|
351
449
|
readonly minLength: 1;
|
|
@@ -358,6 +456,72 @@ export declare const gateResultJsonSchema: {
|
|
|
358
456
|
};
|
|
359
457
|
};
|
|
360
458
|
};
|
|
459
|
+
readonly findingReasonChain: {
|
|
460
|
+
readonly type: "object";
|
|
461
|
+
readonly additionalProperties: false;
|
|
462
|
+
readonly required: readonly ["whatHappened", "whySuspicious", "supportingSignals", "acceptableIf", "repairHint"];
|
|
463
|
+
readonly properties: {
|
|
464
|
+
readonly whatHappened: {
|
|
465
|
+
readonly type: "string";
|
|
466
|
+
readonly minLength: 1;
|
|
467
|
+
};
|
|
468
|
+
readonly whySuspicious: {
|
|
469
|
+
readonly type: "string";
|
|
470
|
+
readonly minLength: 1;
|
|
471
|
+
};
|
|
472
|
+
readonly supportingSignals: {
|
|
473
|
+
readonly type: "array";
|
|
474
|
+
readonly items: {
|
|
475
|
+
readonly type: "string";
|
|
476
|
+
};
|
|
477
|
+
};
|
|
478
|
+
readonly acceptableIf: {
|
|
479
|
+
readonly type: "array";
|
|
480
|
+
readonly items: {
|
|
481
|
+
readonly type: "string";
|
|
482
|
+
};
|
|
483
|
+
};
|
|
484
|
+
readonly repairHint: {
|
|
485
|
+
readonly type: "string";
|
|
486
|
+
readonly minLength: 1;
|
|
487
|
+
};
|
|
488
|
+
};
|
|
489
|
+
};
|
|
490
|
+
readonly findingRepairContract: {
|
|
491
|
+
readonly type: "object";
|
|
492
|
+
readonly additionalProperties: false;
|
|
493
|
+
readonly required: readonly ["instructions", "allowedFiles", "forbiddenFiles", "successCriteria"];
|
|
494
|
+
readonly properties: {
|
|
495
|
+
readonly instructions: {
|
|
496
|
+
readonly type: "array";
|
|
497
|
+
readonly items: {
|
|
498
|
+
readonly type: "string";
|
|
499
|
+
readonly minLength: 1;
|
|
500
|
+
};
|
|
501
|
+
};
|
|
502
|
+
readonly allowedFiles: {
|
|
503
|
+
readonly type: "array";
|
|
504
|
+
readonly items: {
|
|
505
|
+
readonly type: "string";
|
|
506
|
+
readonly minLength: 1;
|
|
507
|
+
};
|
|
508
|
+
};
|
|
509
|
+
readonly forbiddenFiles: {
|
|
510
|
+
readonly type: "array";
|
|
511
|
+
readonly items: {
|
|
512
|
+
readonly type: "string";
|
|
513
|
+
readonly minLength: 1;
|
|
514
|
+
};
|
|
515
|
+
};
|
|
516
|
+
readonly successCriteria: {
|
|
517
|
+
readonly type: "array";
|
|
518
|
+
readonly items: {
|
|
519
|
+
readonly type: "string";
|
|
520
|
+
readonly minLength: 1;
|
|
521
|
+
};
|
|
522
|
+
};
|
|
523
|
+
};
|
|
524
|
+
};
|
|
361
525
|
readonly findingEvidence: {
|
|
362
526
|
readonly type: "object";
|
|
363
527
|
readonly additionalProperties: false;
|
|
@@ -430,6 +594,31 @@ export declare const gateResultJsonSchema: {
|
|
|
430
594
|
readonly scopeExpansionScore: {
|
|
431
595
|
readonly $ref: "#/$defs/scopeExpansionScore";
|
|
432
596
|
};
|
|
597
|
+
readonly diffCoherenceScore: {
|
|
598
|
+
readonly $ref: "#/$defs/diffCoherenceScore";
|
|
599
|
+
};
|
|
600
|
+
readonly confidenceCalibration: {
|
|
601
|
+
readonly $ref: "#/$defs/confidenceCalibrationSummary";
|
|
602
|
+
};
|
|
603
|
+
};
|
|
604
|
+
};
|
|
605
|
+
readonly confidenceCalibrationSummary: {
|
|
606
|
+
readonly type: "object";
|
|
607
|
+
readonly additionalProperties: false;
|
|
608
|
+
readonly required: readonly ["blockingEligibleCount", "observationModeCount", "confidenceSuppressedCount"];
|
|
609
|
+
readonly properties: {
|
|
610
|
+
readonly blockingEligibleCount: {
|
|
611
|
+
readonly type: "integer";
|
|
612
|
+
readonly minimum: 0;
|
|
613
|
+
};
|
|
614
|
+
readonly observationModeCount: {
|
|
615
|
+
readonly type: "integer";
|
|
616
|
+
readonly minimum: 0;
|
|
617
|
+
};
|
|
618
|
+
readonly confidenceSuppressedCount: {
|
|
619
|
+
readonly type: "integer";
|
|
620
|
+
readonly minimum: 0;
|
|
621
|
+
};
|
|
433
622
|
};
|
|
434
623
|
};
|
|
435
624
|
readonly scopeExpansionScore: {
|
|
@@ -475,6 +664,49 @@ export declare const gateResultJsonSchema: {
|
|
|
475
664
|
};
|
|
476
665
|
};
|
|
477
666
|
};
|
|
667
|
+
readonly diffCoherenceScore: {
|
|
668
|
+
readonly type: "object";
|
|
669
|
+
readonly additionalProperties: false;
|
|
670
|
+
readonly required: readonly ["score", "drivers"];
|
|
671
|
+
readonly properties: {
|
|
672
|
+
readonly score: {
|
|
673
|
+
readonly type: "number";
|
|
674
|
+
readonly minimum: 0;
|
|
675
|
+
readonly maximum: 100;
|
|
676
|
+
};
|
|
677
|
+
readonly drivers: {
|
|
678
|
+
readonly type: "array";
|
|
679
|
+
readonly items: {
|
|
680
|
+
readonly $ref: "#/$defs/diffCoherenceDriver";
|
|
681
|
+
};
|
|
682
|
+
};
|
|
683
|
+
};
|
|
684
|
+
};
|
|
685
|
+
readonly diffCoherenceDriver: {
|
|
686
|
+
readonly type: "object";
|
|
687
|
+
readonly additionalProperties: false;
|
|
688
|
+
readonly required: readonly ["code", "label", "points"];
|
|
689
|
+
readonly properties: {
|
|
690
|
+
readonly code: {
|
|
691
|
+
readonly type: "string";
|
|
692
|
+
readonly minLength: 1;
|
|
693
|
+
};
|
|
694
|
+
readonly label: {
|
|
695
|
+
readonly type: "string";
|
|
696
|
+
readonly minLength: 1;
|
|
697
|
+
};
|
|
698
|
+
readonly points: {
|
|
699
|
+
readonly type: "number";
|
|
700
|
+
readonly minimum: 0;
|
|
701
|
+
};
|
|
702
|
+
readonly evidence: {
|
|
703
|
+
readonly type: "array";
|
|
704
|
+
readonly items: {
|
|
705
|
+
readonly type: "string";
|
|
706
|
+
};
|
|
707
|
+
};
|
|
708
|
+
};
|
|
709
|
+
};
|
|
478
710
|
readonly intentVerificationSummary: {
|
|
479
711
|
readonly type: "object";
|
|
480
712
|
readonly additionalProperties: false;
|
|
@@ -509,6 +741,46 @@ export declare const gateResultJsonSchema: {
|
|
|
509
741
|
};
|
|
510
742
|
};
|
|
511
743
|
};
|
|
744
|
+
readonly taskIntentQualitySummary: {
|
|
745
|
+
readonly type: "object";
|
|
746
|
+
readonly additionalProperties: false;
|
|
747
|
+
readonly required: readonly ["score", "warnings"];
|
|
748
|
+
readonly properties: {
|
|
749
|
+
readonly score: {
|
|
750
|
+
readonly type: "number";
|
|
751
|
+
readonly minimum: 0;
|
|
752
|
+
readonly maximum: 100;
|
|
753
|
+
};
|
|
754
|
+
readonly warnings: {
|
|
755
|
+
readonly type: "array";
|
|
756
|
+
readonly items: {
|
|
757
|
+
readonly $ref: "#/$defs/taskIntentQualityWarning";
|
|
758
|
+
};
|
|
759
|
+
};
|
|
760
|
+
};
|
|
761
|
+
};
|
|
762
|
+
readonly taskIntentQualityWarning: {
|
|
763
|
+
readonly type: "object";
|
|
764
|
+
readonly additionalProperties: false;
|
|
765
|
+
readonly required: readonly ["code", "message", "suggestion", "penalty"];
|
|
766
|
+
readonly properties: {
|
|
767
|
+
readonly code: {
|
|
768
|
+
readonly enum: readonly ["too-short", "vague-task", "missing-target", "generic-only"];
|
|
769
|
+
};
|
|
770
|
+
readonly message: {
|
|
771
|
+
readonly type: "string";
|
|
772
|
+
readonly minLength: 1;
|
|
773
|
+
};
|
|
774
|
+
readonly suggestion: {
|
|
775
|
+
readonly type: "string";
|
|
776
|
+
readonly minLength: 1;
|
|
777
|
+
};
|
|
778
|
+
readonly penalty: {
|
|
779
|
+
readonly type: "number";
|
|
780
|
+
readonly minimum: 0;
|
|
781
|
+
};
|
|
782
|
+
};
|
|
783
|
+
};
|
|
512
784
|
};
|
|
513
785
|
};
|
|
514
786
|
//# sourceMappingURL=gate-result.schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate-result.schema.d.ts","sourceRoot":"","sources":["../../src/schema/gate-result.schema.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"gate-result.schema.d.ts","sourceRoot":"","sources":["../../src/schema/gate-result.schema.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkdvB,CAAC"}
|