audit-tools 0.29.4 → 0.30.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/audit/adapters/astGrep.d.ts +30 -0
- package/dist/audit/adapters/astGrep.d.ts.map +1 -0
- package/dist/audit/adapters/astGrep.js +46 -0
- package/dist/audit/adapters/astGrep.js.map +1 -0
- package/dist/audit/adapters/codeql.d.ts +47 -0
- package/dist/audit/adapters/codeql.d.ts.map +1 -0
- package/dist/audit/adapters/codeql.js +52 -0
- package/dist/audit/adapters/codeql.js.map +1 -0
- package/dist/audit/adapters/normalizeExternal.d.ts +24 -1
- package/dist/audit/adapters/normalizeExternal.d.ts.map +1 -1
- package/dist/audit/adapters/normalizeExternal.js +50 -0
- package/dist/audit/adapters/normalizeExternal.js.map +1 -1
- package/dist/audit/adapters/semgrep.d.ts +34 -15
- package/dist/audit/adapters/semgrep.d.ts.map +1 -1
- package/dist/audit/adapters/semgrep.js +54 -1
- package/dist/audit/adapters/semgrep.js.map +1 -1
- package/dist/audit/cli/mergeAndIngestCommand.d.ts +29 -1
- package/dist/audit/cli/mergeAndIngestCommand.d.ts.map +1 -1
- package/dist/audit/cli/mergeAndIngestCommand.js +71 -5
- package/dist/audit/cli/mergeAndIngestCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +7 -6
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/resynthesizeCommand.d.ts.map +1 -1
- package/dist/audit/cli/resynthesizeCommand.js +3 -3
- package/dist/audit/cli/resynthesizeCommand.js.map +1 -1
- package/dist/audit/cli/submitPacketCommand.d.ts.map +1 -1
- package/dist/audit/cli/submitPacketCommand.js +6 -1
- package/dist/audit/cli/submitPacketCommand.js.map +1 -1
- package/dist/audit/contracts/workerSchemas.d.ts +13 -13
- package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
- package/dist/audit/contracts/workerSchemas.js +1 -1
- package/dist/audit/contracts/workerSchemas.js.map +1 -1
- package/dist/audit/contracts/wrapperResponse.d.ts +7 -0
- package/dist/audit/contracts/wrapperResponse.d.ts.map +1 -1
- package/dist/audit/contracts/wrapperResponse.js +1 -0
- package/dist/audit/contracts/wrapperResponse.js.map +1 -1
- package/dist/audit/extractors/analyzers/complexityDuplication.d.ts +27 -0
- package/dist/audit/extractors/analyzers/complexityDuplication.d.ts.map +1 -0
- package/dist/audit/extractors/analyzers/complexityDuplication.js +102 -0
- package/dist/audit/extractors/analyzers/complexityDuplication.js.map +1 -0
- package/dist/audit/extractors/designAssessment.d.ts.map +1 -1
- package/dist/audit/extractors/designAssessment.js +65 -0
- package/dist/audit/extractors/designAssessment.js.map +1 -1
- package/dist/audit/extractors/graph.d.ts.map +1 -1
- package/dist/audit/extractors/graph.js +59 -1
- package/dist/audit/extractors/graph.js.map +1 -1
- package/dist/audit/extractors/graphSignals.d.ts +43 -1
- package/dist/audit/extractors/graphSignals.d.ts.map +1 -1
- package/dist/audit/extractors/graphSignals.js +123 -0
- package/dist/audit/extractors/graphSignals.js.map +1 -1
- package/dist/audit/extractors/risk.d.ts.map +1 -1
- package/dist/audit/extractors/risk.js +39 -5
- package/dist/audit/extractors/risk.js.map +1 -1
- package/dist/audit/io/artifacts.d.ts +2 -2
- package/dist/audit/io/artifacts.d.ts.map +1 -1
- package/dist/audit/io/artifacts.js +14 -11
- package/dist/audit/io/artifacts.js.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.d.ts +17 -0
- package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.js +26 -0
- package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
- package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +20 -0
- package/dist/audit/orchestrator/executorRunners.js.map +1 -1
- package/dist/audit/orchestrator/executors.d.ts.map +1 -1
- package/dist/audit/orchestrator/executors.js +5 -0
- package/dist/audit/orchestrator/executors.js.map +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts +37 -0
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +45 -0
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/supervisor/operatorHandoff.d.ts +12 -0
- package/dist/audit/supervisor/operatorHandoff.d.ts.map +1 -1
- package/dist/audit/supervisor/operatorHandoff.js +3 -1
- package/dist/audit/supervisor/operatorHandoff.js.map +1 -1
- package/dist/audit/types/externalAnalyzer.d.ts +68 -2
- package/dist/audit/types/externalAnalyzer.d.ts.map +1 -1
- package/dist/audit/types/externalAnalyzer.js +23 -0
- package/dist/audit/types/externalAnalyzer.js.map +1 -1
- package/dist/audit/types/reviewPlanning.d.ts +14 -14
- package/dist/audit/validation/auditResults.d.ts +17 -0
- package/dist/audit/validation/auditResults.d.ts.map +1 -1
- package/dist/audit/validation/auditResults.js +39 -0
- package/dist/audit/validation/auditResults.js.map +1 -1
- package/dist/audit/validation/sessionConfig.d.ts.map +1 -1
- package/dist/audit/validation/sessionConfig.js +4 -0
- package/dist/audit/validation/sessionConfig.js.map +1 -1
- package/dist/remediate/review/autonomousGate.d.ts +74 -0
- package/dist/remediate/review/autonomousGate.d.ts.map +1 -0
- package/dist/remediate/review/autonomousGate.js +179 -0
- package/dist/remediate/review/autonomousGate.js.map +1 -0
- package/dist/remediate/steps/contractPipeline.d.ts +8 -0
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +1 -0
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.d.ts +10 -0
- package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.js +32 -1
- package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +34 -0
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +144 -8
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/shared/index.d.ts +13 -4
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +7 -3
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/io/auditToolsPaths.d.ts +35 -0
- package/dist/shared/io/auditToolsPaths.d.ts.map +1 -1
- package/dist/shared/io/auditToolsPaths.js +46 -1
- package/dist/shared/io/auditToolsPaths.js.map +1 -1
- package/dist/shared/io/frictionCapture.d.ts +83 -0
- package/dist/shared/io/frictionCapture.d.ts.map +1 -0
- package/dist/shared/io/frictionCapture.js +79 -0
- package/dist/shared/io/frictionCapture.js.map +1 -0
- package/dist/shared/io/gitignoreArtifacts.d.ts +94 -0
- package/dist/shared/io/gitignoreArtifacts.d.ts.map +1 -0
- package/dist/shared/io/gitignoreArtifacts.js +147 -0
- package/dist/shared/io/gitignoreArtifacts.js.map +1 -0
- package/dist/shared/quota/antigravityQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/antigravityQuotaSource.js +2 -0
- package/dist/shared/quota/antigravityQuotaSource.js.map +1 -1
- package/dist/shared/quota/claudeOAuthQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/claudeOAuthQuotaSource.js +4 -0
- package/dist/shared/quota/claudeOAuthQuotaSource.js.map +1 -1
- package/dist/shared/quota/codexQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/codexQuotaSource.js +2 -0
- package/dist/shared/quota/codexQuotaSource.js.map +1 -1
- package/dist/shared/quota/copilotQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/copilotQuotaSource.js +2 -0
- package/dist/shared/quota/copilotQuotaSource.js.map +1 -1
- package/dist/shared/quota/errorParsing.d.ts +19 -0
- package/dist/shared/quota/errorParsing.d.ts.map +1 -1
- package/dist/shared/quota/errorParsing.js +14 -1
- package/dist/shared/quota/errorParsing.js.map +1 -1
- package/dist/shared/quota/hostSessionQuotaSource.d.ts +138 -0
- package/dist/shared/quota/hostSessionQuotaSource.d.ts.map +1 -0
- package/dist/shared/quota/hostSessionQuotaSource.js +213 -0
- package/dist/shared/quota/hostSessionQuotaSource.js.map +1 -0
- package/dist/shared/reporting/auditDeliverable.d.ts +36 -0
- package/dist/shared/reporting/auditDeliverable.d.ts.map +1 -0
- package/dist/shared/reporting/auditDeliverable.js +85 -0
- package/dist/shared/reporting/auditDeliverable.js.map +1 -0
- package/dist/shared/types/graph.d.ts +157 -0
- package/dist/shared/types/graph.d.ts.map +1 -1
- package/dist/shared/types/graph.js +32 -0
- package/dist/shared/types/graph.js.map +1 -1
- package/dist/shared/types/sessionConfig.d.ts +13 -0
- package/dist/shared/types/sessionConfig.d.ts.map +1 -1
- package/package.json +1 -1
- package/schemas/audit_result.schema.json +2 -2
- package/schemas/audit_results.schema.json +2 -2
- package/schemas/finding.schema.json +2 -2
- package/scripts/postinstall.mjs +64 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
// Shared audit-deliverable emitter: build the canonical `audit-findings.json`
|
|
2
|
+
// machine contract + its `audit-report.md` human render from a Finding[] set.
|
|
3
|
+
//
|
|
4
|
+
// Single-sourced here (in `audit-tools/shared`) so BOTH halves of the pipeline
|
|
5
|
+
// emit an identical, re-consumable pair. The autonomous remediator uses it to
|
|
6
|
+
// re-emit the findings it left LIVE (never auto-fixed, never durably rejected)
|
|
7
|
+
// as a standard deliverable pair that round-trips straight back through the
|
|
8
|
+
// remediator's `defaultInputCandidates` (`audit-findings.json` preferred over
|
|
9
|
+
// `audit-report.md`) on the next nightly run — no special leftover format, no
|
|
10
|
+
// durable rejection state.
|
|
11
|
+
import { AUDIT_FINDINGS_CONTRACT_VERSION } from "../validation/findingsReport.js";
|
|
12
|
+
import { renderFindingBlockLines } from "./findingDisplay.js";
|
|
13
|
+
const SEVERITY_KEYS = ["critical", "high", "medium", "low", "info"];
|
|
14
|
+
function severityBreakdown(findings) {
|
|
15
|
+
const out = {};
|
|
16
|
+
for (const key of SEVERITY_KEYS)
|
|
17
|
+
out[key] = 0;
|
|
18
|
+
for (const f of findings)
|
|
19
|
+
out[f.severity] = (out[f.severity] ?? 0) + 1;
|
|
20
|
+
return out;
|
|
21
|
+
}
|
|
22
|
+
function lensBreakdown(findings) {
|
|
23
|
+
const out = {};
|
|
24
|
+
for (const f of findings)
|
|
25
|
+
out[f.lens] = (out[f.lens] ?? 0) + 1;
|
|
26
|
+
return out;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Build the canonical `audit-findings.json` machine contract over `findings`.
|
|
30
|
+
* The summary is derived deterministically; no work-blocks are emitted (the
|
|
31
|
+
* deliverable is a flat, re-consumable finding set). Stamped with the same
|
|
32
|
+
* `contract_version` the auditor emits, so `validateAuditFindingsReport` accepts
|
|
33
|
+
* it and the remediator's structured fast-path consumes it losslessly.
|
|
34
|
+
*/
|
|
35
|
+
export function buildAuditFindingsDeliverable(findings) {
|
|
36
|
+
const summary = {
|
|
37
|
+
finding_count: findings.length,
|
|
38
|
+
work_block_count: 0,
|
|
39
|
+
severity_breakdown: severityBreakdown(findings),
|
|
40
|
+
audited_file_count: 0,
|
|
41
|
+
excluded_file_count: 0,
|
|
42
|
+
runtime_validation_status_breakdown: {},
|
|
43
|
+
lens_breakdown: lensBreakdown(findings),
|
|
44
|
+
};
|
|
45
|
+
return {
|
|
46
|
+
contract_version: AUDIT_FINDINGS_CONTRACT_VERSION,
|
|
47
|
+
summary,
|
|
48
|
+
findings: [...findings],
|
|
49
|
+
work_blocks: [],
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Render the `audit-report.md` human deliverable for `findings` using the ONE
|
|
54
|
+
* shared finding renderer (parity with the auditor's report). `title` and
|
|
55
|
+
* `intro` let the caller frame the deliverable (e.g. "leftovers from an
|
|
56
|
+
* autonomous run").
|
|
57
|
+
*/
|
|
58
|
+
export function renderAuditDeliverableMarkdown(findings, options = {}) {
|
|
59
|
+
const lines = [`# ${options.title ?? "Audit Report"}`, ""];
|
|
60
|
+
if (options.intro) {
|
|
61
|
+
lines.push(options.intro, "");
|
|
62
|
+
}
|
|
63
|
+
if (findings.length === 0) {
|
|
64
|
+
lines.push("No findings.", "");
|
|
65
|
+
return lines.join("\n");
|
|
66
|
+
}
|
|
67
|
+
lines.push(`## Findings (${findings.length})`, "");
|
|
68
|
+
for (const finding of findings) {
|
|
69
|
+
lines.push(...renderFindingBlockLines(finding));
|
|
70
|
+
}
|
|
71
|
+
return lines.join("\n");
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Build BOTH halves of the re-consumable audit deliverable pair at once. The
|
|
75
|
+
* JSON is the source of truth; the markdown is its render. The caller writes
|
|
76
|
+
* `findings_report` to `audit-findings.json` and `report_markdown` to
|
|
77
|
+
* `audit-report.md`.
|
|
78
|
+
*/
|
|
79
|
+
export function buildAuditDeliverablePair(findings, options = {}) {
|
|
80
|
+
return {
|
|
81
|
+
findings_report: buildAuditFindingsDeliverable(findings),
|
|
82
|
+
report_markdown: renderAuditDeliverableMarkdown(findings, options),
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=auditDeliverable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auditDeliverable.js","sourceRoot":"","sources":["../../../src/shared/reporting/auditDeliverable.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,84 @@ export declare const RouteEdgeSchema: z.ZodObject<{
|
|
|
36
36
|
method?: string | undefined;
|
|
37
37
|
}>;
|
|
38
38
|
export type RouteEdge = z.infer<typeof RouteEdgeSchema>;
|
|
39
|
+
/**
|
|
40
|
+
* Per-node structural measure (one of complexity / duplication). `value` is the
|
|
41
|
+
* raw metric, `measure` names the concrete algorithm used (so consumers never
|
|
42
|
+
* guess units), and `reach` records the scope of source the measure actually
|
|
43
|
+
* covered — currently only `'js-ts-effective'` (computed over JS/TS source).
|
|
44
|
+
*/
|
|
45
|
+
export declare const NodeMetricSchema: z.ZodObject<{
|
|
46
|
+
value: z.ZodNumber;
|
|
47
|
+
measure: z.ZodString;
|
|
48
|
+
reach: z.ZodLiteral<"js-ts-effective">;
|
|
49
|
+
}, "strict", z.ZodTypeAny, {
|
|
50
|
+
value: number;
|
|
51
|
+
measure: string;
|
|
52
|
+
reach: "js-ts-effective";
|
|
53
|
+
}, {
|
|
54
|
+
value: number;
|
|
55
|
+
measure: string;
|
|
56
|
+
reach: "js-ts-effective";
|
|
57
|
+
}>;
|
|
58
|
+
export type NodeMetric = z.infer<typeof NodeMetricSchema>;
|
|
59
|
+
/**
|
|
60
|
+
* Optional per-node (repo-path keyed) structural metrics computed at graph-build
|
|
61
|
+
* time, where the file source is available. Absent for non-js/ts files (never
|
|
62
|
+
* zero-filled). Each metric is independently optional. Declared as an explicit
|
|
63
|
+
* optional Zod field (not a catchall) so a `.strict()` bundle WITHOUT
|
|
64
|
+
* `node_metrics` still parses, while an unknown sibling key is rejected.
|
|
65
|
+
*/
|
|
66
|
+
export declare const NodeMetricsSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
67
|
+
complexity: z.ZodOptional<z.ZodObject<{
|
|
68
|
+
value: z.ZodNumber;
|
|
69
|
+
measure: z.ZodString;
|
|
70
|
+
reach: z.ZodLiteral<"js-ts-effective">;
|
|
71
|
+
}, "strict", z.ZodTypeAny, {
|
|
72
|
+
value: number;
|
|
73
|
+
measure: string;
|
|
74
|
+
reach: "js-ts-effective";
|
|
75
|
+
}, {
|
|
76
|
+
value: number;
|
|
77
|
+
measure: string;
|
|
78
|
+
reach: "js-ts-effective";
|
|
79
|
+
}>>;
|
|
80
|
+
duplication: z.ZodOptional<z.ZodObject<{
|
|
81
|
+
value: z.ZodNumber;
|
|
82
|
+
measure: z.ZodString;
|
|
83
|
+
reach: z.ZodLiteral<"js-ts-effective">;
|
|
84
|
+
}, "strict", z.ZodTypeAny, {
|
|
85
|
+
value: number;
|
|
86
|
+
measure: string;
|
|
87
|
+
reach: "js-ts-effective";
|
|
88
|
+
}, {
|
|
89
|
+
value: number;
|
|
90
|
+
measure: string;
|
|
91
|
+
reach: "js-ts-effective";
|
|
92
|
+
}>>;
|
|
93
|
+
}, "strict", z.ZodTypeAny, {
|
|
94
|
+
complexity?: {
|
|
95
|
+
value: number;
|
|
96
|
+
measure: string;
|
|
97
|
+
reach: "js-ts-effective";
|
|
98
|
+
} | undefined;
|
|
99
|
+
duplication?: {
|
|
100
|
+
value: number;
|
|
101
|
+
measure: string;
|
|
102
|
+
reach: "js-ts-effective";
|
|
103
|
+
} | undefined;
|
|
104
|
+
}, {
|
|
105
|
+
complexity?: {
|
|
106
|
+
value: number;
|
|
107
|
+
measure: string;
|
|
108
|
+
reach: "js-ts-effective";
|
|
109
|
+
} | undefined;
|
|
110
|
+
duplication?: {
|
|
111
|
+
value: number;
|
|
112
|
+
measure: string;
|
|
113
|
+
reach: "js-ts-effective";
|
|
114
|
+
} | undefined;
|
|
115
|
+
}>>;
|
|
116
|
+
export type NodeMetrics = z.infer<typeof NodeMetricsSchema>;
|
|
39
117
|
export declare const GraphBundleSchema: z.ZodObject<{
|
|
40
118
|
graphs: z.ZodObject<{
|
|
41
119
|
imports: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
@@ -284,6 +362,61 @@ export declare const GraphBundleSchema: z.ZodObject<{
|
|
|
284
362
|
* the deterministic regex floor was used). See Phase 5 analyzer seam.
|
|
285
363
|
*/
|
|
286
364
|
analyzers_used: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
365
|
+
/**
|
|
366
|
+
* Optional per-node structural metrics (complexity / duplication) computed at
|
|
367
|
+
* graph-build time over js/ts source. Explicit optional field so legacy
|
|
368
|
+
* bundles without it still parse under `.strict()`.
|
|
369
|
+
*/
|
|
370
|
+
node_metrics: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
371
|
+
complexity: z.ZodOptional<z.ZodObject<{
|
|
372
|
+
value: z.ZodNumber;
|
|
373
|
+
measure: z.ZodString;
|
|
374
|
+
reach: z.ZodLiteral<"js-ts-effective">;
|
|
375
|
+
}, "strict", z.ZodTypeAny, {
|
|
376
|
+
value: number;
|
|
377
|
+
measure: string;
|
|
378
|
+
reach: "js-ts-effective";
|
|
379
|
+
}, {
|
|
380
|
+
value: number;
|
|
381
|
+
measure: string;
|
|
382
|
+
reach: "js-ts-effective";
|
|
383
|
+
}>>;
|
|
384
|
+
duplication: z.ZodOptional<z.ZodObject<{
|
|
385
|
+
value: z.ZodNumber;
|
|
386
|
+
measure: z.ZodString;
|
|
387
|
+
reach: z.ZodLiteral<"js-ts-effective">;
|
|
388
|
+
}, "strict", z.ZodTypeAny, {
|
|
389
|
+
value: number;
|
|
390
|
+
measure: string;
|
|
391
|
+
reach: "js-ts-effective";
|
|
392
|
+
}, {
|
|
393
|
+
value: number;
|
|
394
|
+
measure: string;
|
|
395
|
+
reach: "js-ts-effective";
|
|
396
|
+
}>>;
|
|
397
|
+
}, "strict", z.ZodTypeAny, {
|
|
398
|
+
complexity?: {
|
|
399
|
+
value: number;
|
|
400
|
+
measure: string;
|
|
401
|
+
reach: "js-ts-effective";
|
|
402
|
+
} | undefined;
|
|
403
|
+
duplication?: {
|
|
404
|
+
value: number;
|
|
405
|
+
measure: string;
|
|
406
|
+
reach: "js-ts-effective";
|
|
407
|
+
} | undefined;
|
|
408
|
+
}, {
|
|
409
|
+
complexity?: {
|
|
410
|
+
value: number;
|
|
411
|
+
measure: string;
|
|
412
|
+
reach: "js-ts-effective";
|
|
413
|
+
} | undefined;
|
|
414
|
+
duplication?: {
|
|
415
|
+
value: number;
|
|
416
|
+
measure: string;
|
|
417
|
+
reach: "js-ts-effective";
|
|
418
|
+
} | undefined;
|
|
419
|
+
}>>>;
|
|
287
420
|
}, "strict", z.ZodTypeAny, {
|
|
288
421
|
graphs: {
|
|
289
422
|
imports?: {
|
|
@@ -319,6 +452,18 @@ export declare const GraphBundleSchema: z.ZodObject<{
|
|
|
319
452
|
[k: string]: unknown;
|
|
320
453
|
};
|
|
321
454
|
analyzers_used?: string[] | undefined;
|
|
455
|
+
node_metrics?: Record<string, {
|
|
456
|
+
complexity?: {
|
|
457
|
+
value: number;
|
|
458
|
+
measure: string;
|
|
459
|
+
reach: "js-ts-effective";
|
|
460
|
+
} | undefined;
|
|
461
|
+
duplication?: {
|
|
462
|
+
value: number;
|
|
463
|
+
measure: string;
|
|
464
|
+
reach: "js-ts-effective";
|
|
465
|
+
} | undefined;
|
|
466
|
+
}> | undefined;
|
|
322
467
|
}, {
|
|
323
468
|
graphs: {
|
|
324
469
|
imports?: {
|
|
@@ -354,6 +499,18 @@ export declare const GraphBundleSchema: z.ZodObject<{
|
|
|
354
499
|
[k: string]: unknown;
|
|
355
500
|
};
|
|
356
501
|
analyzers_used?: string[] | undefined;
|
|
502
|
+
node_metrics?: Record<string, {
|
|
503
|
+
complexity?: {
|
|
504
|
+
value: number;
|
|
505
|
+
measure: string;
|
|
506
|
+
reach: "js-ts-effective";
|
|
507
|
+
} | undefined;
|
|
508
|
+
duplication?: {
|
|
509
|
+
value: number;
|
|
510
|
+
measure: string;
|
|
511
|
+
reach: "js-ts-effective";
|
|
512
|
+
} | undefined;
|
|
513
|
+
}> | undefined;
|
|
357
514
|
}>;
|
|
358
515
|
export type GraphBundle = z.infer<typeof GraphBundleSchema>;
|
|
359
516
|
//# sourceMappingURL=graph.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/shared/types/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;EASjB,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,eAAe;;;;;;;;;;;;EAMjB,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAW1B;;;;OAIG
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/shared/types/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;EASjB,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,eAAe;;;;;;;;;;;;EAMjB,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAMlB,CAAC;AACZ,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAQ7B,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAW1B;;;;OAIG;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGI,CAAC;AACZ,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -16,6 +16,32 @@ export const RouteEdgeSchema = z
|
|
|
16
16
|
method: z.string().optional(),
|
|
17
17
|
})
|
|
18
18
|
.strict();
|
|
19
|
+
/**
|
|
20
|
+
* Per-node structural measure (one of complexity / duplication). `value` is the
|
|
21
|
+
* raw metric, `measure` names the concrete algorithm used (so consumers never
|
|
22
|
+
* guess units), and `reach` records the scope of source the measure actually
|
|
23
|
+
* covered — currently only `'js-ts-effective'` (computed over JS/TS source).
|
|
24
|
+
*/
|
|
25
|
+
export const NodeMetricSchema = z
|
|
26
|
+
.object({
|
|
27
|
+
value: z.number(),
|
|
28
|
+
measure: z.string(),
|
|
29
|
+
reach: z.literal("js-ts-effective"),
|
|
30
|
+
})
|
|
31
|
+
.strict();
|
|
32
|
+
/**
|
|
33
|
+
* Optional per-node (repo-path keyed) structural metrics computed at graph-build
|
|
34
|
+
* time, where the file source is available. Absent for non-js/ts files (never
|
|
35
|
+
* zero-filled). Each metric is independently optional. Declared as an explicit
|
|
36
|
+
* optional Zod field (not a catchall) so a `.strict()` bundle WITHOUT
|
|
37
|
+
* `node_metrics` still parses, while an unknown sibling key is rejected.
|
|
38
|
+
*/
|
|
39
|
+
export const NodeMetricsSchema = z.record(z.string(), z
|
|
40
|
+
.object({
|
|
41
|
+
complexity: NodeMetricSchema.optional(),
|
|
42
|
+
duplication: NodeMetricSchema.optional(),
|
|
43
|
+
})
|
|
44
|
+
.strict());
|
|
19
45
|
export const GraphBundleSchema = z
|
|
20
46
|
.object({
|
|
21
47
|
graphs: z
|
|
@@ -33,6 +59,12 @@ export const GraphBundleSchema = z
|
|
|
33
59
|
* the deterministic regex floor was used). See Phase 5 analyzer seam.
|
|
34
60
|
*/
|
|
35
61
|
analyzers_used: z.array(z.string()).optional(),
|
|
62
|
+
/**
|
|
63
|
+
* Optional per-node structural metrics (complexity / duplication) computed at
|
|
64
|
+
* graph-build time over js/ts source. Explicit optional field so legacy
|
|
65
|
+
* bundles without it still parse under `.strict()`.
|
|
66
|
+
*/
|
|
67
|
+
node_metrics: NodeMetricsSchema.optional(),
|
|
36
68
|
})
|
|
37
69
|
.strict();
|
|
38
70
|
//# sourceMappingURL=graph.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/shared/types/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;QAC5C,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;QAC1C,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;QAC/C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;KAC5C,CAAC;QACF,oEAAoE;SACnE,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACxB;;;;OAIG;IACH,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/shared/types/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;CACpC,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CACvC,CAAC,CAAC,MAAM,EAAE,EACV,CAAC;KACE,MAAM,CAAC;IACN,UAAU,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACvC,WAAW,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CACzC,CAAC;KACD,MAAM,EAAE,CACZ,CAAC;AAGF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;QAC5C,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;QAC1C,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;QAC/C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;KAC5C,CAAC;QACF,oEAAoE;SACnE,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACxB;;;;OAIG;IACH,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC9C;;;;OAIG;IACH,YAAY,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CAC3C,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
@@ -318,6 +318,19 @@ export interface SessionConfig {
|
|
|
318
318
|
timeout_ms?: number;
|
|
319
319
|
ui_mode?: SessionUiMode;
|
|
320
320
|
host_can_dispatch_subagents?: boolean;
|
|
321
|
+
/**
|
|
322
|
+
* Run unattended (nightly autonomous pipeline). Host-agnostic — ONE flag
|
|
323
|
+
* drives the whole path, with no cloud/local fork. When set, the
|
|
324
|
+
* review-approval gate does NOT halt for a human: it auto-approves only the
|
|
325
|
+
* findings whose ambiguity tier is "safe" AND whose change-kind is positively
|
|
326
|
+
* on the fail-closed non-destructiveness ALLOWLIST (additive / localized /
|
|
327
|
+
* reversible — see src/remediate/review/autonomousGate.ts). Every other
|
|
328
|
+
* finding is left LIVE and re-emitted as a re-consumable audit deliverable
|
|
329
|
+
* pair (audit-findings.json + audit-report.md); leftovers are NEVER durably
|
|
330
|
+
* rejected, so the next nightly run re-evaluates them fresh. Ambiguity-only:
|
|
331
|
+
* there is NO cost / severity / run-budget gate.
|
|
332
|
+
*/
|
|
333
|
+
autonomous_mode?: boolean;
|
|
321
334
|
subprocess_template?: SubprocessTemplateConfig;
|
|
322
335
|
claude_code?: ClaudeCodeConfig;
|
|
323
336
|
codex?: CodexConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionConfig.d.ts","sourceRoot":"","sources":["../../../src/shared/types/sessionConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessionConfig.d.ts","sourceRoot":"","sources":["../../../src/shared/types/sessionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,eAAO,MAAM,cAAc,qJAUjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3D,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,gBAAgB,kCAAmC,CAAC;AACjE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,MAAM,WAAW,wBAAwB;IACvC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IACtE,sJAAsJ;IACtJ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,sBAAsB;IACrC,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iGAAiG;IACjG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iGAAiG;IACjG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8FAA8F;IAC9F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,8FAA8F;IAC9F,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,qBAAqB;;;;;;;;CAQxB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,gGAMhC,CAAC;AACX,MAAM,MAAM,0BAA0B,GACpC,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,iDAAiD;IACjD,QAAQ,EAAE,0BAA0B,CAAC;IACrC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,uEAAuE;IACvE,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,yBAAyB,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACjD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAmB;IAClC,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,6DAMpB,CAAC;AACX,eAAO,MAAM,qBAAqB,+DAA4B,CAAC;AAC/D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACtC;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;CACtC;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,OAAO,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,OAAO,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAC/C,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,kEAAkE;IAClE,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mEAAmE;IACnE,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;CACpD"}
|
package/package.json
CHANGED
|
@@ -100,7 +100,8 @@
|
|
|
100
100
|
"operability",
|
|
101
101
|
"config_deployment",
|
|
102
102
|
"observability"
|
|
103
|
-
]
|
|
103
|
+
],
|
|
104
|
+
"description": "Optional: when omitted, the tool defaults it from the enclosing AuditResult.lens before validation. Supply it only to override the result lens for a cross-lens finding."
|
|
104
105
|
},
|
|
105
106
|
"summary": {
|
|
106
107
|
"type": "string"
|
|
@@ -306,7 +307,6 @@
|
|
|
306
307
|
"category",
|
|
307
308
|
"severity",
|
|
308
309
|
"confidence",
|
|
309
|
-
"lens",
|
|
310
310
|
"summary",
|
|
311
311
|
"affected_files",
|
|
312
312
|
"evidence"
|
|
@@ -102,7 +102,8 @@
|
|
|
102
102
|
"operability",
|
|
103
103
|
"config_deployment",
|
|
104
104
|
"observability"
|
|
105
|
-
]
|
|
105
|
+
],
|
|
106
|
+
"description": "Optional: when omitted, the tool defaults it from the enclosing AuditResult.lens before validation. Supply it only to override the result lens for a cross-lens finding."
|
|
106
107
|
},
|
|
107
108
|
"summary": {
|
|
108
109
|
"type": "string"
|
|
@@ -308,7 +309,6 @@
|
|
|
308
309
|
"category",
|
|
309
310
|
"severity",
|
|
310
311
|
"confidence",
|
|
311
|
-
"lens",
|
|
312
312
|
"summary",
|
|
313
313
|
"affected_files",
|
|
314
314
|
"evidence"
|
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
"operability",
|
|
47
47
|
"config_deployment",
|
|
48
48
|
"observability"
|
|
49
|
-
]
|
|
49
|
+
],
|
|
50
|
+
"description": "Optional: when omitted, the tool defaults it from the enclosing AuditResult.lens before validation. Supply it only to override the result lens for a cross-lens finding."
|
|
50
51
|
},
|
|
51
52
|
"summary": {
|
|
52
53
|
"type": "string"
|
|
@@ -252,7 +253,6 @@
|
|
|
252
253
|
"category",
|
|
253
254
|
"severity",
|
|
254
255
|
"confidence",
|
|
255
|
-
"lens",
|
|
256
256
|
"summary",
|
|
257
257
|
"affected_files",
|
|
258
258
|
"evidence"
|
package/scripts/postinstall.mjs
CHANGED
|
@@ -21,4 +21,68 @@ for (const script of ["./audit/postinstall.mjs", "./remediate/postinstall.mjs"])
|
|
|
21
21
|
failed = true;
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
+
|
|
25
|
+
// Manage the consuming repo's .gitignore for the artifacts audit-tools emits
|
|
26
|
+
// (always-ignore build/install assets + friction sidecar; visibility-conditional
|
|
27
|
+
// ignore of deliverables + meta-audit reflections). This is best-effort and must
|
|
28
|
+
// NEVER fail the install: the helper degrades on any error, and we wrap the whole
|
|
29
|
+
// step so a missing shared dist (fresh `npm ci`) or a detection hiccup is a warn,
|
|
30
|
+
// not a non-zero exit.
|
|
31
|
+
await manageArtifactGitignore();
|
|
32
|
+
|
|
24
33
|
process.exit(failed ? 1 : 0);
|
|
34
|
+
|
|
35
|
+
async function manageArtifactGitignore() {
|
|
36
|
+
try {
|
|
37
|
+
const shared = await import("audit-tools/shared");
|
|
38
|
+
if (typeof shared.ensureArtifactGitignore !== "function") {
|
|
39
|
+
return; // shared dist not built yet (fresh npm ci) — skip silently.
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// The consuming repo root: npm sets INIT_CWD to the dir `npm install` ran in.
|
|
43
|
+
const repoRoot = process.env.INIT_CWD || process.cwd();
|
|
44
|
+
|
|
45
|
+
// Explicit operator override always wins. Accept private/public/track/ignore.
|
|
46
|
+
const override = resolveVisibilityOverride();
|
|
47
|
+
|
|
48
|
+
const result = shared.ensureArtifactGitignore({
|
|
49
|
+
repoRoot,
|
|
50
|
+
override,
|
|
51
|
+
runGh: runGhRepoVisibility,
|
|
52
|
+
});
|
|
53
|
+
if (result.changed) {
|
|
54
|
+
console.log(
|
|
55
|
+
`[audit-tools] postinstall: updated ${result.path} (repo visibility: ${result.visibility}).`,
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
} catch (err) {
|
|
59
|
+
console.warn(
|
|
60
|
+
`[audit-tools] postinstall: .gitignore management skipped (${err?.message ?? err}).`,
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Operator override via env: AUDIT_TOOLS_REPO_VISIBILITY=private|public (also
|
|
66
|
+
// accepts track=private / ignore=public). Anything else => no override.
|
|
67
|
+
function resolveVisibilityOverride() {
|
|
68
|
+
const raw = (process.env.AUDIT_TOOLS_REPO_VISIBILITY || "").trim().toLowerCase();
|
|
69
|
+
if (raw === "private" || raw === "track") return "private";
|
|
70
|
+
if (raw === "public" || raw === "ignore") return "public";
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// Probe `gh repo view --json isPrivate`. Returns gh stdout, or null on any
|
|
75
|
+
// failure (gh missing, not a gh-known repo, non-zero exit). Never throws.
|
|
76
|
+
function runGhRepoVisibility(repoRoot) {
|
|
77
|
+
try {
|
|
78
|
+
const result = spawnSync("gh", ["repo", "view", "--json", "isPrivate"], {
|
|
79
|
+
cwd: repoRoot,
|
|
80
|
+
encoding: "utf8",
|
|
81
|
+
shell: process.platform === "win32",
|
|
82
|
+
});
|
|
83
|
+
if (result.error || (result.status ?? 0) !== 0) return null;
|
|
84
|
+
return typeof result.stdout === "string" ? result.stdout : null;
|
|
85
|
+
} catch {
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
}
|