renma 0.8.1 → 0.9.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.
Files changed (38) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/dist/commands/ci-report.d.ts +5 -0
  3. package/dist/commands/ci-report.d.ts.map +1 -1
  4. package/dist/commands/ci-report.js +77 -2
  5. package/dist/commands/ci-report.js.map +1 -1
  6. package/dist/commands/diff.d.ts +4 -0
  7. package/dist/commands/diff.d.ts.map +1 -1
  8. package/dist/commands/diff.js +57 -8
  9. package/dist/commands/diff.js.map +1 -1
  10. package/dist/commands/readiness.d.ts +5 -1
  11. package/dist/commands/readiness.d.ts.map +1 -1
  12. package/dist/commands/readiness.js +66 -2
  13. package/dist/commands/readiness.js.map +1 -1
  14. package/dist/scanner.d.ts.map +1 -1
  15. package/dist/scanner.js +3 -0
  16. package/dist/scanner.js.map +1 -1
  17. package/dist/security-diagnostics.d.ts.map +1 -1
  18. package/dist/security-diagnostics.js +2 -266
  19. package/dist/security-diagnostics.js.map +1 -1
  20. package/dist/security-diff.d.ts +54 -0
  21. package/dist/security-diff.d.ts.map +1 -0
  22. package/dist/security-diff.js +78 -0
  23. package/dist/security-diff.js.map +1 -0
  24. package/dist/security-policy-inventory.d.ts +55 -0
  25. package/dist/security-policy-inventory.d.ts.map +1 -0
  26. package/dist/security-policy-inventory.js +172 -0
  27. package/dist/security-policy-inventory.js.map +1 -0
  28. package/dist/security-policy.d.ts +32 -0
  29. package/dist/security-policy.d.ts.map +1 -0
  30. package/dist/security-policy.js +269 -0
  31. package/dist/security-policy.js.map +1 -0
  32. package/dist/security-posture.d.ts +35 -0
  33. package/dist/security-posture.d.ts.map +1 -0
  34. package/dist/security-posture.js +108 -0
  35. package/dist/security-posture.js.map +1 -0
  36. package/dist/types.d.ts +2 -0
  37. package/dist/types.d.ts.map +1 -1
  38. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -6,6 +6,20 @@ This project follows the spirit of [Keep a Changelog](https://keepachangelog.com
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.9.0] - 2026-07-03
10
+
11
+ ### Added
12
+
13
+ - Added security posture summaries to readiness and CI reports, derived from existing security findings and `riskClass` metadata.
14
+ - Added effective security policy inventory summaries for readiness and CI reporting, derived from asset policy metadata, security profiles, and repository security config.
15
+ - Added security-aware semantic diff summaries that compare security finding posture and effective policy inventory across revisions.
16
+
17
+ ### Changed
18
+
19
+ - Kept security posture reporting non-gating in v1; readiness score, readiness level, scan `fail_on`, and CI status semantics remain unchanged.
20
+ - Kept policy inventory reporting non-gating in v1; scan `fail_on`, readiness score/level, and CI status semantics remain unchanged.
21
+ - Kept security-aware diff reporting non-gating in v1; scan `fail_on`, readiness score/level, and CI status semantics remain unchanged.
22
+
9
23
  ## [0.8.1] - 2026-07-03
10
24
 
11
25
  ### Added
@@ -145,7 +159,8 @@ Tag-only release. No GitHub Release entry was published for this version.
145
159
  - Added metadata governance, advisory diagnostics, local path checks, and semantic split suggestions.
146
160
  - Added the initial project documentation, architecture notes, package metadata, tests, and license.
147
161
 
148
- [Unreleased]: https://github.com/KazuCocoa/renma/compare/v0.8.1...HEAD
162
+ [Unreleased]: https://github.com/KazuCocoa/renma/compare/v0.9.0...HEAD
163
+ [0.9.0]: https://github.com/KazuCocoa/renma/compare/v0.8.1...v0.9.0
149
164
  [0.8.1]: https://github.com/KazuCocoa/renma/compare/v0.8.0...v0.8.1
150
165
  [0.8.0]: https://github.com/KazuCocoa/renma/compare/v0.7.0...v0.8.0
151
166
  [0.7.0]: https://github.com/KazuCocoa/renma/compare/v0.6.1...v0.7.0
