@ploaness/governance 1.6.0 → 1.8.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 (107) hide show
  1. package/dist/compliance-report-assets.d.ts +20 -0
  2. package/dist/compliance-report-assets.d.ts.map +1 -0
  3. package/dist/compliance-report-assets.js +230 -0
  4. package/dist/compliance-report-assets.js.map +1 -0
  5. package/dist/compliance-report-html.d.ts +18 -0
  6. package/dist/compliance-report-html.d.ts.map +1 -0
  7. package/dist/compliance-report-html.js +365 -0
  8. package/dist/compliance-report-html.js.map +1 -0
  9. package/dist/compliance-report-markup.d.ts +62 -0
  10. package/dist/compliance-report-markup.d.ts.map +1 -0
  11. package/dist/compliance-report-markup.js +118 -0
  12. package/dist/compliance-report-markup.js.map +1 -0
  13. package/dist/compliance-report-outline.d.ts +32 -0
  14. package/dist/compliance-report-outline.d.ts.map +1 -0
  15. package/dist/compliance-report-outline.js +124 -0
  16. package/dist/compliance-report-outline.js.map +1 -0
  17. package/dist/compliance-report.d.ts +136 -0
  18. package/dist/compliance-report.d.ts.map +1 -0
  19. package/dist/compliance-report.js +241 -0
  20. package/dist/compliance-report.js.map +1 -0
  21. package/dist/container-freshness.d.ts +2 -0
  22. package/dist/container-freshness.d.ts.map +1 -1
  23. package/dist/container-freshness.js +10 -5
  24. package/dist/container-freshness.js.map +1 -1
  25. package/dist/container-images.d.ts.map +1 -1
  26. package/dist/container-images.js +3 -4
  27. package/dist/container-images.js.map +1 -1
  28. package/dist/file-roles.d.ts +3 -3
  29. package/dist/file-roles.d.ts.map +1 -1
  30. package/dist/file-roles.js +10 -6
  31. package/dist/file-roles.js.map +1 -1
  32. package/dist/generated-denial.d.ts +2 -0
  33. package/dist/generated-denial.d.ts.map +1 -1
  34. package/dist/generated-denial.js +8 -6
  35. package/dist/generated-denial.js.map +1 -1
  36. package/dist/index.d.ts +11 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +11 -0
  39. package/dist/index.js.map +1 -1
  40. package/dist/license-allowlist.d.ts +14 -0
  41. package/dist/license-allowlist.d.ts.map +1 -1
  42. package/dist/license-allowlist.js +28 -9
  43. package/dist/license-allowlist.js.map +1 -1
  44. package/dist/license-inventory.d.ts +25 -0
  45. package/dist/license-inventory.d.ts.map +1 -0
  46. package/dist/license-inventory.js +41 -0
  47. package/dist/license-inventory.js.map +1 -0
  48. package/dist/oxlint-policy.d.ts +1 -1
  49. package/dist/oxlint-policy.d.ts.map +1 -1
  50. package/dist/oxlint-policy.js +10 -3
  51. package/dist/oxlint-policy.js.map +1 -1
  52. package/dist/oxlint-scope.d.ts +2 -2
  53. package/dist/oxlint-scope.d.ts.map +1 -1
  54. package/dist/oxlint-scope.js +13 -4
  55. package/dist/oxlint-scope.js.map +1 -1
  56. package/dist/payload-access.d.ts.map +1 -1
  57. package/dist/payload-access.js +11 -3
  58. package/dist/payload-access.js.map +1 -1
  59. package/dist/payload-defaults.d.ts +2 -0
  60. package/dist/payload-defaults.d.ts.map +1 -1
  61. package/dist/payload-defaults.js +6 -2
  62. package/dist/payload-defaults.js.map +1 -1
  63. package/dist/payload-field-access.js +1 -1
  64. package/dist/payload-field-access.js.map +1 -1
  65. package/dist/payload-security.d.ts +20 -0
  66. package/dist/payload-security.d.ts.map +1 -0
  67. package/dist/payload-security.js +88 -0
  68. package/dist/payload-security.js.map +1 -0
  69. package/dist/pdf-outline.d.ts +7 -0
  70. package/dist/pdf-outline.d.ts.map +1 -0
  71. package/dist/pdf-outline.js +69 -0
  72. package/dist/pdf-outline.js.map +1 -0
  73. package/dist/production-server.d.ts +11 -0
  74. package/dist/production-server.d.ts.map +1 -0
  75. package/dist/production-server.js +17 -0
  76. package/dist/production-server.js.map +1 -0
  77. package/dist/run-plan.d.ts +4 -0
  78. package/dist/run-plan.d.ts.map +1 -1
  79. package/dist/run-plan.js +4 -0
  80. package/dist/run-plan.js.map +1 -1
  81. package/dist/sbom-policy.d.ts +38 -0
  82. package/dist/sbom-policy.d.ts.map +1 -0
  83. package/dist/sbom-policy.js +255 -0
  84. package/dist/sbom-policy.js.map +1 -0
  85. package/dist/sbom-release.d.ts +16 -0
  86. package/dist/sbom-release.d.ts.map +1 -0
  87. package/dist/sbom-release.js +36 -0
  88. package/dist/sbom-release.js.map +1 -0
  89. package/dist/security-headers.d.ts +3 -0
  90. package/dist/security-headers.d.ts.map +1 -0
  91. package/dist/security-headers.js +26 -0
  92. package/dist/security-headers.js.map +1 -0
  93. package/dist/settings.d.ts +1 -1
  94. package/dist/settings.d.ts.map +1 -1
  95. package/dist/settings.js +24 -2
  96. package/dist/settings.js.map +1 -1
  97. package/dist/toolchain-pins.d.ts +3 -3
  98. package/dist/toolchain-pins.d.ts.map +1 -1
  99. package/dist/toolchain-pins.js +6 -5
  100. package/dist/toolchain-pins.js.map +1 -1
  101. package/dist/version-policy.js +3 -3
  102. package/dist/version-policy.js.map +1 -1
  103. package/dist/vulnerability-policy.d.ts +24 -0
  104. package/dist/vulnerability-policy.d.ts.map +1 -1
  105. package/dist/vulnerability-policy.js +33 -6
  106. package/dist/vulnerability-policy.js.map +1 -1
  107. package/package.json +1 -1
