codeloop-mcp-server 0.1.50 → 0.1.52
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/auth/critical_floors.d.ts.map +1 -1
- package/dist/auth/critical_floors.js +8 -0
- package/dist/auth/critical_floors.js.map +1 -1
- package/dist/evidence/anti_rationalisation.d.ts +34 -0
- package/dist/evidence/anti_rationalisation.d.ts.map +1 -0
- package/dist/evidence/anti_rationalisation.js +85 -0
- package/dist/evidence/anti_rationalisation.js.map +1 -0
- package/dist/evidence/change_coverage.d.ts +59 -0
- package/dist/evidence/change_coverage.d.ts.map +1 -0
- package/dist/evidence/change_coverage.js +422 -0
- package/dist/evidence/change_coverage.js.map +1 -0
- package/dist/evidence/change_manifest.d.ts +94 -0
- package/dist/evidence/change_manifest.d.ts.map +1 -0
- package/dist/evidence/change_manifest.js +830 -0
- package/dist/evidence/change_manifest.js.map +1 -0
- package/dist/evidence/loop_state.d.ts +53 -0
- package/dist/evidence/loop_state.d.ts.map +1 -0
- package/dist/evidence/loop_state.js +147 -0
- package/dist/evidence/loop_state.js.map +1 -0
- package/dist/evidence/verify_staleness.d.ts +9 -0
- package/dist/evidence/verify_staleness.d.ts.map +1 -0
- package/dist/evidence/verify_staleness.js +180 -0
- package/dist/evidence/verify_staleness.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +374 -19
- package/dist/index.js.map +1 -1
- package/dist/runners/empty_state_detector.d.ts +33 -0
- package/dist/runners/empty_state_detector.d.ts.map +1 -0
- package/dist/runners/empty_state_detector.js +304 -0
- package/dist/runners/empty_state_detector.js.map +1 -0
- package/dist/runners/maestro.d.ts +13 -0
- package/dist/runners/maestro.d.ts.map +1 -1
- package/dist/runners/maestro.js +37 -1
- package/dist/runners/maestro.js.map +1 -1
- package/dist/runners/modal_detector.d.ts +60 -0
- package/dist/runners/modal_detector.d.ts.map +1 -0
- package/dist/runners/modal_detector.js +160 -0
- package/dist/runners/modal_detector.js.map +1 -0
- package/dist/runners/python_tests.d.ts +26 -0
- package/dist/runners/python_tests.d.ts.map +1 -0
- package/dist/runners/python_tests.js +181 -0
- package/dist/runners/python_tests.js.map +1 -0
- package/dist/runners/rust_tests.d.ts +28 -0
- package/dist/runners/rust_tests.d.ts.map +1 -0
- package/dist/runners/rust_tests.js +76 -0
- package/dist/runners/rust_tests.js.map +1 -0
- package/dist/tools/c7_slug.d.ts +14 -0
- package/dist/tools/c7_slug.d.ts.map +1 -0
- package/dist/tools/c7_slug.js +21 -0
- package/dist/tools/c7_slug.js.map +1 -0
- package/dist/tools/diagnose.d.ts.map +1 -1
- package/dist/tools/diagnose.js +13 -0
- package/dist/tools/diagnose.js.map +1 -1
- package/dist/tools/gate_check.d.ts +2 -1
- package/dist/tools/gate_check.d.ts.map +1 -1
- package/dist/tools/gate_check.js +74 -32
- package/dist/tools/gate_check.js.map +1 -1
- package/dist/tools/is_ui_project.d.ts +23 -0
- package/dist/tools/is_ui_project.d.ts.map +1 -0
- package/dist/tools/is_ui_project.js +42 -0
- package/dist/tools/is_ui_project.js.map +1 -0
- package/dist/tools/plan_change_journey.d.ts +41 -0
- package/dist/tools/plan_change_journey.d.ts.map +1 -0
- package/dist/tools/plan_change_journey.js +131 -0
- package/dist/tools/plan_change_journey.js.map +1 -0
- package/dist/tools/verify.d.ts +28 -0
- package/dist/tools/verify.d.ts.map +1 -1
- package/dist/tools/verify.js +272 -8
- package/dist/tools/verify.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { GateCheckInput, GateCheckOutput, CodeLoopConfig } from "@codelooptech/shared";
|
|
2
2
|
export declare function runGateCheck(input: GateCheckInput, config: CodeLoopConfig, cwd?: string): Promise<GateCheckOutput>;
|
|
3
|
-
|
|
3
|
+
import { isUIProject } from "./is_ui_project.js";
|
|
4
|
+
export { isUIProject };
|
|
4
5
|
//# sourceMappingURL=gate_check.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate_check.d.ts","sourceRoot":"","sources":["../../src/tools/gate_check.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EAEf,cAAc,EAEf,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"gate_check.d.ts","sourceRoot":"","sources":["../../src/tools/gate_check.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EAEf,cAAc,EAEf,MAAM,sBAAsB,CAAC;AA8B9B,wBAAsB,YAAY,CAChC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,cAAc,EACtB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC,eAAe,CAAC,CAiG1B;AAyDD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/tools/gate_check.js
CHANGED
|
@@ -3,10 +3,10 @@ import { join, isAbsolute } from "path";
|
|
|
3
3
|
import { DEFAULT_GATES } from "@codelooptech/shared";
|
|
4
4
|
import { loadRunMeta, getArtifactsBaseDir, getRunDir } from "../evidence/artifacts.js";
|
|
5
5
|
import { detectPlatform } from "./verify.js";
|
|
6
|
-
import { detectDesktopUI } from "./desktop_detection.js";
|
|
7
|
-
import { isNodeUIProject } from "./node_ui_detection.js";
|
|
8
6
|
import { loadDesignCompareSummary, shouldEnforceDesignCompare } from "./design_compare.js";
|
|
7
|
+
import { incrementGateAttempts, resetLoopState, snapshotLoopStateToRun, shouldEscalateGate, escalationReason, } from "../evidence/loop_state.js";
|
|
9
8
|
import { collectInteractionCoverage, detectJourneyArcs, evaluateDepth, evaluateUserJourney, resolveDepthMinimums, } from "../evidence/interaction_coverage.js";
|
|
9
|
+
import { evaluateChangeCoverage, resolveChangeCoverageConfig, } from "../evidence/change_coverage.js";
|
|
10
10
|
export async function runGateCheck(input, config, cwd = process.cwd()) {
|
|
11
11
|
const baseDir = getArtifactsBaseDir(cwd);
|
|
12
12
|
const meta = loadRunMeta(input.run_id, baseDir);
|
|
@@ -34,7 +34,25 @@ export async function runGateCheck(input, config, cwd = process.cwd()) {
|
|
|
34
34
|
const blockersFailing = evaluations.filter((e) => !e.passed && e.gate.severity_if_failed === "blocker");
|
|
35
35
|
const allPassed = blockersFailing.length === 0;
|
|
36
36
|
const confidenceScore = computeConfidenceScore(evaluations, meta);
|
|
37
|
-
|
|
37
|
+
let recommendation = computeRecommendation(confidenceScore, blockersFailing.length);
|
|
38
|
+
// 0.1.51 H7 — server-side iteration counter for the auto-fix loop.
|
|
39
|
+
// We only increment when the agent is going to KEEP looping; on
|
|
40
|
+
// ready_for_review the loop ends naturally, so we reset instead.
|
|
41
|
+
let loopState;
|
|
42
|
+
if (recommendation === "ready_for_review") {
|
|
43
|
+
resetLoopState(cwd);
|
|
44
|
+
loopState = { project_dir: cwd, gate_attempts: 0, diagnose_attempts: 0 };
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
loopState = incrementGateAttempts(cwd);
|
|
48
|
+
// Hard escalate at the cap regardless of confidence — this is the
|
|
49
|
+
// safety net the user explicitly asked for in the 0.1.51 plan.
|
|
50
|
+
if (shouldEscalateGate(loopState)) {
|
|
51
|
+
recommendation = "escalate";
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// Best-effort per-run snapshot. Audit-only — see loop_state.ts.
|
|
55
|
+
snapshotLoopStateToRun(getRunDir(input.run_id, baseDir), loopState);
|
|
38
56
|
const evidenceSummary = {};
|
|
39
57
|
for (const evaluation of evaluations) {
|
|
40
58
|
const entry = {
|
|
@@ -51,6 +69,23 @@ export async function runGateCheck(input, config, cwd = process.cwd()) {
|
|
|
51
69
|
}
|
|
52
70
|
evidenceSummary[evaluation.gate.name] = entry;
|
|
53
71
|
}
|
|
72
|
+
// 0.1.51 H7 — surface the iteration counter and (when capped) the
|
|
73
|
+
// escalation reason. The agent has been instructed via the loop
|
|
74
|
+
// skill to stop calling verify/gate_check when it sees these.
|
|
75
|
+
const reason = escalationReason(loopState);
|
|
76
|
+
if (reason) {
|
|
77
|
+
evidenceSummary["loop_state"] = {
|
|
78
|
+
gate_attempts: loopState.gate_attempts,
|
|
79
|
+
diagnose_attempts: loopState.diagnose_attempts,
|
|
80
|
+
escalated_reason: reason,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
evidenceSummary["loop_state"] = {
|
|
85
|
+
gate_attempts: loopState.gate_attempts,
|
|
86
|
+
diagnose_attempts: loopState.diagnose_attempts,
|
|
87
|
+
};
|
|
88
|
+
}
|
|
54
89
|
return {
|
|
55
90
|
passed: allPassed,
|
|
56
91
|
failing_gates: failingGates,
|
|
@@ -87,7 +122,8 @@ function nextStepForGate(name, reason, cwd) {
|
|
|
87
122
|
case "interaction_depth_evidence":
|
|
88
123
|
return "The recording was too shallow. Call codeloop_discover_interactions to see what's missing, then re-record while exercising the discovered elements: type into inputs (action: 'type' / 'fill_form' / 'win_ui_automate setValue'), submit forms (Save/Submit buttons), toggle switches, upload files into drop zones, edit DataGrid cells, and send substantive AI prompts (>= 30 chars) when AI features are present.";
|
|
89
124
|
case "user_journey_evidence":
|
|
90
|
-
return "The recording did not show a coherent human-like CRUD workflow. Call codeloop_plan_user_journey to get a per-entity script (Add Product → fill realistic fields → Save → verify persisted → edit → Save → Delete), then re-record FOLLOWING THE PLAN. Realistic values matter: type '4000' for CCT (K), '90' for CRI, '350' for Drive Current (mA) — never 'test'/'abc' in numeric / unit-bearing fields. Don't stop after the create — drive the full arc through verify, edit, and (when a delete control exists) delete."
|
|
125
|
+
return ("The recording did not show a coherent human-like CRUD workflow. Call codeloop_plan_user_journey to get a per-entity script (Add Product → fill realistic fields → Save → verify persisted → edit → Save → Delete), then re-record FOLLOWING THE PLAN. Realistic values matter: type '4000' for CCT (K), '90' for CRI, '350' for Drive Current (mA) — never 'test'/'abc' in numeric / unit-bearing fields. Don't stop after the create — drive the full arc through verify, edit, and (when a delete control exists) delete. " +
|
|
126
|
+
"[H11] If the journey stalled mid-arc, an UNHANDLED MODAL is the most likely cause: Save? / Confirm delete / validation toast / license dialog. AFTER each codeloop_interact call inspect the latest screenshot, then call codeloop_handle_modal with the appropriate decision (\"confirm\" / \"cancel\" / \"dismiss\") before the next interact. An unhandled modal blocks every subsequent click and silently drops the rest of the planned arc on the floor.");
|
|
91
127
|
case "design_compare_evidence":
|
|
92
128
|
return `Design comparison failed (${reason}). Either (a) the reference designs depict a populated state that differs from the running app — seed the app's database / state to match the references before re-capturing; or (b) the captured screenshots are named differently from the references — re-capture using the reference filename (e.g. codeloop_capture_screenshot screen_name='dashboard' matches designs/dashboard.png); or (c) update / remove the irrelevant reference designs under designs/ if they no longer reflect the intended UI.`;
|
|
93
129
|
case "visual_regression_threshold":
|
|
@@ -99,34 +135,13 @@ function nextStepForGate(name, reason, cwd) {
|
|
|
99
135
|
function evaluateGates(meta, config, specContent, acceptanceContent, cwd) {
|
|
100
136
|
return [...DEFAULT_GATES.map((gate) => evaluateGate(gate, meta, config, specContent, acceptanceContent, cwd))];
|
|
101
137
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
// WPF app — or a Blazor SPA — silently bypasses every UI
|
|
110
|
-
// evidence gate even though the agent should be capturing
|
|
111
|
-
// screenshots / video / journey arcs.
|
|
112
|
-
if (platform === "dotnet") {
|
|
113
|
-
return detectDesktopUI(cwd).is_desktop_ui;
|
|
114
|
-
}
|
|
115
|
-
// Node-platform projects that are actually desktop / mobile UIs:
|
|
116
|
-
// Electron (desktop), Tauri (desktop), React Native + Expo
|
|
117
|
-
// (mobile). detectPlatform() resolves all of these to "node"
|
|
118
|
-
// because they don't bring React/Next/Vue/etc. into the root
|
|
119
|
-
// deps list, so without this branch they ship without
|
|
120
|
-
// screenshot / video / journey evidence requirements.
|
|
121
|
-
if (platform === "node") {
|
|
122
|
-
return isNodeUIProject(cwd);
|
|
123
|
-
}
|
|
124
|
-
return false;
|
|
125
|
-
}
|
|
126
|
-
catch {
|
|
127
|
-
return false;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
138
|
+
// 0.1.51 H4 — single source of truth lives in `is_ui_project.ts`.
|
|
139
|
+
// Re-exported here for backward compatibility (callers that have been
|
|
140
|
+
// importing { isUIProject } from "./gate_check.js" since 0.1.49+ keep
|
|
141
|
+
// working unchanged). The named import below is what `evaluateEvidenceGates`
|
|
142
|
+
// inside this same file uses; the export keeps external callers green.
|
|
143
|
+
import { isUIProject } from "./is_ui_project.js";
|
|
144
|
+
export { isUIProject };
|
|
130
145
|
/**
|
|
131
146
|
* Is there a runner for `codeloop_interact action: "upload_file"` on
|
|
132
147
|
* the platform we'd run against?
|
|
@@ -437,6 +452,33 @@ async function evaluateEvidenceGates(runId, cwd, config) {
|
|
|
437
452
|
}
|
|
438
453
|
}
|
|
439
454
|
}
|
|
455
|
+
// 0.1.52 C3 — change_coverage_evidence gate. Cross-references the
|
|
456
|
+
// change manifest produced by C1 against the interaction log +
|
|
457
|
+
// screenshots + replay frames + build/runtime logs. Default
|
|
458
|
+
// threshold is 1.0 (HARD 100%); per-project lowering supported via
|
|
459
|
+
// gates.change_coverage_evidence.threshold in .codeloop/config.json.
|
|
460
|
+
// The gate is added unconditionally — when no manifest is available
|
|
461
|
+
// it passes trivially, so legacy projects that haven't re-verified
|
|
462
|
+
// since 0.1.52 are not punished.
|
|
463
|
+
const changeCoverageGate = {
|
|
464
|
+
name: "change_coverage_evidence",
|
|
465
|
+
description: "Every feature-shaped change in the diff must be exercised by an interaction or screenshot or migration verification.",
|
|
466
|
+
rule: "change_manifest entries exercised >= threshold (default 1.0)",
|
|
467
|
+
input_artifacts: ["change_manifest.json", "logs/interaction_log.jsonl"],
|
|
468
|
+
pass_threshold: true,
|
|
469
|
+
severity_if_failed: "blocker",
|
|
470
|
+
retry_allowance: 5,
|
|
471
|
+
escalation_condition: "Manifest entries left unexercised after 5 attempts",
|
|
472
|
+
};
|
|
473
|
+
const changeCoverageConfig = resolveChangeCoverageConfig(config?.gates?.change_coverage_evidence);
|
|
474
|
+
const changeVerdict = evaluateChangeCoverage(cwd, runId, changeCoverageConfig);
|
|
475
|
+
results.push({
|
|
476
|
+
gate: changeCoverageGate,
|
|
477
|
+
passed: changeVerdict.passed,
|
|
478
|
+
reason: changeVerdict.passed
|
|
479
|
+
? changeVerdict.reason
|
|
480
|
+
: `${changeVerdict.reason}\n${changeVerdict.next_step}`,
|
|
481
|
+
});
|
|
440
482
|
return results;
|
|
441
483
|
}
|
|
442
484
|
function evaluateGate(gate, meta, config, specContent, acceptanceContent, cwd) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate_check.js","sourceRoot":"","sources":["../../src/tools/gate_check.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gate_check.js","sourceRoot":"","sources":["../../src/tools/gate_check.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Single source of truth for "does this project ship a UI?".
|
|
3
|
+
*
|
|
4
|
+
* Used by `gate_check` (to decide which evidence gates to enforce),
|
|
5
|
+
* `check_workflow` (to decide which steps are PENDING vs n/a), and
|
|
6
|
+
* `index.ts` for any other UI-vs-backend branching.
|
|
7
|
+
*
|
|
8
|
+
* Coverage (0.1.51 H4 unification — was previously implemented twice
|
|
9
|
+
* with subtly different rules, causing Electron / Tauri / React-Native
|
|
10
|
+
* projects to show screenshot/video as "n/a" in `check_workflow` while
|
|
11
|
+
* `gate_check` blocked them):
|
|
12
|
+
*
|
|
13
|
+
* - flutter, web, xcode, android → always UI
|
|
14
|
+
* - dotnet → only when desktopDetected.is_desktop_ui
|
|
15
|
+
* (covers WPF / WinForms / MAUI /
|
|
16
|
+
* Avalonia / WinUI / UWP / Blazor)
|
|
17
|
+
* - node → when isNodeUIProject() detects
|
|
18
|
+
* Electron / Tauri / React Native /
|
|
19
|
+
* Expo / a browser bundler
|
|
20
|
+
* - everything else → false (pure backend / library)
|
|
21
|
+
*/
|
|
22
|
+
export declare function isUIProject(cwd: string): boolean;
|
|
23
|
+
//# sourceMappingURL=is_ui_project.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is_ui_project.d.ts","sourceRoot":"","sources":["../../src/tools/is_ui_project.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAchD"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { detectPlatform } from "./verify.js";
|
|
2
|
+
import { detectDesktopUI } from "./desktop_detection.js";
|
|
3
|
+
import { isNodeUIProject } from "./node_ui_detection.js";
|
|
4
|
+
/**
|
|
5
|
+
* Single source of truth for "does this project ship a UI?".
|
|
6
|
+
*
|
|
7
|
+
* Used by `gate_check` (to decide which evidence gates to enforce),
|
|
8
|
+
* `check_workflow` (to decide which steps are PENDING vs n/a), and
|
|
9
|
+
* `index.ts` for any other UI-vs-backend branching.
|
|
10
|
+
*
|
|
11
|
+
* Coverage (0.1.51 H4 unification — was previously implemented twice
|
|
12
|
+
* with subtly different rules, causing Electron / Tauri / React-Native
|
|
13
|
+
* projects to show screenshot/video as "n/a" in `check_workflow` while
|
|
14
|
+
* `gate_check` blocked them):
|
|
15
|
+
*
|
|
16
|
+
* - flutter, web, xcode, android → always UI
|
|
17
|
+
* - dotnet → only when desktopDetected.is_desktop_ui
|
|
18
|
+
* (covers WPF / WinForms / MAUI /
|
|
19
|
+
* Avalonia / WinUI / UWP / Blazor)
|
|
20
|
+
* - node → when isNodeUIProject() detects
|
|
21
|
+
* Electron / Tauri / React Native /
|
|
22
|
+
* Expo / a browser bundler
|
|
23
|
+
* - everything else → false (pure backend / library)
|
|
24
|
+
*/
|
|
25
|
+
export function isUIProject(cwd) {
|
|
26
|
+
try {
|
|
27
|
+
const platform = detectPlatform(cwd);
|
|
28
|
+
if (["flutter", "web", "xcode", "android"].includes(platform))
|
|
29
|
+
return true;
|
|
30
|
+
if (platform === "dotnet") {
|
|
31
|
+
return detectDesktopUI(cwd).is_desktop_ui;
|
|
32
|
+
}
|
|
33
|
+
if (platform === "node") {
|
|
34
|
+
return isNodeUIProject(cwd);
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=is_ui_project.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is_ui_project.js","sourceRoot":"","sources":["../../src/tools/is_ui_project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3E,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC;QAC5C,CAAC;QACD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YACxB,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { type ChangeEntry } from "../evidence/change_manifest.js";
|
|
2
|
+
/**
|
|
3
|
+
* 0.1.52 C2 — codeloop_plan_change_journey.
|
|
4
|
+
*
|
|
5
|
+
* Reads the most recent change manifest (produced by C1 inside
|
|
6
|
+
* codeloop_verify) and emits a structured interaction script the
|
|
7
|
+
* agent must drive to satisfy the C3 change_coverage_evidence gate.
|
|
8
|
+
*
|
|
9
|
+
* Where codeloop_plan_user_journey enumerates entity-level CRUD arcs
|
|
10
|
+
* (Add Product → fill → Save → verify → edit → delete) for the WHOLE
|
|
11
|
+
* app, plan_change_journey is narrower: it only enumerates steps for
|
|
12
|
+
* the deltas the agent JUST shipped. The two work together — an
|
|
13
|
+
* agent should call plan_user_journey for the broad CRUD coverage
|
|
14
|
+
* and plan_change_journey for the per-change verification.
|
|
15
|
+
*
|
|
16
|
+
* Crucial invariant: every step has a `target_change_entry` field
|
|
17
|
+
* carrying the exact display name from manifest. The agent passes
|
|
18
|
+
* this as an arg to codeloop_interact / codeloop_capture_screenshot
|
|
19
|
+
* so the C3 gate can attribute evidence to the correct entry without
|
|
20
|
+
* fuzzy matching.
|
|
21
|
+
*/
|
|
22
|
+
export interface ChangeJourneyStep {
|
|
23
|
+
step_index: number;
|
|
24
|
+
target_change_entry: string;
|
|
25
|
+
entry_kind: ChangeEntry["kind"];
|
|
26
|
+
file: string;
|
|
27
|
+
/** Concrete codeloop_interact / codeloop_capture_screenshot call to make. */
|
|
28
|
+
action: string;
|
|
29
|
+
description: string;
|
|
30
|
+
empty_state_directive?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface ChangeJourneyPlan {
|
|
33
|
+
ready: boolean;
|
|
34
|
+
manifest_run_id: string | null;
|
|
35
|
+
total_entries: number;
|
|
36
|
+
steps: ChangeJourneyStep[];
|
|
37
|
+
preamble: string;
|
|
38
|
+
message: string;
|
|
39
|
+
}
|
|
40
|
+
export declare function planChangeJourney(cwd: string, preferredRunId?: string): ChangeJourneyPlan;
|
|
41
|
+
//# sourceMappingURL=plan_change_journey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan_change_journey.d.ts","sourceRoot":"","sources":["../../src/tools/plan_change_journey.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0D,KAAK,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE1H;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAmGD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAgDzF"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { loadMostRecentChangeManifest, manifestEntryDisplayName } from "../evidence/change_manifest.js";
|
|
2
|
+
const EMPTY_STATE_PREAMBLE = "[C4 SEED-FIRST DIRECTIVE] If any of the screens you're about to drive show an empty " +
|
|
3
|
+
"DataGrid / list / collection, STOP and seed data BEFORE attempting to exercise the " +
|
|
4
|
+
"change. You can seed by:\n" +
|
|
5
|
+
" (1) following codeloop_plan_user_journey's Create arc to add at least 1 record per " +
|
|
6
|
+
" entity that the changed UI element belongs to, OR\n" +
|
|
7
|
+
" (2) running a setup script that loads a known fixture database (e.g. SeedDb.bat, " +
|
|
8
|
+
" `dotnet ef database update`, `npm run seed`), OR\n" +
|
|
9
|
+
" (3) restoring a pre-populated artifact from artifacts/test_files/ via codeloop_interact " +
|
|
10
|
+
" action='shell'.\n" +
|
|
11
|
+
"Typing into a non-existent row, or clicking a button that the empty-state UI hides, " +
|
|
12
|
+
"is NOT valid evidence — the C3 gate will mark the entry unexercised and continue_fixing.";
|
|
13
|
+
function actionForEntry(entry, idx) {
|
|
14
|
+
const display = manifestEntryDisplayName(entry);
|
|
15
|
+
switch (entry.kind) {
|
|
16
|
+
case "ui_element_added": {
|
|
17
|
+
if (entry.element === "datagrid_column") {
|
|
18
|
+
return {
|
|
19
|
+
action: `codeloop_interact action="click" with description="click ${entry.name} cell row 1" target_change_entry="${display}", ` +
|
|
20
|
+
`then codeloop_interact action="type" text="<realistic value, e.g. PROD-${100 + idx}>" target_change_entry="${display}", ` +
|
|
21
|
+
`then codeloop_interact action="keystroke" key="Tab" to commit the cell, ` +
|
|
22
|
+
`then codeloop_capture_screenshot screen_name="${entry.name.replace(/\s+/g, "-").toLowerCase()}-typed" target_change_entry="${display}".`,
|
|
23
|
+
description: `Exercise the new "${entry.name}" DataGrid column in ${entry.file}. Click into a row's cell, type a realistic value, commit, screenshot.`,
|
|
24
|
+
emptyHint: `If the grid is empty, seed at least 1 row first (see preamble) — typing into a non-existent row produces no UIA event and the C3 gate will not credit this entry.`,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
if (entry.element === "button") {
|
|
28
|
+
return {
|
|
29
|
+
action: `codeloop_interact action="click" text="${entry.name}" description="exercise new ${entry.name} button" target_change_entry="${display}", ` +
|
|
30
|
+
`then codeloop_capture_screenshot screen_name="after-${entry.name.replace(/\s+/g, "-").toLowerCase()}" target_change_entry="${display}". ` +
|
|
31
|
+
`If the click triggers a modal, ALSO call codeloop_handle_modal before continuing.`,
|
|
32
|
+
description: `Exercise the new "${entry.name}" button in ${entry.file}. Click it, capture the result; handle any modal that opens.`,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
if (entry.element === "menu_item") {
|
|
36
|
+
return {
|
|
37
|
+
action: `codeloop_interact action="click" description="open the menu containing ${entry.name}" target_change_entry="${display}", ` +
|
|
38
|
+
`then codeloop_interact action="click" text="${entry.name}" description="select ${entry.name}" target_change_entry="${display}", ` +
|
|
39
|
+
`then codeloop_capture_screenshot screen_name="menu-${entry.name.replace(/\s+/g, "-").toLowerCase()}" target_change_entry="${display}".`,
|
|
40
|
+
description: `Exercise the new "${entry.name}" menu item in ${entry.file}.`,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
// Generic input.
|
|
44
|
+
return {
|
|
45
|
+
action: `codeloop_interact action="click" description="focus ${entry.name} input" target_change_entry="${display}", ` +
|
|
46
|
+
`then codeloop_interact action="type" text="<realistic input>" target_change_entry="${display}", ` +
|
|
47
|
+
`then codeloop_capture_screenshot target_change_entry="${display}".`,
|
|
48
|
+
description: `Exercise the new "${entry.name}" input in ${entry.file}.`,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
case "property_added":
|
|
52
|
+
return {
|
|
53
|
+
action: `Locate the UI control bound to ${entry.class}.${entry.name} (typically a textbox / column / toggle whose label resembles "${entry.name}"). ` +
|
|
54
|
+
`Drive codeloop_interact action="click" then "type" / "toggle" / "select_option" against it with description="exercise ${display}" target_change_entry="${display}". ` +
|
|
55
|
+
`Capture a screenshot pinned to this entry.`,
|
|
56
|
+
description: `Exercise the new property ${display} (${entry.file}) via its bound UI control.`,
|
|
57
|
+
};
|
|
58
|
+
case "method_added":
|
|
59
|
+
return {
|
|
60
|
+
action: `(implicit — no direct action required)`,
|
|
61
|
+
description: `${display} is implicit. The C3 gate credits it automatically when the property/column it operates on is exercised.`,
|
|
62
|
+
};
|
|
63
|
+
case "migration_column_added":
|
|
64
|
+
return {
|
|
65
|
+
action: `codeloop_interact action="shell" command="<schema dump that prints ${entry.column}>" description="verify migration ${entry.table}.${entry.column}" target_change_entry="${display}". ` +
|
|
66
|
+
`Examples: \`sqlite3 photometry.db ".schema ${entry.table}"\` for SQLite, ` +
|
|
67
|
+
`\`psql -c "\\\\d ${entry.table}"\` for PostgreSQL, ` +
|
|
68
|
+
`\`dotnet ef migrations script\` for EF Core. ` +
|
|
69
|
+
`The shell stdout MUST contain the column name for C3 to credit this entry.`,
|
|
70
|
+
description: `Verify the new migration column ${display} (${entry.file}) by dumping the live schema.`,
|
|
71
|
+
};
|
|
72
|
+
case "migration_table_added":
|
|
73
|
+
return {
|
|
74
|
+
action: `codeloop_interact action="shell" command="<schema dump that prints table ${entry.table}>" description="verify migration table ${entry.table}" target_change_entry="${display}". ` +
|
|
75
|
+
`Or open a UI screen that loads/persists records from this table.`,
|
|
76
|
+
description: `Verify the new migration table ${display} (${entry.file}).`,
|
|
77
|
+
};
|
|
78
|
+
case "layout_restructure":
|
|
79
|
+
return {
|
|
80
|
+
action: `codeloop_interact action="resize_window" width=1024 height=600 description="exercise restructured layout" target_change_entry="${display}", ` +
|
|
81
|
+
`then codeloop_capture_screenshot screen_name="${entry.file.split("/").pop()?.replace(/\.\w+$/, "") ?? "layout"}-narrow-1024" target_change_entry="${display}". ` +
|
|
82
|
+
`If your platform doesn't support resize_window, capture two screenshots at distinctly different window widths and pin both with target_change_entry.`,
|
|
83
|
+
description: `Exercise the layout restructure (${entry.from} → ${entry.to}) in ${entry.file} by resizing the window and capturing the new layout.`,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
export function planChangeJourney(cwd, preferredRunId) {
|
|
88
|
+
const { manifest, runId } = loadMostRecentChangeManifest(cwd, preferredRunId);
|
|
89
|
+
if (!manifest) {
|
|
90
|
+
return {
|
|
91
|
+
ready: false,
|
|
92
|
+
manifest_run_id: null,
|
|
93
|
+
total_entries: 0,
|
|
94
|
+
steps: [],
|
|
95
|
+
preamble: "",
|
|
96
|
+
message: "No change manifest found. Run codeloop_verify first — it produces artifacts/runs/<run>/change_manifest.json which this tool reads.",
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
if (manifest.entries.length === 0) {
|
|
100
|
+
return {
|
|
101
|
+
ready: true,
|
|
102
|
+
manifest_run_id: runId,
|
|
103
|
+
total_entries: 0,
|
|
104
|
+
steps: [],
|
|
105
|
+
preamble: "",
|
|
106
|
+
message: "Change manifest is empty — no feature-shaped changes detected since the last verified SHA. The change_coverage_evidence gate is trivially satisfied; proceed with the standard codeloop_plan_user_journey arcs.",
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
const steps = manifest.entries.map((entry, idx) => {
|
|
110
|
+
const { action, description, emptyHint } = actionForEntry(entry, idx);
|
|
111
|
+
return {
|
|
112
|
+
step_index: idx + 1,
|
|
113
|
+
target_change_entry: manifestEntryDisplayName(entry),
|
|
114
|
+
entry_kind: entry.kind,
|
|
115
|
+
file: entry.file,
|
|
116
|
+
action,
|
|
117
|
+
description,
|
|
118
|
+
empty_state_directive: emptyHint,
|
|
119
|
+
};
|
|
120
|
+
});
|
|
121
|
+
return {
|
|
122
|
+
ready: true,
|
|
123
|
+
manifest_run_id: runId,
|
|
124
|
+
total_entries: manifest.entries.length,
|
|
125
|
+
steps,
|
|
126
|
+
preamble: EMPTY_STATE_PREAMBLE,
|
|
127
|
+
message: `Change journey plan ready. ${manifest.entries.length} feature-shaped change(s) must be exercised before ready_for_review. ` +
|
|
128
|
+
`Drive every step in order via codeloop_interact (NOT raw osascript / PowerShell / xdotool); ALWAYS pass the target_change_entry value verbatim so the C3 gate can credit the correct manifest entry.`,
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=plan_change_journey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan_change_journey.js","sourceRoot":"","sources":["../../src/tools/plan_change_journey.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/verify.d.ts
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
import type { VerifyInput, VerifyOutput, CodeLoopConfig } from "@codelooptech/shared";
|
|
2
2
|
export declare function detectPlatform(cwd: string): string;
|
|
3
|
+
/**
|
|
4
|
+
* 0.1.51 H3 — Enumerate every platform stack the project carries.
|
|
5
|
+
*
|
|
6
|
+
* Where `detectPlatform` picks ONE primary stack (used for the
|
|
7
|
+
* default verify cascade), this helper returns ALL stacks that are
|
|
8
|
+
* "actively present" in the workspace. When the result has length
|
|
9
|
+
* > 1 we auto-promote `scope: "full"` so every stack runs its
|
|
10
|
+
* runner instead of silently skipping.
|
|
11
|
+
*
|
|
12
|
+
* Stacks counted here:
|
|
13
|
+
* - flutter: pubspec.yaml present
|
|
14
|
+
* - web: playwright.config.* OR a web-framework dep in package.json
|
|
15
|
+
* - node: package.json with NO web-framework dep AND a `test` npm script
|
|
16
|
+
* (we don't want to count a sidecar package.json as a stack
|
|
17
|
+
* unless it actually carries a Node test surface)
|
|
18
|
+
* - dotnet: any .sln / .csproj at root or up to depth 2
|
|
19
|
+
* - xcode: any .xcodeproj / .xcworkspace at root or up to depth 2
|
|
20
|
+
* - android: any build.gradle(.kts) at root or up to depth 2
|
|
21
|
+
* - python: detectPythonTestFramework returns non-null
|
|
22
|
+
* - rust: Cargo.toml at root or src-tauri/Cargo.toml
|
|
23
|
+
*
|
|
24
|
+
* The bar for "this stack contributes" is intentionally test-shaped,
|
|
25
|
+
* not file-shaped — we only count stacks that have somewhere for
|
|
26
|
+
* `runVerify` to run something against. A stray `.csproj` with no
|
|
27
|
+
* tests still counts because the dotnet runner builds and surfaces
|
|
28
|
+
* compile errors.
|
|
29
|
+
*/
|
|
30
|
+
export declare function detectPlatformStacks(cwd: string): string[];
|
|
3
31
|
export declare function runVerify(input: VerifyInput, config: CodeLoopConfig, cwd?: string): Promise<VerifyOutput>;
|
|
4
32
|
/**
|
|
5
33
|
* Pick a single .sln (preferred) or .csproj target for `dotnet build` so we
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/tools/verify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/tools/verify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAsBtF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAyElD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAuC1D;AA0GD,wBAAsB,SAAS,CAC7B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,cAAc,EACtB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC,YAAY,CAAC,CA4avB;AAgSD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,cAAc,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAoCzC"}
|