@ploaness/cli 1.0.0 → 1.1.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 (66) hide show
  1. package/dist/checks/containers.d.ts +1 -1
  2. package/dist/checks/containers.d.ts.map +1 -1
  3. package/dist/checks/containers.js +31 -27
  4. package/dist/checks/containers.js.map +1 -1
  5. package/dist/checks/conventions.d.ts +2 -1
  6. package/dist/checks/conventions.d.ts.map +1 -1
  7. package/dist/checks/conventions.js +9 -7
  8. package/dist/checks/conventions.js.map +1 -1
  9. package/dist/checks/dependencies.d.ts.map +1 -1
  10. package/dist/checks/dependencies.js +29 -11
  11. package/dist/checks/dependencies.js.map +1 -1
  12. package/dist/checks/editorconfig.d.ts +1 -1
  13. package/dist/checks/editorconfig.d.ts.map +1 -1
  14. package/dist/checks/editorconfig.js +7 -6
  15. package/dist/checks/editorconfig.js.map +1 -1
  16. package/dist/checks/environment.d.ts +13 -0
  17. package/dist/checks/environment.d.ts.map +1 -0
  18. package/dist/checks/environment.js +56 -0
  19. package/dist/checks/environment.js.map +1 -0
  20. package/dist/checks/integrity.d.ts +1 -1
  21. package/dist/checks/integrity.d.ts.map +1 -1
  22. package/dist/checks/integrity.js +4 -4
  23. package/dist/checks/integrity.js.map +1 -1
  24. package/dist/checks/payload.d.ts +11 -1
  25. package/dist/checks/payload.d.ts.map +1 -1
  26. package/dist/checks/payload.js +93 -24
  27. package/dist/checks/payload.js.map +1 -1
  28. package/dist/checks/references.d.ts.map +1 -1
  29. package/dist/checks/references.js +3 -3
  30. package/dist/checks/references.js.map +1 -1
  31. package/dist/checks/suppressions.d.ts.map +1 -1
  32. package/dist/checks/suppressions.js +3 -3
  33. package/dist/checks/suppressions.js.map +1 -1
  34. package/dist/checks/tailwind.d.ts.map +1 -1
  35. package/dist/checks/tailwind.js +3 -3
  36. package/dist/checks/tailwind.js.map +1 -1
  37. package/dist/checks/tests.d.ts.map +1 -1
  38. package/dist/checks/tests.js +13 -5
  39. package/dist/checks/tests.js.map +1 -1
  40. package/dist/checks/tree.d.ts +8 -1
  41. package/dist/checks/tree.d.ts.map +1 -1
  42. package/dist/checks/tree.js +14 -6
  43. package/dist/checks/tree.js.map +1 -1
  44. package/dist/checks/wiring.d.ts.map +1 -1
  45. package/dist/checks/wiring.js +34 -1
  46. package/dist/checks/wiring.js.map +1 -1
  47. package/dist/commands/format.d.ts +4 -1
  48. package/dist/commands/format.d.ts.map +1 -1
  49. package/dist/commands/format.js +17 -3
  50. package/dist/commands/format.js.map +1 -1
  51. package/dist/context.d.ts +23 -2
  52. package/dist/context.d.ts.map +1 -1
  53. package/dist/context.js +39 -13
  54. package/dist/context.js.map +1 -1
  55. package/dist/gates.d.ts.map +1 -1
  56. package/dist/gates.js +20 -1
  57. package/dist/gates.js.map +1 -1
  58. package/dist/secret-mirror.d.ts +3 -0
  59. package/dist/secret-mirror.d.ts.map +1 -0
  60. package/dist/secret-mirror.js +51 -0
  61. package/dist/secret-mirror.js.map +1 -0
  62. package/package.json +6 -6
  63. package/dist/commands/hooks.d.ts +0 -9
  64. package/dist/commands/hooks.d.ts.map +0 -1
  65. package/dist/commands/hooks.js +0 -57
  66. package/dist/commands/hooks.js.map +0 -1