@@ -1,4 +1,5 @@
1
1
  import { type DiffReport, type DiffFormat } from "./diff.js";
2
+ import { type SecurityPostureSummary } from "../security-posture.js";
2
3
  import type { ConfigOverrides } from "../config.js";
3
4
  export type CiReportFormat = DiffFormat;
4
5
  export type CiReportStatus = "pass" | "warn" | "fail";
@@ -8,6 +9,10 @@ export interface CiReport {
8
9
  to: DiffReport["to"];
9
10
  status: CiReportStatus;
10
11
  summary: DiffReport["summary"];
12
+ securityPosture: {
13
+ added: SecurityPostureSummary;
14
+ resolved: SecurityPostureSummary;
15
+ };
11
16
  notes: string[];
12
17
  diff: DiffReport;
13
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ci-report.d.ts","sourceRoot":"","sources":["../../src/commands/ci-report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AACxC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAiBD,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GAAG;IAAE,MAAM,EAAE,cAAc,CAAA;CAAE,GACpD,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,QAAQ,CAAC,CAYnB;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,cAAc,GACrB,MAAM,CAGR;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAkB1E"}
1
+ {"version":3,"file":"ci-report.d.ts","sourceRoot":"","sources":["../../src/commands/ci-report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,wBAAwB,CAAC;AAShC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AACxC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC/B,eAAe,EAAE;QACf,KAAK,EAAE,sBAAsB,CAAC;QAC9B,QAAQ,EAAE,sBAAsB,CAAC;KAClC,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAiBD,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GAAG;IAAE,MAAM,EAAE,cAAc,CAAA;CAAE,GACpD,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,QAAQ,CAAC,CAiBnB;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,cAAc,GACrB,MAAM,CAGR;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAkB1E"}
@@ -1,4 +1,7 @@
1
1
  import { diff } from "./diff.js";
2
+ import { summarizeSecurityPosture, } from "../security-posture.js";
3
+ import { buildSecurityDiffSummary, } from "../security-diff.js";
4
+ import { zeroSecurityPolicyInventorySummary, } from "../security-policy-inventory.js";
2
5
  const MAX_LIST_ITEMS = 10;
3
6
  export async function runCiReportCommand(targetPath, options) {
4
7
  const report = await ciReport(targetPath, options);
@@ -8,13 +11,18 @@ export async function runCiReportCommand(targetPath, options) {
8
11
  export async function ciReport(targetPath, options) {
9
12
  const report = await diff(targetPath, options);
10
13
  const status = determineCiReportStatus(report);
14
+ const securityPosture = {
15
+ added: summarizeSecurityPosture(report.findings.added),
16
+ resolved: summarizeSecurityPosture(report.findings.removed),
17
+ };
11
18
  return {
12
19
  root: report.root,
13
20
  from: report.from,
14
21
  to: report.to,
15
22
  status,
16
23
  summary: report.summary,
17
- notes: reviewNotes(report, status),
24
+ securityPosture,
25
+ notes: reviewNotes(report, status, securityPosture.added),
18
26
  diff: report,
19
27
  };
20
28
  }
@@ -48,7 +56,7 @@ function newUnresolvedRequiredEdgeCount(report) {
48
56
  function isRequiredEdge(edge) {
49
57
  return edge.kind === "required" || edge.kind === "requires";
50
58
  }
51
- function reviewNotes(report, status) {
59
+ function reviewNotes(report, status, addedSecurityPosture) {
52
60
  const notes = [];
53
61
  if (hasNewUnresolvedRequiredEdge(report)) {
54
62
  notes.push("Review new unresolved required edges before merge.");
@@ -56,6 +64,12 @@ function reviewNotes(report, status) {
56
64
  if (hasNewHighOrCriticalFinding(report)) {
57
65
  notes.push("Review new high or critical findings before merge.");
58
66
  }
67
+ if (addedSecurityPosture.riskClasses.violation > 0) {
68
+ notes.push("Review new security violations before merge.");
69
+ }
70
+ if (addedSecurityPosture.riskClasses.suspicious > 0) {
71
+ notes.push("Review new suspicious security findings before merge.");
72
+ }
59
73
  if (report.summary.readinessScoreDelta < 0) {
60
74
  notes.push("Readiness score decreased.");
61
75
  }
@@ -105,6 +119,18 @@ function formatCiReportMarkdown(report) {
105
119
  `- Added findings: ${report.diff.findings.added.length}`,
106
120
  `- Resolved findings: ${report.diff.findings.removed.length}`,
107
121
  "",
122
+ "## Security Posture",
123
+ "",
124
+ ...formatSecurityPostureSection(report.securityPosture),
125
+ "",
126
+ "## Security Changes",
127
+ "",
128
+ ...formatSecurityChangesSection(report.diff.security),
129
+ "",
130
+ "## Security Policy Inventory",
131
+ "",
132
+ ...formatSecurityPolicyInventorySection(report.to.securityPolicyInventory),
133
+ "",
108
134
  "## Scan Findings",
109
135
  "",
110
136
  ...formatFindingSection("Added", report.diff.findings.added),
@@ -121,6 +147,55 @@ function formatCiReportMarkdown(report) {
121
147
  ];
122
148
  return `${lines.join("\n")}\n`;
123
149
  }
150
+ function formatSecurityChangesSection(security) {
151
+ const { posture, policyInventory } = security ?? emptySecurityDiff();
152
+ return [
153
+ `- Added security findings: ${posture.added.totalSecurityFindings}`,
154
+ `- Resolved security findings: ${posture.resolved.totalSecurityFindings}`,
155
+ `- Added violations: ${posture.added.riskClasses.violation}`,
156
+ `- Added suspicious: ${posture.added.riskClasses.suspicious}`,
157
+ `- Added advisory: ${posture.added.riskClasses.advisory}`,
158
+ `- Policy assets: ${formatDelta(policyInventory.totalPolicyAssets)}`,
159
+ `- Assets with policy metadata: ${formatDelta(policyInventory.assetsWithPolicyMetadata)}`,
160
+ `- Assets missing policy metadata: ${formatDelta(policyInventory.assetsMissingPolicyMetadata)}`,
161
+ `- Missing security profiles: ${formatDelta(policyInventory.securityProfiles.missing)}`,
162
+ ];
163
+ }
164
+ function emptySecurityDiff() {
165
+ return buildSecurityDiffSummary({
166
+ addedFindings: [],
167
+ removedFindings: [],
168
+ });
169
+ }
170
+ function formatSecurityPostureSection(report) {
171
+ const { added, resolved } = report;
172
+ if (added.totalSecurityFindings === 0 &&
173
+ resolved.totalSecurityFindings === 0) {
174
+ return ["- No added or resolved security findings."];
175
+ }
176
+ return [
177
+ `- Added security findings: ${added.totalSecurityFindings}`,
178
+ `- Added violations: ${added.riskClasses.violation}`,
179
+ `- Added suspicious: ${added.riskClasses.suspicious}`,
180
+ `- Added advisory: ${added.riskClasses.advisory}`,
181
+ `- Added high/critical security findings: ${added.highOrCritical}`,
182
+ `- Resolved security findings: ${resolved.totalSecurityFindings}`,
183
+ `- Resolved violations: ${resolved.riskClasses.violation}`,
184
+ `- Resolved suspicious: ${resolved.riskClasses.suspicious}`,
185
+ `- Resolved advisory: ${resolved.riskClasses.advisory}`,
186
+ ];
187
+ }
188
+ function formatSecurityPolicyInventorySection(inventory) {
189
+ const target = inventory ?? zeroSecurityPolicyInventorySummary();
190
+ return [
191
+ `- Target assets with policy metadata: ${target.assetsWithPolicyMetadata}`,
192
+ `- Target assets missing policy metadata: ${target.assetsMissingPolicyMetadata}`,
193
+ `- Target referenced security profiles: ${target.securityProfiles.referenced}`,
194
+ `- Target missing security profiles: ${target.securityProfiles.missing}`,
195
+ `- Target approved network destinations: ${target.approvedNetworkDestinationCount}`,
196
+ `- Target approved upload destinations: ${target.approvedUploadDestinationCount}`,
197
+ ];
198
+ }
124
199
  function formatDelta(value) {
125
200
  if (value > 0)
126
201
  return `+${value}`;
@@ -1 +1 @@
1
- {"version":3,"file":"ci-report.js","sourceRoot":"","sources":["../../src/commands/ci-report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ci-report.js","sourceRoot":"","sources":["../../src/commands/ci-report.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import { type GraphReport } from "./graph.js";
2
2
  import { type ReadinessReport } from "./readiness.js";
3
+ import { type SecurityDiffSummary } from "../security-diff.js";
4
+ import type { SecurityPolicyInventorySummary } from "../security-policy-inventory.js";
3
5
  import type { ConfigOverrides } from "../config.js";
4
6
  export type DiffFormat = "json" | "markdown";
5
7
  export interface DiffReport {
@@ -29,6 +31,7 @@ export interface DiffReport {
29
31
  readiness: {
30
32
  checkChanges: ReadinessCheckChange[];
31
33
  };
34
+ security: SecurityDiffSummary;
32
35
  findings: {
33
36
  added: FindingDelta[];
34
37
  removed: FindingDelta[];
@@ -46,6 +49,7 @@ interface DiffEndpoint {
46
49
  totalAssets: number;
47
50
  readinessScore: number;
48
51
  readinessLevel: string;
52
+ securityPolicyInventory?: SecurityPolicyInventorySummary;
49
53
  }
50
54
  interface AssetDelta {
51
55
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../src/commands/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../src/commands/diff.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { promisify } from "node:util";
5
5
  import { execFile as execFileCallback } from "node:child_process";
6
6
  import { graph } from "./graph.js";
7
7
  import { readiness } from "./readiness.js";
8
+ import { buildSecurityDiffSummary, } from "../security-diff.js";
8
9
  const execFile = promisify(execFileCallback);
9
10
  export async function runDiffCommand(targetPath, options) {
10
11
  const report = await diff(targetPath, options);
@@ -63,10 +64,18 @@ export function buildDiffReport(root, fromSnapshot, toSnapshot) {
63
64
  const toAssets = assetMap(toSnapshot.graph.nodes);
64
65
  const fromEdges = edgeMap(fromSnapshot.graph.edges);
65
66
  const toEdges = edgeMap(toSnapshot.graph.edges);
67
+ const fromEndpoint = endpoint(fromSnapshot);
68
+ const toEndpoint = endpoint(toSnapshot);
69
+ const addedFindings = [...toFindings]
70
+ .filter(([key]) => !fromFindings.has(key))
71
+ .map(([, finding]) => finding);
72
+ const removedFindings = [...fromFindings]
73
+ .filter(([key]) => !toFindings.has(key))
74
+ .map(([, finding]) => finding);
66
75
  return {
67
76
  root,
68
- from: endpoint(fromSnapshot),
69
- to: endpoint(toSnapshot),
77
+ from: fromEndpoint,
78
+ to: toEndpoint,
70
79
  summary: {
71
80
  readinessScoreDelta: delta(toReadiness.score, fromReadiness.score),
72
81
  readinessLevelChanged: fromReadiness.level !== toReadiness.level,
@@ -108,13 +117,15 @@ export function buildDiffReport(root, fromSnapshot, toSnapshot) {
108
117
  readiness: {
109
118
  checkChanges: checkChanges(fromReadiness.checks, toReadiness.checks),
110
119
  },
120
+ security: buildSecurityDiffSummary({
121
+ addedFindings,
122
+ removedFindings,
123
+ fromPolicyInventory: fromEndpoint.securityPolicyInventory,
124
+ toPolicyInventory: toEndpoint.securityPolicyInventory,
125
+ }),
111
126
  findings: {
112
- added: [...toFindings]
113
- .filter(([key]) => !fromFindings.has(key))
114
- .map(([, finding]) => finding),
115
- removed: [...fromFindings]
116
- .filter(([key]) => !toFindings.has(key))
117
- .map(([, finding]) => finding),
127
+ added: addedFindings,
128
+ removed: removedFindings,
118
129
  countById: countById(fromReadiness.findings ?? [], toReadiness.findings ?? []),
119
130
  },
120
131
  };
@@ -169,12 +180,46 @@ function formatDiffMarkdown(report) {
169
180
  lines.push("", "### New unresolved edges", "");
170
181
  lines.push(...markdownList(report.graph.newUnresolvedEdges, (edge) => `${edge.source} --${edge.kind}--> ${edge.target}`));
171
182
  }
183
+ lines.push("", "## Security Changes", "");
184
+ lines.push(...formatSecurityChanges(report.security));
172
185
  if (report.findings.added.length > 0) {
173
186
  lines.push("", "### Added findings", "");
174
187
  lines.push(...markdownList(report.findings.added, formatFindingDelta));
175
188
  }
176
189
  return `${lines.join("\n")}\n`;
177
190
  }
191
+ function formatSecurityChanges(security) {
192
+ const { posture, policyInventory } = security ??
193
+ buildSecurityDiffSummary({
194
+ addedFindings: [],
195
+ removedFindings: [],
196
+ });
197
+ return [
198
+ `- Added security findings: ${posture.added.totalSecurityFindings}`,
199
+ `- Resolved security findings: ${posture.resolved.totalSecurityFindings}`,
200
+ `- Added violations: ${posture.added.riskClasses.violation}`,
201
+ `- Added suspicious: ${posture.added.riskClasses.suspicious}`,
202
+ `- Added advisory: ${posture.added.riskClasses.advisory}`,
203
+ `- Resolved violations: ${posture.resolved.riskClasses.violation}`,
204
+ `- Resolved suspicious: ${posture.resolved.riskClasses.suspicious}`,
205
+ `- Resolved advisory: ${posture.resolved.riskClasses.advisory}`,
206
+ `- Policy assets: ${formatSignedNumber(policyInventory.totalPolicyAssets)}`,
207
+ `- Assets with policy metadata: ${formatSignedNumber(policyInventory.assetsWithPolicyMetadata)}`,
208
+ `- Assets missing policy metadata: ${formatSignedNumber(policyInventory.assetsMissingPolicyMetadata)}`,
209
+ `- Network allowed: ${formatSignedNumber(policyInventory.networkAllowed.true)}`,
210
+ `- Network denied: ${formatSignedNumber(policyInventory.networkAllowed.false)}`,
211
+ `- Upload allowed: ${formatSignedNumber(policyInventory.externalUploadAllowed.true)}`,
212
+ `- Upload denied: ${formatSignedNumber(policyInventory.externalUploadAllowed.false)}`,
213
+ `- Secrets allowed: ${formatSignedNumber(policyInventory.secretsAllowed.true)}`,
214
+ `- Secrets denied: ${formatSignedNumber(policyInventory.secretsAllowed.false)}`,
215
+ `- Human approval required: ${formatSignedNumber(policyInventory.humanApprovalRequired.true)}`,
216
+ `- Approved network destinations: ${formatSignedNumber(policyInventory.approvedNetworkDestinationCount)}`,
217
+ `- Approved upload destinations: ${formatSignedNumber(policyInventory.approvedUploadDestinationCount)}`,
218
+ `- Forbidden inputs: ${formatSignedNumber(policyInventory.forbiddenInputCount)}`,
219
+ `- Missing security profiles: ${formatSignedNumber(policyInventory.securityProfiles.missing)}`,
220
+ `- Cyclic security profiles: ${formatSignedNumber(policyInventory.securityProfiles.cyclic)}`,
221
+ ];
222
+ }
178
223
  function formatFindingDelta(finding) {
179
224
  const location = finding.evidence?.path ? ` at ${finding.evidence.path}` : "";
180
225
  if (!finding.riskClass) {
@@ -213,6 +258,7 @@ function endpoint(snapshot) {
213
258
  totalAssets: snapshot.readiness.summary.totalAssets,
214
259
  readinessScore: snapshot.readiness.score,
215
260
  readinessLevel: snapshot.readiness.level,
261
+ securityPolicyInventory: snapshot.readiness.summary.securityPolicyInventory,
216
262
  };
217
263
  }
218
264
  function changedAssets(fromAssets, toAssets) {
@@ -405,6 +451,9 @@ function delta(to, from) {
405
451
  function signed(value) {
406
452
  return value > 0 ? `+${value}` : String(value);
407
453
  }
454
+ function formatSignedNumber(value) {
455
+ return value >= 0 ? `+${value}` : String(value);
456
+ }
408
457
  function markdownList(items, render) {
409
458
  return items.length === 0
410
459
  ? ["- (none)"]
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/commands/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/commands/diff.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { type GraphReport } from "./graph.js";
2
+ import { type SecurityPostureSummary } from "../security-posture.js";
3
+ import { type SecurityPolicyInventorySummary } from "../security-policy-inventory.js";
2
4
  import type { ConfigOverrides } from "../config.js";
3
5
  import type { Diagnostic, Finding } from "../types.js";
4
6
  export type ReadinessFormat = "json" | "markdown";
@@ -35,6 +37,8 @@ export interface ReadinessReport {
35
37
  info: number;
36
38
  };
37
39
  workflow: WorkflowReadinessSummary;
40
+ securityPosture: SecurityPostureSummary;
41
+ securityPolicyInventory: SecurityPolicyInventorySummary;
38
42
  };
39
43
  checks: ReadinessCheck[];
40
44
  diagnostics?: Diagnostic[];
@@ -57,7 +61,7 @@ export declare function runReadinessCommand(targetPath: string, options: {
57
61
  overrides?: ConfigOverrides;
58
62
  }): Promise<number>;
59
63
  export declare function readiness(targetPath: string, overrides?: ConfigOverrides): Promise<ReadinessReport>;
60
- export declare function buildReadinessReport(graphReport: GraphReport, findings?: Finding[], diagnostics?: Diagnostic[]): ReadinessReport;
64
+ export declare function buildReadinessReport(graphReport: GraphReport, findings?: Finding[], diagnostics?: Diagnostic[], securityPolicyInventory?: SecurityPolicyInventorySummary): ReadinessReport;
61
65
  export declare function formatReadinessJson(report: ReadinessReport): string;
62
66
  export declare function formatReadinessMarkdown(report: ReadinessReport): string;
63
67
  export declare function formatReadiness(report: ReadinessReport, format: ReadinessFormat): string;
@@ -1 +1 @@
1
- {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../../src/commands/readiness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../../src/commands/readiness.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { graph } from "./graph.js";
2
2
  import { DIAGNOSTIC_IDS } from "../diagnostic-ids.js";
3
3
  import { scan } from "../scanner.js";
4
+ import { summarizeSecurityPosture, } from "../security-posture.js";
5
+ import { zeroSecurityPolicyInventorySummary, } from "../security-policy-inventory.js";
4
6
  const MARKDOWN_FINDINGS_LIMIT = 50;
5
7
  const WORKFLOW_CLARITY_FINDING_IDS = new Set([
6
8
  DIAGNOSTIC_IDS.QUAL_MISSING_DESCRIPTION,
@@ -28,9 +30,9 @@ export async function readiness(targetPath, overrides = {}) {
28
30
  graph(targetPath, overrides),
29
31
  scan(targetPath, overrides),
30
32
  ]);
31
- return buildReadinessReport(graphReport, scanResult.findings, scanResult.diagnostics);
33
+ return buildReadinessReport(graphReport, scanResult.findings, scanResult.diagnostics, scanResult.securityPolicyInventory);
32
34
  }
33
- export function buildReadinessReport(graphReport, findings = [], diagnostics = graphReport.diagnostics ?? []) {
35
+ export function buildReadinessReport(graphReport, findings = [], diagnostics = graphReport.diagnostics ?? [], securityPolicyInventory = zeroSecurityPolicyInventorySummary()) {
34
36
  const diagnosticCounts = countDiagnostics(diagnostics);
35
37
  const totalAssets = graphReport.nodes.length;
36
38
  const ownedAssets = graphReport.nodes.filter((node) => hasOwner(node.owner)).length;
@@ -105,6 +107,7 @@ export function buildReadinessReport(graphReport, findings = [], diagnostics = g
105
107
  const hasFailingCheck = checks.some((check) => check.status === "fail");
106
108
  const level = readinessLevel(score, hasFailingCheck);
107
109
  const workflow = workflowSummary(graphReport, checks);
110
+ const securityPosture = summarizeSecurityPosture(findings);
108
111
  return {
109
112
  root: graphReport.root,
110
113
  ...(graphReport.configPath ? { configPath: graphReport.configPath } : {}),
@@ -123,6 +126,8 @@ export function buildReadinessReport(graphReport, findings = [], diagnostics = g
123
126
  graphResolutionPercent,
124
127
  diagnosticCounts,
125
128
  workflow,
129
+ securityPosture,
130
+ securityPolicyInventory,
126
131
  },
127
132
  checks,
128
133
  ...(diagnostics.length > 0 ? { diagnostics } : {}),
@@ -169,6 +174,14 @@ export function formatReadinessMarkdown(report) {
169
174
  `| Diagnostic warnings | ${report.summary.diagnosticCounts.warning} |`,
170
175
  `| Diagnostic info | ${report.summary.diagnosticCounts.info} |`,
171
176
  "",
177
+ "## Security Posture",
178
+ "",
179
+ ...formatSecurityPostureMarkdown(report.summary.securityPosture),
180
+ "",
181
+ "## Security Policy Inventory",
182
+ "",
183
+ ...formatSecurityPolicyInventoryMarkdown(report.summary.securityPolicyInventory),
184
+ "",
172
185
  "## Workflow Readiness",
173
186
  "",
174
187
  "| Metric | Value |",
@@ -207,6 +220,57 @@ export function formatReadinessMarkdown(report) {
207
220
  }
208
221
  return `${lines.join("\n")}\n`;
209
222
  }
223
+ function formatSecurityPostureMarkdown(securityPosture) {
224
+ const lines = [
225
+ "| Metric | Value |",
226
+ "| --- | ---: |",
227
+ `| Security findings | ${securityPosture.totalSecurityFindings} |`,
228
+ `| Violations | ${securityPosture.riskClasses.violation} |`,
229
+ `| Suspicious | ${securityPosture.riskClasses.suspicious} |`,
230
+ `| Advisory | ${securityPosture.riskClasses.advisory} |`,
231
+ `| Unclassified security findings | ${securityPosture.riskClasses.unclassified} |`,
232
+ `| High/critical security findings | ${securityPosture.highOrCritical} |`,
233
+ ];
234
+ if (securityPosture.topFindingIds.length > 0) {
235
+ lines.push("", "### Top security findings", "", ...securityPosture.topFindingIds.map((finding) => `- ${finding.id}: ${finding.count} [${finding.riskClass ?? "unclassified"}, ${finding.maxSeverity}]`));
236
+ }
237
+ return lines;
238
+ }
239
+ function formatSecurityPolicyInventoryMarkdown(inventory) {
240
+ const lines = [
241
+ "| Metric | Value |",
242
+ "| --- | ---: |",
243
+ `| Policy assets | ${inventory.totalPolicyAssets} |`,
244
+ `| Assets with policy metadata | ${inventory.assetsWithPolicyMetadata} |`,
245
+ `| Assets missing policy metadata | ${inventory.assetsMissingPolicyMetadata} |`,
246
+ `| Network allowed | ${inventory.networkAllowed.true} |`,
247
+ `| Network denied | ${inventory.networkAllowed.false} |`,
248
+ `| Network unspecified | ${inventory.networkAllowed.unspecified} |`,
249
+ `| Upload allowed | ${inventory.externalUploadAllowed.true} |`,
250
+ `| Upload denied | ${inventory.externalUploadAllowed.false} |`,
251
+ `| Upload unspecified | ${inventory.externalUploadAllowed.unspecified} |`,
252
+ `| Secrets allowed | ${inventory.secretsAllowed.true} |`,
253
+ `| Secrets denied | ${inventory.secretsAllowed.false} |`,
254
+ `| Secrets unspecified | ${inventory.secretsAllowed.unspecified} |`,
255
+ `| Human approval required | ${inventory.humanApprovalRequired.true} |`,
256
+ `| Approved network destinations | ${inventory.approvedNetworkDestinationCount} |`,
257
+ `| Approved upload destinations | ${inventory.approvedUploadDestinationCount} |`,
258
+ `| Forbidden inputs | ${inventory.forbiddenInputCount} |`,
259
+ `| Referenced security profiles | ${inventory.securityProfiles.referenced} |`,
260
+ `| Missing security profiles | ${inventory.securityProfiles.missing} |`,
261
+ `| Cyclic security profiles | ${inventory.securityProfiles.cyclic} |`,
262
+ ];
263
+ if (inventory.topApprovedNetworkDestinations.length > 0) {
264
+ lines.push("", "### Top approved network destinations", "", ...inventory.topApprovedNetworkDestinations.map((item) => `- ${item.destination}: ${item.count}`));
265
+ }
266
+ if (inventory.topApprovedUploadDestinations.length > 0) {
267
+ lines.push("", "### Top approved upload destinations", "", ...inventory.topApprovedUploadDestinations.map((item) => `- ${item.destination}: ${item.count}`));
268
+ }
269
+ if (inventory.topForbiddenInputs.length > 0) {
270
+ lines.push("", "### Top forbidden inputs", "", ...inventory.topForbiddenInputs.map((item) => `- ${item.input}: ${item.count}`));
271
+ }
272
+ return lines;
273
+ }
210
274
  export function formatReadiness(report, format) {
211
275
  return format === "json"
212
276
  ? formatReadinessJson(report)