rhachet-roles-bhrain 0.30.3 → 0.30.4

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 (23) hide show
  1. package/dist/contract/cli/review.d.ts +1 -0
  2. package/dist/contract/cli/review.js +55 -0
  3. package/dist/contract/cli/review.js.map +1 -1
  4. package/dist/domain.operations/review/emitReviewSkip.d.ts +17 -0
  5. package/dist/domain.operations/review/emitReviewSkip.js +89 -0
  6. package/dist/domain.operations/review/emitReviewSkip.js.map +1 -0
  7. package/dist/domain.operations/review/getReviewDisplayPath.d.ts +10 -0
  8. package/dist/domain.operations/review/getReviewDisplayPath.js +39 -0
  9. package/dist/domain.operations/review/getReviewDisplayPath.js.map +1 -0
  10. package/dist/domain.operations/review/getReviewOptionalSkipDecision.d.ts +30 -0
  11. package/dist/domain.operations/review/getReviewOptionalSkipDecision.js +43 -0
  12. package/dist/domain.operations/review/getReviewOptionalSkipDecision.js.map +1 -0
  13. package/dist/domain.operations/review/getReviewSkipReport.d.ts +16 -0
  14. package/dist/domain.operations/review/getReviewSkipReport.js +30 -0
  15. package/dist/domain.operations/review/getReviewSkipReport.js.map +1 -0
  16. package/dist/domain.operations/review/getSuppliesOptionalSupported.d.ts +35 -0
  17. package/dist/domain.operations/review/getSuppliesOptionalSupported.js +34 -0
  18. package/dist/domain.operations/review/getSuppliesOptionalSupported.js.map +1 -0
  19. package/dist/domain.operations/review/stepReview.d.ts +9 -0
  20. package/dist/domain.operations/review/stepReview.js +32 -5
  21. package/dist/domain.operations/review/stepReview.js.map +1 -1
  22. package/dist/domain.roles/reviewer/briefs/contract.reviewer-output.md +21 -0
  23. package/package.json +2 -2
