@mmnto/cli 1.117.0 → 1.118.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/adapters/github-cli-project.d.ts +4 -2
  2. package/dist/adapters/github-cli-project.d.ts.map +1 -1
  3. package/dist/adapters/github-cli-project.js +26 -3
  4. package/dist/adapters/github-cli-project.js.map +1 -1
  5. package/dist/adapters/github-cli-project.test.d.ts +2 -0
  6. package/dist/adapters/github-cli-project.test.d.ts.map +1 -0
  7. package/dist/adapters/github-cli-project.test.js +80 -0
  8. package/dist/adapters/github-cli-project.test.js.map +1 -0
  9. package/dist/commands/bootstrap-wiring.test.js +28 -0
  10. package/dist/commands/bootstrap-wiring.test.js.map +1 -1
  11. package/dist/commands/init-templates.d.ts +6 -6
  12. package/dist/commands/init-templates.d.ts.map +1 -1
  13. package/dist/commands/init-templates.js +11 -8
  14. package/dist/commands/init-templates.js.map +1 -1
  15. package/dist/commands/init.test.js +54 -6
  16. package/dist/commands/init.test.js.map +1 -1
  17. package/dist/commands/install-hooks.d.ts.map +1 -1
  18. package/dist/commands/install-hooks.js +12 -1
  19. package/dist/commands/install-hooks.js.map +1 -1
  20. package/dist/commands/lint.js +1 -1
  21. package/dist/commands/lint.js.map +1 -1
  22. package/dist/commands/orient.test.js +21 -0
  23. package/dist/commands/orient.test.js.map +1 -1
  24. package/dist/commands/pre-push-gate-matrix.test.d.ts +17 -0
  25. package/dist/commands/pre-push-gate-matrix.test.d.ts.map +1 -0
  26. package/dist/commands/pre-push-gate-matrix.test.js +135 -0
  27. package/dist/commands/pre-push-gate-matrix.test.js.map +1 -0
  28. package/dist/commands/shield-admission.test.d.ts +14 -0
  29. package/dist/commands/shield-admission.test.d.ts.map +1 -0
  30. package/dist/commands/shield-admission.test.js +301 -0
  31. package/dist/commands/shield-admission.test.js.map +1 -0
  32. package/dist/commands/shield-classify.d.ts +10 -0
  33. package/dist/commands/shield-classify.d.ts.map +1 -1
  34. package/dist/commands/shield-classify.js +19 -1
  35. package/dist/commands/shield-classify.js.map +1 -1
  36. package/dist/commands/shield-covariate.test.js +3 -0
  37. package/dist/commands/shield-covariate.test.js.map +1 -1
  38. package/dist/commands/shield-estimate.js +5 -5
  39. package/dist/commands/shield-estimate.js.map +1 -1
  40. package/dist/commands/shield-estimate.test.js +7 -3
  41. package/dist/commands/shield-estimate.test.js.map +1 -1
  42. package/dist/commands/shield-nonreview.test.d.ts +12 -14
  43. package/dist/commands/shield-nonreview.test.d.ts.map +1 -1
  44. package/dist/commands/shield-nonreview.test.js +228 -42
  45. package/dist/commands/shield-nonreview.test.js.map +1 -1
  46. package/dist/commands/shield.d.ts +116 -1
  47. package/dist/commands/shield.d.ts.map +1 -1
  48. package/dist/commands/shield.js +439 -116
  49. package/dist/commands/shield.js.map +1 -1
  50. package/dist/git.d.ts +20 -2
  51. package/dist/git.d.ts.map +1 -1
  52. package/dist/git.js +11 -4
  53. package/dist/git.js.map +1 -1
  54. package/dist/git.test.js +58 -18
  55. package/dist/git.test.js.map +1 -1
  56. package/dist/index.js +2 -1
  57. package/dist/index.js.map +1 -1
  58. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"shield-estimate.test.js","sourceRoot":"","sources":["../../src/commands/shield-estimate.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shield-estimate.test.js","sourceRoot":"","sources":["../../src/commands/shield-estimate.test.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,18 @@
1
1
  /**
2
- * CLI-level deterministic-skip NON-REVIEW tests (mmnto-ai/totem#2466).
2
+ * CLI-level deterministic-skip tests (mmnto-ai/totem#2466 → #2473).
3
3
  *
4
- * `totem review` has three deterministic skip paths that drop the ENTIRE diff
5
- * without examining it: all-non-code, no-code-after-filtering, and all-generated.
6
- * Each used to call `writeReviewedContentHash(...)` before returning, minting the
7
- * `.reviewed-content-hash` push-gate stamp for content nothing reviewed.
4
+ * `totem review` has four deterministic skip paths that drop the ENTIRE diff
5
+ * without examining it: no-diff, all-non-code, filtered-empty, all-generated.
6
+ * Since #2473 each is an ADMISSION verdict through the single emission path:
7
+ * one machine-readable admission record + ONE calm info-level disposition line
8
+ * — and never a stamp. The no-diff arm is the sharpest regression here: it
9
+ * used to be a "trivial pass" that STAMPED `.reviewed-content-hash`, minting
10
+ * push authorization for a tree no reviewer saw.
8
11
  *
9
- * The danger is not uniform, which is why all three are pinned here rather than
10
- * only the reported one:
11
- *
12
- * - all-non-code / filtered-empty fire only when no code file is in the diff,
13
- * so the hash is unchanged and the stamp was a no-op. The defect is the
14
- * dishonest clean-pass surface (Tenets 4/13).
15
- * - all-generated can drop a TRACKED, HASHED source file, because
16
- * `.gitattributes linguist-generated` can mark a `.ts` as generated. There the
17
- * stamp genuinely authorized never-reviewed code — a push-gate bypass.
12
+ * The all-generated danger remains non-uniform (why every path is pinned):
13
+ * `.gitattributes linguist-generated` can mark a `.ts` as generated, so that
14
+ * skip can drop a TRACKED, HASHED source file — the old stamp there genuinely
15
+ * authorized never-reviewed code.
18
16
  *
19
17
  * Mirrors `shield-covariate.test.ts`: its own file to avoid mock contamination,
20
18
  * mocking the heavy seams (config, engine bootstrap, hook installer, git diff) so
@@ -1 +1 @@
1
- {"version":3,"file":"shield-nonreview.test.d.ts","sourceRoot":"","sources":["../../src/commands/shield-nonreview.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
1
+ {"version":3,"file":"shield-nonreview.test.d.ts","sourceRoot":"","sources":["../../src/commands/shield-nonreview.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG"}
@@ -1,20 +1,18 @@
1
1
  /**
2
- * CLI-level deterministic-skip NON-REVIEW tests (mmnto-ai/totem#2466).
2
+ * CLI-level deterministic-skip tests (mmnto-ai/totem#2466 → #2473).
3
3
  *
4
- * `totem review` has three deterministic skip paths that drop the ENTIRE diff
5
- * without examining it: all-non-code, no-code-after-filtering, and all-generated.
6
- * Each used to call `writeReviewedContentHash(...)` before returning, minting the
7
- * `.reviewed-content-hash` push-gate stamp for content nothing reviewed.
4
+ * `totem review` has four deterministic skip paths that drop the ENTIRE diff
5
+ * without examining it: no-diff, all-non-code, filtered-empty, all-generated.
6
+ * Since #2473 each is an ADMISSION verdict through the single emission path:
7
+ * one machine-readable admission record + ONE calm info-level disposition line
8
+ * — and never a stamp. The no-diff arm is the sharpest regression here: it
9
+ * used to be a "trivial pass" that STAMPED `.reviewed-content-hash`, minting
10
+ * push authorization for a tree no reviewer saw.
8
11
  *
9
- * The danger is not uniform, which is why all three are pinned here rather than
10
- * only the reported one:
11
- *
12
- * - all-non-code / filtered-empty fire only when no code file is in the diff,
13
- * so the hash is unchanged and the stamp was a no-op. The defect is the
14
- * dishonest clean-pass surface (Tenets 4/13).
15
- * - all-generated can drop a TRACKED, HASHED source file, because
16
- * `.gitattributes linguist-generated` can mark a `.ts` as generated. There the
17
- * stamp genuinely authorized never-reviewed code — a push-gate bypass.
12
+ * The all-generated danger remains non-uniform (why every path is pinned):
13
+ * `.gitattributes linguist-generated` can mark a `.ts` as generated, so that
14
+ * skip can drop a TRACKED, HASHED source file — the old stamp there genuinely
15
+ * authorized never-reviewed code.
18
16
  *
19
17
  * Mirrors `shield-covariate.test.ts`: its own file to avoid mock contamination,
20
18
  * mocking the heavy seams (config, engine bootstrap, hook installer, git diff) so
@@ -25,6 +23,7 @@ import * as os from 'node:os';
25
23
  import * as path from 'node:path';
26
24
  import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
27
25
  import { cleanTmpDir } from '../test-utils.js';
26
+ import { log } from '../ui.js';
28
27
  // ── Seams that MUST NOT run once a skip path is taken ──
29
28
  const bootstrapEngineSpy = vi.fn(async (..._args) => { });
30
29
  const upgradePrePushHookSpy = vi.fn((..._args) => false);
@@ -33,6 +32,9 @@ const TEST_CONFIG = {
33
32
  totemDir: '.totem',
34
33
  review: { sourceExtensions: ['.ts'] },
35
34
  };
35
+ // Per-test config override (the malformed-lanes precedence test); reset in
36
+ // beforeEach. The loadConfig mock closes over this holder.
37
+ let currentConfig = TEST_CONFIG;
36
38
  vi.mock('../utils/bootstrap-engine.js', async (importOriginal) => {
37
39
  const actual = await importOriginal();
38
40
  return { ...actual, bootstrapEngine: bootstrapEngineSpy };
@@ -47,7 +49,7 @@ vi.mock('../utils.js', async (importOriginal) => {
47
49
  ...actual,
48
50
  loadEnv: vi.fn(),
49
51
  resolveConfigPath: (cwd) => path.join(cwd, 'totem.config.ts'),
50
- loadConfig: vi.fn(async () => TEST_CONFIG),
52
+ loadConfig: vi.fn(async () => currentConfig),
51
53
  };
52
54
  });
53
55
  vi.mock('../git.js', async (importOriginal) => {
@@ -66,22 +68,50 @@ function diffFor(file) {
66
68
  '+new',
67
69
  ].join('\n');
68
70
  }
69
- describe('deterministic skip paths are NON-REVIEWS and never stamp (#2466)', () => {
71
+ describe('deterministic skips are not-applicable ADMISSIONS: record + calm line, never a stamp (#2473)', () => {
70
72
  let tmpDir;
71
- let warnings;
73
+ let output;
74
+ let infoLines;
75
+ let warnLines;
72
76
  const stampPath = () => path.join(tmpDir, '.totem', 'cache', '.reviewed-content-hash');
77
+ const admissionsDir = () => path.join(tmpDir, '.totem', 'artifacts', 'admissions');
78
+ /** The store's records, parsed. */
79
+ function admissionRecords() {
80
+ if (!fs.existsSync(admissionsDir()))
81
+ return [];
82
+ return fs
83
+ .readdirSync(admissionsDir())
84
+ .map((f) => JSON.parse(fs.readFileSync(path.join(admissionsDir(), f), 'utf-8')));
85
+ }
73
86
  beforeEach(() => {
74
87
  tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'shield-nonreview-'));
75
- warnings = [];
88
+ output = [];
89
+ infoLines = [];
90
+ warnLines = [];
76
91
  vi.spyOn(process, 'cwd').mockReturnValue(tmpDir);
77
92
  vi.spyOn(console, 'error').mockImplementation((...args) => {
78
- warnings.push(args.map(String).join(' '));
93
+ output.push(args.map(String).join(' '));
79
94
  });
80
95
  vi.spyOn(console, 'log').mockImplementation((...args) => {
81
- warnings.push(args.map(String).join(' '));
96
+ output.push(args.map(String).join(' '));
97
+ });
98
+ // Level-lock spies (the calm-line invariant): the disposition line is
99
+ // info-level, never WARN-class — it prints on every docs-only run in every
100
+ // consumer repo and must not read as a warning wall (#2473 consumer datum).
101
+ vi.spyOn(log, 'info').mockImplementation((_tag, msg) => {
102
+ infoLines.push(msg);
103
+ });
104
+ vi.spyOn(log, 'warn').mockImplementation((_tag, msg) => {
105
+ warnLines.push(msg);
82
106
  });
83
107
  bootstrapEngineSpy.mockClear();
108
+ upgradePrePushHookSpy.mockClear();
84
109
  getDiffForReviewSpy.mockClear();
110
+ getDiffForReviewSpy.mockReset();
111
+ // The production resolver shape: a no-changes resolution is a discriminated
112
+ // empty carrying the RESOLVED scope (conformance note 1), never null.
113
+ getDiffForReviewSpy.mockResolvedValue({ empty: true, source: 'branch-vs-base', base: 'main' });
114
+ currentConfig = TEST_CONFIG;
85
115
  });
