@codyswann/lisa 3.49.0 → 3.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/gate-report-agent-hooks.d.ts +40 -0
- package/dist/cli/gate-report-agent-hooks.d.ts.map +1 -0
- package/dist/cli/gate-report-agent-hooks.js +226 -0
- package/dist/cli/gate-report-agent-hooks.js.map +1 -0
- package/dist/cli/gate-report-assemble.d.ts +37 -0
- package/dist/cli/gate-report-assemble.d.ts.map +1 -0
- package/dist/cli/gate-report-assemble.js +69 -0
- package/dist/cli/gate-report-assemble.js.map +1 -0
- package/dist/cli/gate-report-cells.d.ts +27 -2
- package/dist/cli/gate-report-cells.d.ts.map +1 -1
- package/dist/cli/gate-report-cells.js +59 -14
- package/dist/cli/gate-report-cells.js.map +1 -1
- package/dist/cli/gate-report-contexts.d.ts +70 -0
- package/dist/cli/gate-report-contexts.d.ts.map +1 -0
- package/dist/cli/gate-report-contexts.js +72 -0
- package/dist/cli/gate-report-contexts.js.map +1 -0
- package/dist/cli/gate-report-facade.d.ts +62 -0
- package/dist/cli/gate-report-facade.d.ts.map +1 -0
- package/dist/cli/gate-report-facade.js +224 -0
- package/dist/cli/gate-report-facade.js.map +1 -0
- package/dist/cli/gate-report-fragment.d.ts +11 -0
- package/dist/cli/gate-report-fragment.d.ts.map +1 -0
- package/dist/cli/gate-report-fragment.js +100 -0
- package/dist/cli/gate-report-fragment.js.map +1 -0
- package/dist/cli/gate-report-html.d.ts +47 -0
- package/dist/cli/gate-report-html.d.ts.map +1 -0
- package/dist/cli/gate-report-html.js +49 -0
- package/dist/cli/gate-report-html.js.map +1 -0
- package/dist/cli/gate-report-joins.d.ts +37 -0
- package/dist/cli/gate-report-joins.d.ts.map +1 -0
- package/dist/cli/gate-report-joins.js +104 -0
- package/dist/cli/gate-report-joins.js.map +1 -0
- package/dist/cli/gate-report-merge.d.ts +22 -0
- package/dist/cli/gate-report-merge.d.ts.map +1 -0
- package/dist/cli/gate-report-merge.js +79 -0
- package/dist/cli/gate-report-merge.js.map +1 -0
- package/dist/cli/gate-report-preview.d.ts +0 -18
- package/dist/cli/gate-report-preview.d.ts.map +1 -1
- package/dist/cli/gate-report-preview.js +35 -266
- package/dist/cli/gate-report-preview.js.map +1 -1
- package/dist/cli/gate-report-rows.d.ts +39 -0
- package/dist/cli/gate-report-rows.d.ts.map +1 -0
- package/dist/cli/gate-report-rows.js +209 -0
- package/dist/cli/gate-report-rows.js.map +1 -0
- package/dist/cli/gate-report-sections.d.ts +32 -0
- package/dist/cli/gate-report-sections.d.ts.map +1 -0
- package/dist/cli/gate-report-sections.js +164 -0
- package/dist/cli/gate-report-sections.js.map +1 -0
- package/dist/cli/gate-report-style.d.ts +19 -0
- package/dist/cli/gate-report-style.d.ts.map +1 -0
- package/dist/cli/gate-report-style.js +97 -0
- package/dist/cli/gate-report-style.js.map +1 -0
- package/dist/cli/gate-report-summary.d.ts.map +1 -1
- package/dist/cli/gate-report-summary.js +3 -0
- package/dist/cli/gate-report-summary.js.map +1 -1
- package/dist/cli/gate-report-types.d.ts +132 -1
- package/dist/cli/gate-report-types.d.ts.map +1 -1
- package/dist/cli/gate-report-types.js +1 -1
- package/dist/cli/gate-report-upstream.d.ts +70 -0
- package/dist/cli/gate-report-upstream.d.ts.map +1 -0
- package/dist/cli/gate-report-upstream.js +90 -0
- package/dist/cli/gate-report-upstream.js.map +1 -0
- package/dist/cli/gate-report.d.ts +2 -0
- package/dist/cli/gate-report.d.ts.map +1 -1
- package/dist/cli/gate-report.js +98 -140
- package/dist/cli/gate-report.js.map +1 -1
- package/dist/cli/ui-cmd.d.ts +4 -0
- package/dist/cli/ui-cmd.d.ts.map +1 -1
- package/dist/cli/ui-cmd.js +10 -2
- package/dist/cli/ui-cmd.js.map +1 -1
- package/dist/cli/ui-gate-report.d.ts +57 -0
- package/dist/cli/ui-gate-report.d.ts.map +1 -0
- package/dist/cli/ui-gate-report.js +95 -0
- package/dist/cli/ui-gate-report.js.map +1 -0
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +20 -2
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/package.json +1 -1
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/ui/README.md +56 -3
- package/ui/index.html +52 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `GET /api/gate-report` — the Doctor tab's data, composed at serve time.
|
|
3
|
+
*
|
|
4
|
+
* The tab's markup is composed HERE rather than living inside
|
|
5
|
+
* `ui/index.html`, and that is the point of the route. That file is a single
|
|
6
|
+
* 13,000-line zero-build document with a known concurrent-edit hazard where
|
|
7
|
+
* union merges lose braces; a section of this size pasted into it would make a
|
|
8
|
+
* bad merge materially worse, and would put a second copy of the report's
|
|
9
|
+
* markup somewhere no test renders. The console instead gains a small block
|
|
10
|
+
* that asks this route for the fragment.
|
|
11
|
+
*
|
|
12
|
+
* The standalone property `ui/README.md` advertises survives untouched:
|
|
13
|
+
* opening `ui/index.html` from disk still works, and the tab then says — in
|
|
14
|
+
* the report's own three-state vocabulary — that the report could not be
|
|
15
|
+
* derived without a server. That is an honest `unknown`, not an empty panel.
|
|
16
|
+
*
|
|
17
|
+
* Lazy and single-flight, following `/api/setup-readiness`. Tier 2 shells out
|
|
18
|
+
* to `gh`, so building the report at server start would delay the console for
|
|
19
|
+
* a section the operator may never open, and two tabs opened at once must not
|
|
20
|
+
* become two `gh` invocations.
|
|
21
|
+
* @module cli/ui-gate-report
|
|
22
|
+
*/
|
|
23
|
+
import type * as http from "node:http";
|
|
24
|
+
import type { GateReport } from "./gate-report-types.js";
|
|
25
|
+
/** What the route returns. */
|
|
26
|
+
export interface GateReportResponse {
|
|
27
|
+
/** The scoped fragment the console injects into the Doctor tab. */
|
|
28
|
+
readonly html: string;
|
|
29
|
+
/**
|
|
30
|
+
* The payload the fragment was rendered from.
|
|
31
|
+
*
|
|
32
|
+
* Served alongside the markup so an agent or a script can consume the same
|
|
33
|
+
* verdicts the operator is looking at, without a second derivation that
|
|
34
|
+
* could disagree with the first.
|
|
35
|
+
*/
|
|
36
|
+
readonly report: GateReport;
|
|
37
|
+
}
|
|
38
|
+
/** Injectable boundaries, so tests never shell out or read a real project. */
|
|
39
|
+
export interface GateReportDependencies {
|
|
40
|
+
/** Build the report. Defaults to the real emitter. */
|
|
41
|
+
readonly build?: (projectRoot: string) => Promise<GateReport>;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Build the response for one project.
|
|
45
|
+
* @param projectRoot - Project root served by this UI process
|
|
46
|
+
* @param dependencies - Injectable boundaries
|
|
47
|
+
* @returns The fragment and the payload it came from
|
|
48
|
+
*/
|
|
49
|
+
export declare function readGateReport(projectRoot: string, dependencies?: GateReportDependencies): Promise<GateReportResponse>;
|
|
50
|
+
/**
|
|
51
|
+
* Create the `/api/gate-report` handler for one project.
|
|
52
|
+
* @param projectRoot - Project root served by this UI process
|
|
53
|
+
* @param dependencies - Injectable boundaries
|
|
54
|
+
* @returns A request handler
|
|
55
|
+
*/
|
|
56
|
+
export declare function createGateReportHandler(projectRoot: string, dependencies?: GateReportDependencies): (request: http.IncomingMessage, response: http.ServerResponse) => void;
|
|
57
|
+
//# sourceMappingURL=ui-gate-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-gate-report.d.ts","sourceRoot":"","sources":["../../src/cli/ui-gate-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAC;AAKvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMzD,8BAA8B;AAC9B,MAAM,WAAW,kBAAkB;IACjC,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAED,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,sDAAsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/D;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,sBAA2B,GACxC,OAAO,CAAC,kBAAkB,CAAC,CAS7B;AA8BD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,sBAA2B,GACxC,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,QAAQ,EAAE,IAAI,CAAC,cAAc,KAAK,IAAI,CA8CxE"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import * as path from "node:path";
|
|
2
|
+
import { renderGateReportFragment } from "./gate-report-fragment.js";
|
|
3
|
+
import { buildGateReport } from "./gate-report.js";
|
|
4
|
+
const JSON_CONTENT_TYPE = "application/json; charset=utf-8";
|
|
5
|
+
const NO_STORE = "no-store";
|
|
6
|
+
const TEXT_CONTENT_TYPE = "text/plain; charset=utf-8";
|
|
7
|
+
/**
|
|
8
|
+
* Build the response for one project.
|
|
9
|
+
* @param projectRoot - Project root served by this UI process
|
|
10
|
+
* @param dependencies - Injectable boundaries
|
|
11
|
+
* @returns The fragment and the payload it came from
|
|
12
|
+
*/
|
|
13
|
+
export async function readGateReport(projectRoot, dependencies = {}) {
|
|
14
|
+
const build = dependencies.build ??
|
|
15
|
+
(async (root) => await buildGateReport({ projectRoot: root }));
|
|
16
|
+
const report = await build(projectRoot);
|
|
17
|
+
return {
|
|
18
|
+
report,
|
|
19
|
+
html: renderGateReportFragment(report, path.basename(projectRoot)),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Coalesce concurrent reads without caching a stale answer for later ones.
|
|
24
|
+
*
|
|
25
|
+
* The slot is a `current` holder rather than a reassigned binding, which is
|
|
26
|
+
* the shape the repository's immutability rules already sanction: the entry is
|
|
27
|
+
* set when a read starts and cleared when it settles, which is the same
|
|
28
|
+
* lifetime with none of the suppression.
|
|
29
|
+
* @param read - The underlying reader
|
|
30
|
+
* @returns A single-flight reader that clears after settlement
|
|
31
|
+
*/
|
|
32
|
+
function singleFlight(read) {
|
|
33
|
+
const slot = {
|
|
34
|
+
current: undefined,
|
|
35
|
+
};
|
|
36
|
+
return () => {
|
|
37
|
+
if (slot.current !== undefined)
|
|
38
|
+
return slot.current;
|
|
39
|
+
const pending = read();
|
|
40
|
+
slot.current = pending;
|
|
41
|
+
const clear = () => {
|
|
42
|
+
if (slot.current === pending)
|
|
43
|
+
slot.current = undefined;
|
|
44
|
+
};
|
|
45
|
+
void pending.then(clear, clear);
|
|
46
|
+
return pending;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Create the `/api/gate-report` handler for one project.
|
|
51
|
+
* @param projectRoot - Project root served by this UI process
|
|
52
|
+
* @param dependencies - Injectable boundaries
|
|
53
|
+
* @returns A request handler
|
|
54
|
+
*/
|
|
55
|
+
export function createGateReportHandler(projectRoot, dependencies = {}) {
|
|
56
|
+
const read = singleFlight(async () => await readGateReport(projectRoot, dependencies));
|
|
57
|
+
return (request, response) => {
|
|
58
|
+
if (request.method === "HEAD") {
|
|
59
|
+
response.writeHead(200, {
|
|
60
|
+
"cache-control": NO_STORE,
|
|
61
|
+
"content-type": JSON_CONTENT_TYPE,
|
|
62
|
+
});
|
|
63
|
+
response.end();
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
if (request.method !== "GET") {
|
|
67
|
+
response.writeHead(405, {
|
|
68
|
+
allow: "GET, HEAD",
|
|
69
|
+
"cache-control": NO_STORE,
|
|
70
|
+
"content-type": TEXT_CONTENT_TYPE,
|
|
71
|
+
});
|
|
72
|
+
response.end("Method not allowed");
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
void read().then(result => {
|
|
76
|
+
response.writeHead(200, {
|
|
77
|
+
"cache-control": NO_STORE,
|
|
78
|
+
"content-type": JSON_CONTENT_TYPE,
|
|
79
|
+
});
|
|
80
|
+
response.end(JSON.stringify(result));
|
|
81
|
+
}, error => {
|
|
82
|
+
// A failure here must not render as an empty report. The console shows
|
|
83
|
+
// the message, which keeps "the report could not be derived" distinct
|
|
84
|
+
// from "the report found nothing".
|
|
85
|
+
response.writeHead(500, {
|
|
86
|
+
"cache-control": NO_STORE,
|
|
87
|
+
"content-type": JSON_CONTENT_TYPE,
|
|
88
|
+
});
|
|
89
|
+
response.end(JSON.stringify({
|
|
90
|
+
error: error instanceof Error ? error.message : String(error),
|
|
91
|
+
}));
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=ui-gate-report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-gate-report.js","sourceRoot":"","sources":["../../src/cli/ui-gate-report.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAg3EpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAg3EpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAy4OjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
|
|
@@ -1206,8 +1206,8 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
|
|
|
1206
1206
|
"typescript/merge/.claude/settings.json": "834e6456cae81f45073bbbb08bf731fef043efb30cae2658cb4a59f17e66d165",
|
|
1207
1207
|
"typescript/merge/.oxlintrc.json": "9504c20db80470c242c4ffe8cccad6951ed8141dfb5bf6503053e0b2712ab276",
|
|
1208
1208
|
"typescript/package-lisa/package.lisa.json": "0da7069e5b7eb4e16e67201d047be1dd85b82c0e2bcf7cf0fa0ab0caff8a8b1a",
|
|
1209
|
-
"ui/README.md": "
|
|
1210
|
-
"ui/index.html": "
|
|
1209
|
+
"ui/README.md": "ee05dac69cbba5f74a4ff945e78afdd54bd62d26087a255799dbbfc943f52b45",
|
|
1210
|
+
"ui/index.html": "259e62a02f99c7957cb5f83cc9f5678971df8c6c37495566f88b919ccddc1ade",
|
|
1211
1211
|
});
|
|
1212
1212
|
/** Exact paths tracked by the public Lisa repository at generation time. */
|
|
1213
1213
|
export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
@@ -7169,15 +7169,27 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
7169
7169
|
"src/cli/file-upstream-cmd.ts": true,
|
|
7170
7170
|
"src/cli/gate-commands.ts": true,
|
|
7171
7171
|
"src/cli/gate-registry-source.ts": true,
|
|
7172
|
+
"src/cli/gate-report-agent-hooks.ts": true,
|
|
7173
|
+
"src/cli/gate-report-assemble.ts": true,
|
|
7172
7174
|
"src/cli/gate-report-cells.ts": true,
|
|
7173
7175
|
"src/cli/gate-report-config.ts": true,
|
|
7176
|
+
"src/cli/gate-report-contexts.ts": true,
|
|
7174
7177
|
"src/cli/gate-report-executors.ts": true,
|
|
7178
|
+
"src/cli/gate-report-facade.ts": true,
|
|
7179
|
+
"src/cli/gate-report-fragment.ts": true,
|
|
7180
|
+
"src/cli/gate-report-html.ts": true,
|
|
7181
|
+
"src/cli/gate-report-joins.ts": true,
|
|
7182
|
+
"src/cli/gate-report-merge.ts": true,
|
|
7175
7183
|
"src/cli/gate-report-preview.ts": true,
|
|
7176
7184
|
"src/cli/gate-report-registry.ts": true,
|
|
7185
|
+
"src/cli/gate-report-rows.ts": true,
|
|
7177
7186
|
"src/cli/gate-report-ruleset.ts": true,
|
|
7187
|
+
"src/cli/gate-report-sections.ts": true,
|
|
7178
7188
|
"src/cli/gate-report-skip-jobs.ts": true,
|
|
7189
|
+
"src/cli/gate-report-style.ts": true,
|
|
7179
7190
|
"src/cli/gate-report-summary.ts": true,
|
|
7180
7191
|
"src/cli/gate-report-types.ts": true,
|
|
7192
|
+
"src/cli/gate-report-upstream.ts": true,
|
|
7181
7193
|
"src/cli/gate-report.ts": true,
|
|
7182
7194
|
"src/cli/health-cmd.ts": true,
|
|
7183
7195
|
"src/cli/index.ts": true,
|
|
@@ -7210,6 +7222,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
7210
7222
|
"src/cli/ui-deploy-pipeline.ts": true,
|
|
7211
7223
|
"src/cli/ui-detected-stacks.ts": true,
|
|
7212
7224
|
"src/cli/ui-enabled-plugins.ts": true,
|
|
7225
|
+
"src/cli/ui-gate-report.ts": true,
|
|
7213
7226
|
"src/cli/ui-github-repo-expected.ts": true,
|
|
7214
7227
|
"src/cli/ui-github-repo-gh.ts": true,
|
|
7215
7228
|
"src/cli/ui-github-repo-map.ts": true,
|
|
@@ -7697,11 +7710,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
7697
7710
|
"tests/unit/cli/doctor.test.ts": true,
|
|
7698
7711
|
"tests/unit/cli/file-upstream-contract.test.ts": true,
|
|
7699
7712
|
"tests/unit/cli/gate-commands.test.ts": true,
|
|
7713
|
+
"tests/unit/cli/gate-report-attribution.test.ts": true,
|
|
7700
7714
|
"tests/unit/cli/gate-report-executors.test.ts": true,
|
|
7701
7715
|
"tests/unit/cli/gate-report-fixtures.ts": true,
|
|
7702
7716
|
"tests/unit/cli/gate-report-preview.test.ts": true,
|
|
7703
7717
|
"tests/unit/cli/gate-report-ruleset.test.ts": true,
|
|
7704
7718
|
"tests/unit/cli/gate-report-states.test.ts": true,
|
|
7719
|
+
"tests/unit/cli/gate-report-workflows.ts": true,
|
|
7705
7720
|
"tests/unit/cli/gate-report.test.ts": true,
|
|
7706
7721
|
"tests/unit/cli/health-cmd.test.ts": true,
|
|
7707
7722
|
"tests/unit/cli/index-maintenance.test.ts": true,
|
|
@@ -7730,6 +7745,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
7730
7745
|
"tests/unit/cli/ui-deploy-pipeline-probe.test.ts": true,
|
|
7731
7746
|
"tests/unit/cli/ui-detected-stacks-probe.test.ts": true,
|
|
7732
7747
|
"tests/unit/cli/ui-enabled-plugins-probe.test.ts": true,
|
|
7748
|
+
"tests/unit/cli/ui-gate-report.test.ts": true,
|
|
7733
7749
|
"tests/unit/cli/ui-github-repo-map.test.ts": true,
|
|
7734
7750
|
"tests/unit/cli/ui-github-repo.test.ts": true,
|
|
7735
7751
|
"tests/unit/cli/ui-health-schedule-write.test.ts": true,
|
|
@@ -8014,6 +8030,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
8014
8030
|
"tests/unit/scripts/cursor-artifact-helpers.ts": true,
|
|
8015
8031
|
"tests/unit/scripts/derived-artifact-staleness.test.ts": true,
|
|
8016
8032
|
"tests/unit/scripts/destructive-capability-compound-names.test.ts": true,
|
|
8033
|
+
"tests/unit/scripts/destructive-guard-boundaries.test.ts": true,
|
|
8034
|
+
"tests/unit/scripts/destructive-guard-source-shape.test.ts": true,
|
|
8017
8035
|
"tests/unit/scripts/destructive-production-guard.test.ts": true,
|
|
8018
8036
|
"tests/unit/scripts/destructive-production-unreachable.test.ts": true,
|
|
8019
8037
|
"tests/unit/scripts/detect-stale-workflow-inputs-helpers.ts": true,
|