@specverse/engines 6.53.1 → 6.60.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/libs/instance-factories/controllers/templates/fastify/routes-generator.js +29 -10
- package/dist/libs/instance-factories/services/templates/prisma/ai-behaviors-generator.js +10 -9
- package/dist/libs/instance-factories/services/templates/prisma/controller-generator.js +1 -1
- package/dist/realize/index.d.ts.map +1 -1
- package/dist/realize/index.js +91 -10
- package/dist/realize/index.js.map +1 -1
- package/dist/realize/per-action-recovery.d.ts +74 -0
- package/dist/realize/per-action-recovery.d.ts.map +1 -0
- package/dist/realize/per-action-recovery.js +268 -0
- package/dist/realize/per-action-recovery.js.map +1 -0
- package/dist/realize/per-owner-emit.d.ts +6 -0
- package/dist/realize/per-owner-emit.d.ts.map +1 -1
- package/dist/realize/per-owner-emit.js +22 -6
- package/dist/realize/per-owner-emit.js.map +1 -1
- package/dist/realize/per-owner-runner.d.ts +23 -2
- package/dist/realize/per-owner-runner.d.ts.map +1 -1
- package/dist/realize/per-owner-runner.js +76 -18
- package/dist/realize/per-owner-runner.js.map +1 -1
- package/dist/realize/post-emit-verify/diagnostics.d.ts +107 -0
- package/dist/realize/post-emit-verify/diagnostics.d.ts.map +1 -0
- package/dist/realize/post-emit-verify/diagnostics.js +148 -0
- package/dist/realize/post-emit-verify/diagnostics.js.map +1 -0
- package/dist/realize/post-emit-verify/feedback-runner.d.ts +40 -1
- package/dist/realize/post-emit-verify/feedback-runner.d.ts.map +1 -1
- package/dist/realize/post-emit-verify/feedback-runner.js +61 -6
- package/dist/realize/post-emit-verify/feedback-runner.js.map +1 -1
- package/dist/realize/post-emit-verify/index.d.ts +4 -2
- package/dist/realize/post-emit-verify/index.d.ts.map +1 -1
- package/dist/realize/post-emit-verify/index.js +3 -1
- package/dist/realize/post-emit-verify/index.js.map +1 -1
- package/dist/realize/post-emit-verify/reemit.d.ts +22 -1
- package/dist/realize/post-emit-verify/reemit.d.ts.map +1 -1
- package/dist/realize/post-emit-verify/reemit.js +20 -18
- package/dist/realize/post-emit-verify/reemit.js.map +1 -1
- package/dist/realize/post-emit-verify/types.d.ts +49 -0
- package/dist/realize/post-emit-verify/types.d.ts.map +1 -1
- package/dist/realize/post-emit-verify/verifier-manifest.d.ts.map +1 -1
- package/dist/realize/post-emit-verify/verifier-manifest.js +2 -0
- package/dist/realize/post-emit-verify/verifier-manifest.js.map +1 -1
- package/dist/realize/post-emit-verify/verifiers/stub-completeness.d.ts +85 -0
- package/dist/realize/post-emit-verify/verifiers/stub-completeness.d.ts.map +1 -0
- package/dist/realize/post-emit-verify/verifiers/stub-completeness.js +298 -0
- package/dist/realize/post-emit-verify/verifiers/stub-completeness.js.map +1 -0
- package/dist/realize/realize-context-snapshot.d.ts +70 -0
- package/dist/realize/realize-context-snapshot.d.ts.map +1 -0
- package/dist/realize/realize-context-snapshot.js +96 -0
- package/dist/realize/realize-context-snapshot.js.map +1 -0
- package/dist/realize/structural-validator.d.ts +36 -2
- package/dist/realize/structural-validator.d.ts.map +1 -1
- package/dist/realize/structural-validator.js +50 -7
- package/dist/realize/structural-validator.js.map +1 -1
- package/libs/instance-factories/controllers/templates/fastify/routes-generator.ts +49 -15
- package/libs/instance-factories/services/templates/prisma/ai-behaviors-generator.ts +19 -3
- package/libs/instance-factories/services/templates/prisma/controller-generator.ts +6 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"per-owner-runner.js","sourceRoot":"","sources":["../../src/realize/per-owner-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"per-owner-runner.js","sourceRoot":"","sources":["../../src/realize/per-owner-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Diagnostic layer — runs stub-completeness (and future observe-only
|
|
3
|
+
* verifiers) on the realized output and writes a `realize-quality.json`
|
|
4
|
+
* sidecar. Runs independently of the feedback runner.
|
|
5
|
+
*
|
|
6
|
+
* Why this exists (Phase 1 of 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT):
|
|
7
|
+
* The realize pipeline used to print `✅ All code generated` and the
|
|
8
|
+
* user would only discover stub bodies at runtime. The post-emit-verify
|
|
9
|
+
* framework can detect stubs but only fires opt-in via
|
|
10
|
+
* `SPECVERSE_REALIZE_POST_VERIFY_ENABLE=stub-completeness`, and even
|
|
11
|
+
* then the findings are buried in pass logs. This module promotes the
|
|
12
|
+
* diagnostic to a first-class artifact: a sidecar JSON + a CLI summary
|
|
13
|
+
* line at end of realize.
|
|
14
|
+
*
|
|
15
|
+
* The diagnostic layer:
|
|
16
|
+
* - Runs ALWAYS when there are emitted `.ai.ts` files
|
|
17
|
+
* - Calls stub-completeness directly (bypasses the manifest's
|
|
18
|
+
* enabledByDefault gate — diagnostic should run regardless of whether
|
|
19
|
+
* the verifier is wired into the auto-fix loop)
|
|
20
|
+
* - Writes `<outputDir>/realize-quality.json`
|
|
21
|
+
* - Returns a summary suitable for CLI display
|
|
22
|
+
*
|
|
23
|
+
* Costs: regex-only scan of `.ai.ts` files. Milliseconds. No LLM calls.
|
|
24
|
+
* Disabled via `SPECVERSE_REALIZE_NO_DIAGNOSTICS=1` for users who really
|
|
25
|
+
* don't want the sidecar.
|
|
26
|
+
*/
|
|
27
|
+
import type { SpecGapEntry, VerifyContext } from './types.js';
|
|
28
|
+
export interface RealizeQualitySidecar {
|
|
29
|
+
schemaVersion: '1.0';
|
|
30
|
+
ranAt: string;
|
|
31
|
+
ctx: {
|
|
32
|
+
outputDir: string;
|
|
33
|
+
targetLanguage?: string;
|
|
34
|
+
subpath?: string;
|
|
35
|
+
};
|
|
36
|
+
totals: {
|
|
37
|
+
stubs: number;
|
|
38
|
+
stubsByCode: Record<string, number>;
|
|
39
|
+
ownersWithStubs: number;
|
|
40
|
+
specGaps?: number;
|
|
41
|
+
};
|
|
42
|
+
byOwner: Record<string, OwnerQualityEntry>;
|
|
43
|
+
/** Errors classified `surface-spec-gap` by the feedback runner's
|
|
44
|
+
* treatment selector. The framework chose NOT to auto-fix these;
|
|
45
|
+
* the user reads them and decides whether to adjust the spec,
|
|
46
|
+
* manifest, or provider. Populated by `appendSpecGaps()` after the
|
|
47
|
+
* feedback runner completes. */
|
|
48
|
+
specGaps?: SpecGapEntry[];
|
|
49
|
+
notes: string[];
|
|
50
|
+
}
|
|
51
|
+
export interface OwnerQualityEntry {
|
|
52
|
+
ownerName: string;
|
|
53
|
+
stubs: OwnerStubIssue[];
|
|
54
|
+
}
|
|
55
|
+
export interface OwnerStubIssue {
|
|
56
|
+
code: string;
|
|
57
|
+
file: string;
|
|
58
|
+
line?: number;
|
|
59
|
+
col?: number;
|
|
60
|
+
message: string;
|
|
61
|
+
}
|
|
62
|
+
export interface RealizeQualitySummary {
|
|
63
|
+
totalStubs: number;
|
|
64
|
+
ownersWithStubs: number;
|
|
65
|
+
sidecarPath: string;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Run the diagnostic verifiers on the realized output, write the
|
|
69
|
+
* sidecar, return a summary for the CLI.
|
|
70
|
+
*
|
|
71
|
+
* Returns null when there's nothing to report (e.g. no `.ai.ts` files
|
|
72
|
+
* at all — typical for backend-only validate-only specs). Caller
|
|
73
|
+
* suppresses CLI output in that case.
|
|
74
|
+
*/
|
|
75
|
+
export declare function runDiagnostics(ctx: VerifyContext): Promise<RealizeQualitySummary | null>;
|
|
76
|
+
/**
|
|
77
|
+
* Format the one-line CLI summary for `spv realize` output.
|
|
78
|
+
*
|
|
79
|
+
* ⚠ realize-quality: 5 stubs across 3 owners (see realize-quality.json)
|
|
80
|
+
*
|
|
81
|
+
* Returns null when there's nothing to flag — caller should not print
|
|
82
|
+
* anything in that case (no false-positive noise on clean realizes).
|
|
83
|
+
*/
|
|
84
|
+
export declare function formatSummaryLine(summary: RealizeQualitySummary | null): string | null;
|
|
85
|
+
/**
|
|
86
|
+
* Read the existing `realize-quality.json` sidecar, attach the
|
|
87
|
+
* feedback runner's `specGaps`, and rewrite. Idempotent — safe to call
|
|
88
|
+
* multiple times. Skips silently when the sidecar doesn't exist
|
|
89
|
+
* (diagnostics never ran or wrote it).
|
|
90
|
+
*
|
|
91
|
+
* Phase 2 of 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT: the
|
|
92
|
+
* feedback runner returns specGaps; realize's index.ts calls this to
|
|
93
|
+
* merge them into the sidecar so users have one place to inspect
|
|
94
|
+
* realize quality.
|
|
95
|
+
*/
|
|
96
|
+
export declare function appendSpecGaps(outputDir: string, specGaps: SpecGapEntry[]): void;
|
|
97
|
+
/**
|
|
98
|
+
* Format the spec-gap one-liner for `spv realize` output. Distinct from
|
|
99
|
+
* the stub summary because spec gaps indicate the user needs to act
|
|
100
|
+
* (adjust spec/manifest/provider), not just inspect.
|
|
101
|
+
*
|
|
102
|
+
* ⚠ realize-quality: 3 spec gap(s) surfaced; review realize-quality.json::specGaps
|
|
103
|
+
*
|
|
104
|
+
* Returns null when there are no gaps.
|
|
105
|
+
*/
|
|
106
|
+
export declare function formatSpecGapLine(specGapCount: number): string | null;
|
|
107
|
+
//# sourceMappingURL=diagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAe,MAAM,YAAY,CAAC;AAE3E,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,KAAK,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE;QACH,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC3C;;;;qCAIiC;IACjC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,aAAa,GACjB,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAoDvC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAQtF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAahF;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOrE"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Diagnostic layer — runs stub-completeness (and future observe-only
|
|
3
|
+
* verifiers) on the realized output and writes a `realize-quality.json`
|
|
4
|
+
* sidecar. Runs independently of the feedback runner.
|
|
5
|
+
*
|
|
6
|
+
* Why this exists (Phase 1 of 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT):
|
|
7
|
+
* The realize pipeline used to print `✅ All code generated` and the
|
|
8
|
+
* user would only discover stub bodies at runtime. The post-emit-verify
|
|
9
|
+
* framework can detect stubs but only fires opt-in via
|
|
10
|
+
* `SPECVERSE_REALIZE_POST_VERIFY_ENABLE=stub-completeness`, and even
|
|
11
|
+
* then the findings are buried in pass logs. This module promotes the
|
|
12
|
+
* diagnostic to a first-class artifact: a sidecar JSON + a CLI summary
|
|
13
|
+
* line at end of realize.
|
|
14
|
+
*
|
|
15
|
+
* The diagnostic layer:
|
|
16
|
+
* - Runs ALWAYS when there are emitted `.ai.ts` files
|
|
17
|
+
* - Calls stub-completeness directly (bypasses the manifest's
|
|
18
|
+
* enabledByDefault gate — diagnostic should run regardless of whether
|
|
19
|
+
* the verifier is wired into the auto-fix loop)
|
|
20
|
+
* - Writes `<outputDir>/realize-quality.json`
|
|
21
|
+
* - Returns a summary suitable for CLI display
|
|
22
|
+
*
|
|
23
|
+
* Costs: regex-only scan of `.ai.ts` files. Milliseconds. No LLM calls.
|
|
24
|
+
* Disabled via `SPECVERSE_REALIZE_NO_DIAGNOSTICS=1` for users who really
|
|
25
|
+
* don't want the sidecar.
|
|
26
|
+
*/
|
|
27
|
+
import { existsSync, readFileSync, writeFileSync } from 'fs';
|
|
28
|
+
import { join } from 'path';
|
|
29
|
+
import { STUB_COMPLETENESS_VERIFIER } from './verifiers/stub-completeness.js';
|
|
30
|
+
import { defaultMapFileToOwner } from './feedback-runner.js';
|
|
31
|
+
/**
|
|
32
|
+
* Run the diagnostic verifiers on the realized output, write the
|
|
33
|
+
* sidecar, return a summary for the CLI.
|
|
34
|
+
*
|
|
35
|
+
* Returns null when there's nothing to report (e.g. no `.ai.ts` files
|
|
36
|
+
* at all — typical for backend-only validate-only specs). Caller
|
|
37
|
+
* suppresses CLI output in that case.
|
|
38
|
+
*/
|
|
39
|
+
export async function runDiagnostics(ctx) {
|
|
40
|
+
if (!STUB_COMPLETENESS_VERIFIER.applies(ctx))
|
|
41
|
+
return null;
|
|
42
|
+
const stubResult = await STUB_COMPLETENESS_VERIFIER.verify(ctx);
|
|
43
|
+
const byOwner = {};
|
|
44
|
+
const stubsByCode = {};
|
|
45
|
+
for (const e of stubResult.errors) {
|
|
46
|
+
const ownerName = defaultMapFileToOwner(e.file) ?? '__unmapped__';
|
|
47
|
+
if (!byOwner[ownerName]) {
|
|
48
|
+
byOwner[ownerName] = { ownerName, stubs: [] };
|
|
49
|
+
}
|
|
50
|
+
byOwner[ownerName].stubs.push({
|
|
51
|
+
code: e.code,
|
|
52
|
+
file: e.file,
|
|
53
|
+
line: e.line,
|
|
54
|
+
col: e.col,
|
|
55
|
+
message: e.message,
|
|
56
|
+
});
|
|
57
|
+
stubsByCode[e.code] = (stubsByCode[e.code] ?? 0) + 1;
|
|
58
|
+
}
|
|
59
|
+
const sidecar = {
|
|
60
|
+
schemaVersion: '1.0',
|
|
61
|
+
ranAt: new Date().toISOString(),
|
|
62
|
+
ctx: {
|
|
63
|
+
outputDir: ctx.outputDir,
|
|
64
|
+
...(ctx.targetLanguage ? { targetLanguage: ctx.targetLanguage } : {}),
|
|
65
|
+
...(ctx.subpath ? { subpath: ctx.subpath } : {}),
|
|
66
|
+
},
|
|
67
|
+
totals: {
|
|
68
|
+
stubs: stubResult.errors.length,
|
|
69
|
+
stubsByCode,
|
|
70
|
+
ownersWithStubs: Object.keys(byOwner).length,
|
|
71
|
+
},
|
|
72
|
+
byOwner,
|
|
73
|
+
notes: stubResult.notes,
|
|
74
|
+
};
|
|
75
|
+
const sidecarPath = join(ctx.outputDir, 'realize-quality.json');
|
|
76
|
+
try {
|
|
77
|
+
writeFileSync(sidecarPath, JSON.stringify(sidecar, null, 2));
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
totalStubs: sidecar.totals.stubs,
|
|
84
|
+
ownersWithStubs: sidecar.totals.ownersWithStubs,
|
|
85
|
+
sidecarPath,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Format the one-line CLI summary for `spv realize` output.
|
|
90
|
+
*
|
|
91
|
+
* ⚠ realize-quality: 5 stubs across 3 owners (see realize-quality.json)
|
|
92
|
+
*
|
|
93
|
+
* Returns null when there's nothing to flag — caller should not print
|
|
94
|
+
* anything in that case (no false-positive noise on clean realizes).
|
|
95
|
+
*/
|
|
96
|
+
export function formatSummaryLine(summary) {
|
|
97
|
+
if (!summary || summary.totalStubs === 0)
|
|
98
|
+
return null;
|
|
99
|
+
const ownerWord = summary.ownersWithStubs === 1 ? 'owner' : 'owners';
|
|
100
|
+
const stubWord = summary.totalStubs === 1 ? 'stub' : 'stubs';
|
|
101
|
+
return (` ⚠ realize-quality: ${summary.totalStubs} ${stubWord} across ` +
|
|
102
|
+
`${summary.ownersWithStubs} ${ownerWord} (see realize-quality.json)`);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Read the existing `realize-quality.json` sidecar, attach the
|
|
106
|
+
* feedback runner's `specGaps`, and rewrite. Idempotent — safe to call
|
|
107
|
+
* multiple times. Skips silently when the sidecar doesn't exist
|
|
108
|
+
* (diagnostics never ran or wrote it).
|
|
109
|
+
*
|
|
110
|
+
* Phase 2 of 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT: the
|
|
111
|
+
* feedback runner returns specGaps; realize's index.ts calls this to
|
|
112
|
+
* merge them into the sidecar so users have one place to inspect
|
|
113
|
+
* realize quality.
|
|
114
|
+
*/
|
|
115
|
+
export function appendSpecGaps(outputDir, specGaps) {
|
|
116
|
+
if (specGaps.length === 0)
|
|
117
|
+
return;
|
|
118
|
+
const path = join(outputDir, 'realize-quality.json');
|
|
119
|
+
if (!existsSync(path))
|
|
120
|
+
return;
|
|
121
|
+
try {
|
|
122
|
+
const raw = readFileSync(path, 'utf8');
|
|
123
|
+
const sidecar = JSON.parse(raw);
|
|
124
|
+
sidecar.specGaps = specGaps;
|
|
125
|
+
sidecar.totals.specGaps = specGaps.length;
|
|
126
|
+
writeFileSync(path, JSON.stringify(sidecar, null, 2));
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
// best-effort sidecar — don't crash realize on a parse failure
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Format the spec-gap one-liner for `spv realize` output. Distinct from
|
|
134
|
+
* the stub summary because spec gaps indicate the user needs to act
|
|
135
|
+
* (adjust spec/manifest/provider), not just inspect.
|
|
136
|
+
*
|
|
137
|
+
* ⚠ realize-quality: 3 spec gap(s) surfaced; review realize-quality.json::specGaps
|
|
138
|
+
*
|
|
139
|
+
* Returns null when there are no gaps.
|
|
140
|
+
*/
|
|
141
|
+
export function formatSpecGapLine(specGapCount) {
|
|
142
|
+
if (specGapCount === 0)
|
|
143
|
+
return null;
|
|
144
|
+
const word = specGapCount === 1 ? 'spec gap' : 'spec gaps';
|
|
145
|
+
return (` ⚠ realize-quality: ${specGapCount} ${word} surfaced; ` +
|
|
146
|
+
`review realize-quality.json::specGaps`);
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* the runner rolls back to the previous content. The LLM doesn't get
|
|
21
21
|
* to make things worse.
|
|
22
22
|
*/
|
|
23
|
-
import type { VerifyContext, VerifyError } from './types.js';
|
|
23
|
+
import type { SpecGapEntry, TreatmentSelector, TreatmentStrategy, VerifyContext, VerifyError } from './types.js';
|
|
24
24
|
export interface ReemitRequest {
|
|
25
25
|
/** Resolved owner name (e.g. `AuthController`). */
|
|
26
26
|
ownerName: string;
|
|
@@ -50,6 +50,25 @@ export interface FeedbackRunOptions {
|
|
|
50
50
|
* Set via env: `SPECVERSE_REALIZE_POST_VERIFY_MAX_FILES=N`.
|
|
51
51
|
*/
|
|
52
52
|
maxFilesPerPass?: number;
|
|
53
|
+
/**
|
|
54
|
+
* Set of verifier ids to enable in addition to the
|
|
55
|
+
* `enabledByDefault: true` set. Used to opt in to experimental
|
|
56
|
+
* verifiers like `stub-completeness` (default-off until empirically
|
|
57
|
+
* validated). Passed straight through to `runAllVerifiers`.
|
|
58
|
+
*
|
|
59
|
+
* Set via env: `SPECVERSE_REALIZE_POST_VERIFY_ENABLE=id1,id2`.
|
|
60
|
+
*/
|
|
61
|
+
enabledOverrides?: Set<string>;
|
|
62
|
+
/**
|
|
63
|
+
* Treatment selector — decides per-error whether to auto-reemit,
|
|
64
|
+
* surface as spec gap, or skip. Defaults to
|
|
65
|
+
* `defaultTreatmentSelector` (Phase 2 of
|
|
66
|
+
* 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT).
|
|
67
|
+
*
|
|
68
|
+
* Override at the call site for advanced cases (custom verifiers,
|
|
69
|
+
* stricter / more permissive LLM tolerance profiles).
|
|
70
|
+
*/
|
|
71
|
+
treatmentSelector?: TreatmentSelector;
|
|
53
72
|
}
|
|
54
73
|
export interface PassResult {
|
|
55
74
|
passNumber: number;
|
|
@@ -72,6 +91,10 @@ export interface FeedbackRunResult {
|
|
|
72
91
|
verifierId: string;
|
|
73
92
|
notes: string[];
|
|
74
93
|
}>;
|
|
94
|
+
/** Errors classified `surface-spec-gap` by the treatment selector —
|
|
95
|
+
* these are NOT auto-fixed; the caller writes them to the
|
|
96
|
+
* realize-quality.json sidecar's `specGaps` field for user review. */
|
|
97
|
+
specGaps: SpecGapEntry[];
|
|
75
98
|
}
|
|
76
99
|
/**
|
|
77
100
|
* Default file→owner mapping for the SpecVerse TypeScript layout:
|
|
@@ -80,5 +103,21 @@ export interface FeedbackRunResult {
|
|
|
80
103
|
* Returns null for files that don't match.
|
|
81
104
|
*/
|
|
82
105
|
export declare function defaultMapFileToOwner(file: string): string | null;
|
|
106
|
+
/**
|
|
107
|
+
* Default treatment policy (Phase 2 of
|
|
108
|
+
* 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT):
|
|
109
|
+
*
|
|
110
|
+
* - `STUB002` (LLM-throw stubs) → `surface-spec-gap`. The LLM already
|
|
111
|
+
* signaled "I lack context for this action" via the throw message;
|
|
112
|
+
* re-prompting either no-ops or hallucinates cross-file regressions.
|
|
113
|
+
* Better to tell the user about the gap so they can adjust the
|
|
114
|
+
* spec / manifest / provider choice.
|
|
115
|
+
*
|
|
116
|
+
* - Everything else (tsc errors, STUB001 γ-fallback, STUB003 trivial-
|
|
117
|
+
* return, STUB004 empty-body, future codes) → `auto-reemit`.
|
|
118
|
+
*
|
|
119
|
+
* Override at the call site for testing or for advanced policies.
|
|
120
|
+
*/
|
|
121
|
+
export declare function defaultTreatmentSelector(error: VerifyError): TreatmentStrategy;
|
|
83
122
|
export declare function runPostEmitFeedback(ctx: VerifyContext, reemit: Reemit, options?: FeedbackRunOptions): Promise<FeedbackRunResult>;
|
|
84
123
|
//# sourceMappingURL=feedback-runner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedback-runner.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/feedback-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB;yDACqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC;uEACmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;2EACuE;IACvE,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACjD;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"feedback-runner.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/feedback-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB;yDACqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC;uEACmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;2EACuE;IACvE,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACjD;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,WAAW,EAAE,CAAC;IAC7B,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,aAAa,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC9D;;2EAEuE;IACvE,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGjE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,WAAW,GAAG,iBAAiB,CAG9E;AAyBD,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAgK5B"}
|
|
@@ -33,6 +33,26 @@ export function defaultMapFileToOwner(file) {
|
|
|
33
33
|
const m = /(?:^|\/)([A-Za-z_][\w-]*)\.ai\.ts$/.exec(file);
|
|
34
34
|
return m ? m[1] : null;
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Default treatment policy (Phase 2 of
|
|
38
|
+
* 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT):
|
|
39
|
+
*
|
|
40
|
+
* - `STUB002` (LLM-throw stubs) → `surface-spec-gap`. The LLM already
|
|
41
|
+
* signaled "I lack context for this action" via the throw message;
|
|
42
|
+
* re-prompting either no-ops or hallucinates cross-file regressions.
|
|
43
|
+
* Better to tell the user about the gap so they can adjust the
|
|
44
|
+
* spec / manifest / provider choice.
|
|
45
|
+
*
|
|
46
|
+
* - Everything else (tsc errors, STUB001 γ-fallback, STUB003 trivial-
|
|
47
|
+
* return, STUB004 empty-body, future codes) → `auto-reemit`.
|
|
48
|
+
*
|
|
49
|
+
* Override at the call site for testing or for advanced policies.
|
|
50
|
+
*/
|
|
51
|
+
export function defaultTreatmentSelector(error) {
|
|
52
|
+
if (error.code === 'STUB002')
|
|
53
|
+
return 'surface-spec-gap';
|
|
54
|
+
return 'auto-reemit';
|
|
55
|
+
}
|
|
36
56
|
/**
|
|
37
57
|
* Group verifier errors by file (preserving error order within each
|
|
38
58
|
* file). Files with no errors are absent from the map.
|
|
@@ -63,15 +83,49 @@ export async function runPostEmitFeedback(ctx, reemit, options = {}) {
|
|
|
63
83
|
const maxPasses = options.maxPasses ?? 1;
|
|
64
84
|
const maxFilesPerPass = options.maxFilesPerPass ?? 20;
|
|
65
85
|
const mapFileToOwner = options.mapFileToOwner ?? defaultMapFileToOwner;
|
|
86
|
+
const enabledOverrides = options.enabledOverrides;
|
|
87
|
+
const treatmentSelector = options.treatmentSelector ?? defaultTreatmentSelector;
|
|
66
88
|
const passes = [];
|
|
67
89
|
const verifierNotes = [];
|
|
90
|
+
const specGaps = [];
|
|
91
|
+
const seenSpecGaps = new Set();
|
|
92
|
+
/** Pull out spec-gap classified errors into the result's specGaps[]
|
|
93
|
+
* while leaving auto-reemit errors in place for the loop. Dedups
|
|
94
|
+
* across passes (same error from re-running verifiers shouldn't
|
|
95
|
+
* appear twice in the sidecar). */
|
|
96
|
+
function partitionErrors(errors) {
|
|
97
|
+
const actionable = [];
|
|
98
|
+
for (const e of errors) {
|
|
99
|
+
const strategy = treatmentSelector(e);
|
|
100
|
+
if (strategy === 'surface-spec-gap') {
|
|
101
|
+
const key = `${e.file}:${e.line ?? 0}:${e.col ?? 0}:${e.code}`;
|
|
102
|
+
if (!seenSpecGaps.has(key)) {
|
|
103
|
+
seenSpecGaps.add(key);
|
|
104
|
+
specGaps.push({
|
|
105
|
+
ownerName: mapFileToOwner(e.file),
|
|
106
|
+
file: e.file,
|
|
107
|
+
...(e.line !== undefined ? { line: e.line } : {}),
|
|
108
|
+
...(e.col !== undefined ? { col: e.col } : {}),
|
|
109
|
+
code: e.code,
|
|
110
|
+
message: e.message,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
if (strategy === 'skip')
|
|
116
|
+
continue;
|
|
117
|
+
actionable.push(e);
|
|
118
|
+
}
|
|
119
|
+
return actionable;
|
|
120
|
+
}
|
|
68
121
|
// Initial verifier pass.
|
|
69
|
-
let currentResults = await runAllVerifiers(ctx);
|
|
122
|
+
let currentResults = await runAllVerifiers(ctx, enabledOverrides);
|
|
70
123
|
for (const r of currentResults) {
|
|
71
124
|
if (r.notes.length > 0)
|
|
72
125
|
verifierNotes.push({ verifierId: r.verifierId, notes: r.notes });
|
|
73
126
|
}
|
|
74
|
-
const
|
|
127
|
+
const initialErrorsRaw = currentResults.flatMap((r) => r.errors);
|
|
128
|
+
const initialErrors = partitionErrors(initialErrorsRaw);
|
|
75
129
|
let currentErrors = initialErrors;
|
|
76
130
|
for (let pass = 1; pass <= maxPasses; pass++) {
|
|
77
131
|
const errorsBefore = currentErrors.length;
|
|
@@ -129,8 +183,8 @@ export async function runPostEmitFeedback(ctx, reemit, options = {}) {
|
|
|
129
183
|
writeFileSync(absFile, newContent);
|
|
130
184
|
}
|
|
131
185
|
// Re-run verifiers, then compare per-file error counts.
|
|
132
|
-
const newResults = await runAllVerifiers(ctx);
|
|
133
|
-
let newErrors = newResults.flatMap((r) => r.errors);
|
|
186
|
+
const newResults = await runAllVerifiers(ctx, enabledOverrides);
|
|
187
|
+
let newErrors = partitionErrors(newResults.flatMap((r) => r.errors));
|
|
134
188
|
// Rollback pass: any file whose error count INCREASED gets restored.
|
|
135
189
|
// Only consider files we actually attempted (within the budget).
|
|
136
190
|
const filesToRestore = [];
|
|
@@ -155,8 +209,8 @@ export async function runPostEmitFeedback(ctx, reemit, options = {}) {
|
|
|
155
209
|
}
|
|
156
210
|
// Re-run verifiers one more time so the reported `errorsAfter`
|
|
157
211
|
// reflects the post-rollback state.
|
|
158
|
-
const finalResults = await runAllVerifiers(ctx);
|
|
159
|
-
newErrors = finalResults.flatMap((r) => r.errors);
|
|
212
|
+
const finalResults = await runAllVerifiers(ctx, enabledOverrides);
|
|
213
|
+
newErrors = partitionErrors(finalResults.flatMap((r) => r.errors));
|
|
160
214
|
}
|
|
161
215
|
passResult.errorsAfter = newErrors.length;
|
|
162
216
|
passes.push(passResult);
|
|
@@ -172,6 +226,7 @@ export async function runPostEmitFeedback(ctx, reemit, options = {}) {
|
|
|
172
226
|
finalErrors: currentErrors,
|
|
173
227
|
passes,
|
|
174
228
|
verifierNotes,
|
|
229
|
+
specGaps,
|
|
175
230
|
};
|
|
176
231
|
}
|
|
177
232
|
//# sourceMappingURL=feedback-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedback-runner.js","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/feedback-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"feedback-runner.js","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/feedback-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,9 +9,11 @@
|
|
|
9
9
|
* See `specverse-self/docs/proposals/...` (TBD) for the design rationale
|
|
10
10
|
* + empirical evidence from idle-meta 2026-05-13.
|
|
11
11
|
*/
|
|
12
|
-
export { type PostEmitVerifier, type VerifyContext, type VerifyError, type VerifyResult, type OwnerMapping, } from './types.js';
|
|
12
|
+
export { type PostEmitVerifier, type VerifyContext, type VerifyError, type VerifyResult, type OwnerMapping, type TreatmentStrategy, type TreatmentSelector, type SpecGapEntry, } from './types.js';
|
|
13
13
|
export { VERIFIERS, runAllVerifiers, findVerifier, } from './verifier-manifest.js';
|
|
14
|
-
export { runPostEmitFeedback, defaultMapFileToOwner, type Reemit, type ReemitRequest, type FeedbackRunOptions, type FeedbackRunResult, type PassResult, } from './feedback-runner.js';
|
|
14
|
+
export { runPostEmitFeedback, defaultMapFileToOwner, defaultTreatmentSelector, type Reemit, type ReemitRequest, type FeedbackRunOptions, type FeedbackRunResult, type PassResult, } from './feedback-runner.js';
|
|
15
15
|
export { TSC_VERIFIER } from './verifiers/tsc.js';
|
|
16
16
|
export { buildLlmReemit, formatFeedbackPrompt, type BuildReemitOptions, } from './reemit.js';
|
|
17
|
+
export { runDiagnostics, formatSummaryLine, appendSpecGaps, formatSpecGapLine, type RealizeQualitySidecar, type RealizeQualitySummary, type OwnerQualityEntry, type OwnerStubIssue, } from './diagnostics.js';
|
|
18
|
+
export { STUB_COMPLETENESS_VERIFIER } from './verifiers/stub-completeness.js';
|
|
17
19
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,SAAS,EACT,eAAe,EACf,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,UAAU,GAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,kBAAkB,GACxB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,SAAS,EACT,eAAe,EACf,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,UAAU,GAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,kBAAkB,GACxB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC"}
|
|
@@ -10,7 +10,9 @@
|
|
|
10
10
|
* + empirical evidence from idle-meta 2026-05-13.
|
|
11
11
|
*/
|
|
12
12
|
export { VERIFIERS, runAllVerifiers, findVerifier, } from './verifier-manifest.js';
|
|
13
|
-
export { runPostEmitFeedback, defaultMapFileToOwner, } from './feedback-runner.js';
|
|
13
|
+
export { runPostEmitFeedback, defaultMapFileToOwner, defaultTreatmentSelector, } from './feedback-runner.js';
|
|
14
14
|
export { TSC_VERIFIER } from './verifiers/tsc.js';
|
|
15
15
|
export { buildLlmReemit, formatFeedbackPrompt, } from './reemit.js';
|
|
16
|
+
export { runDiagnostics, formatSummaryLine, appendSpecGaps, formatSpecGapLine, } from './diagnostics.js';
|
|
17
|
+
export { STUB_COMPLETENESS_VERIFIER } from './verifiers/stub-completeness.js';
|
|
16
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH,OAAO,EACL,SAAS,EACT,eAAe,EACf,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,GAMzB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EACL,cAAc,EACd,oBAAoB,GAErB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GAKlB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC"}
|
|
@@ -44,6 +44,20 @@ export interface BuildReemitOptions {
|
|
|
44
44
|
* convention, γ-stub shape).
|
|
45
45
|
*/
|
|
46
46
|
skills?: string[];
|
|
47
|
+
/**
|
|
48
|
+
* Optional context loader (Phase 3 of
|
|
49
|
+
* 2026-05-13-VERIFIER-DIAGNOSTIC-TREATMENT-SPLIT).
|
|
50
|
+
*
|
|
51
|
+
* For each owner whose file is being re-emitted, return the per-owner
|
|
52
|
+
* realize-context snapshot (TARGET RUNTIME + [PRE-BAKED] step bullets
|
|
53
|
+
* + cross-service surface + capabilities) as a markdown blob, or null
|
|
54
|
+
* if no snapshot exists. The returned blob is prepended to the
|
|
55
|
+
* reemit user prompt — same shape the original per-owner emit used.
|
|
56
|
+
*
|
|
57
|
+
* The default-built loader (in realize/index.ts) reads from
|
|
58
|
+
* `<outputDir>/.realize-context/<Owner>.md`. Tests may inject fakes.
|
|
59
|
+
*/
|
|
60
|
+
contextLoader?: (ownerName: string) => string | null;
|
|
47
61
|
}
|
|
48
62
|
/**
|
|
49
63
|
* Build a `Reemit` callback that uses the provided LLM model.
|
|
@@ -55,7 +69,14 @@ export declare function buildLlmReemit(options: BuildReemitOptions): Reemit;
|
|
|
55
69
|
* Format the feedback prompt body. Caller's LLM provider (e.g.
|
|
56
70
|
* claude-cli) loads the realize-emit skill as system context.
|
|
57
71
|
*
|
|
72
|
+
* The optional `ownerContext` (Phase 3) is the per-owner realize-context
|
|
73
|
+
* snapshot — TARGET RUNTIME + [PRE-BAKED] step bullets + cross-service
|
|
74
|
+
* surface + capabilities — prepended to the prompt so the LLM sees the
|
|
75
|
+
* same input the original per-owner emit had. Without this, smaller
|
|
76
|
+
* models (Ollama / MarrBox) hallucinate cross-file calls; with it,
|
|
77
|
+
* they have the canonical contract to anchor against.
|
|
78
|
+
*
|
|
58
79
|
* Exported for tests + so callers can override the prompt shape.
|
|
59
80
|
*/
|
|
60
|
-
export declare function formatFeedbackPrompt(req: ReemitRequest): string;
|
|
81
|
+
export declare function formatFeedbackPrompt(req: ReemitRequest, ownerContext?: string | null): string;
|
|
61
82
|
//# sourceMappingURL=reemit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reemit.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/reemit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAGxC,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGlE,MAAM,WAAW,kBAAkB;IACjC,4DAA4D;IAC5D,KAAK,EAAE,aAAa,CAAC;IACrB;6BACyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;gCAE4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"reemit.d.ts","sourceRoot":"","sources":["../../../src/realize/post-emit-verify/reemit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAGxC,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGlE,MAAM,WAAW,kBAAkB;IACjC,4DAA4D;IAC5D,KAAK,EAAE,aAAa,CAAC;IACrB;6BACyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;gCAE4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CACtD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CA8ClE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,aAAa,EAClB,YAAY,GAAE,MAAM,GAAG,IAAW,GACjC,MAAM,CAiCR"}
|