86
116
  afterEach(() => {
87
117
  vi.restoreAllMocks();
@@ -97,46 +127,119 @@ describe('deterministic skip paths are NON-REVIEWS and never stamp (#2466)', ()
97
127
  // Best-effort cleanup; the OS reclaims the temp dir.
98
128
  }
99
129
  });
130
+ /** The single calm disposition line for `reason`, asserted info-level and one-line. */
131
+ function expectCalmLine(reason) {
132
+ const matching = infoLines.filter((l) => l.includes(`not-applicable (${reason})`));
133
+ expect(matching).toHaveLength(1);
134
+ const line = matching[0];
135
+ expect(line).not.toContain('\n');
136
+ expect(line).toMatch(/does not authorize a push/);
137
+ // Never WARN-class — the level lock.
138
+ expect(warnLines.filter((l) => l.includes('not-applicable ('))).toHaveLength(0);
139
+ return line;
140
+ }
141
+ /** The store's single record, asserted against the expected identity fields. */
142
+ function expectSingleRecord(reason, skippedFileCount) {
143
+ const records = admissionRecords();
144
+ expect(records).toHaveLength(1);
145
+ const record = records[0];
146
+ expect(record['disposition']).toBe('not-applicable');
147
+ expect(record['reason']).toBe(reason);
148
+ expect(record['skippedFileCount']).toBe(skippedFileCount);
149
+ expect(record['schemaVersion']).toMatch(/^1\.\d+\.\d+$/);
150
+ expect(record['inputHash']).toMatch(/^[0-9a-f]{64}$/);
151
+ expect(record['projectionPolicyHash']).toMatch(/^[0-9a-f]{64}$/);
152
+ return record;
153
+ }
100
154
  /**
101
155
  * Drive the real command with a diff whose files are all `files`.
102
156
  *
103
157
  * A run that does NOT take a skip path continues into the LLM review path and
104
158
  * throws on the unmocked embedding config. That throw is expected and is itself
105
159
  * evidence the skip did not fire, so it is swallowed here — every assertion
106
- * below is made on the stamp and the emitted output, never on resolution.
160
+ * below is made on the stamp, the store, and the emitted output.
107
161
  */