@@ -12,6 +12,7 @@ export declare const parseReviewArgs: (argv: string[]) => {
12
12
  pathsWout: string | undefined;
13
13
  join: 'union' | 'intersect';
14
14
  refs: string[] | undefined;
15
+ optional: string[] | undefined;
15
16
  conversation: string[] | undefined;
16
17
  output: string | undefined;
17
18
  focus: 'push' | 'pull';
@@ -28,7 +28,10 @@ const child_process_1 = require("child_process");
28
28
  const helpful_errors_1 = require("helpful-errors");
29
29
  const path = __importStar(require("path"));
30
30
  const brains_1 = require("rhachet/brains");
31
+ const emitReviewSkip_1 = require("../../domain.operations/review/emitReviewSkip");
31
32
  const genDefaultReviewOutputPath_1 = require("../../domain.operations/review/genDefaultReviewOutputPath");
33
+ const getReviewOptionalSkipDecision_1 = require("../../domain.operations/review/getReviewOptionalSkipDecision");
34
+ const getSuppliesOptionalSupported_1 = require("../../domain.operations/review/getSuppliesOptionalSupported");
32
35
  const stepReview_1 = require("../../domain.operations/review/stepReview");
33
36
  /**
34
37
  * .what = default brain for review skill
@@ -60,6 +63,9 @@ options:
60
63
  --diffs <range> diff range: since-main, since-commit, since-staged (default: since-main)
61
64
  --join <mode> how to join --paths-with and --diffs: intersect or union (default: intersect)
62
65
  --refs <globs> glob pattern(s) for reference files (can repeat)
66
+ --optional <supply> mark a supply as optional; when its glob matches zero files, skip the
67
+ review (emit 0 blockers / 0 nitpicks, exit 0) instead of a fail-loud error.
68
+ supported: rules (can repeat)
63
69
  --conversation <files> comma-separated prior peer-review dialogue files (.given + .taken) to thread as context (opt-in; guard expands $conversation)
64
70
  --output <path> output file path (default: .review/$branch/$isotime.output.md)
65
71
  --focus <mode> review focus: push or pull (default: push)
@@ -120,6 +126,16 @@ const parseReviewArgs = (argv) => {
120
126
  i++;
121
127
  }
122
128
  }
129
+ else if (key === 'optional') {
130
+ // --optional can repeat; record presence (as []) even when the value is absent or
131
+ // another flag, so review() can fail loud on a bare `--optional` (no supply named)
132
+ if (!options.optional)
133
+ options.optional = [];
134
+ if (value && !value.startsWith('--')) {
135
+ options.optional.push(value);
136
+ i++;
137
+ }
138
+ }
123
139
  else if (value && !value.startsWith('--')) {
124
140
  // .note = --conversation is a normal single-value flag: the guard expands
125
141
  // $conversation to ONE comma-joined token, split into files below
@@ -136,6 +152,7 @@ const parseReviewArgs = (argv) => {
136
152
  pathsWout: options['paths-wout'],
137
153
  join: options.join ?? 'intersect',
138
154
  refs: options.refs,
155
+ optional: options.optional,
139
156
  conversation: options.conversation
140
157
  ? options.conversation.split(',')
141
158
  : undefined,
@@ -172,9 +189,46 @@ const review = async () => {
172
189
  console.error('run with --help for usage');
173
190
  process.exit(2);
174
191
  }
192
+ // validate --optional supply names (fail loud: never silently disable strictness)
193
+ // .note = only 'rules' is supported today; 'refs' is a deliberate future extension, so it
194
+ // is rejected loudly rather than silently accepted as a no-op (see Q7 + edgecases)
195
+ if (options.optional !== undefined) {
196
+ // a bare `--optional` (no supply named) must not quietly disable the strict default
197
+ if (options.optional.length === 0) {
198
+ console.error('error: --optional requires a supply name (supported: rules)');
199
+ console.error('run with --help for usage');
200
+ process.exit(2);
201
+ }
202
+ // reject any unknown or not-yet-supported supply name
203
+ const unsupported = (0, getSuppliesOptionalSupported_1.getSuppliesUnsupported)({ supplies: options.optional });
204
+ if (unsupported.length > 0) {
205
+ console.error(`error: --optional does not support: ${unsupported.join(', ')} (supported: ${getSuppliesOptionalSupported_1.SUPPLIES_OPTIONAL_SUPPORTED.join(', ')})`);
206
+ console.error('run with --help for usage');
207
+ process.exit(2);
208
+ }
209
+ }
175
210
  // determine output path (generate default if not specified)
176
211
  const cwd = process.cwd();
177
212
  const outputPath = options.output ?? (0, genDefaultReviewOutputPath_1.genDefaultReviewOutputPath)({ cwd });
213
+ // fast --optional skip pre-check, BEFORE expensive brain discovery
214
+ // .why = the vision requires an empty-rules skip to pay ZERO brain cost; genContextBrain
215
+ // below walks the filesystem for brain packages, so the emptiness check must run
216
+ // first (mirrors the "validate required args before expensive brain discovery"
217
+ // pre-check above). the skip invokes no brain, so it is deterministic and zero-cost.
218
+ const skipDecision = await (0, getReviewOptionalSkipDecision_1.getReviewOptionalSkipDecision)({
219
+ rules: options.rules,
220
+ optional: options.optional,
221
+ cwd,
222
+ });
223
+ if (skipDecision.skip) {
224
+ await (0, emitReviewSkip_1.emitReviewSkip)({
225
+ supply: 'rules',
226
+ ruleGlobs: skipDecision.ruleGlobs,
227
+ output: outputPath,
228
+ cwd,
229
+ });
230
+ process.exit(0);
231
+ }
178
232
  // create brain context via discovery with credentials
179
233
  // .note = uses env: 'prep' because review is used to prepare code, not test it
180
234
  // .note = keyrack auto-unlocks locked keys internally when the brain fetches its
@@ -194,6 +248,7 @@ const review = async () => {
194
248
  pathsWout: options.pathsWout,
195
249
  join: options.join,
196
250
  refs: options.refs,
251
+ optional: options.optional,
197
252
  conversation: options.conversation,
198
253
  output: outputPath,
199
254
  focus: options.focus,
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/contract/cli/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/contract/cli/review.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { StepReviewResult } from '../../domain.operations/review/stepReview';
2
+ /**
3
+ * .what = writes + echoes the 🌙 skipped review for an `--optional` supply-empty skip, and
4
+ * returns its zeroed result
5
+ * .why = one source for the skip's side effects (write `--output` + echo stdout) and result,
6
+ * shared by the CLI pre-check (`review.ts`, before `genContextBrain`) and `stepReview`'s
7
+ * defense-in-depth branch — so the skip behaves identically wherever the empty supply is
8
+ * detected, with no duplicated i/o.
9
+ * .note = emits real `0/0` counts (never a faked abstain — rule.forbid.failhide) so the guard
10
+ * tallies approved; invokes no brain, so it is deterministic and zero-cost.
11
+ */
12
+ export declare const emitReviewSkip: (input: {
13
+ supply: 'rules';
14
+ ruleGlobs: string[];
15
+ output: string;
16
+ cwd: string;
17
+ }) => Promise<StepReviewResult>;
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.emitReviewSkip = void 0;
27
+ const fs = __importStar(require("fs/promises"));
28
+ const iso_price_1 = require("iso-price");
29
+ const path = __importStar(require("path"));
30
+ const getReviewDisplayPath_1 = require("../../domain.operations/review/getReviewDisplayPath");
31
+ const getReviewSkipReport_1 = require("../../domain.operations/review/getReviewSkipReport");
32
+ /**
33
+ * .what = writes + echoes the 🌙 skipped review for an `--optional` supply-empty skip, and
34
+ * returns its zeroed result
35
+ * .why = one source for the skip's side effects (write `--output` + echo stdout) and result,
36
+ * shared by the CLI pre-check (`review.ts`, before `genContextBrain`) and `stepReview`'s
37
+ * defense-in-depth branch — so the skip behaves identically wherever the empty supply is
38
+ * detected, with no duplicated i/o.
39
+ * .note = emits real `0/0` counts (never a faked abstain — rule.forbid.failhide) so the guard
40
+ * tallies approved; invokes no brain, so it is deterministic and zero-cost.
41
+ */
42
+ const emitReviewSkip = async (input) => {
43
+ const outputAbsolute = path.isAbsolute(input.output)
44
+ ? input.output
45
+ : path.join(input.cwd, input.output);
46
+ // ensure the --output parent exists, then write the skip report + echo it to stdout
47
+ await fs.mkdir(path.dirname(outputAbsolute), { recursive: true });
48
+ const skipReport = (0, getReviewSkipReport_1.getReviewSkipReport)({
49
+ supply: input.supply,
50
+ globs: input.ruleGlobs,
51
+ reviewDisplayPath: (0, getReviewDisplayPath_1.getReviewDisplayPath)({ outputAbsolute, cwd: input.cwd }),
52
+ });
53
+ await fs.writeFile(outputAbsolute, skipReport, 'utf-8');
54
+ console.log(skipReport);
55
+ const zeroPrice = (0, iso_price_1.asIsoPriceHuman)({ amount: 0, currency: 'USD' });
56
+ return {
57
+ outcome: 'skipped',
58
+ review: { formatted: skipReport },
59
+ // a skip writes no separate log artifacts; the only artifact is the review file itself
60
+ log: { dir: path.dirname(outputAbsolute) },
61
+ output: { path: outputAbsolute },
62
+ metrics: {
63
+ files: { rulesCount: 0, refsCount: 0, targetsCount: 0 },
64
+ expected: {
65
+ tokens: { estimate: 0, contextWindowPercent: 0 },
66
+ cost: { estimate: zeroPrice },
67
+ },
68
+ realized: {
69
+ tokens: {
70
+ input: 0,
71
+ inputCacheCreation: 0,
72
+ inputCacheRead: 0,
73
+ output: 0,
74
+ },
75
+ cost: {
76
+ input: zeroPrice,
77
+ cacheWrite: zeroPrice,
78
+ cacheRead: zeroPrice,
79
+ output: zeroPrice,
80
+ total: zeroPrice,
81
+ },
82
+ // 'PT0S' is a compile-time-validated IsoDurationWords literal (rule.forbid.as-cast)
83
+ time: 'PT0S',
84
+ },
85
+ },
86
+ };
87
+ };
88
+ exports.emitReviewSkip = emitReviewSkip;
89
+ //# sourceMappingURL=emitReviewSkip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitReviewSkip.js","sourceRoot":"","sources":["../../../src/domain.operations/review/emitReviewSkip.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,yCAA4C;AAC5C,2CAA6B;AAE7B,6FAA0F;AAC1F,2FAAwF;AAGxF;;;;;;;;;GASG;AACI,MAAM,cAAc,GAAG,KAAK,EAAE,KAKpC,EAA6B,EAAE;IAC9B,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;QAClD,CAAC,CAAC,KAAK,CAAC,MAAM;QACd,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEvC,oFAAoF;IACpF,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,IAAA,yCAAmB,EAAC;QACrC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,KAAK,EAAE,KAAK,CAAC,SAAS;QACtB,iBAAiB,EAAE,IAAA,2CAAoB,EAAC,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;KAC5E,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAExB,MAAM,SAAS,GAAG,IAAA,2BAAe,EAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAClE,OAAO;QACL,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;QACjC,uFAAuF;QACvF,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;QAC1C,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;QAChC,OAAO,EAAE;YACP,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;YACvD,QAAQ,EAAE;gBACR,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE;gBAChD,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;aAC9B;YACD,QAAQ,EAAE;gBACR,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;oBACR,kBAAkB,EAAE,CAAC;oBACrB,cAAc,EAAE,CAAC;oBACjB,MAAM,EAAE,CAAC;iBACV;gBACD,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,UAAU,EAAE,SAAS;oBACrB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,SAAS;iBACjB;gBACD,oFAAoF;gBACpF,IAAI,EAAE,MAAM;aACb;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AApDW,QAAA,cAAc,kBAoDzB"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * .what = the review output path to display: absolute when it escapes cwd, else cwd-relative
3
+ * .why = a cwd-relative path that escapes into a `..` crawl reads worse than the absolute form;
4
+ * shared by the skip + normal stdout render paths so the display rule lives in one place
5
+ * (rule.forbid.inline-decode-friction)
6
+ */
7
+ export declare const getReviewDisplayPath: (input: {
8
+ outputAbsolute: string;
9
+ cwd: string;
10
+ }) => string;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.getReviewDisplayPath = void 0;
27
+ const path = __importStar(require("path"));
28
+ /**
29
+ * .what = the review output path to display: absolute when it escapes cwd, else cwd-relative
30
+ * .why = a cwd-relative path that escapes into a `..` crawl reads worse than the absolute form;
31
+ * shared by the skip + normal stdout render paths so the display rule lives in one place
32
+ * (rule.forbid.inline-decode-friction)
33
+ */
34
+ const getReviewDisplayPath = (input) => {
35
+ const relative = path.relative(input.cwd, input.outputAbsolute);
36
+ return relative.startsWith('..') ? input.outputAbsolute : relative;
37
+ };
38
+ exports.getReviewDisplayPath = getReviewDisplayPath;
39
+ //# sourceMappingURL=getReviewDisplayPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getReviewDisplayPath.js","sourceRoot":"","sources":["../../../src/domain.operations/review/getReviewDisplayPath.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAE7B;;;;;GAKG;AACI,MAAM,oBAAoB,GAAG,CAAC,KAGpC,EAAU,EAAE;IACX,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IAChE,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;AACrE,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * .what = the single trigger predicate for an `--optional` rules skip: rules is flagged
3
+ * optional AND its glob was effective (non-empty) yet matched zero files
4
+ * .why = one owner for "which supply skips on empty" so the literal `'rules'` + emptiness rule
5
+ * is not duplicated across `review.ts` and `stepReview` (which would drift when `refs`
6
+ * lands). pure, so both the CLI pre-check (which enumerates first, via
7
+ * getReviewOptionalSkipDecision) and stepReview (which already holds its rule files) call
8
+ * the same rule. callers validate `--optional` names against the shared allow-list
9
+ * upstream, so by here `optional` holds only supported names.
10
+ */
11
+ export declare const isReviewRulesSkip: (input: {
12
+ ruleGlobs: string[];
13
+ ruleFiles: string[];
14
+ optional: string[] | undefined;
15
+ }) => boolean;
16
+ /**
17
+ * .what = decides whether an `--optional` rules skip applies, and returns the normalized rules
18
+ * globs (walked once) so the caller can emit the skip without a second glob walk
19
+ * .why = the CLI (`review.ts`) has no rule files yet when it must decide the skip BEFORE brain
20
+ * discovery, so it enumerates here and defers the rule to `isReviewRulesSkip`. keeps the
21
+ * skip trigger in one place while the CLI pays a single glob walk.
22
+ */
23
+ export declare const getReviewOptionalSkipDecision: (input: {
24
+ rules: string | string[];
25
+ optional: string[] | undefined;
26
+ cwd: string;
27
+ }) => Promise<{
28
+ skip: boolean;
29
+ ruleGlobs: string[];
30
+ }>;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getReviewOptionalSkipDecision = exports.isReviewRulesSkip = void 0;
4
+ const enumFilesForReviewSupplies_1 = require("../../domain.operations/review/enumFilesForReviewSupplies");
5
+ /**
6
+ * .what = the single trigger predicate for an `--optional` rules skip: rules is flagged
7
+ * optional AND its glob was effective (non-empty) yet matched zero files
8
+ * .why = one owner for "which supply skips on empty" so the literal `'rules'` + emptiness rule
9
+ * is not duplicated across `review.ts` and `stepReview` (which would drift when `refs`
10
+ * lands). pure, so both the CLI pre-check (which enumerates first, via
11
+ * getReviewOptionalSkipDecision) and stepReview (which already holds its rule files) call
12
+ * the same rule. callers validate `--optional` names against the shared allow-list
13
+ * upstream, so by here `optional` holds only supported names.
14
+ */
15
+ const isReviewRulesSkip = (input) => input.ruleGlobs.length > 0 &&
16
+ input.ruleFiles.length === 0 &&
17
+ (input.optional ?? []).includes('rules');
18
+ exports.isReviewRulesSkip = isReviewRulesSkip;
19
+ /**
20
+ * .what = decides whether an `--optional` rules skip applies, and returns the normalized rules
21
+ * globs (walked once) so the caller can emit the skip without a second glob walk
22
+ * .why = the CLI (`review.ts`) has no rule files yet when it must decide the skip BEFORE brain
23
+ * discovery, so it enumerates here and defers the rule to `isReviewRulesSkip`. keeps the
24
+ * skip trigger in one place while the CLI pays a single glob walk.
25
+ */
26
+ const getReviewOptionalSkipDecision = async (input) => {
27
+ const ruleGlobs = Array.isArray(input.rules)
28
+ ? input.rules
29
+ : [input.rules].filter(Boolean);
30
+ // short-circuit before the glob walk when rules is not flagged optional or has no glob to test
31
+ if (!(input.optional ?? []).includes('rules') || ruleGlobs.length === 0)
32
+ return { skip: false, ruleGlobs };
33
+ const ruleFiles = await (0, enumFilesForReviewSupplies_1.enumFilesForReviewSupplies)({
34
+ glob: ruleGlobs,
35
+ cwd: input.cwd,
36
+ });
37
+ return {
38
+ skip: (0, exports.isReviewRulesSkip)({ ruleGlobs, ruleFiles, optional: input.optional }),
39
+ ruleGlobs,
40
+ };
41
+ };
42
+ exports.getReviewOptionalSkipDecision = getReviewOptionalSkipDecision;
43
+ //# sourceMappingURL=getReviewOptionalSkipDecision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getReviewOptionalSkipDecision.js","sourceRoot":"","sources":["../../../src/domain.operations/review/getReviewOptionalSkipDecision.ts"],"names":[],"mappings":";;;AAAA,yGAAsG;AAEtG;;;;;;;;;GASG;AACI,MAAM,iBAAiB,GAAG,CAAC,KAIjC,EAAW,EAAE,CACZ,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;IAC1B,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;IAC5B,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAP9B,QAAA,iBAAiB,qBAOa;AAE3C;;;;;;GAMG;AACI,MAAM,6BAA6B,GAAG,KAAK,EAAE,KAInD,EAAmD,EAAE;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAC1C,CAAC,CAAC,KAAK,CAAC,KAAK;QACb,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAElC,+FAA+F;IAC/F,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QACrE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAEpC,MAAM,SAAS,GAAG,MAAM,IAAA,uDAA0B,EAAC;QACjD,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,KAAK,CAAC,GAAG;KACf,CAAC,CAAC;IACH,OAAO;QACL,IAAI,EAAE,IAAA,yBAAiB,EAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3E,SAAS;KACV,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,6BAA6B,iCAqBxC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * .what = builds the 🌙 skipped report string (header + body) for an --optional skip
3
+ * .why = pure content-build for a supply-empty skip, so the orchestrator can write it to the
4
+ * --output file and echo it to stdout without inline string-assembly. kept pure (no
5
+ * i/o) so the transformer stays testable and the i/o lives in the orchestrator, peer
6
+ * to the normal path's inline write (rule.prefer.decomposable-architecture).
7
+ * .note = the `0 blockers` / `0 nitpicks` lines are real counts the guard's deterministic
8
+ * regex reads (0/0 → approved), never a faked abstain (rule.forbid.failhide).
9
+ * .note = no `logs:` line — a skip writes no log artifacts, so a log-dir pointer would send a
10
+ * reader to an empty directory (rule.forbid.surprises).
11
+ */
12
+ export declare const getReviewSkipReport: (input: {
13
+ supply: 'rules';
14
+ globs: string[];
15
+ reviewDisplayPath: string;
16
+ }) => string;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getReviewSkipReport = void 0;
4
+ /**
5
+ * .what = builds the 🌙 skipped report string (header + body) for an --optional skip
6
+ * .why = pure content-build for a supply-empty skip, so the orchestrator can write it to the
7
+ * --output file and echo it to stdout without inline string-assembly. kept pure (no
8
+ * i/o) so the transformer stays testable and the i/o lives in the orchestrator, peer
9
+ * to the normal path's inline write (rule.prefer.decomposable-architecture).
10
+ * .note = the `0 blockers` / `0 nitpicks` lines are real counts the guard's deterministic
11
+ * regex reads (0/0 → approved), never a faked abstain (rule.forbid.failhide).
12
+ * .note = no `logs:` line — a skip writes no log artifacts, so a log-dir pointer would send a
13
+ * reader to an empty directory (rule.forbid.surprises).
14
+ */
15
+ const getReviewSkipReport = (input) => {
16
+ const skipHeader = [
17
+ `🌙 skipped — no ${input.supply} found (--optional ${input.supply})`,
18
+ ` ├─ review: ${input.reviewDisplayPath}`,
19
+ ` └─ summary`,
20
+ ` ├─ 0 blockers`,
21
+ ` └─ 0 nitpicks`,
22
+ '',
23
+ '---',
24
+ '',
25
+ ].join('\n');
26
+ const skipBody = `_no ${input.supply} matched the --optional ${input.supply} glob (${input.globs.join(', ')}); review skipped._\n`;
27
+ return skipHeader + skipBody;
28
+ };
29
+ exports.getReviewSkipReport = getReviewSkipReport;
30
+ //# sourceMappingURL=getReviewSkipReport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getReviewSkipReport.js","sourceRoot":"","sources":["../../../src/domain.operations/review/getReviewSkipReport.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;GAUG;AACI,MAAM,mBAAmB,GAAG,CAAC,KAInC,EAAU,EAAE;IACX,MAAM,UAAU,GAAG;QACjB,mBAAmB,KAAK,CAAC,MAAM,sBAAsB,KAAK,CAAC,MAAM,GAAG;QACpE,iBAAiB,KAAK,CAAC,iBAAiB,EAAE;QAC1C,eAAe;QACf,qBAAqB;QACrB,qBAAqB;QACrB,EAAE;QACF,KAAK;QACL,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,QAAQ,GAAG,OAAO,KAAK,CAAC,MAAM,2BAA2B,KAAK,CAAC,MAAM,UAAU,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACnI,OAAO,UAAU,GAAG,QAAQ,CAAC;AAC/B,CAAC,CAAC;AAjBW,QAAA,mBAAmB,uBAiB9B"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * .what = the single allow-list of supply names that `--optional` supports today
3
+ * .why = one source of truth for "which supplies may skip-on-empty", shared by the CLI
4
+ * (`review.ts`, to reject unsupported names) and the domain op (`stepReview.ts`, for
5
+ * defense-in-depth). two hand-synced lists would drift — a supply added to one but not
6
+ * the other would silently mis-handle it. only `rules` is supported now; `refs` is a
7
+ * deliberate future extension (rejected loudly until built).
8
+ * .note = declared `as const` so the runtime allow-list also drives the compile-time literal
9
+ * union `SupplyOptional` — add `'refs'` here and the type widens automatically, so every
10
+ * `SupplyOptional` call site is revisited by the compiler rather than by memory.
11
+ */
12
+ export declare const SUPPLIES_OPTIONAL_SUPPORTED: readonly ["rules"];
13
+ /**
14
+ * .what = the literal union of supply names `--optional` supports, derived from the allow-list
15
+ * .why = one source drives both the runtime check and the compile-time type (no hand-synced union)
16
+ */
17
+ export type SupplyOptional = (typeof SUPPLIES_OPTIONAL_SUPPORTED)[number];
18
+ /**
19
+ * .what = whether a given supply name is one `--optional` supports today
20
+ * .why = the shared membership check both layers use, so the allow-list has exactly one owner.
21
+ * a type guard, so callers that pass the check narrow `string` → `SupplyOptional`.
22
+ */
23
+ export declare const isSupplyOptionalSupported: (supply: string) => supply is "rules";
24
+ /**
25
+ * .what = returns the given supply names that `--optional` does not support today
26
+ * .why = one shared transformer for "which of these names are unsupported", consumed by BOTH
27
+ * the CLI (`review.ts`, fail loud) and the domain op (`stepReview.ts`, defense-in-depth).
28
+ * lives here (domain.operations) — the common ancestor of both layers — so neither
29
+ * reimplements the filter (rule.prefer.most-common-denominator + rule.require.directional-deps:
30
+ * `stepReview` cannot import upward from `contract`, so a contract-layer home would force a
31
+ * duplicate).
32
+ */
33
+ export declare const getSuppliesUnsupported: (input: {
34
+ supplies: string[];
35
+ }) => string[];
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSuppliesUnsupported = exports.isSupplyOptionalSupported = exports.SUPPLIES_OPTIONAL_SUPPORTED = void 0;
4
+ /**
5
+ * .what = the single allow-list of supply names that `--optional` supports today
6
+ * .why = one source of truth for "which supplies may skip-on-empty", shared by the CLI
7
+ * (`review.ts`, to reject unsupported names) and the domain op (`stepReview.ts`, for
8
+ * defense-in-depth). two hand-synced lists would drift — a supply added to one but not
9
+ * the other would silently mis-handle it. only `rules` is supported now; `refs` is a
10
+ * deliberate future extension (rejected loudly until built).
11
+ * .note = declared `as const` so the runtime allow-list also drives the compile-time literal
12
+ * union `SupplyOptional` — add `'refs'` here and the type widens automatically, so every
13
+ * `SupplyOptional` call site is revisited by the compiler rather than by memory.
14
+ */
15
+ exports.SUPPLIES_OPTIONAL_SUPPORTED = ['rules'];
16
+ /**
17
+ * .what = whether a given supply name is one `--optional` supports today
18
+ * .why = the shared membership check both layers use, so the allow-list has exactly one owner.
19
+ * a type guard, so callers that pass the check narrow `string` → `SupplyOptional`.
20
+ */
21
+ const isSupplyOptionalSupported = (supply) => exports.SUPPLIES_OPTIONAL_SUPPORTED.some((candidate) => candidate === supply);
22
+ exports.isSupplyOptionalSupported = isSupplyOptionalSupported;
23
+ /**
24
+ * .what = returns the given supply names that `--optional` does not support today
25
+ * .why = one shared transformer for "which of these names are unsupported", consumed by BOTH
26
+ * the CLI (`review.ts`, fail loud) and the domain op (`stepReview.ts`, defense-in-depth).
27
+ * lives here (domain.operations) — the common ancestor of both layers — so neither
28
+ * reimplements the filter (rule.prefer.most-common-denominator + rule.require.directional-deps:
29
+ * `stepReview` cannot import upward from `contract`, so a contract-layer home would force a
30
+ * duplicate).
31
+ */
32
+ const getSuppliesUnsupported = (input) => input.supplies.filter((supply) => !(0, exports.isSupplyOptionalSupported)(supply));
33
+ exports.getSuppliesUnsupported = getSuppliesUnsupported;
34
+ //# sourceMappingURL=getSuppliesOptionalSupported.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSuppliesOptionalSupported.js","sourceRoot":"","sources":["../../../src/domain.operations/review/getSuppliesOptionalSupported.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;GAUG;AACU,QAAA,2BAA2B,GAAG,CAAC,OAAO,CAAU,CAAC;AAQ9D;;;;GAIG;AACI,MAAM,yBAAyB,GAAG,CACvC,MAAc,EACY,EAAE,CAC5B,mCAA2B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC;AAH3D,QAAA,yBAAyB,6BAGkC;AAExE;;;;;;;;GAQG;AACI,MAAM,sBAAsB,GAAG,CAAC,KAEtC,EAAY,EAAE,CACb,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAA,iCAAyB,EAAC,MAAM,CAAC,CAAC,CAAC;AAH3D,QAAA,sBAAsB,0BAGqC"}
@@ -7,6 +7,14 @@ import { type BrainChoice, type ContextBrain } from 'rhachet';
7
7
  * .why = enables caller to inspect review outcome and artifacts
8
8
  */
9
9
  export type StepReviewResult = {
10
+ /**
11
+ * .what = which path produced this result: a real graded review, or an `--optional` skip
12
+ * .why = the skip path zeroes the metrics and points `log.dir` at the output file's parent
13
+ * (no debug artifacts live there), so a direct SDK consumer needs a typed discriminant
14
+ * to tell the two apart — without it they'd string-match `🌙 skipped` or infer from
15
+ * `metrics.files.rulesCount === 0` (rule.forbid.inline-decode-friction).
16
+ */
17
+ outcome: 'reviewed' | 'skipped';
10
18
  review: {
11
19
  formatted: string;
12
20
  };
@@ -78,6 +86,7 @@ export declare const stepReview: (input: {
78
86
  pathsWout?: string | string[];
79
87
  join?: 'union' | 'intersect';
80
88
  refs?: string | string[];
89
+ optional?: string[];
81
90
  conversation?: string | string[];
82
91
  output: string;
83
92
  focus: 'pull' | 'push';
@@ -32,6 +32,7 @@ const path = __importStar(require("path"));
32
32
  const rhachet_1 = require("rhachet");
33
33
  const zod_1 = require("zod");
34
34
  const compileReviewPrompt_1 = require("../../domain.operations/review/compileReviewPrompt");
35
+ const emitReviewSkip_1 = require("../../domain.operations/review/emitReviewSkip");
35
36
  const enumFilesForReviewSubjects_1 = require("../../domain.operations/review/enumFilesForReviewSubjects");
36
37
  const enumFilesForReviewSupplies_1 = require("../../domain.operations/review/enumFilesForReviewSupplies");
37
38
  const formatReviewOutput_1 = require("../../domain.operations/review/formatReviewOutput");
@@ -40,6 +41,9 @@ const genReviewOutputStdout_1 = require("../../domain.operations/review/genRevie
40
41
  const genTokenBreakdownMarkdown_1 = require("../../domain.operations/review/genTokenBreakdownMarkdown");
41
42
  const genTokenBreakdownReport_1 = require("../../domain.operations/review/genTokenBreakdownReport");
42
43
  const getAllFileDiffsFromRange_1 = require("../../domain.operations/review/getAllFileDiffsFromRange");
44
+ const getReviewDisplayPath_1 = require("../../domain.operations/review/getReviewDisplayPath");
45
+ const getReviewOptionalSkipDecision_1 = require("../../domain.operations/review/getReviewOptionalSkipDecision");
46
+ const getSuppliesOptionalSupported_1 = require("../../domain.operations/review/getSuppliesOptionalSupported");
43
47
  const isPathMatchedByGlob_1 = require("../../domain.operations/review/isPathMatchedByGlob");
44
48
  const writeInputArtifacts_1 = require("../../domain.operations/review/writeInputArtifacts");
45
49
  const writeOutputArtifacts_1 = require("../../domain.operations/review/writeOutputArtifacts");
@@ -177,6 +181,15 @@ const stepReview = async (input, context) => {
177
181
  const hasPaths = input.paths && (Array.isArray(input.paths) ? input.paths.length > 0 : true);
178
182
  if (!hasRules && !hasDiffs && !hasPaths)
179
183
  throw new helpful_errors_1.BadRequestError('must specify at least one of --rules, --diffs, or --paths');
184
+ // validate --optional supply names against the shared allow-list (defense-in-depth)
185
+ // .why = stepReview is a public SDK export; a direct caller bypasses the CLI's own
186
+ // validation, so the domain op must own its invariant too — a typo'd or unsupported
187
+ // supply must fail loud here, never silently no-op (rule.forbid.failhide)
188
+ const optionalUnsupported = (0, getSuppliesOptionalSupported_1.getSuppliesUnsupported)({
189
+ supplies: input.optional ?? [],
190
+ });
191
+ if (optionalUnsupported.length > 0)
192
+ throw new helpful_errors_1.BadRequestError(`--optional does not support: ${optionalUnsupported.join(', ')} (supported: ${getSuppliesOptionalSupported_1.SUPPLIES_OPTIONAL_SUPPORTED.join(', ')})`, { optional: input.optional });
180
193
  // ensure output parent directory exists (create if absent)
181
194
  const outputParent = path.dirname(input.output);
182
195
  const outputParentAbsolute = path.isAbsolute(outputParent)
@@ -191,6 +204,18 @@ const stepReview = async (input, context) => {
191
204
  ? input.rules
192
205
  : [input.rules].filter(Boolean);
193
206
  const ruleFiles = await (0, enumFilesForReviewSupplies_1.enumFilesForReviewSupplies)({ glob: ruleGlobs, cwd });
207
+ // when rules are flagged --optional, an empty rules glob is a valid skip, not an error:
208
+ // emit a 0/0 skip (exit 0) so the guard tallies approved and the stone proceeds.
209
+ // .note = defense-in-depth — the CLI (review.ts) already skips before brain discovery; this
210
+ // branch covers direct SDK callers that bypass review.ts. it shares one trigger rule
211
+ // (isReviewRulesSkip) with the CLI, against the rule files enumerated just above.
212
+ if ((0, getReviewOptionalSkipDecision_1.isReviewRulesSkip)({ ruleGlobs, ruleFiles, optional: input.optional }))
213
+ return (0, emitReviewSkip_1.emitReviewSkip)({
214
+ supply: 'rules',
215
+ ruleGlobs,
216
+ output: input.output,
217
+ cwd,
218
+ });
194
219
  if (ruleGlobs.length > 0 && ruleFiles.length === 0) {
195
220
  console.error('');
196
221
  console.error('🦉 woah there');
@@ -640,7 +665,10 @@ const stepReview = async (input, context) => {
640
665
  const outputAbsolute = path.isAbsolute(input.output)
641
666
  ? input.output
642
667
  : path.join(cwd, input.output);
643
- const reviewRelativePath = path.relative(cwd, outputAbsolute);
668
+ // single source of truth for the review path shown in BOTH the file header and the
669
+ // stdout summary — getReviewDisplayPath returns absolute when the relative form escapes
670
+ // cwd (starts with '..'), so the two render sites never disagree (single-source-of-truth-for-render)
671
+ const reviewDisplayPath = (0, getReviewDisplayPath_1.getReviewDisplayPath)({ outputAbsolute, cwd });
644
672
  const blockersCount = reviewIssues.output.blockers.length;
645
673
  const nitpicksCount = reviewIssues.output.nitpicks.length;
646
674
  // generate output header with summary info
@@ -649,7 +677,7 @@ const stepReview = async (input, context) => {
649
677
  const lines = [
650
678
  summaryIcon,
651
679
  ` ├─ logs: ${logDirRelative}`,
652
- ` ├─ review: ${reviewRelativePath}`,
680
+ ` ├─ review: ${reviewDisplayPath}`,
653
681
  ` └─ summary`,
654
682
  ` ├─ ${blockersCount} blockers${blockersCount > 0 ? ' 🔴' : ''}`,
655
683
  ` └─ ${nitpicksCount} nitpicks${nitpicksCount > 0 ? ' 🟠' : ''}`,
@@ -681,9 +709,7 @@ const stepReview = async (input, context) => {
681
709
  },
682
710
  paths: {
683
711
  logsRelative: logDirRelative,
684
- reviewRelative: reviewRelativePath.startsWith('..')
685
- ? outputAbsolute
686
- : reviewRelativePath,
712
+ reviewRelative: reviewDisplayPath,
687
713
  },
688
714
  summary: {
689
715
  blockersCount,
@@ -691,6 +717,7 @@ const stepReview = async (input, context) => {
691
717
  },
692
718
  }));
693
719
  return {
720
+ outcome: 'reviewed',
694
721
  review: {
695
722
  formatted: formattedReview,
696
723
  },
@@ -1 +1 @@
1
- {"version":3,"file":"stepReview.js","sourceRoot":"","sources":["../../../src/domain.operations/review/stepReview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stepReview.js","sourceRoot":"","sources":["../../../src/domain.operations/review/stepReview.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,27 @@ if you author your own reviewer, the **minimal** valid stdout is just the two nu
84
84
  1 nitpick
85
85
  ```
86
86
 
87
+ ## .the skip variant (`--optional`)
88
+
89
+ when the `rhx review` skill runs with `--optional rules` and the rules glob matches zero
90
+ files, it does not grade — there is no rubric — so it **skips**. the skip still honors this
91
+ contract: it emits a distinct `🌙 skipped` header for human legibility, plus the two required
92
+ numeric lines (`0 blockers` / `0 nitpicks`), and exits `0`:
93
+
94
+ ```
95
+ 🌙 skipped — no rules found (--optional rules)
96
+ ├─ review: <output path>
97
+ └─ summary
98
+ ├─ 0 blockers
99
+ └─ 0 nitpicks
100
+ ```
101
+
102
+ (no `logs:` line — a skip writes no log artifacts, so it advertises no log dir.)
103
+
104
+ the `🌙 skipped` header is prose the deterministic regex harmlessly ignores (it reads only the
105
+ two numbers), so the guard tallies the `0/0` as **approved** — no guard, verdict, or contract
106
+ change. the real `0/0` counts (never a faked abstain) keep `rule.forbid.failhide` honored.
107
+
87
108
  ## .what the guard does with it
88
109
 
89
110
  | your stdout | guard reads | outcome |
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "rhachet-roles-bhrain",
3
3
  "author": "ehmpathy",
4
4
  "description": "reliable thought concept navigation roles, briefs, and skills, via rhachet",
5
- "version": "0.30.3",
5
+ "version": "0.30.4",
6
6
  "repository": "ehmpathy/rhachet-roles-bhrain",
7
7
  "homepage": "https://github.com/ehmpathy/rhachet-roles-bhrain",
8
8
  "keywords": [
@@ -125,7 +125,7 @@
125
125
  "rhachet-brains-fireworksai": "0.1.3",
126
126
  "rhachet-brains-openai": "0.3.1",
127
127
  "rhachet-roles-bhrain": "link:.",
128
- "rhachet-roles-bhuild": "0.21.22",
128
+ "rhachet-roles-bhuild": "0.21.26",
129
129
  "rhachet-roles-ehmpathy": "1.38.1",
130
130
  "rhachet-roles-rhachet": "0.1.7",
131
131
  "test-fns": "1.15.7",