@@ -56,6 +56,17 @@ const ownedVersions = () => Object.assign({}, ...pinGroups().map((group) => grou
56
56
  // one would leave the other name in TEST_LIBRARY_NAMES pinning nothing at all, silently.
57
57
  const asStringArray = (value) => isArray(value) ? value.filter((entry) => typeof entry === 'string') : [];
58
58
  const VERSION_SOURCES = ['@ploaness/config', '@ploaness/cli'];
59
+ // The release version, read from the running harness rather than written down again. `@ploaness/runtime`
60
+ // is a sibling of this CLI and the six are published together at one version, which
61
+ // `scripts/lib/check-release-version.ts` is what makes true - so the CLI's own `version` IS the version
62
+ // a project must declare the runtime package at, and a bump moves it with no edit here. It cannot be
63
+ // read from the meta package's dependencies, the way a pinned analyzer is: `ploaness` depends on this
64
+ // package rather than the reverse, so under pnpm's strict layout the CLI cannot resolve it.
65
+ const harnessRuntimeVersion = () => {
66
+ const manifest = readJson(shippedFile('@ploaness/cli', 'package.json'));
67
+ const version = asOptionalText(readKey(manifest, 'version'));
68
+ return version === undefined ? {} : { [HARNESS_RUNTIME]: version };
69
+ };
59
70
  const declaredBy = (packageName) => {
60
71
  const manifest = readJson(shippedFile(packageName, 'package.json'));
61
72
  return asRecord(readKey(manifest, 'dependencies'));
@@ -79,8 +90,29 @@ const expectedTestLibraries = () => {
79
90
  // still wins, because `fromEntries` keeps the last entry for a repeated key.
80
91
  const declared = Object.fromEntries(VERSION_SOURCES.flatMap((source) => Object.entries(declaredBy(source))));
81
92
  const fromDependencies = asStringRecord(Object.fromEntries(TEST_LIBRARY_NAMES.map((name) => [name, declared[name]])));
82
- return { ...fromDependencies, ...ownedVersions() };
93
+ return { ...fromDependencies, ...ownedVersions(), ...harnessRuntimeVersion() };
83
94
  };
95
+ /**
96
+ * The runtime helpers a governed application calls, which every application therefore declares.
97
+ *
98
+ * Required rather than merely pinned, on the same reasoning that makes the browser packages required:
99
+ * ploaness ships something that is not optional, so resolving what it names is not optional either.
100
+ * There the artefact is the managed accessibility sweep; here it is the Layer 6 rule that a URL from a
101
+ * CMS field passes through `safeHref` before it reaches an `href` - a rule the guide states binds with
102
+ * the same force as one a gate enforces, and one no gate CAN enforce.
103
+ *
104
+ * The alternative was to leave it optional and have the guide say "add this dependency first". That
105
+ * puts an install step between a developer and an XSS fix, at the one moment friction is most
106
+ * expensive, in service of a rule nothing verifies. An unused declaration costs a governed project a
107
+ * line in a manifest and a few hundred bytes in a production install: the package is pure and declares
108
+ * no dependencies of its own.
109
+ *
110
+ * The usual objection does not apply. Forcing a declaration normally manufactures a dependency the
111
+ * dead-code gate reports as unused - which is why `pins.json` forces nothing - but the shipped
112
+ * `knip.json` already ignores `@ploaness/.+`, because ploaness packages are reached through configs
113
+ * knip cannot trace. So this creates no finding anywhere.
114
+ */
115
+ const HARNESS_RUNTIME = '@ploaness/runtime';
84
116
  // A member's own required set. Only a member that serves an application needs the browser packages: a
85
117
  // library has no page to sweep, and requiring them would manufacture dependencies the dead-code gate
86
118
  // then rightly reports as unused.
@@ -88,6 +120,7 @@ const BROWSER_LIBRARIES = new Set([
88
120
  '@playwright/test',
89
121
  '@axe-core/playwright',
90
122
  'tsx',
123
+ HARNESS_RUNTIME,
91
124
  ]);
92
125
  // The specs of every governed package import these, so pnpm's strict layout means every package must
93
126
  // declare them. The browser three are added only where there is an application to drive.
@@ -1 +1 @@
1
- {"version":3,"file":"wiring.js","sourceRoot":"","sources":["../../src/checks/wiring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wiring.js","sourceRoot":"","sources":["../../src/checks/wiring.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
1
  import type { Repository } from '../context.js';
2
- /** Apply Biome's formatting and safe fixes, then ESLint's fixable rules, in every member. */
2
+ /**
3
+ * Apply Biome's formatting and safe fixes, then ESLint's fixable rules, then Biome once more, in
4
+ * every member. The closing pass is what makes the command leave a tree the `biome` gate accepts.
5
+ */
3
6
  export declare const format: (repository: Repository) => number;
4
7
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/commands/format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,eAAe,CAAA;AA2BvD,6FAA6F;AAC7F,eAAO,MAAM,MAAM,GAAI,YAAY,UAAU,KAAG,MAO/C,CAAA"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/commands/format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,eAAe,CAAA;AAsCvD;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,YAAY,UAAU,KAAG,MAO/C,CAAA"}
@@ -21,11 +21,25 @@ const formatMember = (member, isSolo) => {
21
21
  if (eslint.output.length > 0) {
22
22
  console.info(eslint.output);
23
23
  }
24
+ // Biome runs again because ESLint's fixers wrote last and Biome is the formatter. A fixer emits
25
+ // whatever its rule considers correct, not whatever the formatter would have printed, so the pass
26
+ // above can leave text that the `biome` gate then fails on - and it did:
27
+ // `unicorn/prefer-negative-index` rewrote `values.slice(0, values.length - 1)` to
28
+ // `values.slice(0, - 1)`, which is a formatting defect the gate reports on a change format itself
29
+ // made. Running format twice repaired it, which is the tell: the command was one pass short of a
30
+ // fixed point rather than wrong about any single fix. Biome's writer is deterministic and converges,
31
+ // so this pass costs one process and changes nothing when there was nothing to settle.
32
+ const settled = biomeWrite(member);
33
+ console.info(settled.output);
24
34
  // ESLint exits non-zero for findings it cannot fix. Those are for `ploaness verify` to report, so
25
- // formatting succeeds as long as Biome could write.
26
- return biome.code === 0 ? 0 : 1;
35
+ // formatting succeeds as long as Biome could write - and the second run is the one that describes
36
+ // the tree the caller is actually left with.
37
+ return biome.code === 0 && settled.code === 0 ? 0 : 1;
27
38
  };
28
- /** Apply Biome's formatting and safe fixes, then ESLint's fixable rules, in every member. */
39
+ /**
40
+ * Apply Biome's formatting and safe fixes, then ESLint's fixable rules, then Biome once more, in
41
+ * every member. The closing pass is what makes the command leave a tree the `biome` gate accepts.
42
+ */
29
43
  export const format = (repository) => {
30
44
  const isSolo = repository.members.length <= 1;
31
45
  const codes = repository.members.map((member) => formatMember(member, isSolo));
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/commands/format.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,sGAAsG;AACtG,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAIhE,qGAAqG;AACrG,sGAAsG;AACtG,6FAA6F;AAC7F,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,MAAe,EAAU,EAAE;IAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IAClC,CAAC;IACD,qGAAqG;IACrG,sGAAsG;IACtG,mGAAmG;IACnG,kGAAkG;IAClG,gGAAgG;IAChG,mFAAmF;IACnF,MAAM,KAAK,GAAc,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC1B,MAAM,MAAM,GAAc,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7C,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IACD,kGAAkG;IAClG,oDAAoD;IACpD,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACjC,CAAC,CAAA;AAED,6FAA6F;AAC7F,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,UAAsB,EAAU,EAAE;IACvD,MAAM,MAAM,GAAY,UAAU,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;IACtD,MAAM,KAAK,GAAsB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAc,EAAU,EAAE,CACjF,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAC7B,CAAA;IACD,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAA;IAChF,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAClE,CAAC,CAAA"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/commands/format.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,sGAAsG;AACtG,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAIhE,qGAAqG;AACrG,sGAAsG;AACtG,6FAA6F;AAC7F,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,MAAe,EAAU,EAAE;IAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IAClC,CAAC;IACD,qGAAqG;IACrG,sGAAsG;IACtG,mGAAmG;IACnG,kGAAkG;IAClG,gGAAgG;IAChG,mFAAmF;IACnF,MAAM,KAAK,GAAc,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC1B,MAAM,MAAM,GAAc,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7C,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IACD,gGAAgG;IAChG,kGAAkG;IAClG,yEAAyE;IACzE,kFAAkF;IAClF,kGAAkG;IAClG,iGAAiG;IACjG,qGAAqG;IACrG,uFAAuF;IACvF,MAAM,OAAO,GAAc,UAAU,CAAC,MAAM,CAAC,CAAA;IAC7C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5B,kGAAkG;IAClG,kGAAkG;IAClG,6CAA6C;IAC7C,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACvD,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,UAAsB,EAAU,EAAE;IACvD,MAAM,MAAM,GAAY,UAAU,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;IACtD,MAAM,KAAK,GAAsB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAc,EAAU,EAAE,CACjF,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAC7B,CAAA;IACD,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAA;IAChF,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAClE,CAAC,CAAA"}
package/dist/context.d.ts CHANGED
@@ -104,8 +104,29 @@ export declare const manifestPathFrom: (packageName: string, fromManifest: strin
104
104
  export declare const shippedDirectory: (packageName: string) => string;
105
105
  /** Locate this module's own package directory, used to report the running harness version. */
106
106
  export declare const cliDirectory: () => string;
107
- /** List the repository's tracked files, NUL-delimited so paths with spaces survive intact. */
108
- export declare const trackedFiles: (root: string) => readonly string[];
107
+ /**
108
+ * List the repository's files as they exist on disk, NUL-delimited so paths with spaces survive intact.
109
+ *
110
+ * `--cached --others --exclude-standard` rather than the bare `git ls-files` this used to run, and the
111
+ * difference is the whole guarantee. The bare form lists the INDEX, so a file that had been written but
112
+ * not staged was invisible to every check built on this - the typography ban, the line-length check,
113
+ * the suppression ceiling, the Payload usage rules, the tree fingerprint, and the discovery of which
114
+ * directories are governed members at all. An agent's loop is write, verify, commit; nothing in that
115
+ * loop stages anything, so a session could run twelve checks over its own new code, see them all pass,
116
+ * and have the commit rejected by a rule that had simply never been shown the file. A green run is
117
+ * documented as a verdict, and against the index it was not one.
118
+ *
119
+ * `--exclude-standard` is what keeps that honest in the other direction: everything a project ignores
120
+ * stays out, so a build directory or a coverage report does not arrive as new source.
121
+ *
122
+ * Deliberately not memoised, though it is called once per consuming check and twice more for the
123
+ * fingerprint. Measured at about a millisecond over the bare form on a few hundred files, which buys
124
+ * nothing worth a cache - and a cached list is exactly the defect above, one layer in: the second
125
+ * fingerprint MUST see a file a gate created since the first, and a memo is a promise that it will not.
126
+ * @param root the directory to enumerate, which for a member is that member's own directory.
127
+ * @returns every file git can see there that the project does not ignore.
128
+ */
129
+ export declare const workingTreeFiles: (root: string) => readonly string[];
109
130
  /** Run a git command in the project and return its trimmed stdout. */
110
131
  export declare const git: (context: Context, commandArguments: readonly string[]) => string;
111
132
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAOA,OAAO,EAUL,KAAK,eAAe,EAWpB,KAAK,QAAQ,EAEd,MAAM,sBAAsB,CAAA;AAS7B,oDAAoD;AACpD,MAAM,WAAW,OAAO;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,wEAAwE;IACxE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,iFAAiF;IACjF,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;CAC7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,MAAO,SAAQ,OAAO;IACrC,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,mGAAmG;IACnG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CACzC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,0FAA0F;IAC1F,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAA;CAC9C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,OACqC,CAAA;AAE7E,+DAA+D;AAC/D,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SACU,CAAA;AAE3D,gDAAgD;AAChD,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,YAAY,OAAO,KAAG,OAGjE,CAAA;AA0CD;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,GACtB,aAAa,MAAM,EACnB,UAAU,MAAM,EAChB,cAAa,MAAM,CAAC,OAAqB,KACxC,MAoBF,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO,KAAG,OACF,CAAA;AAE/C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,OAAO,EAChB,aAAa,MAAM,EACnB,UAAU,MAAM,KACf,MACwF,CAAA;AAE3F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,EAAE,cAAc,MAAM,KAAG,MAAM,GAAG,SAMrF,CAAA;AAED,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,KAAG,MACX,CAAA;AAE5C,8FAA8F;AAC9F,eAAO,MAAM,YAAY,QAAO,MACkC,CAAA;AAElE,8FAA8F;AAC9F,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,SAAS,MAAM,EASR,CAAA;AAEnD,sEAAsE;AACtE,eAAO,MAAM,GAAG,GAAI,SAAS,OAAO,EAAE,kBAAkB,SAAS,MAAM,EAAE,KAAG,MAQjE,CAAA;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,QAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAGjD,CAAA;AAsHD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,YAAY,OAAO,KAAG,UAiCnE,CAAA;AAuBD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,QAAQ,GAAI,YAAY,UAAU,EAAE,KAAK,MAAM,KAAG,MAAM,GAAG,SAyBvE,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,OAAO,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAS9E,CAAA"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAOA,OAAO,EAUL,KAAK,eAAe,EAWpB,KAAK,QAAQ,EAEd,MAAM,sBAAsB,CAAA;AAS7B,oDAAoD;AACpD,MAAM,WAAW,OAAO;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,wEAAwE;IACxE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,iFAAiF;IACjF,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;CAC7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,MAAO,SAAQ,OAAO;IACrC,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,mGAAmG;IACnG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CACzC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,0FAA0F;IAC1F,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAA;CAC9C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,OACqC,CAAA;AAE7E,+DAA+D;AAC/D,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SACU,CAAA;AAE3D,gDAAgD;AAChD,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,YAAY,OAAO,KAAG,OAGjE,CAAA;AA0CD;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,GACtB,aAAa,MAAM,EACnB,UAAU,MAAM,EAChB,cAAa,MAAM,CAAC,OAAqB,KACxC,MAoBF,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO,KAAG,OACF,CAAA;AAE/C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,OAAO,EAChB,aAAa,MAAM,EACnB,UAAU,MAAM,KACf,MACwF,CAAA;AAE3F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,EAAE,cAAc,MAAM,KAAG,MAAM,GAAG,SAMrF,CAAA;AAED,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,KAAG,MACX,CAAA;AAE5C,8FAA8F;AAC9F,eAAO,MAAM,YAAY,QAAO,MACkC,CAAA;AAElE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,SAAS,MAAM,EASZ,CAAA;AAEnD,sEAAsE;AACtE,eAAO,MAAM,GAAG,GAAI,SAAS,OAAO,EAAE,kBAAkB,SAAS,MAAM,EAAE,KAAG,MAQjE,CAAA;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,QAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAGjD,CAAA;AA2HD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,YAAY,OAAO,KAAG,UAiCnE,CAAA;AAuBD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,QAAQ,GAAI,YAAY,UAAU,EAAE,KAAK,MAAM,KAAG,MAAM,GAAG,SAyBvE,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,OAAO,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAS9E,CAAA"}
package/dist/context.js CHANGED
@@ -138,8 +138,29 @@ export const manifestPathFrom = (packageName, fromManifest) => {
138
138
  export const shippedDirectory = (packageName) => packageDirectory(packageName, nodeRequire);
139
139
  /** Locate this module's own package directory, used to report the running harness version. */
140
140
  export const cliDirectory = () => path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
141
- /** List the repository's tracked files, NUL-delimited so paths with spaces survive intact. */
142
- export const trackedFiles = (root) => execFileSync('git', ['ls-files', '-z'], {
141
+ /**
142
+ * List the repository's files as they exist on disk, NUL-delimited so paths with spaces survive intact.
143
+ *
144
+ * `--cached --others --exclude-standard` rather than the bare `git ls-files` this used to run, and the
145
+ * difference is the whole guarantee. The bare form lists the INDEX, so a file that had been written but
146
+ * not staged was invisible to every check built on this - the typography ban, the line-length check,
147
+ * the suppression ceiling, the Payload usage rules, the tree fingerprint, and the discovery of which
148
+ * directories are governed members at all. An agent's loop is write, verify, commit; nothing in that
149
+ * loop stages anything, so a session could run twelve checks over its own new code, see them all pass,
150
+ * and have the commit rejected by a rule that had simply never been shown the file. A green run is
151
+ * documented as a verdict, and against the index it was not one.
152
+ *
153
+ * `--exclude-standard` is what keeps that honest in the other direction: everything a project ignores
154
+ * stays out, so a build directory or a coverage report does not arrive as new source.
155
+ *
156
+ * Deliberately not memoised, though it is called once per consuming check and twice more for the
157
+ * fingerprint. Measured at about a millisecond over the bare form on a few hundred files, which buys
158
+ * nothing worth a cache - and a cached list is exactly the defect above, one layer in: the second
159
+ * fingerprint MUST see a file a gate created since the first, and a memo is a promise that it will not.
160
+ * @param root the directory to enumerate, which for a member is that member's own directory.
161
+ * @returns every file git can see there that the project does not ignore.
162
+ */
163
+ export const workingTreeFiles = (root) => execFileSync('git', ['ls-files', '-z', '--cached', '--others', '--exclude-standard'], {
143
164
  cwd: root,
144
165
  encoding: 'utf8',
145
166
  maxBuffer: MAX_OUTPUT_BYTES,
@@ -177,17 +198,22 @@ const ancestorsOf = (directory) => {
177
198
  return parent === directory ? [directory] : [directory, ...ancestorsOf(parent)];
178
199
  };
179
200
  const hasEntry = (directory, entry) => existsSync(path.join(directory, entry));
180
- // Candidate project directories come from the tracked tree rather than from a filesystem walk, so a
181
- // directory git does not know about - a build output, an ignored scratch copy, an uninstalled example -
182
- // can never become a governed member.
183
- // Candidate project directories come from the tracked tree rather than a filesystem walk, so a
184
- // directory git does not know about - a build output, an ignored scratch copy - can never become a
185
- // governed member. A directory that is not a repository at all has exactly one project, itself: the
186
- // integration fixtures install into such a directory before any commit exists, and asking git there
187
- // fails rather than answering.
201
+ // Candidate project directories come from the working tree rather than from a filesystem walk, so a
202
+ // directory git IGNORES - a build output, a scratch copy, an uninstalled example - can never become a
203
+ // governed member, while one that merely has not been staged yet does.
204
+ //
205
+ // That second half used to be false, and it was the most expensive half of reading the index instead of
206
+ // the tree. A check reading the index scans one file too few; discovery reading the index loses a whole
207
+ // PACKAGE - it is absent from the run plan, so its gates are not skipped, they are never planned, and
208
+ // the report says nothing at all about it. A member that appears only once somebody remembers to stage
209
+ // it is not governance.
210
+ //
211
+ // A directory that is not a repository at all has exactly one project, itself: the integration fixtures
212
+ // install into such a directory before any commit exists, and asking git there fails rather than
213
+ // answering.
188
214
  const manifestDirectories = (root) => {
189
215
  try {
190
- return trackedManifestDirectories(root);
216
+ return workingTreeManifestDirectories(root);
191
217
  }
192
218
  catch {
193
219
  // Not a repository yet. `ploaness init` is run on exactly such a tree - a fresh checkout, or a
@@ -212,7 +238,7 @@ const walkManifestDirectories = (root, relative = ROOT_MEMBER_PATH, depth = 0) =
212
238
  .flatMap((entry) => walkManifestDirectories(root, relative === ROOT_MEMBER_PATH ? entry.name : path.join(relative, entry.name), depth + 1));
213
239
  return [...here, ...children];
214
240
  };
215
- const trackedManifestDirectories = (root) => trackedFiles(root)
241
+ const workingTreeManifestDirectories = (root) => workingTreeFiles(root)
216
242
  .filter((file) => path.basename(file) === MANIFEST)
217
243
  .map((file) => {
218
244
  const directory = path.dirname(file);
@@ -278,7 +304,7 @@ export const createRepository = (cwd, isEnforced) => {
278
304
  members,
279
305
  };
280
306
  };
281
- // The gates that walk the tracked tree run once, at the root, while a member declares its exclusions
307
+ // The gates that walk the working tree run once, at the root, while a member declares its exclusions
282
308
  // relative to itself. Without this a generated directory a member correctly excused starts failing
283
309
  // them, because the pattern it wrote is anchored one directory above where the gate is looking.
284
310
  const withMemberExclusions = (base, members) => {
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,IAAI,IAAI,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3C,oDAAoD;AACpD,UAAU,QAAQ;IAChB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,gEAAgE;IAChE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,IAAI,GACZ,CAAC,QAAQ,GAAG;IACV,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;IAC5B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC/D,CAAC,GACF,CAAC,QAAQ,GAAG;IACV,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CACnE,CAAC,CAAA;AA2ON,+CAA+C;AAC/C,eAAO,MAAM,SAAS,EAAE,SAAS,IAAI,EAAuD,CAAA;AAE5F;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,YAAY,OAAO,KAAG,SAAS,IAAI,EACF,CAAA;AAE1D,sCAAsC;AACtC,eAAO,MAAM,QAAQ,GAAI,IAAI,MAAM,KAAG,IAAI,GAAG,SACY,CAAA;AAEzD,iFAAiF;AACjF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC;AAQD;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,GAAI,YAAY,IAAI,EAAE,YAAY,OAAO,KAAG,SAAS,WAAW,EAsBnF,CAAA"}
1
+ {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,IAAI,IAAI,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3C,oDAAoD;AACpD,UAAU,QAAQ;IAChB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,gEAAgE;IAChE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,IAAI,GACZ,CAAC,QAAQ,GAAG;IACV,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;IAC5B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC/D,CAAC,GACF,CAAC,QAAQ,GAAG;IACV,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CACnE,CAAC,CAAA;AA6PN,+CAA+C;AAC/C,eAAO,MAAM,SAAS,EAAE,SAAS,IAAI,EAAuD,CAAA;AAE5F;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,YAAY,OAAO,KAAG,SAAS,IAAI,EACF,CAAA;AAE1D,sCAAsC;AACtC,eAAO,MAAM,QAAQ,GAAI,IAAI,MAAM,KAAG,IAAI,GAAG,SACY,CAAA;AAEzD,iFAAiF;AACjF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC;AAQD;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,GAAI,YAAY,IAAI,EAAE,YAAY,OAAO,KAAG,SAAS,WAAW,EAsBnF,CAAA"}
package/dist/gates.js CHANGED
@@ -14,11 +14,12 @@ import { actions, containers, secrets } from './checks/containers.js';
14
14
  import { conventions } from './checks/conventions.js';
15
15
  import { dependencyFreshness, licenses, vulnerabilities } from './checks/dependencies.js';
16
16
  import { editorconfig } from './checks/editorconfig.js';
17
+ import { environment } from './checks/environment.js';
17
18
  import { generatedDenial } from './checks/generated.js';
18
19
  import { commitHistory, linearHistory, requireFullHistory } from './checks/history.js';
19
20
  import { installScripts } from './checks/install.js';
20
21
  import { bundle, imageAssets } from './checks/integrity.js';
21
- import { payloadGenerated, payloadRules } from './checks/payload.js';
22
+ import { adminViews, payloadGenerated, payloadRules } from './checks/payload.js';
22
23
  import { preflight } from './checks/preflight.js';
23
24
  import { configReferences, documentation, skills } from './checks/references.js';
24
25
  import { suppressions } from './checks/suppressions.js';
@@ -135,6 +136,15 @@ const DEFAULT_GATES = [
135
136
  isExtended: false,
136
137
  run: payloadRules,
137
138
  },
139
+ {
140
+ // Payload scope: a custom admin view is a thing only Payload has, and the exemption it hides
141
+ // behind is one ploaness itself writes into the accessibility sweep.
142
+ id: 'admin-views',
143
+ scope: 'payload',
144
+ title: 'custom admin views scanned',
145
+ isExtended: false,
146
+ run: adminViews,
147
+ },
138
148
  {
139
149
  id: 'config-refs',
140
150
  scope: 'package',
@@ -178,6 +188,15 @@ const DEFAULT_GATES = [
178
188
  isExtended: false,
179
189
  run: imageAssets,
180
190
  },
191
+ {
192
+ // After `config-refs` and before `docs`, with the other rot gates: the same kind of finding, which
193
+ // is a declaration in one file that another file was supposed to follow and did not.
194
+ id: 'environment',
195
+ scope: 'repository',
196
+ title: 'environment variable coherence',
197
+ isExtended: false,
198
+ run: environment,
199
+ },
181
200
  {
182
201
  id: 'docs',
183
202
  scope: 'repository',
package/dist/gates.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /** Mirror regular non-binary working-tree candidates, retaining repository-relative paths. */
2
+ export declare const mirrorSecretCandidates: (root: string, destination: string, candidates: readonly string[]) => readonly string[];
3
+ //# sourceMappingURL=secret-mirror.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret-mirror.d.ts","sourceRoot":"","sources":["../src/secret-mirror.ts"],"names":[],"mappings":"AAuDA,8FAA8F;AAC9F,eAAO,MAAM,sBAAsB,GACjC,MAAM,MAAM,EACZ,aAAa,MAAM,EACnB,YAAY,SAAS,MAAM,EAAE,KAC5B,SAAS,MAAM,EAG0E,CAAA"}
@@ -0,0 +1,51 @@
1
+ // A bounded filesystem view for the working-tree half of the secret scan.
2
+ //
3
+ // Gitleaks directory mode has no Git awareness. Pointed at the repository itself it reads dependencies,
4
+ // build output, and ignored local environments - files the repository neither tracks nor governs. The
5
+ // caller supplies Git's own working-tree enumeration instead, and this module preserves only those
6
+ // regular text files under their repository-relative paths.
7
+ import { lstatSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
8
+ import path from 'node:path';
9
+ const NUL = 0;
10
+ const isContainedRelativePath = (candidate) => {
11
+ const normalized = path.normalize(candidate);
12
+ return (!path.isAbsolute(normalized) && normalized !== '..' && !normalized.startsWith(`..${path.sep}`));
13
+ };
14
+ const isMissing = (error) => typeof error === 'object' &&
15
+ error !== null &&
16
+ 'code' in error &&
17
+ error.code === 'ENOENT';
18
+ const readExistingFile = (target) => {
19
+ const stat = lstatSync(target, { throwIfNoEntry: false });
20
+ if (stat?.isFile() !== true) {
21
+ return undefined;
22
+ }
23
+ try {
24
+ return readFileSync(target);
25
+ }
26
+ catch (error) {
27
+ if (isMissing(error)) {
28
+ return undefined;
29
+ }
30
+ throw error;
31
+ }
32
+ };
33
+ const isText = (content) => !content.includes(NUL);
34
+ const mirrorOne = (root, destination, candidate) => {
35
+ if (!isContainedRelativePath(candidate)) {
36
+ return undefined;
37
+ }
38
+ const content = readExistingFile(path.join(root, candidate));
39
+ if (content === undefined || !isText(content)) {
40
+ return undefined;
41
+ }
42
+ const output = path.join(destination, candidate);
43
+ mkdirSync(path.dirname(output), { recursive: true });
44
+ writeFileSync(output, content);
45
+ return candidate;
46
+ };
47
+ /** Mirror regular non-binary working-tree candidates, retaining repository-relative paths. */
48
+ export const mirrorSecretCandidates = (root, destination, candidates) => candidates
49
+ .map((candidate) => mirrorOne(root, destination, candidate))
50
+ .filter((candidate) => candidate !== undefined);
51
+ //# sourceMappingURL=secret-mirror.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret-mirror.js","sourceRoot":"","sources":["../src/secret-mirror.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,EAAE;AACF,wGAAwG;AACxG,sGAAsG;AACtG,mGAAmG;AACnG,4DAA4D;AAC5D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAc,aAAa,EAAE,MAAM,SAAS,CAAA;AACvF,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,GAAG,GAAW,CAAC,CAAA;AAErB,MAAM,uBAAuB,GAAG,CAAC,SAAiB,EAAW,EAAE;IAC7D,MAAM,UAAU,GAAW,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IACpD,OAAO,CACL,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAC/F,CAAA;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,CAAC,KAAc,EAAW,EAAE,CAC5C,OAAO,KAAK,KAAK,QAAQ;IACzB,KAAK,KAAK,IAAI;IACd,MAAM,IAAI,KAAK;IACd,KAAqC,CAAC,IAAI,KAAK,QAAQ,CAAA;AAE1D,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAA0B,EAAE;IAClE,MAAM,IAAI,GAAsB,SAAS,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5E,IAAI,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,OAAmB,EAAW,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;AAEvE,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,WAAmB,EAAE,SAAiB,EAAsB,EAAE;IAC7F,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,OAAO,GAA2B,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;IACpF,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,MAAM,GAAW,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IACxD,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACpD,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,8FAA8F;AAC9F,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,IAAY,EACZ,WAAmB,EACnB,UAA6B,EACV,EAAE,CACrB,UAAU;KACP,GAAG,CAAC,CAAC,SAAiB,EAAsB,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;KACvF,MAAM,CAAC,CAAC,SAA6B,EAAuB,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ploaness/cli",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "The executable half of ploaness: the verification gates and the commands that run them.",
5
5
  "license": "MIT",
6
6
  "author": "Herman Ciechanowiec <herman@ciechanowiec.eu>",
@@ -32,15 +32,15 @@
32
32
  ],
33
33
  "dependencies": {
34
34
  "@biomejs/biome": "2.5.11",
35
- "@ploaness/assets": "1.0.0",
36
- "@ploaness/config": "1.0.0",
37
- "@ploaness/governance": "1.0.0",
35
+ "@ploaness/assets": "1.1.0",
36
+ "@ploaness/config": "1.1.0",
37
+ "@ploaness/governance": "1.1.0",
38
38
  "@vitest/coverage-v8": "4.1.11",
39
39
  "dependency-cruiser": "18.2.0",
40
40
  "eslint": "10.9.1",
41
- "knip": "6.32.3",
41
+ "knip": "6.34.0",
42
42
  "stylelint": "17.14.1",
43
- "tsx": "4.23.12",
43
+ "tsx": "4.23.13",
44
44
  "type-coverage": "2.30.1",
45
45
  "typescript": "6.0.3",
46
46
  "vitest": "4.1.11"
@@ -1,9 +0,0 @@
1
- import { type Context } from '../context.js';
2
- /** The pre-commit hook: formatting on staged files, then a full type check. */
3
- export declare const precommit: (context: Context) => number;
4
- /**
5
- * The commit-message entry point, in three modes: a pending message file (the commit-msg hook), a
6
- * revision range, or the whole history.
7
- */
8
- export declare const commitMessage: (context: Context, mode: string | undefined, value: string | undefined) => number;
9
- //# sourceMappingURL=hooks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/commands/hooks.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,OAAO,EAAe,MAAM,eAAe,CAAA;AAGzD,+EAA+E;AAC/E,eAAO,MAAM,SAAS,GAAI,SAAS,OAAO,KAAG,MAuB5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,SAAS,OAAO,EAChB,MAAM,MAAM,GAAG,SAAS,EACxB,OAAO,MAAM,GAAG,SAAS,KACxB,MA2BF,CAAA"}
@@ -1,57 +0,0 @@
1
- // The git-hook entry points. A hook must be fast enough that a developer does not learn to pass
2
- // --no-verify, so the pre-commit path runs only the two checks that catch most of what a commit gets
3
- // wrong, and CI remains the backstop for everything else.
4
- import { readFileSync } from 'node:fs';
5
- import { commitHistory, commitMessageProblems } from '../checks/history.js';
6
- import { resolveTool } from '../context.js';
7
- import { runNode } from '../exec.js';
8
- /** The pre-commit hook: formatting on staged files, then a full type check. */
9
- export const precommit = (context) => {
10
- const biome = runNode(resolveTool('@biomejs/biome', 'biome'), ['check', '--staged', '--no-errors-on-unmatched'], { cwd: context.root });
11
- if (biome.code !== 0) {
12
- console.error(biome.output);
13
- return 1;
14
- }
15
- const types = runNode(resolveTool('typescript', 'tsc'), ['--noEmit', '-p', 'tsconfig.json'], {
16
- cwd: context.root,
17
- });
18
- if (types.code !== 0) {
19
- console.error(types.output);
20
- return 1;
21
- }
22
- console.info('ploaness precommit: staged formatting and the type check are clean.');
23
- return 0;
24
- };
25
- /**
26
- * The commit-message entry point, in three modes: a pending message file (the commit-msg hook), a
27
- * revision range, or the whole history.
28
- */
29
- export const commitMessage = (context, mode, value) => {
30
- if (mode === undefined) {
31
- console.error('usage: ploaness commit-message <message-file> | --range <base>..<head> | --all');
32
- return 1;
33
- }
34
- if (mode === '--all' || mode === '--range') {
35
- const revisions = mode === '--all' ? ['HEAD'] : [value ?? 'HEAD'];
36
- const result = commitHistory(context, revisions);
37
- if (!result.ok) {
38
- for (const finding of result.findings) {
39
- console.error(finding);
40
- }
41
- console.error(`\n${result.summary}. See .ploaness/agent-guide.md.`);
42
- return 1;
43
- }
44
- console.info(result.summary);
45
- return 0;
46
- }
47
- const problems = commitMessageProblems(context, readFileSync(mode, 'utf8'));
48
- if (problems.length > 0) {
49
- for (const problem of problems) {
50
- console.error(problem);
51
- }
52
- console.error(`\n${problems.length} commit-message problem(s). See .ploaness/agent-guide.md.`);
53
- return 1;
54
- }
55
- return 0;
56
- };
57
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/commands/hooks.ts"],"names":[],"mappings":"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"}