@esbenwiberg/corpus-default 1.1.0 → 1.2.1
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/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -1
- package/dist/probes/_shared/guidance-content.d.ts +9 -0
- package/dist/probes/_shared/guidance-content.d.ts.map +1 -0
- package/dist/probes/_shared/guidance-content.js +140 -0
- package/dist/probes/_shared/guidance-content.js.map +1 -0
- package/dist/probes/agent-guidance-aligned.d.ts +3 -0
- package/dist/probes/agent-guidance-aligned.d.ts.map +1 -0
- package/dist/probes/agent-guidance-aligned.js +130 -0
- package/dist/probes/agent-guidance-aligned.js.map +1 -0
- package/dist/probes/agent-guidance-fresh.d.ts.map +1 -1
- package/dist/probes/agent-guidance-fresh.js +3 -13
- package/dist/probes/agent-guidance-fresh.js.map +1 -1
- package/dist/probes/agent-guidance-quality.d.ts.map +1 -1
- package/dist/probes/agent-guidance-quality.js +3 -13
- package/dist/probes/agent-guidance-quality.js.map +1 -1
- package/dist/probes/agent-guidance-substance.d.ts.map +1 -1
- package/dist/probes/agent-guidance-substance.js +20 -3
- package/dist/probes/agent-guidance-substance.js.map +1 -1
- package/dist/probes/agent-skills-present.d.ts +3 -0
- package/dist/probes/agent-skills-present.d.ts.map +1 -0
- package/dist/probes/agent-skills-present.js +82 -0
- package/dist/probes/agent-skills-present.js.map +1 -0
- package/dist/probes/agent-skills-quality.d.ts +3 -0
- package/dist/probes/agent-skills-quality.d.ts.map +1 -0
- package/dist/probes/agent-skills-quality.js +148 -0
- package/dist/probes/agent-skills-quality.js.map +1 -0
- package/dist/probes/arch-coupling-hotspots.d.ts +3 -0
- package/dist/probes/arch-coupling-hotspots.d.ts.map +1 -0
- package/dist/probes/arch-coupling-hotspots.js +222 -0
- package/dist/probes/arch-coupling-hotspots.js.map +1 -0
- package/dist/probes/contracts-machine-readable.d.ts +3 -0
- package/dist/probes/contracts-machine-readable.d.ts.map +1 -0
- package/dist/probes/contracts-machine-readable.js +139 -0
- package/dist/probes/contracts-machine-readable.js.map +1 -0
- package/dist/probes/errors-actionability.d.ts.map +1 -1
- package/dist/probes/errors-actionability.js +132 -22
- package/dist/probes/errors-actionability.js.map +1 -1
- package/dist/probes/generated-code-marked.d.ts +3 -0
- package/dist/probes/generated-code-marked.d.ts.map +1 -0
- package/dist/probes/generated-code-marked.js +110 -0
- package/dist/probes/generated-code-marked.js.map +1 -0
- package/dist/probes/hooks-precommit-present.d.ts.map +1 -1
- package/dist/probes/hooks-precommit-present.js +81 -5
- package/dist/probes/hooks-precommit-present.js.map +1 -1
- package/dist/probes/specs-test-traceability.d.ts +3 -0
- package/dist/probes/specs-test-traceability.d.ts.map +1 -0
- package/dist/probes/specs-test-traceability.js +198 -0
- package/dist/probes/specs-test-traceability.js.map +1 -0
- package/dist/probes/tests-agent-safe-command.d.ts +3 -0
- package/dist/probes/tests-agent-safe-command.d.ts.map +1 -0
- package/dist/probes/tests-agent-safe-command.js +158 -0
- package/dist/probes/tests-agent-safe-command.js.map +1 -0
- package/dist/probes/tests-cover-public-surface.d.ts.map +1 -1
- package/dist/probes/tests-cover-public-surface.js +93 -12
- package/dist/probes/tests-cover-public-surface.js.map +1 -1
- package/dist/probes/tests-deterministic.d.ts +3 -0
- package/dist/probes/tests-deterministic.d.ts.map +1 -0
- package/dist/probes/tests-deterministic.js +204 -0
- package/dist/probes/tests-deterministic.js.map +1 -0
- package/dist/probes/tests-failure-actionability.d.ts +3 -0
- package/dist/probes/tests-failure-actionability.d.ts.map +1 -0
- package/dist/probes/tests-failure-actionability.js +139 -0
- package/dist/probes/tests-failure-actionability.js.map +1 -0
- package/dist/probes/tests-oracle-quality.d.ts +3 -0
- package/dist/probes/tests-oracle-quality.d.ts.map +1 -0
- package/dist/probes/tests-oracle-quality.js +140 -0
- package/dist/probes/tests-oracle-quality.js.map +1 -0
- package/dist/probes/types-escape-hatches.d.ts +3 -0
- package/dist/probes/types-escape-hatches.d.ts.map +1 -0
- package/dist/probes/types-escape-hatches.js +229 -0
- package/dist/probes/types-escape-hatches.js.map +1 -0
- package/package.json +2 -2
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAsFA,eAAO,MAAM,IAAI;;;CAGhB,CAAC;AAEF,eAAO,MAAM,MAAM,4CAuElB,CAAC;AAEF,eAAO,MAAM,UAAU,sDAOtB,CAAC;AAEF,eAAO,MAAM,MAAM,4CAOlB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -11,12 +11,16 @@ import docsReadmePresentFixer from "./fixers/docs-readme-present.js";
|
|
|
11
11
|
import docsReadmePresentLlmFixer from "./fixers/docs-readme-present-llm.js";
|
|
12
12
|
import editorconfigPresentFixer from "./fixers/editorconfig-present.js";
|
|
13
13
|
import gitignoreComprehensiveFixer from "./fixers/gitignore-comprehensive.js";
|
|
14
|
+
import agentGuidanceAligned from "./probes/agent-guidance-aligned.js";
|
|
14
15
|
import agentGuidanceFresh from "./probes/agent-guidance-fresh.js";
|
|
15
16
|
import agentGuidanceNested from "./probes/agent-guidance-nested.js";
|
|
16
17
|
import agentGuidancePresent from "./probes/agent-guidance-present.js";
|
|
17
18
|
import agentGuidanceQuality from "./probes/agent-guidance-quality.js";
|
|
18
19
|
import agentGuidanceSubstance from "./probes/agent-guidance-substance.js";
|
|
20
|
+
import agentSkillsPresent from "./probes/agent-skills-present.js";
|
|
21
|
+
import agentSkillsQuality from "./probes/agent-skills-quality.js";
|
|
19
22
|
import archBoundariesClear from "./probes/arch-boundaries-clear.js";
|
|
23
|
+
import archCouplingHotspots from "./probes/arch-coupling-hotspots.js";
|
|
20
24
|
import archDocPresent from "./probes/arch-doc-present.js";
|
|
21
25
|
import archDocQuality from "./probes/arch-doc-quality.js";
|
|
22
26
|
import archFitnessTestsConfigured from "./probes/arch-fitness-tests-configured.js";
|
|
@@ -29,6 +33,7 @@ import ciRunsLint from "./probes/ci-runs-lint.js";
|
|
|
29
33
|
import ciRunsTests from "./probes/ci-runs-tests.js";
|
|
30
34
|
import ciRunsTypecheck from "./probes/ci-runs-typecheck.js";
|
|
31
35
|
import commitsConventionalFollowed from "./probes/commits-conventional-followed.js";
|
|
36
|
+
import contractsMachineReadable from "./probes/contracts-machine-readable.js";
|
|
32
37
|
import deadCodeConfigured from "./probes/dead-code-configured.js";
|
|
33
38
|
import depsAuditConfigured from "./probes/deps-audit-configured.js";
|
|
34
39
|
import depsLockfilePresent from "./probes/deps-lockfile-present.js";
|
|
@@ -43,6 +48,7 @@ import editorconfigPresent from "./probes/editorconfig-present.js";
|
|
|
43
48
|
import errorsActionability from "./probes/errors-actionability.js";
|
|
44
49
|
import formatClean from "./probes/format-clean.js";
|
|
45
50
|
import formatConfigured from "./probes/format-configured.js";
|
|
51
|
+
import generatedCodeMarked from "./probes/generated-code-marked.js";
|
|
46
52
|
import gitBranchProtection from "./probes/git-branch-protection.js";
|
|
47
53
|
import gitignoreComprehensive from "./probes/gitignore-comprehensive.js";
|
|
48
54
|
import hooksGatesLintTestBuild from "./probes/hooks-gates-lint-test-build.js";
|
|
@@ -64,23 +70,33 @@ import sizeLargeFiles from "./probes/size-large-files.js";
|
|
|
64
70
|
import sizeRepoTokenEstimate from "./probes/size-repo-token-estimate.js";
|
|
65
71
|
import specsPresent from "./probes/specs-present.js";
|
|
66
72
|
import specsQuality from "./probes/specs-quality.js";
|
|
73
|
+
import specsTestTraceability from "./probes/specs-test-traceability.js";
|
|
74
|
+
import testsAgentSafeCommand from "./probes/tests-agent-safe-command.js";
|
|
67
75
|
import testsClean from "./probes/tests-clean.js";
|
|
68
76
|
import testsCoverPublicSurface from "./probes/tests-cover-public-surface.js";
|
|
77
|
+
import testsDeterministic from "./probes/tests-deterministic.js";
|
|
78
|
+
import testsFailureActionability from "./probes/tests-failure-actionability.js";
|
|
79
|
+
import testsOracleQuality from "./probes/tests-oracle-quality.js";
|
|
69
80
|
import testsRunnerConfigured from "./probes/tests-runner-configured.js";
|
|
70
81
|
import typesClean from "./probes/types-clean.js";
|
|
71
82
|
import typesConfigured from "./probes/types-configured.js";
|
|
83
|
+
import typesEscapeHatches from "./probes/types-escape-hatches.js";
|
|
72
84
|
const pkg = createRequire(import.meta.url)("../package.json");
|
|
73
85
|
export const meta = {
|
|
74
86
|
name: pkg.name,
|
|
75
87
|
version: pkg.version,
|
|
76
88
|
};
|
|
77
89
|
export const probes = [
|
|
90
|
+
agentGuidanceAligned,
|
|
78
91
|
agentGuidanceFresh,
|
|
79
92
|
agentGuidanceNested,
|
|
80
93
|
agentGuidancePresent,
|
|
81
94
|
agentGuidanceQuality,
|
|
82
95
|
agentGuidanceSubstance,
|
|
96
|
+
agentSkillsPresent,
|
|
97
|
+
agentSkillsQuality,
|
|
83
98
|
archBoundariesClear,
|
|
99
|
+
archCouplingHotspots,
|
|
84
100
|
archDocPresent,
|
|
85
101
|
archDocQuality,
|
|
86
102
|
archFitnessTestsConfigured,
|
|
@@ -93,6 +109,7 @@ export const probes = [
|
|
|
93
109
|
ciRunsTests,
|
|
94
110
|
ciRunsTypecheck,
|
|
95
111
|
commitsConventionalFollowed,
|
|
112
|
+
contractsMachineReadable,
|
|
96
113
|
deadCodeConfigured,
|
|
97
114
|
depsAuditConfigured,
|
|
98
115
|
depsLockfilePresent,
|
|
@@ -107,6 +124,7 @@ export const probes = [
|
|
|
107
124
|
errorsActionability,
|
|
108
125
|
formatClean,
|
|
109
126
|
formatConfigured,
|
|
127
|
+
generatedCodeMarked,
|
|
110
128
|
gitBranchProtection,
|
|
111
129
|
gitignoreComprehensive,
|
|
112
130
|
hooksGatesLintTestBuild,
|
|
@@ -128,11 +146,17 @@ export const probes = [
|
|
|
128
146
|
sizeRepoTokenEstimate,
|
|
129
147
|
specsPresent,
|
|
130
148
|
specsQuality,
|
|
149
|
+
specsTestTraceability,
|
|
150
|
+
testsAgentSafeCommand,
|
|
131
151
|
testsClean,
|
|
132
152
|
testsCoverPublicSurface,
|
|
153
|
+
testsDeterministic,
|
|
154
|
+
testsFailureActionability,
|
|
155
|
+
testsOracleQuality,
|
|
133
156
|
testsRunnerConfigured,
|
|
134
157
|
typesClean,
|
|
135
158
|
typesConfigured,
|
|
159
|
+
typesEscapeHatches,
|
|
136
160
|
];
|
|
137
161
|
export const dimensions = [
|
|
138
162
|
contextDimension,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { FilesEvidence, GuidanceFile } from "@esbenwiberg/repofit/sdk";
|
|
2
|
+
type GuidancePart = {
|
|
3
|
+
path: string;
|
|
4
|
+
text: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function effectiveGuidanceLineCount(guidance: GuidanceFile[], files: FilesEvidence): Promise<number>;
|
|
7
|
+
export declare function readGuidanceParts(guidance: GuidanceFile[], files: FilesEvidence, maxChars: number): Promise<GuidancePart[]>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=guidance-content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guidance-content.d.ts","sourceRoot":"","sources":["../../../src/probes/_shared/guidance-content.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE5E,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAIF,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,YAAY,EAAE,EACxB,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,YAAY,EAAE,EACxB,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,EAAE,CAAC,CAgBzB"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
const INCLUDE_ONLY_RE = /^@([A-Za-z0-9._/ -]+)$/;
|
|
2
|
+
export async function effectiveGuidanceLineCount(guidance, files) {
|
|
3
|
+
const resolver = createGuidanceResolver(guidance, files);
|
|
4
|
+
let total = 0;
|
|
5
|
+
const counted = new Set();
|
|
6
|
+
for (const file of guidance) {
|
|
7
|
+
total += await countPath(file.path, resolver, counted, new Set());
|
|
8
|
+
}
|
|
9
|
+
return total;
|
|
10
|
+
}
|
|
11
|
+
export async function readGuidanceParts(guidance, files, maxChars) {
|
|
12
|
+
const resolver = createGuidanceResolver(guidance, files);
|
|
13
|
+
const emitted = new Set();
|
|
14
|
+
const parts = [];
|
|
15
|
+
let remaining = maxChars;
|
|
16
|
+
for (const file of guidance) {
|
|
17
|
+
if (remaining <= 0)
|
|
18
|
+
break;
|
|
19
|
+
const resolved = await renderPath(file.path, resolver, emitted, new Set());
|
|
20
|
+
if (!resolved)
|
|
21
|
+
continue;
|
|
22
|
+
const text = resolved.slice(0, remaining);
|
|
23
|
+
parts.push({ path: file.path, text });
|
|
24
|
+
remaining -= text.length;
|
|
25
|
+
}
|
|
26
|
+
return parts;
|
|
27
|
+
}
|
|
28
|
+
function createGuidanceResolver(guidance, files) {
|
|
29
|
+
const guidancePaths = new Map(guidance.map((file) => [normalizePath(file.path), file.path]));
|
|
30
|
+
const lowerGuidancePaths = new Map(guidance.map((file) => [normalizePath(file.path).toLowerCase(), file.path]));
|
|
31
|
+
const lineFallback = new Map(guidance.map((file) => [normalizePath(file.path), file.lines]));
|
|
32
|
+
return {
|
|
33
|
+
async read(path) {
|
|
34
|
+
const resolved = await resolvePath(path, files, guidancePaths, lowerGuidancePaths);
|
|
35
|
+
if (!resolved)
|
|
36
|
+
return undefined;
|
|
37
|
+
return files.readText(resolved);
|
|
38
|
+
},
|
|
39
|
+
async resolve(path) {
|
|
40
|
+
return resolvePath(path, files, guidancePaths, lowerGuidancePaths);
|
|
41
|
+
},
|
|
42
|
+
fallbackLines(path) {
|
|
43
|
+
return lineFallback.get(normalizePath(path)) ?? 0;
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
async function countPath(path, resolver, counted, active) {
|
|
48
|
+
const resolved = await resolver.resolve(path);
|
|
49
|
+
if (!resolved)
|
|
50
|
+
return resolver.fallbackLines(path);
|
|
51
|
+
const key = normalizePath(resolved).toLowerCase();
|
|
52
|
+
if (counted.has(key))
|
|
53
|
+
return 0;
|
|
54
|
+
if (active.has(key))
|
|
55
|
+
return 0;
|
|
56
|
+
active.add(key);
|
|
57
|
+
counted.add(key);
|
|
58
|
+
const text = await resolver.read(resolved);
|
|
59
|
+
if (text === undefined) {
|
|
60
|
+
active.delete(key);
|
|
61
|
+
return resolver.fallbackLines(resolved);
|
|
62
|
+
}
|
|
63
|
+
let total = 0;
|
|
64
|
+
for (const line of splitLines(text)) {
|
|
65
|
+
const includePath = parseIncludeOnly(line);
|
|
66
|
+
if (includePath) {
|
|
67
|
+
total += await countPath(includePath, resolver, counted, active);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
total += 1;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
active.delete(key);
|
|
74
|
+
return total;
|
|
75
|
+
}
|
|
76
|
+
async function renderPath(path, resolver, emitted, active) {
|
|
77
|
+
const resolved = await resolver.resolve(path);
|
|
78
|
+
if (!resolved)
|
|
79
|
+
return undefined;
|
|
80
|
+
const key = normalizePath(resolved).toLowerCase();
|
|
81
|
+
if (emitted.has(key))
|
|
82
|
+
return undefined;
|
|
83
|
+
if (active.has(key))
|
|
84
|
+
return `<!-- skipped recursive guidance include: ${resolved} -->`;
|
|
85
|
+
active.add(key);
|
|
86
|
+
emitted.add(key);
|
|
87
|
+
const text = await resolver.read(resolved);
|
|
88
|
+
if (text === undefined) {
|
|
89
|
+
active.delete(key);
|
|
90
|
+
return undefined;
|
|
91
|
+
}
|
|
92
|
+
const rendered = [];
|
|
93
|
+
for (const line of splitLines(text)) {
|
|
94
|
+
const includePath = parseIncludeOnly(line);
|
|
95
|
+
if (!includePath) {
|
|
96
|
+
rendered.push(line);
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
99
|
+
const includeResolved = await resolver.resolve(includePath);
|
|
100
|
+
const included = includeResolved
|
|
101
|
+
? await renderPath(includeResolved, resolver, emitted, active)
|
|
102
|
+
: undefined;
|
|
103
|
+
if (included) {
|
|
104
|
+
rendered.push(`<!-- included from ${includeResolved ?? includePath} -->`);
|
|
105
|
+
rendered.push(included);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
active.delete(key);
|
|
109
|
+
return rendered.join("\n");
|
|
110
|
+
}
|
|
111
|
+
async function resolvePath(path, files, guidancePaths, lowerGuidancePaths) {
|
|
112
|
+
const normalized = normalizePath(path);
|
|
113
|
+
if (!isSafeRelativePath(normalized))
|
|
114
|
+
return undefined;
|
|
115
|
+
const exactGuidance = guidancePaths.get(normalized);
|
|
116
|
+
if (exactGuidance)
|
|
117
|
+
return exactGuidance;
|
|
118
|
+
const lowerGuidance = lowerGuidancePaths.get(normalized.toLowerCase());
|
|
119
|
+
if (lowerGuidance)
|
|
120
|
+
return lowerGuidance;
|
|
121
|
+
if (files.has(normalized))
|
|
122
|
+
return normalized;
|
|
123
|
+
return undefined;
|
|
124
|
+
}
|
|
125
|
+
function parseIncludeOnly(line) {
|
|
126
|
+
const match = INCLUDE_ONLY_RE.exec(line.trim());
|
|
127
|
+
return match?.[1]?.trim();
|
|
128
|
+
}
|
|
129
|
+
function splitLines(text) {
|
|
130
|
+
if (text.length === 0)
|
|
131
|
+
return [];
|
|
132
|
+
return text.endsWith("\n") ? text.slice(0, -1).split("\n") : text.split("\n");
|
|
133
|
+
}
|
|
134
|
+
function normalizePath(path) {
|
|
135
|
+
return path.replaceAll("\\", "/").replace(/^\.\//, "");
|
|
136
|
+
}
|
|
137
|
+
function isSafeRelativePath(path) {
|
|
138
|
+
return path.length > 0 && !path.startsWith("/") && !path.split("/").includes("..");
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=guidance-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guidance-content.js","sourceRoot":"","sources":["../../../src/probes/_shared/guidance-content.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-guidance-aligned.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-aligned.ts"],"names":[],"mappings":";AA+BA,wBAgHG"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { defineProbe } from "@esbenwiberg/repofit/sdk";
|
|
2
|
+
const PROBE_VERSION = "1.0.0";
|
|
3
|
+
const MAX_CHARS_PER_FILE = 5_000;
|
|
4
|
+
const MAX_INPUT_CHARS = 20_000;
|
|
5
|
+
const RUBRIC = {
|
|
6
|
+
task: "Judge whether multiple agent guidance files in this repository are aligned rather than giving different agents contradictory instructions.",
|
|
7
|
+
criteria: [
|
|
8
|
+
{
|
|
9
|
+
id: "commands-align",
|
|
10
|
+
description: "Do build, test, lint, typecheck, smoke, and release commands match across guidance files? Contradictory commands score low.",
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
id: "architecture-align",
|
|
14
|
+
description: "Do the files describe the same repo structure, package ownership, and architectural boundaries?",
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
id: "conventions-align",
|
|
18
|
+
description: "Do coding, commit, review, testing, and safety conventions agree across files?",
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
id: "audience-fit",
|
|
22
|
+
description: "Do tool-specific files add appropriate local nuance without forking the source of truth or drifting from shared guidance?",
|
|
23
|
+
},
|
|
24
|
+
],
|
|
25
|
+
};
|
|
26
|
+
export default defineProbe({
|
|
27
|
+
id: "agent.guidance-aligned",
|
|
28
|
+
version: PROBE_VERSION,
|
|
29
|
+
dimensions: [
|
|
30
|
+
{ id: "context", weight: 1 },
|
|
31
|
+
{ id: "consistency", weight: 0.7 },
|
|
32
|
+
],
|
|
33
|
+
tier: "reasoned",
|
|
34
|
+
evidence: ["agent_config", "files", "judge"],
|
|
35
|
+
rationale: `
|
|
36
|
+
Many repos now carry several guidance files: CLAUDE.md, AGENTS.md,
|
|
37
|
+
.cursorrules, .aider.conf.yml, and GitHub Copilot instructions. That is
|
|
38
|
+
useful only if they agree on commands, architecture, conventions, and
|
|
39
|
+
safety rules. Otherwise different agents receive different realities.
|
|
40
|
+
`,
|
|
41
|
+
remediation: "Pick one source of truth for shared repo guidance, then make tool-specific files point to it or add only tool-specific deltas. Keep commands, architecture, commit rules, testing expectations, and safety constraints aligned across CLAUDE.md, AGENTS.md, Copilot instructions, Cursor rules, and Aider config.",
|
|
42
|
+
async detect(ev) {
|
|
43
|
+
const guidance = ev.agent_config.guidance;
|
|
44
|
+
if (guidance.length < 2) {
|
|
45
|
+
return { kind: "na", reason: "fewer than two agent guidance files found" };
|
|
46
|
+
}
|
|
47
|
+
const sampled = [];
|
|
48
|
+
let totalChars = 0;
|
|
49
|
+
for (const g of guidance.sort((a, b) => a.path.localeCompare(b.path))) {
|
|
50
|
+
const text = await ev.files.readText(g.path);
|
|
51
|
+
if (!text)
|
|
52
|
+
continue;
|
|
53
|
+
const slice = text.slice(0, MAX_CHARS_PER_FILE);
|
|
54
|
+
sampled.push({ path: g.path, text: slice });
|
|
55
|
+
totalChars += slice.length;
|
|
56
|
+
if (totalChars >= MAX_INPUT_CHARS)
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
if (sampled.length < 2) {
|
|
60
|
+
return { kind: "na", reason: "agent guidance files declared but unreadable" };
|
|
61
|
+
}
|
|
62
|
+
const input = sampled.map((s) => `# ${s.path}\n\n${s.text}`).join("\n\n---\n\n");
|
|
63
|
+
const result = await ev.judge.score({
|
|
64
|
+
probeId: "agent.guidance-aligned",
|
|
65
|
+
probeVersion: PROBE_VERSION,
|
|
66
|
+
input,
|
|
67
|
+
rubric: RUBRIC,
|
|
68
|
+
});
|
|
69
|
+
return {
|
|
70
|
+
kind: "judge",
|
|
71
|
+
score: result.score,
|
|
72
|
+
perCriterion: result.perCriterion,
|
|
73
|
+
rationale: result.rationale,
|
|
74
|
+
model: result.model,
|
|
75
|
+
};
|
|
76
|
+
},
|
|
77
|
+
score: { kind: "judge" },
|
|
78
|
+
fixtures: [
|
|
79
|
+
{
|
|
80
|
+
name: "single-guidance-file",
|
|
81
|
+
evidence: { agent_config: { guidance: [{ path: "CLAUDE.md", bytes: 100, lines: 5 }] } },
|
|
82
|
+
expect: {
|
|
83
|
+
reading: { kind: "na", reason: "fewer than two agent guidance files found" },
|
|
84
|
+
score: null,
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
name: "aligned-guidance",
|
|
89
|
+
evidence: {
|
|
90
|
+
agent_config: {
|
|
91
|
+
guidance: [
|
|
92
|
+
{ path: "AGENTS.md", bytes: 200, lines: 10 },
|
|
93
|
+
{ path: ".github/copilot-instructions.md", bytes: 200, lines: 10 },
|
|
94
|
+
],
|
|
95
|
+
},
|
|
96
|
+
files: {
|
|
97
|
+
"AGENTS.md": "Run npm test and npm run typecheck. Commit as feat(scope): subject.\n",
|
|
98
|
+
".github/copilot-instructions.md": "Follow AGENTS.md. Use npm test and npm run typecheck before proposing changes.\n",
|
|
99
|
+
},
|
|
100
|
+
judge: {
|
|
101
|
+
score: 80,
|
|
102
|
+
perCriterion: {
|
|
103
|
+
"commands-align": 80,
|
|
104
|
+
"architecture-align": 80,
|
|
105
|
+
"conventions-align": 80,
|
|
106
|
+
"audience-fit": 80,
|
|
107
|
+
},
|
|
108
|
+
rationale: "Copilot instructions defer to AGENTS.md and repeat the same commands.",
|
|
109
|
+
model: "fixture",
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
expect: {
|
|
113
|
+
reading: {
|
|
114
|
+
kind: "judge",
|
|
115
|
+
score: 80,
|
|
116
|
+
perCriterion: {
|
|
117
|
+
"commands-align": 80,
|
|
118
|
+
"architecture-align": 80,
|
|
119
|
+
"conventions-align": 80,
|
|
120
|
+
"audience-fit": 80,
|
|
121
|
+
},
|
|
122
|
+
rationale: "Copilot instructions defer to AGENTS.md and repeat the same commands.",
|
|
123
|
+
model: "fixture",
|
|
124
|
+
},
|
|
125
|
+
score: 80,
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
],
|
|
129
|
+
});
|
|
130
|
+
//# sourceMappingURL=agent-guidance-aligned.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-guidance-aligned.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-aligned.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-guidance-fresh.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-fresh.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"agent-guidance-fresh.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-fresh.ts"],"names":[],"mappings":";AAiCA,wBAiLG"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { defineProbe } from "@esbenwiberg/repofit/sdk";
|
|
2
|
-
|
|
2
|
+
import { readGuidanceParts } from "./_shared/guidance-content.js";
|
|
3
|
+
const PROBE_VERSION = "1.1.0";
|
|
3
4
|
const MAX_GUIDANCE_CHARS = 12_000;
|
|
4
5
|
const MAX_TREE_ENTRIES = 200;
|
|
5
6
|
const RUBRIC = {
|
|
@@ -47,18 +48,7 @@ export default defineProbe({
|
|
|
47
48
|
if (guidance.length === 0) {
|
|
48
49
|
return { kind: "na", reason: "no agent-guidance file present" };
|
|
49
50
|
}
|
|
50
|
-
const parts =
|
|
51
|
-
let remaining = MAX_GUIDANCE_CHARS;
|
|
52
|
-
for (const g of guidance) {
|
|
53
|
-
if (remaining <= 0)
|
|
54
|
-
break;
|
|
55
|
-
const text = await ev.files.readText(g.path);
|
|
56
|
-
if (!text)
|
|
57
|
-
continue;
|
|
58
|
-
const slice = text.slice(0, remaining);
|
|
59
|
-
parts.push(`# ${g.path}\n\n${slice}`);
|
|
60
|
-
remaining -= slice.length;
|
|
61
|
-
}
|
|
51
|
+
const parts = (await readGuidanceParts(guidance, ev.files, MAX_GUIDANCE_CHARS)).map((part) => `# ${part.path}\n\n${part.text}`);
|
|
62
52
|
if (parts.length === 0) {
|
|
63
53
|
return { kind: "na", reason: "agent-guidance files declared but unreadable" };
|
|
64
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-guidance-fresh.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-fresh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-guidance-fresh.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-fresh.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-guidance-quality.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-quality.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"agent-guidance-quality.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-quality.ts"],"names":[],"mappings":";AAgCA,wBA6GG"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { defineProbe } from "@esbenwiberg/repofit/sdk";
|
|
2
|
-
|
|
2
|
+
import { readGuidanceParts } from "./_shared/guidance-content.js";
|
|
3
|
+
const PROBE_VERSION = "1.1.0";
|
|
3
4
|
const MAX_INPUT_CHARS = 20_000;
|
|
4
5
|
const RUBRIC = {
|
|
5
6
|
task: "Score the agent-guidance file (CLAUDE.md / AGENTS.md / .cursorrules) on how useful it would be to a coding agent landing in this repository for the first time.",
|
|
@@ -46,18 +47,7 @@ export default defineProbe({
|
|
|
46
47
|
if (guidance.length === 0) {
|
|
47
48
|
return { kind: "na", reason: "no agent-guidance file present" };
|
|
48
49
|
}
|
|
49
|
-
const parts =
|
|
50
|
-
let remaining = MAX_INPUT_CHARS;
|
|
51
|
-
for (const g of guidance) {
|
|
52
|
-
if (remaining <= 0)
|
|
53
|
-
break;
|
|
54
|
-
const text = await ev.files.readText(g.path);
|
|
55
|
-
if (!text)
|
|
56
|
-
continue;
|
|
57
|
-
const slice = text.slice(0, remaining);
|
|
58
|
-
parts.push(`# ${g.path}\n\n${slice}`);
|
|
59
|
-
remaining -= slice.length;
|
|
60
|
-
}
|
|
50
|
+
const parts = (await readGuidanceParts(guidance, ev.files, MAX_INPUT_CHARS)).map((part) => `# ${part.path}\n\n${part.text}`);
|
|
61
51
|
if (parts.length === 0) {
|
|
62
52
|
return { kind: "na", reason: "agent-guidance files declared but unreadable" };
|
|
63
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-guidance-quality.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-quality.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-guidance-quality.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-quality.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-guidance-substance.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-substance.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"agent-guidance-substance.d.ts","sourceRoot":"","sources":["../../src/probes/agent-guidance-substance.ts"],"names":[],"mappings":";AAGA,wBAmFG"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { defineProbe } from "@esbenwiberg/repofit/sdk";
|
|
2
|
+
import { effectiveGuidanceLineCount } from "./_shared/guidance-content.js";
|
|
2
3
|
export default defineProbe({
|
|
3
4
|
id: "agent.guidance-substance",
|
|
4
|
-
version: "1.
|
|
5
|
+
version: "1.1.0",
|
|
5
6
|
dimensions: [{ id: "context", weight: 1 }],
|
|
6
7
|
tier: "static",
|
|
7
|
-
evidence: ["agent_config"],
|
|
8
|
+
evidence: ["agent_config", "files"],
|
|
8
9
|
rationale: `
|
|
9
10
|
Guidance files exist on a quality spectrum: a stub CLAUDE.md with three
|
|
10
11
|
lines is barely better than none. The total line count across all
|
|
@@ -13,7 +14,7 @@ export default defineProbe({
|
|
|
13
14
|
`,
|
|
14
15
|
remediation: "Expand your CLAUDE.md/AGENTS.md beyond a stub. Aim for at least 40 lines covering: project purpose, build/test/run commands, directory layout, key conventions, and any non-obvious constraints. A short, focused 120-line file beats a sprawling one — but a 5-line file isn't enough for an agent to orient.",
|
|
15
16
|
async detect(ev) {
|
|
16
|
-
const total = ev.agent_config.guidance
|
|
17
|
+
const total = await effectiveGuidanceLineCount(ev.agent_config.guidance, ev.files);
|
|
17
18
|
return { kind: "magnitude", value: total, unit: "lines" };
|
|
18
19
|
},
|
|
19
20
|
score: {
|
|
@@ -54,6 +55,22 @@ export default defineProbe({
|
|
|
54
55
|
},
|
|
55
56
|
expect: { reading: { kind: "magnitude", value: 120, unit: "lines" }, score: 80 },
|
|
56
57
|
},
|
|
58
|
+
{
|
|
59
|
+
name: "forwarded-guidance",
|
|
60
|
+
evidence: {
|
|
61
|
+
agent_config: {
|
|
62
|
+
guidance: [
|
|
63
|
+
{ path: "CLAUDE.md", bytes: 11, lines: 1 },
|
|
64
|
+
{ path: "AGENTS.md", bytes: 800, lines: 50 },
|
|
65
|
+
],
|
|
66
|
+
},
|
|
67
|
+
files: {
|
|
68
|
+
"CLAUDE.md": "@AGENTS.MD\n",
|
|
69
|
+
"AGENTS.md": Array.from({ length: 50 }, (_, i) => `line ${i + 1}`).join("\n"),
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
expect: { reading: { kind: "magnitude", value: 50, unit: "lines" }, score: 80 },
|
|
73
|
+
},
|
|
57
74
|
{
|
|
58
75
|
name: "rich-guidance",
|
|
59
76
|
evidence: { agent_config: { guidance: [{ path: "CLAUDE.md", bytes: 6000, lines: 200 }] } },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-guidance-substance.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-substance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-guidance-substance.js","sourceRoot":"","sources":["../../src/probes/agent-guidance-substance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-skills-present.d.ts","sourceRoot":"","sources":["../../src/probes/agent-skills-present.ts"],"names":[],"mappings":";AAYA,wBA6EG"}
|