@@ -0,0 +1,255 @@
1
+ // A release inventory is evidence only when its inputs, components and graph are accounted for.
2
+ import path from 'node:path';
3
+ import { asRecord, asText, isArray, isRecord, readKey } from './json-shapes.js';
4
+ import { coordinateOf } from './license-inventory.js';
5
+ const OPTION_PAIR = 2;
6
+ /** Parse the deliberately small release-inventory command grammar. */
7
+ export const parseSbomArguments = (arguments_) => {
8
+ if (arguments_.length % OPTION_PAIR !== 0) {
9
+ return undefined;
10
+ }
11
+ const pairs = Array.from({ length: arguments_.length / OPTION_PAIR }, (_, index) => [arguments_[index * OPTION_PAIR], arguments_[index * OPTION_PAIR + 1]]);
12
+ if (pairs.some(([key = '', value]) => !['--artifact', '--output'].includes(key) || value === undefined || value.length === 0 || value.startsWith('-'))) {
13
+ return undefined;
14
+ }
15
+ const artifacts = pairs.filter(([key]) => key === '--artifact').map(([, value = '']) => value);
16
+ const outputs = pairs.filter(([key]) => key === '--output').map(([, value = '']) => value);
17
+ return artifacts.length === 0 || new Set(artifacts).size !== artifacts.length || outputs.length > 1
18
+ ? undefined
19
+ : { artifacts, output: outputs[0] ?? 'dist/sbom' };
20
+ };
21
+ /** Stable structural comparison of lockfile documents, independent of YAML key ordering. */
22
+ export const canonicalInventory = (value) => {
23
+ if (isArray(value)) {
24
+ return `[${value.map((entry) => canonicalInventory(entry)).join(',')}]`;
25
+ }
26
+ if (isRecord(value)) {
27
+ return `{${Object.keys(value)
28
+ .sort((left, right) => left.localeCompare(right, 'en'))
29
+ .map((key) => `${JSON.stringify(key)}:${canonicalInventory(value[key])}`)
30
+ .join(',')}}`;
31
+ }
32
+ return value === undefined ? 'null' : JSON.stringify(value);
33
+ };
34
+ const DEPENDENCY_GROUPS = ['dependencies', 'devDependencies', 'optionalDependencies'];
35
+ const FILE_PROTOCOL = 'file:';
36
+ const isAbsolutePath = (value) => path.posix.isAbsolute(value) || path.win32.isAbsolute(value);
37
+ // pnpm addresses a relative archive override from the workspace root, but writes each importer's
38
+ // specifier relative to that member. Compare their lexical targets without reading the filesystem.
39
+ const matchesOverride = (override, locked, importer) => {
40
+ if (typeof override !== 'string' || !override.startsWith(FILE_PROTOCOL)) {
41
+ return locked === override;
42
+ }
43
+ const target = override.slice(FILE_PROTOCOL.length);
44
+ if (isAbsolutePath(target)) {
45
+ return locked === override;
46
+ }
47
+ if (typeof locked !== 'string' || !locked.startsWith(FILE_PROTOCOL)) {
48
+ return false;
49
+ }
50
+ const memberTarget = locked.slice(FILE_PROTOCOL.length);
51
+ return (!isAbsolutePath(memberTarget) &&
52
+ path.posix.normalize(path.posix.join(importer, memberTarget)) === path.posix.normalize(target));
53
+ };
54
+ const manifestProblems = (manifest, lock) => {
55
+ const importers = readKey(lock, 'importers');
56
+ const overrides = asRecord(readKey(lock, 'overrides'));
57
+ const importer = readKey(importers, manifest.path);
58
+ if (!isRecord(importer)) {
59
+ return [`pnpm-lock.yaml has no importer for ${manifest.path}; install with the pinned pnpm`];
60
+ }
61
+ return DEPENDENCY_GROUPS.flatMap((group) => {
62
+ const declared = asRecord(readKey(manifest.packageJson, group));
63
+ const lockedGroup = asRecord(readKey(importer, group));
64
+ const names = [...new Set([...Object.keys(declared), ...Object.keys(lockedGroup)])];
65
+ return names.flatMap((name) => {
66
+ const specifier = declared[name];
67
+ const locked = lockedGroup[name];
68
+ const override = overrides[name] ?? overrides[`${name}@${String(specifier)}`];
69
+ const lockedSpecifier = readKey(locked, 'specifier');
70
+ const isMatched = override === undefined
71
+ ? lockedSpecifier === specifier
72
+ : matchesOverride(override, lockedSpecifier, manifest.path);
73
+ return isMatched && Object.hasOwn(declared, name)
74
+ ? []
75
+ : [`${manifest.path}: ${name} does not match its frozen lockfile specifier; install with the pinned pnpm`];
76
+ });
77
+ });
78
+ };
79
+ /** Reject a stale install or a manifest-only approximation before invoking the generator. */
80
+ export const sbomInputProblems = (manifests, lock, installed, workspace = {}) => {
81
+ if (!isRecord(lock) || (String(lock['lockfileVersion']) !== '9.0' && String(lock['lockfileVersion']) !== '9')) {
82
+ return ['SBOM generation requires a supported pnpm lockfile version 9'];
83
+ }
84
+ if (!isRecord(installed)) {
85
+ return ['the installed pnpm lock snapshot is missing'];
86
+ }
87
+ const isMatched = ['importers', 'packages', 'snapshots'].every((key) => canonicalInventory(readKey(lock, key)) === canonicalInventory(readKey(installed, key)));
88
+ return [
89
+ ...(canonicalInventory(asRecord(readKey(lock, 'overrides'))) ===
90
+ canonicalInventory(asRecord(readKey(workspace, 'overrides')))
91
+ ? []
92
+ : ['workspace overrides differ from the frozen lockfile; install with the pinned pnpm']),
93
+ ...(isMatched ? [] : ['the installed pnpm lock snapshot differs; run pnpm install --frozen-lockfile']),
94
+ ...manifests.flatMap((manifest) => manifestProblems(manifest, lock)),
95
+ ];
96
+ };
97
+ const allComponents = (components) => components.flatMap((component) => {
98
+ const nested = readKey(component, 'components');
99
+ return [component, ...(isArray(nested) ? allComponents(nested) : [])];
100
+ });
101
+ const graphProblems = (dependencies, references) => dependencies.flatMap((dependency) => {
102
+ const reference = readKey(dependency, 'ref');
103
+ const children = readKey(dependency, 'dependsOn');
104
+ const isValid = typeof reference === 'string' &&
105
+ references.has(reference) &&
106
+ isArray(children) &&
107
+ children.every((child) => typeof child === 'string' && references.has(child));
108
+ return isValid ? [] : ['the SBOM contains an invalid dependency reference'];
109
+ });
110
+ const missingGraphEntries = (dependencies, references) => {
111
+ const declared = new Set(dependencies.map((entry) => readKey(entry, 'ref')));
112
+ return declared.size === dependencies.length &&
113
+ [...references].every((reference) => declared.has(reference))
114
+ ? []
115
+ : ['the SBOM does not explicitly account for every component in its dependency graph'];
116
+ };
117
+ /** Preserve declared per-workspace usage without guessing transitive usage from source imports. */
118
+ export const sbomWithWorkspaceRoles = (bom, manifests) => {
119
+ const metadata = asRecord(readKey(bom, 'metadata'));
120
+ const properties = metadata['properties'];
121
+ const roles = manifests.map((manifest) => ({
122
+ path: manifest.path,
123
+ dependencies: Object.fromEntries(DEPENDENCY_GROUPS.map((group) => [
124
+ group,
125
+ Object.keys(asRecord(readKey(manifest.packageJson, group))),
126
+ ])),
127
+ }));
128
+ return {
129
+ ...asRecord(bom),
130
+ metadata: {
131
+ ...metadata,
132
+ properties: [
133
+ ...(isArray(properties) ? properties : []),
134
+ { name: 'ploaness:direct-workspace-dependency-roles', value: JSON.stringify(roles) },
135
+ ],
136
+ },
137
+ };
138
+ };
139
+ // An SPDX expression is ids joined by AND, OR and WITH, optionally grouped. Anything else - `UNLICENSED`,
140
+ // `SEE LICENSE IN LICENSE.md`, a free-text name - is recorded as a named licence, so the CycloneDX
141
+ // document never claims an expression the declared text is not.
142
+ const SPDX_ID = /^[A-Za-z0-9][A-Za-z0-9.-]*\+?$/u;
143
+ const SPDX_SEPARATORS = /([()])|\s+/u;
144
+ const SPDX_OPERATORS = new Set(['AND', 'OR', 'WITH']);
145
+ const NOT_AN_EXPRESSION = new Set(['UNLICENSED', 'UNKNOWN', 'NONE', 'NOASSERTION']);
146
+ const isOperand = (part) => SPDX_ID.test(part) && !SPDX_OPERATORS.has(part) && !NOT_AN_EXPRESSION.has(part.toUpperCase());
147
+ const PAIR = 2;
148
+ const depthChange = (part) => {
149
+ if (part === '(') {
150
+ return 1;
151
+ }
152
+ return part === ')' ? -1 : 0;
153
+ };
154
+ // Parentheses must balance, and between them the parts must alternate operand, operator, operand: four
155
+ // words in a row are a sentence, not an expression.
156
+ const isBalanced = (parts) => {
157
+ const depths = parts.reduce((seen, part) => [...seen, (seen.at(-1) ?? 0) + depthChange(part)], [0]);
158
+ return depths.every((depth) => depth >= 0) && depths.at(-1) === 0;
159
+ };
160
+ const isSpdxExpression = (license) => {
161
+ const parts = license
162
+ .split(SPDX_SEPARATORS)
163
+ .filter((part) => part !== undefined && part.length > 0);
164
+ const terms = parts.filter((part) => part !== '(' && part !== ')');
165
+ return (terms.length % PAIR === 1 &&
166
+ isBalanced(parts) &&
167
+ terms.every((part, index) => index % PAIR === 0 ? isOperand(part) : SPDX_OPERATORS.has(part)));
168
+ };
169
+ /**
170
+ * The CycloneDX licence choice for one declared licence.
171
+ * @param license the licence the installed package declares.
172
+ * @returns an SPDX expression when the text is one, otherwise a named licence.
173
+ */
174
+ export const cycloneLicenseOf = (license) => {
175
+ const declared = license.trim();
176
+ return [isSpdxExpression(declared) ? { expression: declared } : { license: { name: declared } }];
177
+ };
178
+ const componentCoordinate = (component) => {
179
+ const group = asText(readKey(component, 'group'));
180
+ const name = asText(readKey(component, 'name'));
181
+ return coordinateOf(group.length > 0 ? `${group}/${name}` : name, asText(readKey(component, 'version')));
182
+ };
183
+ const withDeclaredLicense = (component, licenses) => {
184
+ const nested = readKey(component, 'components');
185
+ const license = licenses.get(componentCoordinate(component));
186
+ return {
187
+ ...asRecord(component),
188
+ ...(license !== undefined && license.trim().length > 0 && { licenses: cycloneLicenseOf(license) }),
189
+ ...(isArray(nested) && {
190
+ components: nested.map((child) => withDeclaredLicense(child, licenses)),
191
+ }),
192
+ };
193
+ };
194
+ /**
195
+ * Record the licence each installed package declares on its SBOM component.
196
+ *
197
+ * The generator runs offline and without the installation, so it cannot read a licence itself. The
198
+ * values come from the same installed manifests the licence gate judges, which keeps the inventory and
199
+ * the verdict on one source; a component the installation does not report keeps whatever it carried.
200
+ * @param bom the generated CycloneDX document.
201
+ * @param licenses the declared licence by `name@version`.
202
+ * @returns the document with the licences recorded.
203
+ */
204
+ export const sbomWithDeclaredLicenses = (bom, licenses) => {
205
+ const components = readKey(bom, 'components');
206
+ return {
207
+ ...asRecord(bom),
208
+ ...(isArray(components) && {
209
+ components: components.map((component) => withDeclaredLicense(component, licenses)),
210
+ }),
211
+ };
212
+ };
213
+ const bomPartsOf = (bom) => {
214
+ const components = readKey(bom, 'components');
215
+ const dependencies = readKey(bom, 'dependencies');
216
+ const root = readKey(readKey(bom, 'metadata'), 'component');
217
+ if (readKey(bom, 'bomFormat') !== 'CycloneDX' ||
218
+ readKey(bom, 'specVersion') !== '1.6' ||
219
+ !isArray(components) ||
220
+ !isArray(dependencies) ||
221
+ !isRecord(root)) {
222
+ return undefined;
223
+ }
224
+ return { components, dependencies, root };
225
+ };
226
+ /** Additional completeness checks after the generator's pinned CycloneDX schema validation. */
227
+ export const sbomProblems = (bom) => {
228
+ const parts = bomPartsOf(bom);
229
+ if (parts === undefined) {
230
+ return ['the generator returned no complete CycloneDX 1.6 inventory'];
231
+ }
232
+ const { root, components, dependencies } = parts;
233
+ const entries = allComponents([root, ...components]);
234
+ const references = entries.map((entry) => readKey(entry, 'bom-ref'));
235
+ const isValid = entries.every((entry) => ['name', 'version', 'bom-ref', 'purl'].every((key) => {
236
+ const value = readKey(entry, key);
237
+ return typeof value === 'string' && value.length > 0;
238
+ }));
239
+ const references_ = new Set(references.filter((reference) => typeof reference === 'string'));
240
+ const compositions = readKey(bom, 'compositions');
241
+ return [
242
+ ...(isValid && references_.size === entries.length
243
+ ? []
244
+ : ['the SBOM has missing identities or duplicate component references']),
245
+ ...(dependencies.length === 0
246
+ ? ['the SBOM contains no dependency graph']
247
+ : graphProblems(dependencies, references_)),
248
+ ...missingGraphEntries(dependencies, references_),
249
+ ...(isArray(compositions) &&
250
+ compositions.some((entry) => readKey(entry, 'aggregate') !== 'complete')
251
+ ? ['the generator reports an incomplete inventory']
252
+ : []),
253
+ ];
254
+ };
255
+ //# sourceMappingURL=sbom-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sbom-policy.js","sourceRoot":"","sources":["../src/sbom-policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /** The inventory covers resolved workspace inputs, including tools that never enter a deployed bundle. */
2
+ export declare const SBOM_SCOPE: string;
3
+ /** One release file associated with an inventory, measured from its actual bytes. */
4
+ export interface ReleaseArtifact {
5
+ readonly path: string;
6
+ readonly sha256: string;
7
+ }
8
+ /** Evidence supplied independently from Git and the release files. */
9
+ export interface ReleaseEvidence {
10
+ readonly sourceCommit: string;
11
+ readonly sbomSha256: string;
12
+ readonly artifacts: readonly ReleaseArtifact[];
13
+ }
14
+ /** Recovery must preserve the original commit and the bytes originally associated with its SBOM. */
15
+ export declare const releaseInventoryProblems: (metadata: unknown, evidence: ReleaseEvidence) => readonly string[];
16
+ //# sourceMappingURL=sbom-release.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sbom-release.d.ts","sourceRoot":"","sources":["../src/sbom-release.ts"],"names":[],"mappings":"AAGA,0GAA0G;AAC1G,eAAO,MAAM,UAAU,EAAE,MAAgE,CAAA;AAEzF,qFAAqF;AACrF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAA;CAC/C;AA6BD,oGAAoG;AACpG,eAAO,MAAM,wBAAwB,GAAI,UAAU,OAAO,EAAE,UAAU,eAAe,KAAG,SAAS,MAAM,EActG,CAAA"}
@@ -0,0 +1,36 @@
1
+ import { isArray, readKey } from './json-shapes.js';
2
+ import { canonicalInventory } from './sbom-policy.js';
3
+ /** The inventory covers resolved workspace inputs, including tools that never enter a deployed bundle. */
4
+ export const SBOM_SCOPE = 'resolved-workspace-dependencies-including-development';
5
+ const artifactList = (raw) => {
6
+ if (!isArray(raw)) {
7
+ return undefined;
8
+ }
9
+ const items = raw.map((entry) => {
10
+ const path = readKey(entry, 'path');
11
+ const sha256 = readKey(entry, 'sha256');
12
+ return typeof path === 'string' && typeof sha256 === 'string' ? { path, sha256 } : undefined;
13
+ });
14
+ return items.every((entry) => entry !== undefined)
15
+ ? items
16
+ : undefined;
17
+ };
18
+ const orderedArtifacts = (artifacts) => canonicalInventory(artifacts.toSorted((left, right) => left.path.localeCompare(right.path, 'en')));
19
+ const matchesArtifacts = (artifacts, expected) => artifacts !== undefined && artifacts.length > 0 && orderedArtifacts(artifacts) === orderedArtifacts(expected);
20
+ /** Recovery must preserve the original commit and the bytes originally associated with its SBOM. */
21
+ export const releaseInventoryProblems = (metadata, evidence) => {
22
+ const artifacts = artifactList(readKey(metadata, 'artifacts'));
23
+ return [
24
+ ...(readKey(metadata, 'schemaVersion') === 1 && readKey(metadata, 'scope') === SBOM_SCOPE
25
+ ? []
26
+ : ['release inventory metadata has an unsupported schema or scope']),
27
+ ...(readKey(metadata, 'sourceCommit') === evidence.sourceCommit && readKey(metadata, 'sourceDirty') === false
28
+ ? []
29
+ : ['release inventory does not describe the original clean release commit']),
30
+ ...(readKey(metadata, 'sbomSha256') === evidence.sbomSha256 ? [] : ['release inventory SBOM hash does not match']),
31
+ ...(matchesArtifacts(artifacts, evidence.artifacts)
32
+ ? []
33
+ : ['release inventory artifact hashes do not match the release files']),
34
+ ];
35
+ };
36
+ //# sourceMappingURL=sbom-release.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sbom-release.js","sourceRoot":"","sources":["../src/sbom-release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAErD,0GAA0G;AAC1G,MAAM,CAAC,MAAM,UAAU,GAAW,uDAAuD,CAAA;AAezF,MAAM,YAAY,GAAG,CAAC,GAAY,EAA0C,EAAE;IAC5E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,KAAK,GAA6C,GAAG,CAAC,GAAG,CAAC,CAAC,KAAc,EAA+B,EAAE;QAC9G,MAAM,IAAI,GAAY,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAY,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QAChD,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAC9F,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,KAAkC,EAA4B,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;QACvG,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,SAAS,CAAA;AACf,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,SAAqC,EAAU,EAAE,CACzE,kBAAkB,CAChB,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAqB,EAAE,KAAsB,EAAU,EAAE,CAC3E,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAC1C,CACF,CAAA;AAEH,MAAM,gBAAgB,GAAG,CACvB,SAAiD,EACjD,QAAoC,EAC3B,EAAE,CACX,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,SAAS,CAAC,KAAK,gBAAgB,CAAC,QAAQ,CAAC,CAAA;AAE/G,oGAAoG;AACpG,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAiB,EAAE,QAAyB,EAAqB,EAAE;IAC1G,MAAM,SAAS,GAA2C,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;IACtG,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,UAAU;YACvF,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,+DAA+D,CAAC,CAAC;QACtE,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,KAAK,QAAQ,CAAC,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,KAAK,KAAK;YAC3G,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,uEAAuE,CAAC,CAAC;QAC9E,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC;QAClH,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;YACjD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,kEAAkE,CAAC,CAAC;KAC1E,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ /** Judge the established baseline; this does not attempt complete CSP validation. */
2
+ export declare const securityHeaderProblems: (headers: Readonly<Record<string, string>>) => readonly string[];
3
+ //# sourceMappingURL=security-headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security-headers.d.ts","sourceRoot":"","sources":["../src/security-headers.ts"],"names":[],"mappings":"AAiBA,qFAAqF;AACrF,eAAO,MAAM,sBAAsB,GAAI,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAG,SAAS,MAAM,EAUjG,CAAA"}
@@ -0,0 +1,26 @@
1
+ // The existing browser baseline shared by the home check and checks of individual HTML responses.
2
+ const directive = (policy, name) => policy
3
+ .split(';')
4
+ .map((part) => part.trim())
5
+ .find((part) => part === name || part.startsWith(`${name} `));
6
+ const scriptProblems = (policy) => {
7
+ const sources = directive(policy, 'script-src') ?? directive(policy, 'default-src');
8
+ return [
9
+ ...(policy.length === 0 ? ['content-security-policy must be declared'] : []),
10
+ ...(sources === undefined ? ['constrain script through script-src or default-src'] : []),
11
+ ...(sources?.includes("'unsafe-inline'") === true ? ["script sources must not allow 'unsafe-inline'"] : []),
12
+ ];
13
+ };
14
+ /** Judge the established baseline; this does not attempt complete CSP validation. */
15
+ export const securityHeaderProblems = (headers) => {
16
+ const policy = headers['content-security-policy'] ?? '';
17
+ return [
18
+ ...(headers['x-content-type-options'] === 'nosniff' ? [] : ['x-content-type-options must be nosniff']),
19
+ ...(headers['referrer-policy'] === undefined ? ['referrer-policy must be declared'] : []),
20
+ ...(headers['x-frame-options'] === undefined && directive(policy, 'frame-ancestors') === undefined
21
+ ? ['declare a framing decision through x-frame-options or frame-ancestors']
22
+ : []),
23
+ ...scriptProblems(policy),
24
+ ];
25
+ };
26
+ //# sourceMappingURL=security-headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security-headers.js","sourceRoot":"","sources":["../src/security-headers.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAElG,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,IAAY,EAAsB,EAAE,CACrE,MAAM;KACH,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;KAC1C,IAAI,CAAC,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAA;AAElF,MAAM,cAAc,GAAG,CAAC,MAAc,EAAqB,EAAE;IAC3D,MAAM,OAAO,GAAuB,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACvG,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,oDAAoD,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5G,CAAA;AACH,CAAC,CAAA;AAED,qFAAqF;AACrF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAyC,EAAqB,EAAE;IACrG,MAAM,MAAM,GAAW,OAAO,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAA;IAC/D,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC;QACtG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,SAAS;YAChG,CAAC,CAAC,CAAC,uEAAuE,CAAC;YAC3E,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,cAAc,CAAC,MAAM,CAAC;KAC1B,CAAA;AACH,CAAC,CAAA"}
@@ -4,7 +4,7 @@ import type { SecretException } from './secret-policy.js';
4
4
  import type { VulnerabilityException } from './vulnerability-policy.js';