108
- async function runWithDiff(files) {
109
- await runWithDiffRaw(files.map(diffFor).join('\n'), files);
162
+ async function runWithDiff(files, options = {}) {
163
+ await runWithDiffRaw(files.map(diffFor).join('\n'), files, options);
110
164
  }
111
165
  /**
112
166
  * Lower-level driver for cases where the diff BODY and the changed-file LIST
113
167
  * must differ — the filtered-empty path needs a code file present in the list
114
168
  * whose hunks are absent from the diff (a mode-only change has this shape).
115
169
  */
116
- async function runWithDiffRaw(diff, changedFiles) {
117
- getDiffForReviewSpy.mockResolvedValueOnce({ diff, changedFiles });
170
+ async function runWithDiffRaw(diff, changedFiles, options = {}) {
171
+ getDiffForReviewSpy.mockResolvedValue({ diff, changedFiles, source: 'uncommitted' });
118
172
  const { shieldCommand } = await import('./shield.js');
119
173
  try {
120
- await shieldCommand({});
174
+ await shieldCommand(options);
121
175
  }
122
176
  catch {
123
177
  // See doc comment — a non-skip run is expected to fail downstream.
124
178
  }
125
179
  }
126
- it('all-non-code: does not stamp, and says so', async () => {
180
+ it('no-diff: does NOT stamp (the removed trivial-pass), records the RESOLVED empty scope', async () => {
181
+ // getDiffForReview resolves the scoped empty (the beforeEach default) —
182
+ // the arm that used to write `.reviewed-content-hash` as a "trivial pass".
183
+ const { shieldCommand } = await import('./shield.js');
184
+ await shieldCommand({});
185
+ expect(fs.existsSync(stampPath())).toBe(false);
186
+ expectCalmLine('no-diff');
187
+ const record = expectSingleRecord('no-diff', 0);
188
+ // Conformance note 1: the record binds the resolver's RESOLVED terminal
189
+ // scope; the requested selector fills the selector slot.
190
+ expect(record['scope']).toEqual({
191
+ source: 'branch-vs-base',
192
+ base: 'main',
193
+ head: null,
194
+ selectorForm: '(default-chain)',
195
+ });
196
+ // A skip never boots the engine (phase ordering).
197
+ expect(bootstrapEngineSpy).not.toHaveBeenCalled();
198
+ });
199
+ it('a malformed lane config never preempts a not-applicable disposition (conformance note 2)', async () => {
200
+ // Fan configuration is downstream of admission: with a docs-only diff and
201
+ // a lanes value that would hard-error validation, the run still resolves
202
+ // to the calm disposition — the config error is an ADMITTED-branch error.
203
+ currentConfig = {
204
+ ...TEST_CONFIG,
205
+ review: { sourceExtensions: ['.ts'], lanes: 12345 },
206
+ };
207
+ getDiffForReviewSpy.mockResolvedValue({
208
+ diff: diffFor('docs/plan.md'),
209
+ changedFiles: ['docs/plan.md'],
210
+ source: 'uncommitted',
211
+ });
212
+ const { shieldCommand } = await import('./shield.js');
213
+ await expect(shieldCommand({})).resolves.toBeUndefined();
214
+ expectCalmLine('all-non-code');
215
+ });
216
+ it('all-non-code: does not stamp, records, and says so calmly', async () => {
127
217
  await runWithDiff(['docs/plan.md', 'README.md']);
128
218
  // The load-bearing assertion: no push authorization was minted.
129
219
  expect(fs.existsSync(stampPath())).toBe(false);
130
- // And the skip is LOUD — a caller cannot read it as a clean review.
131
- expect(warnings.join('\n')).toMatch(/NON-REVIEW/);
132
- expect(warnings.join('\n')).toMatch(/does not authorize a push/);
220
+ const line = expectCalmLine('all-non-code');
221
+ // Exact rendered count (leg MINOR 4): the count measures files in scope
222
+ // after generated-artifact exclusion, and the wording names that scope.
223
+ expect(line).toContain('every file in scope (2) is non-code');
224
+ expectSingleRecord('all-non-code', 2);
225
+ expect(bootstrapEngineSpy).not.toHaveBeenCalled();
226
+ });
227
+ it('mixed generated + prose: the count is the POST-STRIP in-scope total, not the changed-file total (re-arm MINOR 3)', async () => {
228
+ // 3 changed files, 1 generated (stripped), 2 prose in scope: the rendered
229
+ // count must be 2 — a fixture where keptFiles === changedFiles cannot
230
+ // distinguish the two candidate semantics, so this one CAN.
231
+ await runWithDiff(['pnpm-lock.yaml', 'docs/plan.md', 'README.md']);
232
+ expect(fs.existsSync(stampPath())).toBe(false);
233
+ const line = expectCalmLine('all-non-code');
234
+ expect(line).toContain('every file in scope (2) is non-code');
235
+ expectSingleRecord('all-non-code', 2);
133
236
  });
134
237
  it('all-generated: does not stamp — the path that could authorize real code', async () => {
135
238
  // A lockfile is generated by default glob, so the whole diff drops.
136
239
  await runWithDiff(['pnpm-lock.yaml']);
137
240
  expect(fs.existsSync(stampPath())).toBe(false);
138
- expect(warnings.join('\n')).toMatch(/NON-REVIEW/);
139
- expect(warnings.join('\n')).toMatch(/does not authorize a push/);
241
+ expectCalmLine('all-generated');
242
+ expectSingleRecord('all-generated', 1);
140
243
  });
141
244
  it('all-generated via .gitattributes on a TRACKED .ts: does not stamp (the bypass case)', async () => {
142
245
  // The scenario the default-glob lockfile test does NOT reach, and the only
@@ -146,11 +249,12 @@ describe('deterministic skip paths are NON-REVIEWS and never stamp (#2466)', ()
146
249
  fs.writeFileSync(path.join(tmpDir, '.gitattributes'), 'src/generated-client.ts linguist-generated\n');
147
250
  await runWithDiff(['src/generated-client.ts']);
148
251
  expect(fs.existsSync(stampPath())).toBe(false);
149
- // Assert the GENERATED-path wording specifically. A bare /NON-REVIEW/ match
150
- // would also pass if this fell through to the all-non-code branch, which
151
- // would mean the test proves nothing about the bypass it exists to cover.
152
- expect(warnings.join('\n')).toMatch(/every changed file is a generated artifact/);
153
- expect(warnings.join('\n')).toMatch(/does not authorize a push/);
252
+ // Assert the GENERATED-path wording specifically. A bare not-applicable
253
+ // match would also pass if this fell through to the all-non-code branch,
254
+ // which would mean the test proves nothing about the bypass it covers.
255
+ const line = expectCalmLine('all-generated');
256
+ expect(line).toMatch(/is a generated artifact/);
257
+ expectSingleRecord('all-generated', 1);
154
258
  });
155
259
  it('filtered-empty: does not stamp when no code hunks survive filtering', async () => {
156
260
  // Stage 2 fires when the diff is neither all-code nor all-non-code and the
@@ -158,16 +262,98 @@ describe('deterministic skip paths are NON-REVIEWS and never stamp (#2466)', ()
158
262
  // file has exactly this shape: listed as changed, absent from the diff body.
159
263
  await runWithDiffRaw(diffFor('docs/plan.md'), ['docs/plan.md', 'src/index.ts']);
160
264
  expect(fs.existsSync(stampPath())).toBe(false);
161
- // Stage-2 wording specifically — distinguishes this from the Stage-1
162
- // all-non-code branch, which a generic NON-REVIEW match would not.
163
- expect(warnings.join('\n')).toMatch(/no code changes remain after filtering/);
164
- expect(warnings.join('\n')).toMatch(/does not authorize a push/);
265
+ const line = expectCalmLine('filtered-empty');
266
+ // Stage-2 wording, with the EXACT rendered count (leg MINOR 4): the count
267
+ // is the in-scope file total, and the wording says so — never "N non-code
268
+ // file(s)" for a number that counts something else.
269
+ expect(line).toContain('no code diff remains after filtering non-code files from 2 file(s) in scope');
270
+ expectSingleRecord('filtered-empty', 2);
271
+ });
272
+ it('--fail-on cannot reach an admission skip: docs-only + --fail-on critical resolves clean (regression)', async () => {
273
+ // Codex regression lock: every skip returns before `runReviewFan`, so the
274
+ // fan's `!cacheEligible` arm can never convert a skip into SHIELD_FAILED.
275
+ getDiffForReviewSpy.mockResolvedValue({
276
+ diff: diffFor('docs/plan.md'),
277
+ changedFiles: ['docs/plan.md'],
278
+ source: 'uncommitted',
279
+ });
280
+ const { shieldCommand } = await import('./shield.js');
281
+ await expect(shieldCommand({ failOn: 'critical' })).resolves.toBeUndefined();
282
+ expectCalmLine('all-non-code');
283
+ });
284
+ it('--gate maps a known not-applicable admission to a clean pass (the hook form)', async () => {
285
+ getDiffForReviewSpy.mockResolvedValue({
286
+ diff: diffFor('docs/plan.md'),
287
+ changedFiles: ['docs/plan.md'],
288
+ source: 'uncommitted',
289
+ });
290
+ const { shieldCommand } = await import('./shield.js');
291
+ await expect(shieldCommand({ gate: true })).resolves.toBeUndefined();
292
+ expectCalmLine('all-non-code');
293
+ expect(fs.existsSync(stampPath())).toBe(false);
294
+ });
295
+ it('--gate + --fail-on is CONFIG_INVALID, validated BEFORE the hook-upgrade side effect', async () => {
296
+ const { shieldCommand } = await import('./shield.js');
297
+ await expect(shieldCommand({ gate: true, failOn: 'critical' })).rejects.toMatchObject({ code: 'CONFIG_INVALID' });
298
+ // Codex amendment: an invalid command must not mutate the hook on its way
299
+ // to CONFIG_INVALID.
300
+ expect(upgradePrePushHookSpy).not.toHaveBeenCalled();
301
+ });
302
+ it('a failed record write degrades to a loud warning — the line still prints, exit unchanged', async () => {
303
+ // A FILE at the admissions-dir path makes mkdirSync/writeFileSync fail.
304
+ fs.mkdirSync(path.join(tmpDir, '.totem', 'artifacts'), { recursive: true });
305
+ fs.writeFileSync(path.join(tmpDir, '.totem', 'artifacts', 'admissions'), 'not a dir');
306
+ await runWithDiff(['docs/plan.md']);
307
+ expect(fs.existsSync(stampPath())).toBe(false);
308
+ const line = expectCalmLine('all-non-code');
309
+ expect(line).not.toContain('recorded');
310
+ expect(warnLines.some((l) => l.includes('Admission record write failed'))).toBe(true);
311
+ });
312
+ it('covariate resolves the exact-identity admission record (and warns loud when absent)', async () => {
313
+ const docsDiff = {
314
+ diff: diffFor('docs/plan.md'),
315
+ changedFiles: ['docs/plan.md'],
316
+ source: 'uncommitted',
317
+ };
318
+ getDiffForReviewSpy.mockResolvedValue(docsDiff);
319
+ const { shieldCommand } = await import('./shield.js');
320
+ // Absent: LOUD no-current-record sensor, never a fallback.
321
+ await shieldCommand({ covariate: true });
322
+ expect(warnLines.some((l) => l.includes('no admission record exists'))).toBe(true);
323
+ expect(admissionRecords()).toHaveLength(0);
324
+ // Record it, then resolve it by exact identity.
325
+ await shieldCommand({});
326
+ const record = expectSingleRecord('all-non-code', 1);
327
+ output.length = 0;
328
+ await shieldCommand({ covariate: true });
329
+ const lane = output.find((l) => l.startsWith('local-lane:'));
330
+ expect(lane).toBe(`local-lane: not-applicable (all-non-code) recorded=${String(fs.readdirSync(admissionsDir())[0]).slice(0, 8)} at=${String(record['createdAt'])}`);
331
+ });
332
+ it('covariate falls back LOUD on a corrupt exact-identity record — never a stale line (leg MINOR 7)', async () => {
333
+ getDiffForReviewSpy.mockResolvedValue({
334
+ diff: diffFor('docs/plan.md'),
335
+ changedFiles: ['docs/plan.md'],
336
+ source: 'uncommitted',
337
+ });
338
+ const { shieldCommand } = await import('./shield.js');
339
+ await shieldCommand({}); // record it
340
+ const recordFile = fs.readdirSync(admissionsDir())[0];
341
+ fs.writeFileSync(path.join(admissionsDir(), recordFile), '{ not json', 'utf-8');
342
+ output.length = 0;
343
+ warnLines.length = 0;
344
+ await expect(shieldCommand({ covariate: true })).resolves.toBeUndefined();
345
+ // The corrupt load routed to the sensor AND the loud no-current-record
346
+ // warn fired — and no local-lane line printed (never a stale fallback).
347
+ expect(warnLines.some((l) => l.startsWith('Sensor:'))).toBe(true);
348
+ expect(warnLines.some((l) => l.includes('no admission record exists'))).toBe(true);
349
+ expect(output.some((l) => l.startsWith('local-lane:'))).toBe(false);
165
350
  });
166
351
  it('mixed code + prose does NOT take a skip path (the skip must not over-fire)', async () => {
167
352
  // Guards the inverse error: tightening the skip must not start skipping real
168
353
  // code. A surviving `.ts` file means this is a review, not a non-review.
169
354
  await runWithDiff(['docs/plan.md', 'src/index.ts']);
170
- expect(warnings.join('\n')).not.toMatch(/NON-REVIEW/);
355
+ expect(infoLines.filter((l) => l.includes('not-applicable ('))).toHaveLength(0);
356
+ expect(admissionRecords()).toHaveLength(0);
171
357
  // It also must not stamp here — this run never completed a review either.
172
358
  expect(fs.existsSync(stampPath())).toBe(false);
173
359
  });