5
5
  /**
6
6
  * How a declared exclusion's pattern is matched against a path. The settings that carry each kind know
7
- * it at the point they are read, which is the only place the answer is not a guess: `^\.vale/styles/`
7
+ * it at the point they are read, which is the only place the answer is not a guess: `^\.fixtures/typography/`
8
8
  * and `src/app/**` are both plausible-looking strings and neither matches under the other's rules.
9
9
  */
10
10
  export type ExclusionKind = 'regex' | 'glob' | 'route';
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
package/dist/settings.js CHANGED
@@ -80,8 +80,30 @@ const DEFAULT_ACCESSIBILITY_ROUTE_BUDGET = 250;
80
80
  * a declared exclusion reaches anything the report measured. Two literals that must stay equal will not.
81
81
  */
82
82
  export const COVERAGE_INCLUDE = ['src/**/*.ts', 'scripts/**/*.ts'];
83
+ // Only framework entry points receive the App Router exclusion. Colocated helpers remain measured.
84
+ const APP_ENTRY_NAMES = [
85
+ 'page',
86
+ 'layout',
87
+ 'template',
88
+ 'loading',
89
+ 'error',
90
+ 'global-error',
91
+ 'not-found',
92
+ 'global-not-found',
93
+ 'default',
94
+ 'forbidden',
95
+ 'unauthorized',
96
+ 'route',
97
+ 'robots',
98
+ 'sitemap',
99
+ 'manifest',
100
+ 'icon',
101
+ 'apple-icon',
102
+ 'opengraph-image',
103
+ 'twitter-image',
104
+ ];
83
105
  const DEFAULT_COVERAGE_EXCLUDE = [
84
- 'src/app/**',
106
+ ...APP_ENTRY_NAMES.map((name) => `src/app/**/${name}.ts`),
85
107
  'src/payload.config.ts',
86
108
  'src/payload-types.ts',
87
109
  'src/seed/**',
@@ -212,7 +234,7 @@ const honoured = (entries) => entries
212
234
  .filter((entry) => entry.pattern.length > 0 && entry.reason.length > 0)
213
235
  .map((entry) => entry.pattern);
214
236
  // The kind travels with the setting because this is the only place the answer is not a guess: by the
215
- // time a rule holds the entry, `^\.vale/styles/` and `src/app/**` are two strings that look alike.
237
+ // time a rule holds the entry, `^\.fixtures/typography/` and `src/app/**` are two strings that look alike.
216
238
  const readDeclaredLists = (raw) => ({
217
239
  typography: asDeclaredExclusions(raw['typographyExclusions'], 'typographyExclusions', 'regex'),
218
240
  javascript: asDeclaredExclusions(raw['javascriptAllowlist'], 'javascriptAllowlist', 'regex'),
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,yGAAyG;AACzG,4FAA4F;AAC5F,EAAE;AACF,yGAAyG;AACzG,mGAAmG;AACnG,uGAAuG;AACvG,4CAA4C;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAoB,MAAM,iBAAiB,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,6FAA6F;AAC7F,yBAAyB;AACzB,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtF,OAAO,EAAE,kBAAkB,EAAuB,MAAM,qBAAqB,CAAA;AA+L7E,uGAAuG;AACvG,sGAAsG;AACtG,qEAAqE;AACrE,MAAM,2BAA2B,GAAW,mBAAmB,CAAA;AAE/D,yGAAyG;AACzG,0GAA0G;AAC1G,uGAAuG;AACvG,MAAM,oBAAoB,GAAqC;IAC7D,cAAc,EAAE,sCAAsC;IACtD,YAAY,EAAE,oDAAoD;CACnE,CAAA;AAED,wGAAwG;AACxG,8FAA8F;AAC9F,uGAAuG;AACvG,mDAAmD;AACnD,MAAM,sBAAsB,GAAsB,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAA;AAEnG,gEAAgE;AAChE,MAAM,wBAAwB,GAAsB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;AAE7E,wGAAwG;AACxG,qGAAqG;AACrG,mGAAmG;AACnG,gGAAgG;AAChG,MAAM,eAAe,GAAW,OAAO,CAAA;AAEvC,MAAM,6BAA6B,GAAsB;IACvD,MAAM,CAAC,GAAG,CAAA,GAAG,eAAe,WAAW;IACvC,MAAM,CAAC,GAAG,CAAA,GAAG,eAAe,wBAAwB;IACpD,MAAM,CAAC,GAAG,CAAA,GAAG,eAAe,mCAAmC;IAC/D,MAAM,CAAC,GAAG,CAAA,gBAAgB;CAC3B,CAAA;AAED,MAAM,4BAA4B,GAAsB;IACtD,MAAM,CAAC,GAAG,CAAA,GAAG,eAAe,sBAAsB;IAClD,MAAM,CAAC,GAAG,CAAA,gBAAgB;IAC1B,sGAAsG;IACtG,uGAAuG;IACvG,qGAAqG;IACrG,mGAAmG;IACnG,2DAA2D;IAC3D,MAAM,CAAC,GAAG,CAAA,GAAG,eAAe,4BAA4B;CACzD,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAA;AAElF,MAAM,kBAAkB,GAAW,uBAAuB,CAAA;AAE1D,uGAAuG;AACvG,oGAAoG;AACpG,wEAAwE;AACxE,MAAM,sBAAsB,GAAsB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;AAEpE,wGAAwG;AACxG,sGAAsG;AACtG,yGAAyG;AACzG,qGAAqG;AACrG,wGAAwG;AACxG,+CAA+C;AAC/C,MAAM,kCAAkC,GAAW,GAAG,CAAA;AAEtD,qGAAqG;AACrG,8FAA8F;AAC9F;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAsB,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAA;AAErF,mGAAmG;AACnG,MAAM,eAAe,GAAsB;IACzC,MAAM;IACN,QAAQ;IACR,UAAU;IACV,SAAS;IACT,OAAO;IACP,cAAc;IACd,WAAW;IACX,kBAAkB;IAClB,SAAS;IACT,WAAW;IACX,cAAc;IACd,OAAO;IACP,QAAQ;IACR,SAAS;IACT,UAAU;IACV,MAAM;IACN,YAAY;IACZ,iBAAiB;IACjB,eAAe;CAChB,CAAA;AAED,MAAM,wBAAwB,GAAsB;IAClD,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAY,EAAU,EAAE,CAAC,cAAc,IAAI,KAAK,CAAC;IACzE,uBAAuB;IACvB,sBAAsB;IACtB,aAAa;IACb,eAAe;IACf,cAAc;IACd,oFAAoF;IACpF,6FAA6F;IAC7F,oGAAoG;IACpG,mGAAmG;IACnG,qGAAqG;IACrG,qFAAqF;IACrF,cAAc;CACf,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,GAAY,EAA4B,EAAE,CAC7D,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,KAAc,EAAW,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAA;AAEnF,MAAM,aAAa,GAAG,CAAC,GAAY,EAAE,QAA2B,EAAqB,EAAE,CACrF,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAA;AAEnC,MAAM,iBAAiB,GAAG,CAAC,GAAY,EAAE,QAAgB,EAAU,EAAE,CACnE,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAA;AAElF,oGAAoG;AACpG,oGAAoG;AACpG,iDAAiD;AACjD,MAAM,oBAAoB,GAAG,CAAC,GAAY,EAAsB,EAAE,CAChE,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;AAEpF,uGAAuG;AACvG,4FAA4F;AAC5F,MAAM,iBAAiB,GAAG,CAAC,GAAY,EAA6B,EAAE,CACpE,OAAO,CAAC,GAAG,CAAC;IACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAA6B,EAAE;QACxD,MAAM,MAAM,GAA4B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;QAC3C,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC/C,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9E,CAAC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAA;AAER,sGAAsG;AACtG,0GAA0G;AAC1G,wGAAwG;AACxG,MAAM,kBAAkB,GAAG,CAAC,GAAY,EAA8B,EAAE,CACtE,OAAO,CAAC,GAAG,CAAC;IACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAA8B,EAAE;QACzD,MAAM,MAAM,GAA4B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,OAAO,GAAW,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACxD,MAAM,GAAG,GAAW,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAChD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAA;QACX,CAAC;QACD,sFAAsF;QACtF,kDAAkD;QAClD,MAAM,GAAG,GAAW,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAChD,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAA;IACpE,CAAC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAA;AAER,sGAAsG;AACtG,oFAAoF;AACpF,MAAM,iBAAiB,GAAG,CAAC,GAAY,EAA6B,EAAE,CACpE,OAAO,CAAC,GAAG,CAAC;IACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAA6B,EAAE;QACxD,MAAM,MAAM,GAA4B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,KAAK,GAAW,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3D,MAAM,MAAM,GAAW,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7D,OAAO,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC3D,CAAC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAA;AAER,uGAAuG;AACvG,8CAA8C;AAC9C,MAAM,kBAAkB,GAAG,CAAC,GAA4B,EAA0D,EAAE,CAAC,CAAC;IACpH,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC9G,eAAe,EAAE,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CAC3D,CAAC,CAAA;AAEF,wGAAwG;AACxG,iGAAiG;AACjG,MAAM,QAAQ,GAAW,qBAAqB,CAAA;AAE9C,MAAM,wBAAwB,GAAG,CAAC,GAAY,EAAqC,EAAE,CACnF,OAAO,CAAC,GAAG,CAAC;IACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAAqC,EAAE;QAChE,MAAM,MAAM,GAA4B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,QAAQ,GAAW,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC1D,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,MAAM,OAAO,GAAW,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;QACjD,MAAM,UAAU,GAAY,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9F,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1D,CAAC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAA;AAER,qGAAqG;AACrG,sGAAsG;AACtG,0BAA0B;AAC1B,MAAM,iBAAiB,GAAG,CAAC,GAAY,EAA8B,EAAE,CACrE,OAAO,CAAC,GAAG,CAAC;IACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAA8B,EAAE;QACzD,MAAM,MAAM,GAA4B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,QAAQ,GAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrF,CAAC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAA;AAER,qGAAqG;AACrG,oGAAoG;AACpG,wDAAwD;AACxD,MAAM,cAAc,GAAG,CAAC,GAAY,EAA2B,EAAE,CAC/D,OAAO,CAAC,GAAG,CAAC;IACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAA2B,EAAE;QACtD,MAAM,MAAM,GAA4B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,MAAM,SAAS,GAAW,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC5D,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,wFAAwF;QACxF,uFAAuF;QACvF,iEAAiE;QACjE,MAAM,MAAM,GAAsB,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;QACrE,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YACnE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACzC,CAAC,CAAC,EAAE,CAAA;IACR,CAAC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAA;AAER,qGAAqG;AACrG,mGAAmG;AACnG,uGAAuG;AACvG,mFAAmF;AACnF,MAAM,oBAAoB,GAAG,CAAC,GAAY,EAAE,OAAe,EAAE,IAAmB,EAAgC,EAAE,CAChH,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAc,EAAqB,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AAEzG,oGAAoG;AACpG,4FAA4F;AAC5F,MAAM,aAAa,GAAG,CAAC,KAAc,EAAE,OAAe,EAAE,IAAmB,EAAqB,EAAE;IAChG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IACtD,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IACnD,CAAC;IACD,OAAO;QACL,OAAO;QACP,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE;QACtC,IAAI;KACL,CAAA;AACH,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,OAAqC,EAAqB,EAAE,CAC5E,OAAO;KACJ,MAAM,CAAC,CAAC,KAAwB,EAAW,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;KAClG,GAAG,CAAC,CAAC,KAAwB,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;AAa7D,qGAAqG;AACrG,2GAA2G;AAC3G,MAAM,iBAAiB,GAAG,CAAC,GAA4B,EAAiB,EAAE,CAAC,CAAC;IAC1E,UAAU,EAAE,oBAAoB,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,EAAE,OAAO,CAAC;IAC9F,UAAU,EAAE,oBAAoB,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,EAAE,OAAO,CAAC;IAC5F,QAAQ,EAAE,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC;IACjF,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,yBAAyB,EAAE,OAAO,CAAC;IAChG,IAAI,EAAE,oBAAoB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC;IACzE,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC;IACxF,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC;CAC9E,CAAC,CAAA;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAoB,EAAY,EAAE,CAAC,eAAe,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAA;AAE3G,6EAA6E;AAC7E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,WAAoB,EAA2B,EAAE,CAC7E,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;AAE7C,wGAAwG;AACxG,yGAAyG;AACzG,sGAAsG;AACtG,yEAAyE;AACzE,MAAM,cAAc,GAAG,CAAC,QAAiB,EAAE,OAAe,EAAU,EAAE,CACpE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AAEzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAA4B,EAAY,EAAE;IACxE,MAAM,EACJ,UAAU,EAAE,kBAAkB,EAC9B,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,cAAc,GACvB,GAAkB,iBAAiB,CAAC,GAAG,CAAC,CAAA;IACzC,OAAO;QACL,mGAAmG;QACnG,iGAAiG;QACjG,4EAA4E;QAC5E,WAAW,EAAE,CAAC,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,oBAAoB,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACtG,eAAe,EAAE,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC1D,oBAAoB,EAAE,CAAC,GAAG,6BAA6B,EAAE,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QACzF,aAAa,EAAE,CAAC,GAAG,sBAAsB,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrE,kBAAkB,EAAE,CAAC,GAAG,mBAAmB,EAAE,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAC5E,cAAc,EAAE,CAAC,GAAG,wBAAwB,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;QAC5E,kBAAkB,EAAE;YAClB,GAAG,kBAAkB;YACrB,GAAG,kBAAkB;YACrB,GAAG,gBAAgB;YACnB,GAAG,cAAc;YACjB,GAAG,YAAY;YACf,GAAG,iBAAiB;YACpB,GAAG,cAAc;SAClB;QACD,mBAAmB,EAAE,CAAC,GAAG,4BAA4B,EAAE,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QACvF,eAAe,EAAE,CAAC,GAAG,wBAAwB,EAAE,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC7E,iBAAiB,EAAE,cAAc,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,2BAA2B,CAAC;QACxF,eAAe,EAAE,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7D,qBAAqB,EAAE,OAAO,GAAG,CAAC,uBAAuB,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS;QAClH,sBAAsB,EAAE,wBAAwB,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAC/E,eAAe,EAAE,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC1D,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACjD,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAC1C,WAAW,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;QAClD,SAAS,EAAE,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,kBAAkB;QACvF,gBAAgB,EAAE,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAC7D,uBAAuB,EAAE,CAAC,GAAG,sBAAsB,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;QACjF,wBAAwB,EAAE,cAAc,CAAC,GAAG,CAAC,0BAA0B,CAAC,EAAE,kCAAkC,CAAC;QAC7G,GAAG,kBAAkB,CAAC,GAAG,CAAC;QAC1B,WAAW,EAAE,EAAE,GAAG,oBAAoB,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE;KAChF,CAAA;AACH,CAAC,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,OAAqC,EAAqB,EAAE,CACpG,OAAO,CAAC,OAAO,CAAC,CAAC,KAAwB,EAAqB,EAAE,CAC9D,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;IACvB,CAAC,CAAC;QACE,GAAG,KAAK,CAAC,OAAO,WAAW,KAAK,CAAC,OAAO,sBAAsB;YAC5D,wEAAwE;KAC3E;IACH,CAAC,CAAC,EAAE,CACP,CAAA;AAEH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,OAAqC,EACrC,UAA6B,EACV,EAAE,CACrB,OAAO;KACJ,MAAM,CACL,CAAC,KAAwB,EAAW,EAAE,CACpC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAChF;KACA,MAAM,CAAC,CAAC,KAAwB,EAAW,EAAE,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;KAC7E,GAAG,CACF,CAAC,KAAwB,EAAU,EAAE,CACnC,GAAG,KAAK,CAAC,OAAO,WAAW,KAAK,CAAC,OAAO,sBAAsB;IAC9D,wFAAwF,CAC3F,CAAA;AAEL,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAE,UAA6B,EAAW,EAAE,CACtF,UAAU,CAAC,IAAI,CAAC,CAAC,SAAiB,EAAW,EAAE,CAC7C,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CACxG,CAAA;AAEH;;;GAGG;AACH,MAAM,gBAAgB,GAAW,iBAAiB,CAAA;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAU,EAAE,CAC5D,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAExE,uGAAuG;AACvG,MAAM,UAAU,GAAG,CAAC,QAAsC,EAAqB,EAAE,CAC/E,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAY,EAAU,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAA;AAE9E;;;;;;;;GAQG;AACH,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAS,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAEnF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAA0B,EAAqB,EAAE,CAAC;IACnF,GAAG,IAAI,GAAG,CACR,OAAO,CAAC,OAAO,CAAC,CAAC,IAAY,EAAqB,EAAE;QAClD,MAAM,QAAQ,GAAsB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAChE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,KAAa,EAAU,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACnG,CAAC,CAAC,CACH;CACF,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,OAA0B,EAAqB,EAAE,CAC3E,OAAO,CAAC,MAAM,CAAC,CAAC,IAAY,EAAW,EAAE,CACvC,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAe,EAAW,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAChF,CAAA;AAEH;;;;;;;;GAQG;AACH,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,OAA0B,EAAqB,EAAE;IACvF,IAAI,OAAO,KAAK,gBAAgB,EAAE,CAAC;QACjC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC;IACD,OAAO,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AAChF,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,OAAqC,EACrC,OAA0B,EACP,EAAE,CACrB,CAAC,GAAG,IAAI,GAAG,CAAS,OAAO,CAAC,GAAG,CAAC,CAAC,KAAwB,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAC5F,CAAC,OAAe,EAAqB,EAAE,CACrC,uBAAuB,CACrB,OAAO;KACJ,MAAM,CAAC,CAAC,KAAwB,EAAW,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC;KACxE,GAAG,CAAC,CAAC,KAAwB,EAAqB,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAC1E,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAChC,CACJ,CAAA;AAEH;;;;;;GAMG;AACH,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAqB,EAAE,CACjE,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA"}
@@ -1,5 +1,5 @@
1
1
  /** An analyzer ploaness runs in a container rather than installing from the registry. */
2
- export type ContainerTool = 'gitleaks' | 'hadolint' | 'actionlint' | 'shellcheck' | 'checkov';
2
+ export type ContainerTool = 'gitleaks' | 'hadolint' | 'actionlint' | 'shellcheck' | 'checkov' | 'cdxgen';
3
3
  /** The exact image each containerised analyzer runs, by digest. */
4
4
  export declare const CONTAINER_IMAGES: Readonly<Record<ContainerTool, string>>;
5
5
  /** Matches a reference that names image bytes AND the release they are, and only such a reference. */
@@ -15,7 +15,7 @@ export declare const findUnpinnedImages: (images: Readonly<Record<string, string
15
15
  * @param enginesNode the declared range, such as `>=26`.
16
16
  * @returns the major version, or undefined when the range names none.
17
17
  */
18
- export declare const minimumNodeMajor: (enginesNode: string | undefined) => number | undefined;
18
+ export declare const minimumNodeMajor: (enginesNode?: string) => number | undefined;
19
19
  /**
20
20
  * The exact pnpm version a `packageManager` specifier names.
21
21
  *
@@ -26,7 +26,7 @@ export declare const minimumNodeMajor: (enginesNode: string | undefined) => numb
26
26
  * @param packageManager the declared specifier, such as `pnpm@11.9.0`.
27
27
  * @returns the version, or undefined when the specifier names another manager or no version.
28
28
  */
29
- export declare const pinnedPnpmVersion: (packageManager: string | undefined) => string | undefined;
29
+ export declare const pinnedPnpmVersion: (packageManager?: string) => string | undefined;
30
30
  /**
31
31
  * Report the pnpm actually running this command when it is not the pinned one.
32
32
  *
@@ -1 +1 @@
1
- {"version":3,"file":"toolchain-pins.d.ts","sourceRoot":"","sources":["../src/toolchain-pins.ts"],"names":[],"mappings":"AAGA,yFAAyF;AACzF,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAA;AAE7F,mEAAmE;AACnE,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAcpE,CAAA;AAED,sGAAsG;AACtG,eAAO,MAAM,aAAa,EAAE,MAAyE,CAAA;AAErG;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAG,SAAS,MAAM,EAOxF,CAAA;AAOL;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,GAAG,SAAS,KAAG,MAAM,GAAG,SAG3E,CAAA;AAOD;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAAI,gBAAgB,MAAM,GAAG,SAAS,KAAG,MAAM,GAAG,SAG/E,CAAA;AAMD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,GACpC,WAAW,MAAM,GAAG,SAAS,EAC7B,UAAU,MAAM,GAAG,SAAS,KAC3B,SAAS,MAAM,EAajB,CAAA"}
1
+ {"version":3,"file":"toolchain-pins.d.ts","sourceRoot":"","sources":["../src/toolchain-pins.ts"],"names":[],"mappings":"AAGA,yFAAyF;AACzF,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAA;AAExG,mEAAmE;AACnE,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAepE,CAAA;AAED,sGAAsG;AACtG,eAAO,MAAM,aAAa,EAAE,MAAyE,CAAA;AAErG;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAG,SAAS,MAAM,EAOxF,CAAA;AAOL;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,cAAa,MAAW,KAAG,MAAM,GAAG,SAGpE,CAAA;AAOD;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAAI,iBAAgB,MAAW,KAAG,MAAM,GAAG,SAGxE,CAAA;AAMD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,GACpC,WAAW,MAAM,GAAG,SAAS,EAC7B,UAAU,MAAM,GAAG,SAAS,KAC3B,SAAS,MAAM,EAajB,CAAA"}
@@ -2,6 +2,7 @@
2
2
  // Update both with docker buildx imagetools inspect <repository>:<tag>.
3
3
  /** The exact image each containerised analyzer runs, by digest. */
4
4
  export const CONTAINER_IMAGES = {
5
+ cdxgen: 'ghcr.io/cdxgen/cdxgen:13.3.0@sha256:0e2eef6dbc92a91d037531e7e3d8190f396d84d7bf0c1029807fbdebcb53a4c8',
5
6
  gitleaks: 'zricethezav/gitleaks:v8.30.1@sha256:c00b6bd0aeb3071cbcb79009cb16a60dd9e0a7c60e2be9ab65d25e6bc8abbb7f',
6
7
  hadolint: 'hadolint/hadolint:v2.15.1@sha256:32dac94127fd60b7b7e3fbfc65e1383b9b5e25c9bfd7b8536de7a539fe68a12d',
7
8
  actionlint: 'rhysd/actionlint:1.7.12@sha256:b1934ee5f1c509618f2508e6eb47ee0d3520686341fec936f3b79331f9315667',
@@ -14,7 +15,7 @@ export const CONTAINER_IMAGES = {
14
15
  // catalogue cannot change underneath it, so the enabled ids stay the ones somebody confirmed with
15
16
  // `--list`. The provider standings beside the catalogue rest on the same listing: which providers
16
17
  // the image has no check for at all. Re-confirm both whenever this pin moves.
17
- checkov: 'bridgecrew/checkov:3.3.22@sha256:617c76e3f9b1f7907ebca9abb6b9d746844edcb48e9bd775e4692c69c1c6ac47',
18
+ checkov: 'bridgecrew/checkov:3.3.26@sha256:8e63f217cb084f1c1a067326a9cf6e37d54bdc82e5822210d50ca4e2f647dd93',
18
19
  };
19
20
  /** Matches a reference that names image bytes AND the release they are, and only such a reference. */
20
21
  export const DIGEST_PINNED = /^[a-z0-9][a-z0-9._/-]*:[A-Za-z0-9][\w.-]*@sha256:[0-9a-f]{64}$/;
@@ -36,8 +37,8 @@ const LEADING_MAJOR = /(\d+)/;
36
37
  * @param enginesNode the declared range, such as `>=26`.
37
38
  * @returns the major version, or undefined when the range names none.
38
39
  */
39
- export const minimumNodeMajor = (enginesNode) => {
40
- const found = LEADING_MAJOR.exec(enginesNode ?? '');
40
+ export const minimumNodeMajor = (enginesNode = '') => {
41
+ const found = LEADING_MAJOR.exec(enginesNode);
41
42
  return found === null ? undefined : Number(found[1]);
42
43
  };
43
44
  // Corepack permits an integrity suffix - `pnpm@11.9.0+sha512.<hash>` - and that specifier names the
@@ -54,8 +55,8 @@ const PNPM_SPECIFIER = /^pnpm@([^+\s]+)(?:\+\S+)?$/;
54
55
  * @param packageManager the declared specifier, such as `pnpm@11.9.0`.
55
56
  * @returns the version, or undefined when the specifier names another manager or no version.
56
57
  */
57
- export const pinnedPnpmVersion = (packageManager) => {
58
- const found = PNPM_SPECIFIER.exec(packageManager ?? '');
58
+ export const pinnedPnpmVersion = (packageManager = '') => {
59
+ const found = PNPM_SPECIFIER.exec(packageManager);
59
60
  return found?.[1];
60
61
  };
61
62
  // pnpm identifies itself to every script it runs: `pnpm/11.9.0 npm/? node/v26.2.0 darwin arm64`. The
@@ -1 +1 @@
1
- {"version":3,"file":"toolchain-pins.js","sourceRoot":"","sources":["../src/toolchain-pins.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,wEAAwE;AAKxE,mEAAmE;AACnE,MAAM,CAAC,MAAM,gBAAgB,GAA4C;IACvE,QAAQ,EAAE,sGAAsG;IAChH,QAAQ,EAAE,mGAAmG;IAC7G,UAAU,EAAE,iGAAiG;IAC7G,qGAAqG;IACrG,kGAAkG;IAClG,+FAA+F;IAC/F,UAAU,EAAE,qGAAqG;IACjH,oGAAoG;IACpG,kGAAkG;IAClG,kGAAkG;IAClG,kGAAkG;IAClG,8EAA8E;IAC9E,OAAO,EAAE,mGAAmG;CAC7G,CAAA;AAED,sGAAsG;AACtG,MAAM,CAAC,MAAM,aAAa,GAAW,gEAAgE,CAAA;AAErG;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAwC,EAAqB,EAAE,CAChG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;KACnB,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,CAA4B,EAAW,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC7F,GAAG,CACF,CAAC,CAAC,IAAI,EAAE,SAAS,CAA4B,EAAU,EAAE,CACvD,GAAG,IAAI,UAAU,SAAS,yDAAyD;IACnF,wCAAwC,CAC3C,CAAA;AAEL,0FAA0F;AAC1F,wGAAwG;AACxG,sGAAsG;AACtG,MAAM,aAAa,GAAW,OAAO,CAAA;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAA+B,EAAsB,EAAE;IACtF,MAAM,KAAK,GAA2B,aAAa,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;IAC3E,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACtD,CAAC,CAAA;AAED,oGAAoG;AACpG,iGAAiG;AACjG,0DAA0D;AAC1D,MAAM,cAAc,GAAW,4BAA4B,CAAA;AAE3D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,cAAkC,EAAsB,EAAE;IAC1F,MAAM,KAAK,GAA2B,cAAc,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAA;IAC/E,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,qGAAqG;AACrG,oGAAoG;AACpG,MAAM,eAAe,GAAW,qBAAqB,CAAA;AAErD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,SAA6B,EAC7B,QAA4B,EACT,EAAE;IACrB,MAAM,KAAK,GAA2B,eAAe,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC3E,MAAM,OAAO,GAAuB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9C,gGAAgG;IAChG,oGAAoG;IACpG,8FAA8F;IAC9F,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5E,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO;QACL,QAAQ,OAAO,mDAAmD,QAAQ,IAAI;YAC5E,0FAA0F;KAC7F,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"toolchain-pins.js","sourceRoot":"","sources":["../src/toolchain-pins.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,wEAAwE;AAKxE,mEAAmE;AACnE,MAAM,CAAC,MAAM,gBAAgB,GAA4C;IACvE,MAAM,EAAE,sGAAsG;IAC9G,QAAQ,EAAE,sGAAsG;IAChH,QAAQ,EAAE,mGAAmG;IAC7G,UAAU,EAAE,iGAAiG;IAC7G,qGAAqG;IACrG,kGAAkG;IAClG,+FAA+F;IAC/F,UAAU,EAAE,qGAAqG;IACjH,oGAAoG;IACpG,kGAAkG;IAClG,kGAAkG;IAClG,kGAAkG;IAClG,8EAA8E;IAC9E,OAAO,EAAE,mGAAmG;CAC7G,CAAA;AAED,sGAAsG;AACtG,MAAM,CAAC,MAAM,aAAa,GAAW,gEAAgE,CAAA;AAErG;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAwC,EAAqB,EAAE,CAChG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;KACnB,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,CAA4B,EAAW,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC7F,GAAG,CACF,CAAC,CAAC,IAAI,EAAE,SAAS,CAA4B,EAAU,EAAE,CACvD,GAAG,IAAI,UAAU,SAAS,yDAAyD;IACnF,wCAAwC,CAC3C,CAAA;AAEL,0FAA0F;AAC1F,wGAAwG;AACxG,sGAAsG;AACtG,MAAM,aAAa,GAAW,OAAO,CAAA;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,cAAsB,EAAE,EAAsB,EAAE;IAC/E,MAAM,KAAK,GAA2B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACrE,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACtD,CAAC,CAAA;AAED,oGAAoG;AACpG,iGAAiG;AACjG,0DAA0D;AAC1D,MAAM,cAAc,GAAW,4BAA4B,CAAA;AAE3D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,iBAAyB,EAAE,EAAsB,EAAE;IACnF,MAAM,KAAK,GAA2B,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IACzE,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,qGAAqG;AACrG,oGAAoG;AACpG,MAAM,eAAe,GAAW,qBAAqB,CAAA;AAErD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,SAA6B,EAC7B,QAA4B,EACT,EAAE;IACrB,MAAM,KAAK,GAA2B,eAAe,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC3E,MAAM,OAAO,GAAuB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9C,gGAAgG;IAChG,oGAAoG;IACpG,8FAA8F;IAC9F,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5E,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO;QACL,QAAQ,OAAO,mDAAmD,QAAQ,IAAI;YAC5E,0FAA0F;KAC7F,CAAA;AACH,CAAC,CAAA"}