@mmnto/cli 1.124.0 → 2.0.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.
- package/dist/commands/doctor.d.ts +16 -10
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +162 -54
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +444 -28
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/hook-totemdir-render.test.js +55 -1
- package/dist/commands/hook-totemdir-render.test.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +39 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/init.test.js +32 -0
- package/dist/commands/init.test.js.map +1 -1
- package/dist/commands/install-hooks-exit-contract.test.js +32 -1
- package/dist/commands/install-hooks-exit-contract.test.js.map +1 -1
- package/dist/commands/install-hooks.d.ts +143 -10
- package/dist/commands/install-hooks.d.ts.map +1 -1
- package/dist/commands/install-hooks.js +441 -69
- package/dist/commands/install-hooks.js.map +1 -1
- package/dist/commands/install-hooks.test.js +1075 -7
- package/dist/commands/install-hooks.test.js.map +1 -1
- package/dist/commands/spec-templates.d.ts +17 -4
- package/dist/commands/spec-templates.d.ts.map +1 -1
- package/dist/commands/spec-templates.js +23 -3
- package/dist/commands/spec-templates.js.map +1 -1
- package/dist/commands/spec.d.ts +57 -8
- package/dist/commands/spec.d.ts.map +1 -1
- package/dist/commands/spec.js +124 -28
- package/dist/commands/spec.js.map +1 -1
- package/dist/commands/spec.test.js +277 -44
- package/dist/commands/spec.test.js.map +1 -1
- package/dist/utils.d.ts +5 -3
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/dist/utils.test.js +8 -3
- package/dist/utils.test.js.map +1 -1
- package/package.json +2 -2
|
@@ -7,15 +7,28 @@ export { SYSTEM_PROMPT as SPEC_SYSTEM_PROMPT };
|
|
|
7
7
|
* single-quoted `node -e '…'` body via `JSON.stringify` (the `runsDir`
|
|
8
8
|
* precedent) and checks the draft carries each heading with a non-blank body.
|
|
9
9
|
*
|
|
10
|
+
* Since mmnto-ai/totem#2737 the promise is the FULL skeleton: all nine `### `
|
|
11
|
+
* lines of {@link SYSTEM_PROMPT}, in prompt order. It named two of them before,
|
|
12
|
+
* which made the gate weaker than the command's own ask — the seven drafts
|
|
13
|
+
* recorded in `.totem/fixtures/spec-runs-2026-09-02/` all passed it while three
|
|
14
|
+
* carried an empty or an unmatched promised section.
|
|
15
|
+
*
|
|
10
16
|
* Two invariants keep the two halves honest, both unit-tested:
|
|
11
17
|
* 1. every entry is a VERBATIM line of {@link SYSTEM_PROMPT} — the gate can
|
|
12
18
|
* only require what the command actually asks for;
|
|
13
|
-
* 2. every entry is RENDERABLE into the reader
|
|
14
|
-
* backtick,
|
|
15
|
-
*
|
|
19
|
+
* 2. every entry is RENDERABLE into the reader as a HEADING — no quote,
|
|
20
|
+
* backslash, dollar, backtick, or line-breaking character from the set the
|
|
21
|
+
* reader's `safe()` collapses: C0, the DEL/C1 band, and U+2028/U+2029
|
|
22
|
+
* (`hasUnrenderableHeadingChar`).
|
|
23
|
+
* Printable non-ASCII is permitted, unlike the path predicate that bans
|
|
24
|
+
* everything above 0x7e for git's C-quoting of `diff --name-only` output: a
|
|
25
|
+
* heading meets no path filter. That the em dash in the Verification heading
|
|
26
|
+
* really does survive `JSON.stringify` → the single-quoted `node -e` word →
|
|
27
|
+
* `sh` → node is not argued but EXECUTED, by the frozen falsifier in
|
|
28
|
+
* `install-hooks.test.ts` over the four schema-constrained R3 drafts.
|
|
16
29
|
*
|
|
17
30
|
* The skeleton is only applied to a draft written under the BUILT-IN prompt;
|
|
18
31
|
* an override prompt is held to the looser DOCUMENT shape instead.
|
|
19
32
|
*/
|
|
20
|
-
export declare const SPEC_REQUIRED_SECTIONS: readonly ["### Problem Statement", "### Implementation Tasks"];
|
|
33
|
+
export declare const SPEC_REQUIRED_SECTIONS: readonly ["### Problem Statement", "### Architectural Context", "### Files to Examine", "### Technical Approach & Contracts", "### Edge Cases & Traps", "### Implementation Tasks", "### Execution Flow (structural constraint)", "### Verification (MANDATORY — do not skip)", "### Test Plan"];
|
|
21
34
|
//# sourceMappingURL=spec-templates.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec-templates.d.ts","sourceRoot":"","sources":["../../src/commands/spec-templates.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa,g7JAwEzB,CAAC;AAEF,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,CAAC;AAE/C
|
|
1
|
+
{"version":3,"file":"spec-templates.d.ts","sourceRoot":"","sources":["../../src/commands/spec-templates.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa,g7JAwEzB,CAAC;AAEF,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,sBAAsB,kSAUzB,CAAC"}
|
|
@@ -81,18 +81,38 @@ export { SYSTEM_PROMPT as SPEC_SYSTEM_PROMPT };
|
|
|
81
81
|
* single-quoted `node -e '…'` body via `JSON.stringify` (the `runsDir`
|
|
82
82
|
* precedent) and checks the draft carries each heading with a non-blank body.
|
|
83
83
|
*
|
|
84
|
+
* Since mmnto-ai/totem#2737 the promise is the FULL skeleton: all nine `### `
|
|
85
|
+
* lines of {@link SYSTEM_PROMPT}, in prompt order. It named two of them before,
|
|
86
|
+
* which made the gate weaker than the command's own ask — the seven drafts
|
|
87
|
+
* recorded in `.totem/fixtures/spec-runs-2026-09-02/` all passed it while three
|
|
88
|
+
* carried an empty or an unmatched promised section.
|
|
89
|
+
*
|
|
84
90
|
* Two invariants keep the two halves honest, both unit-tested:
|
|
85
91
|
* 1. every entry is a VERBATIM line of {@link SYSTEM_PROMPT} — the gate can
|
|
86
92
|
* only require what the command actually asks for;
|
|
87
|
-
* 2. every entry is RENDERABLE into the reader
|
|
88
|
-
* backtick,
|
|
89
|
-
*
|
|
93
|
+
* 2. every entry is RENDERABLE into the reader as a HEADING — no quote,
|
|
94
|
+
* backslash, dollar, backtick, or line-breaking character from the set the
|
|
95
|
+
* reader's `safe()` collapses: C0, the DEL/C1 band, and U+2028/U+2029
|
|
96
|
+
* (`hasUnrenderableHeadingChar`).
|
|
97
|
+
* Printable non-ASCII is permitted, unlike the path predicate that bans
|
|
98
|
+
* everything above 0x7e for git's C-quoting of `diff --name-only` output: a
|
|
99
|
+
* heading meets no path filter. That the em dash in the Verification heading
|
|
100
|
+
* really does survive `JSON.stringify` → the single-quoted `node -e` word →
|
|
101
|
+
* `sh` → node is not argued but EXECUTED, by the frozen falsifier in
|
|
102
|
+
* `install-hooks.test.ts` over the four schema-constrained R3 drafts.
|
|
90
103
|
*
|
|
91
104
|
* The skeleton is only applied to a draft written under the BUILT-IN prompt;
|
|
92
105
|
* an override prompt is held to the looser DOCUMENT shape instead.
|
|
93
106
|
*/
|
|
94
107
|
export const SPEC_REQUIRED_SECTIONS = [
|
|
95
108
|
'### Problem Statement',
|
|
109
|
+
'### Architectural Context',
|
|
110
|
+
'### Files to Examine',
|
|
111
|
+
'### Technical Approach & Contracts',
|
|
112
|
+
'### Edge Cases & Traps',
|
|
96
113
|
'### Implementation Tasks',
|
|
114
|
+
'### Execution Flow (structural constraint)',
|
|
115
|
+
'### Verification (MANDATORY — do not skip)',
|
|
116
|
+
'### Test Plan',
|
|
97
117
|
];
|
|
98
118
|
//# sourceMappingURL=spec-templates.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec-templates.js","sourceRoot":"","sources":["../../src/commands/spec-templates.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,0EAA0E;AAE1E,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwE5B,CAAC;AAEF,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,CAAC;AAE/C
|
|
1
|
+
{"version":3,"file":"spec-templates.js","sourceRoot":"","sources":["../../src/commands/spec-templates.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,0EAA0E;AAE1E,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwE5B,CAAC;AAEF,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,uBAAuB;IACvB,2BAA2B;IAC3B,sBAAsB;IACtB,oCAAoC;IACpC,wBAAwB;IACxB,0BAA0B;IAC1B,4CAA4C;IAC5C,4CAA4C;IAC5C,eAAe;CACP,CAAC"}
|
package/dist/commands/spec.d.ts
CHANGED
|
@@ -194,21 +194,64 @@ export interface GroundingFloorVerdict {
|
|
|
194
194
|
withheld: WithheldCandidate[];
|
|
195
195
|
/** Items with no relevance at all (FTS-only) — floor-EXEMPT, never withheld for a weak sibling's sake. */
|
|
196
196
|
floorExempt: number;
|
|
197
|
+
/**
|
|
198
|
+
* Items whose vector-leg relevance failed the range predicate (non-finite, or
|
|
199
|
+
* outside [0, 1] — under `l2` a negative `_distance`: an SDK or data fault).
|
|
200
|
+
* Neither signal nor exemption: a fault cannot raise `bestRelevance`, cannot
|
|
201
|
+
* be withheld as a measurement, and cannot save a run the way a keyword-only
|
|
202
|
+
* hit does. A run whose every hit is faulted refuses — nothing usable grounds
|
|
203
|
+
* it (mmnto-ai/totem#2761 bot round, Greptile P1).
|
|
204
|
+
*/
|
|
205
|
+
faulted: number;
|
|
197
206
|
}
|
|
198
207
|
/**
|
|
199
208
|
* Judge the retrieval against the relevance floor (mmnto-ai/totem#2700), over
|
|
200
209
|
* the spec, session and code partitions — that three-partition scoping is
|
|
201
210
|
* mmnto-ai/totem#2735's decision, not mmnto-ai/totem#2700's, and the body
|
|
202
|
-
* comment below says why.
|
|
203
|
-
* (`packages/mcp/src/tools/search-knowledge.ts`)
|
|
204
|
-
*
|
|
205
|
-
*
|
|
206
|
-
*
|
|
211
|
+
* comment below says why. Shares the MCP tool's floor SHAPE
|
|
212
|
+
* (`packages/mcp/src/tools/search-knowledge.ts`) but not, since the bot round
|
|
213
|
+
* on mmnto-ai/totem#2761, its predicate: the MCP reader still selects relevances
|
|
214
|
+
* on a bare `typeof` and would read an out-of-range value as signal, while this
|
|
215
|
+
* gate classes it as FAULTED and refuses an all-faulted retrieval outright —
|
|
216
|
+
* the one arm here that fires with NO real signal present. Otherwise the floor
|
|
217
|
+
* fires only when a real relevance signal exists, and it is a WHOLE-RUN gate on the BEST
|
|
218
|
+
* relevance, never a per-item filter — keyword-only hits have no comparable
|
|
219
|
+
* relevance and are floor-EXEMPT, so a single exempt hit from one of those
|
|
220
|
+
* three partitions saves the run.
|
|
221
|
+
*
|
|
222
|
+
* `floor` is OPTIONAL since mmnto-ai/totem#2727: `searchRelevanceFloor` carries
|
|
223
|
+
* no default, and with none configured the below-floor arm cannot fire at all
|
|
224
|
+
* (`withheld` stays empty). `bestRelevance` and `floorExempt` are still
|
|
225
|
+
* measured and returned — the measurement is not conditional on a floor.
|
|
207
226
|
*
|
|
208
227
|
* Zero items is this command's OWN rule, not an MCP mirror: nothing retrieved
|
|
209
|
-
* means nothing grounds the run, so it refuses regardless of any floor.
|
|
228
|
+
* means nothing grounds the run, so it refuses regardless of any floor. Lessons
|
|
229
|
+
* do not ground a run — ruled final on mmnto-ai/totem#2727 — so they are
|
|
230
|
+
* delivered but never judged here.
|
|
231
|
+
*
|
|
232
|
+
* `isInRange` is core's `isRelevanceInRange` — the SAME predicate the grounding
|
|
233
|
+
* bundle builder omits on (mmnto-ai/totem#2738 fold 2, F2). It is a PARAMETER
|
|
234
|
+
* rather than a module-level import because a static value import from
|
|
235
|
+
* `@mmnto/totem` in `commands/**` pulls LanceDB into every CLI startup,
|
|
236
|
+
* including `--help` (mmnto-ai/totem#2339, an enforced rule); the one
|
|
237
|
+
* production caller supplies it from the dynamic `await import('@mmnto/totem')`
|
|
238
|
+
* the rule prescribes. Injecting a different predicate here would put the
|
|
239
|
+
* refusal gate and the run artifact back into disagreement about the same hit.
|
|
240
|
+
*
|
|
241
|
+
* Three classes of hit, judged by what the hit carries: a relevance IN range is
|
|
242
|
+
* SIGNAL; no relevance at all (a keyword-only hit) is EXEMPT and can save the
|
|
243
|
+
* run; a relevance that fails the predicate is FAULTED — omitted from the
|
|
244
|
+
* artifact by the same predicate, and here neither signal nor exemption, so a
|
|
245
|
+
* fault can never authorize synthesis (the mmnto-ai/totem#2761 bot round,
|
|
246
|
+
* Greptile P1, refuted the earlier "exempt" reading: an SDK fault is not
|
|
247
|
+
* evidence the way a keyword match is). A run whose hits are ALL faulted refuses.
|
|
248
|
+
*
|
|
249
|
+
* `isInRange` precedes `floor` deliberately: mmnto-ai/totem#2758 (open, also on
|
|
250
|
+
* this file) makes `floor` OPTIONAL, and a required parameter cannot follow an
|
|
251
|
+
* optional one. This PR merges AFTER #2758 and is rebased onto it, so the order
|
|
252
|
+
* is chosen to let that change land without another signature churn.
|
|
210
253
|
*/
|
|
211
|
-
export declare function evaluateGroundingFloor(context: RetrievedContext,
|
|
254
|
+
export declare function evaluateGroundingFloor(context: RetrievedContext, isInRange: (relevance: number) => boolean, floor?: number): GroundingFloorVerdict;
|
|
212
255
|
/**
|
|
213
256
|
* The refusal's text: the topic(s) refused, the measurement (`0 hits` or the
|
|
214
257
|
* best relevance), the floor's VALUE and its PLACE, and every withheld
|
|
@@ -220,8 +263,14 @@ export declare function evaluateGroundingFloor(context: RetrievedContext, floor:
|
|
|
220
263
|
* index grounds this run" beside `Found: … 10 lessons` — so when lessons were
|
|
221
264
|
* delivered the message names them and says why they did not count
|
|
222
265
|
* (mmnto-ai/totem#2735). With no lessons delivered the text is byte-unchanged.
|
|
266
|
+
*
|
|
267
|
+
* The floor line has TWO forms since mmnto-ai/totem#2727. With a value
|
|
268
|
+
* configured it names the value and its place; with none it says so plainly —
|
|
269
|
+
* a refusal that reached here without a floor did so on an arm that needs none
|
|
270
|
+
* (zero hits, or every hit faulted), and printing a number would claim a
|
|
271
|
+
* judgment no floor made.
|
|
223
272
|
*/
|
|
224
|
-
export declare function formatGroundingRefusal(topics: string, verdict: GroundingFloorVerdict, floor: number, deliveredLessons: number): {
|
|
273
|
+
export declare function formatGroundingRefusal(topics: string, verdict: GroundingFloorVerdict, floor: number | undefined, deliveredLessons: number): {
|
|
225
274
|
message: string;
|
|
226
275
|
recoveryHint: string;
|
|
227
276
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec.d.ts","sourceRoot":"","sources":["../../src/commands/spec.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,eAAe,EACf,UAAU,EACV,YAAY,EACZ,gBAAgB,IAAI,qBAAqB,EAC1C,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"spec.d.ts","sourceRoot":"","sources":["../../src/commands/spec.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/spec.js
CHANGED
|
@@ -15,8 +15,15 @@ const ANCHOR_TOPIC_JOIN = ' | ';
|
|
|
15
15
|
const ANCHOR_ISSUE_JOIN = ', ';
|
|
16
16
|
/** Decimal places every relevance and floor is disclosed at (the MCP guard's shape). */
|
|
17
17
|
const RELEVANCE_DECIMALS = 3;
|
|
18
|
-
/** Where
|
|
19
|
-
const FLOOR_PLACE = 'searchRelevanceFloor in totem.config.ts
|
|
18
|
+
/** Where a CONFIGURED floor comes from — named in every refusal that had one to name. */
|
|
19
|
+
const FLOOR_PLACE = 'searchRelevanceFloor in totem.config.ts';
|
|
20
|
+
/**
|
|
21
|
+
* The floor line when NO floor is configured (mmnto-ai/totem#2727 removed the
|
|
22
|
+
* schema default). A refusal that reached here did so on an arm that needs no
|
|
23
|
+
* floor — zero hits, or every hit faulted (mmnto-ai/totem#2738) — and the line
|
|
24
|
+
* says so rather than naming a number no run was judged against.
|
|
25
|
+
*/
|
|
26
|
+
const FLOOR_LINE_UNSET = 'floor none — searchRelevanceFloor unset in totem.config.ts (no default; calibrate per repo — see config-reference)';
|
|
20
27
|
/** The two cures, named in every refusal and in the gate's BLOCKED line. */
|
|
21
28
|
const ANCHOR_CURES = "run 'totem spec <issue>' or 'totem spec --from <record>'";
|
|
22
29
|
export const MAX_LESSONS = 10;
|
|
@@ -440,45 +447,89 @@ export function resolveGroundingAnchor(parsed) {
|
|
|
440
447
|
* Judge the retrieval against the relevance floor (mmnto-ai/totem#2700), over
|
|
441
448
|
* the spec, session and code partitions — that three-partition scoping is
|
|
442
449
|
* mmnto-ai/totem#2735's decision, not mmnto-ai/totem#2700's, and the body
|
|
443
|
-
* comment below says why.
|
|
444
|
-
* (`packages/mcp/src/tools/search-knowledge.ts`)
|
|
445
|
-
*
|
|
446
|
-
*
|
|
447
|
-
*
|
|
450
|
+
* comment below says why. Shares the MCP tool's floor SHAPE
|
|
451
|
+
* (`packages/mcp/src/tools/search-knowledge.ts`) but not, since the bot round
|
|
452
|
+
* on mmnto-ai/totem#2761, its predicate: the MCP reader still selects relevances
|
|
453
|
+
* on a bare `typeof` and would read an out-of-range value as signal, while this
|
|
454
|
+
* gate classes it as FAULTED and refuses an all-faulted retrieval outright —
|
|
455
|
+
* the one arm here that fires with NO real signal present. Otherwise the floor
|
|
456
|
+
* fires only when a real relevance signal exists, and it is a WHOLE-RUN gate on the BEST
|
|
457
|
+
* relevance, never a per-item filter — keyword-only hits have no comparable
|
|
458
|
+
* relevance and are floor-EXEMPT, so a single exempt hit from one of those
|
|
459
|
+
* three partitions saves the run.
|
|
460
|
+
*
|
|
461
|
+
* `floor` is OPTIONAL since mmnto-ai/totem#2727: `searchRelevanceFloor` carries
|
|
462
|
+
* no default, and with none configured the below-floor arm cannot fire at all
|
|
463
|
+
* (`withheld` stays empty). `bestRelevance` and `floorExempt` are still
|
|
464
|
+
* measured and returned — the measurement is not conditional on a floor.
|
|
448
465
|
*
|
|
449
466
|
* Zero items is this command's OWN rule, not an MCP mirror: nothing retrieved
|
|
450
|
-
* means nothing grounds the run, so it refuses regardless of any floor.
|
|
467
|
+
* means nothing grounds the run, so it refuses regardless of any floor. Lessons
|
|
468
|
+
* do not ground a run — ruled final on mmnto-ai/totem#2727 — so they are
|
|
469
|
+
* delivered but never judged here.
|
|
470
|
+
*
|
|
471
|
+
* `isInRange` is core's `isRelevanceInRange` — the SAME predicate the grounding
|
|
472
|
+
* bundle builder omits on (mmnto-ai/totem#2738 fold 2, F2). It is a PARAMETER
|
|
473
|
+
* rather than a module-level import because a static value import from
|
|
474
|
+
* `@mmnto/totem` in `commands/**` pulls LanceDB into every CLI startup,
|
|
475
|
+
* including `--help` (mmnto-ai/totem#2339, an enforced rule); the one
|
|
476
|
+
* production caller supplies it from the dynamic `await import('@mmnto/totem')`
|
|
477
|
+
* the rule prescribes. Injecting a different predicate here would put the
|
|
478
|
+
* refusal gate and the run artifact back into disagreement about the same hit.
|
|
479
|
+
*
|
|
480
|
+
* Three classes of hit, judged by what the hit carries: a relevance IN range is
|
|
481
|
+
* SIGNAL; no relevance at all (a keyword-only hit) is EXEMPT and can save the
|
|
482
|
+
* run; a relevance that fails the predicate is FAULTED — omitted from the
|
|
483
|
+
* artifact by the same predicate, and here neither signal nor exemption, so a
|
|
484
|
+
* fault can never authorize synthesis (the mmnto-ai/totem#2761 bot round,
|
|
485
|
+
* Greptile P1, refuted the earlier "exempt" reading: an SDK fault is not
|
|
486
|
+
* evidence the way a keyword match is). A run whose hits are ALL faulted refuses.
|
|
487
|
+
*
|
|
488
|
+
* `isInRange` precedes `floor` deliberately: mmnto-ai/totem#2758 (open, also on
|
|
489
|
+
* this file) makes `floor` OPTIONAL, and a required parameter cannot follow an
|
|
490
|
+
* optional one. This PR merges AFTER #2758 and is rebased onto it, so the order
|
|
491
|
+
* is chosen to let that change land without another signature churn.
|
|
451
492
|
*/
|
|
452
|
-
export function evaluateGroundingFloor(context, floor) {
|
|
493
|
+
export function evaluateGroundingFloor(context, isInRange, floor) {
|
|
453
494
|
// Lessons are DELIVERED but never judged here (mmnto-ai/totem#2735). The
|
|
454
495
|
// floor was ruled and exercised over exactly these three partitions
|
|
455
496
|
// (mmnto-ai/totem#2700, mmnto-ai/totem#2727) while the lesson partition was
|
|
456
497
|
// structurally empty. Adding a now-populated partition would silently loosen
|
|
457
498
|
// the refusal arm — an FTS-only lesson carries no relevance, so it is
|
|
458
499
|
// floor-EXEMPT, and `refuse` requires `floorExempt === 0`. Whether a lesson
|
|
459
|
-
// may ground a run at all
|
|
460
|
-
//
|
|
461
|
-
//
|
|
462
|
-
//
|
|
500
|
+
// may ground a run at all was RULED on mmnto-ai/totem#2727: it may not —
|
|
501
|
+
// final — so the gate's inputs stay exactly these three. Delivery is not the
|
|
502
|
+
// gate: the `Found:` line and the run artifact still count every delivered
|
|
503
|
+
// lesson.
|
|
463
504
|
const all = [...context.specs, ...context.sessions, ...context.code];
|
|
464
505
|
if (all.length === 0) {
|
|
465
|
-
return { refuse: true, hits: 0, bestRelevance: null, withheld: [], floorExempt: 0 };
|
|
506
|
+
return { refuse: true, hits: 0, bestRelevance: null, withheld: [], floorExempt: 0, faulted: 0 };
|
|
466
507
|
}
|
|
467
508
|
const signal = [];
|
|
468
509
|
let floorExempt = 0;
|
|
510
|
+
let faulted = 0;
|
|
469
511
|
let bestRelevance = null;
|
|
470
512
|
for (const hit of all) {
|
|
471
513
|
const relevance = hit.relevance;
|
|
472
|
-
//
|
|
473
|
-
//
|
|
474
|
-
|
|
475
|
-
// Counting it as signal here disagreed with that: it made `floorExempt`
|
|
476
|
-
// zero and let a NaN be disclosed as a withheld `relevance NaN` candidate
|
|
477
|
-
// beside a genuinely weak sibling.
|
|
478
|
-
if (typeof relevance !== 'number' || !Number.isFinite(relevance)) {
|
|
514
|
+
// No vector leg at all (keyword-only): EXEMPT — absence of a signal is never
|
|
515
|
+
// read as a weak signal, and one such hit saves the run.
|
|
516
|
+
if (typeof relevance !== 'number') {
|
|
479
517
|
floorExempt += 1;
|
|
480
518
|
continue;
|
|
481
519
|
}
|
|
520
|
+
// A vector leg whose relevance fails the SAME predicate the core bundle
|
|
521
|
+
// builder omits on (`isRelevanceInRange`, mmnto-ai/totem#2738 fold 2, F2):
|
|
522
|
+
// FAULTED. The artifact records no relevance for it (never a clamp), and the
|
|
523
|
+
// floor counts it as neither signal nor exemption — it cannot raise
|
|
524
|
+
// `bestRelevance`, cannot be withheld as a measurement, and cannot save the
|
|
525
|
+
// run. Under `l2` the only way here is a negative `_distance`, an SDK or data
|
|
526
|
+
// fault the search layer has already warned about; a fault is not evidence
|
|
527
|
+
// (mmnto-ai/totem#2761 bot round, Greptile P1 — the earlier reading counted
|
|
528
|
+
// it exempt, which let a fault defeat a refusal on the negative arm).
|
|
529
|
+
if (!isInRange(relevance)) {
|
|
530
|
+
faulted += 1;
|
|
531
|
+
continue;
|
|
532
|
+
}
|
|
482
533
|
signal.push({
|
|
483
534
|
filePath: hit.filePath,
|
|
484
535
|
...(hit.sourceRepo !== undefined ? { sourceRepo: hit.sourceRepo } : {}),
|
|
@@ -487,13 +538,25 @@ export function evaluateGroundingFloor(context, floor) {
|
|
|
487
538
|
if (bestRelevance === null || relevance > bestRelevance)
|
|
488
539
|
bestRelevance = relevance;
|
|
489
540
|
}
|
|
490
|
-
|
|
541
|
+
// Refuse when nothing usable grounds the run — every hit faulted — regardless
|
|
542
|
+
// of any floor (the zero-hit rule's sibling), or when the best real signal is
|
|
543
|
+
// below a CONFIGURED floor with no keyword-only hit to exempt it. No floor
|
|
544
|
+
// configured → the below-floor arm is unreachable by construction
|
|
545
|
+
// (mmnto-ai/totem#2727).
|
|
546
|
+
const nothingUsable = signal.length === 0 && floorExempt === 0;
|
|
547
|
+
const refuse = nothingUsable ||
|
|
548
|
+
(floor !== undefined &&
|
|
549
|
+
signal.length > 0 &&
|
|
550
|
+
bestRelevance !== null &&
|
|
551
|
+
bestRelevance < floor &&
|
|
552
|
+
floorExempt === 0);
|
|
491
553
|
return {
|
|
492
554
|
refuse,
|
|
493
555
|
hits: all.length,
|
|
494
556
|
bestRelevance,
|
|
495
557
|
withheld: refuse ? signal : [],
|
|
496
558
|
floorExempt,
|
|
559
|
+
faulted,
|
|
497
560
|
};
|
|
498
561
|
}
|
|
499
562
|
/**
|
|
@@ -507,6 +570,12 @@ export function evaluateGroundingFloor(context, floor) {
|
|
|
507
570
|
* index grounds this run" beside `Found: … 10 lessons` — so when lessons were
|
|
508
571
|
* delivered the message names them and says why they did not count
|
|
509
572
|
* (mmnto-ai/totem#2735). With no lessons delivered the text is byte-unchanged.
|
|
573
|
+
*
|
|
574
|
+
* The floor line has TWO forms since mmnto-ai/totem#2727. With a value
|
|
575
|
+
* configured it names the value and its place; with none it says so plainly —
|
|
576
|
+
* a refusal that reached here without a floor did so on an arm that needs none
|
|
577
|
+
* (zero hits, or every hit faulted), and printing a number would claim a
|
|
578
|
+
* judgment no floor made.
|
|
510
579
|
*/
|
|
511
580
|
export function formatGroundingRefusal(topics, verdict, floor, deliveredLessons) {
|
|
512
581
|
const lines = [`Refusing to draft an unanchored spec for topic(s): ${topics}.`];
|
|
@@ -514,17 +583,40 @@ export function formatGroundingRefusal(topics, verdict, floor, deliveredLessons)
|
|
|
514
583
|
if (deliveredLessons > 0) {
|
|
515
584
|
lines.push('Retrieval returned 0 grounding hits (specs, sessions, code) — nothing in the index grounds this run.');
|
|
516
585
|
const lessonNoun = deliveredLessons === 1 ? 'lesson was' : 'lessons were';
|
|
517
|
-
lines.push(`${deliveredLessons} ${lessonNoun} retrieved, but lessons do not ground a run (mmnto-ai/totem#2727
|
|
586
|
+
lines.push(`${deliveredLessons} ${lessonNoun} retrieved, but lessons do not ground a run (ruled mmnto-ai/totem#2727).`);
|
|
518
587
|
}
|
|
519
588
|
else {
|
|
520
589
|
lines.push('Retrieval returned 0 hits — nothing in the index grounds this run.');
|
|
521
590
|
}
|
|
522
591
|
}
|
|
592
|
+
else if (verdict.bestRelevance === null) {
|
|
593
|
+
// Every hit faulted: no measurement to compare, nothing usable grounds the
|
|
594
|
+
// run. The CAUSE is metric-specific (`OUT_OF_RANGE_CAUSE`) and belongs to the
|
|
595
|
+
// search layer's tally, so this line names the class, not a cause the running
|
|
596
|
+
// metric might not have (leg F3). It says "tallied", not "warned": this
|
|
597
|
+
// command constructs its stores without a warning sink, so the tally's
|
|
598
|
+
// warning reaches no one on this path — the CLI-wide sink is a follow-up
|
|
599
|
+
// (final leg, F11), disclosed in the changeset.
|
|
600
|
+
const noun = verdict.hits === 1 ? 'hit' : 'hits';
|
|
601
|
+
lines.push(`Retrieval returned ${verdict.hits} ${noun}, but every one carried a relevance that is not a finite number in [0, 1] (tallied out of range by the search layer) — so nothing usable grounds this run.`);
|
|
602
|
+
// The same disclosure the zero-hit arm carries (mmnto-ai/totem#2735): this
|
|
603
|
+
// line would otherwise sit under a `Found: … N lessons` line unexplained.
|
|
604
|
+
if (deliveredLessons > 0) {
|
|
605
|
+
const lessonNoun = deliveredLessons === 1 ? 'lesson was' : 'lessons were';
|
|
606
|
+
lines.push(`${deliveredLessons} ${lessonNoun} retrieved, but lessons do not ground a run (ruled mmnto-ai/totem#2727).`);
|
|
607
|
+
}
|
|
608
|
+
}
|
|
523
609
|
else {
|
|
524
|
-
const best = verdict.bestRelevance
|
|
610
|
+
const best = verdict.bestRelevance;
|
|
525
611
|
lines.push(`Retrieval returned ${verdict.hits} hits, but best relevance ${best.toFixed(RELEVANCE_DECIMALS)} is below the floor.`);
|
|
612
|
+
if (verdict.faulted > 0) {
|
|
613
|
+
const noun = verdict.faulted === 1 ? 'hit' : 'hits';
|
|
614
|
+
lines.push(`${verdict.faulted} ${noun} carried a relevance that is not a finite number in [0, 1] (tallied out of range by the search layer) and did not count as signal or as exemption.`);
|
|
615
|
+
}
|
|
526
616
|
}
|
|
527
|
-
lines.push(
|
|
617
|
+
lines.push(floor !== undefined
|
|
618
|
+
? `floor ${floor.toFixed(RELEVANCE_DECIMALS)} — ${FLOOR_PLACE}`
|
|
619
|
+
: FLOOR_LINE_UNSET);
|
|
528
620
|
if (verdict.withheld.length > 0) {
|
|
529
621
|
lines.push('Withheld candidates (path + relevance only, no content):');
|
|
530
622
|
for (const [index, candidate] of verdict.withheld.entries()) {
|
|
@@ -688,15 +780,19 @@ export async function specCommand(inputs, options) {
|
|
|
688
780
|
// ── Anchored-evidence gate (mmnto-ai/totem#2700) ──
|
|
689
781
|
// The anchor is what the run is grounded ON. A run with NO issue and NO
|
|
690
782
|
// record is the confabulation surface: it refuses when retrieval returned
|
|
691
|
-
// nothing, or when
|
|
692
|
-
//
|
|
783
|
+
// nothing, or — only when a floor is CONFIGURED (mmnto-ai/totem#2727: the key
|
|
784
|
+
// carries no default, and unset means no floor) — when the best relevance is
|
|
785
|
+
// below it and no floor-exempt hit exists. `--raw` is EXEMPT — it makes no LLM call and
|
|
693
786
|
// mints no artifact, so it is how a weak topic's retrieval is inspected.
|
|
694
787
|
// The refusal returns BEFORE `runOrchestrator`, the only writer of a run
|
|
695
788
|
// artifact, so "mints nothing" holds by control flow.
|
|
696
789
|
const floor = config.searchRelevanceFloor;
|
|
697
790
|
const anchor = resolveGroundingAnchor(parsed);
|
|
698
791
|
if (anchor.kind === GROUNDING_ANCHOR_FREE_TEXT && !options.raw) {
|
|
699
|
-
|
|
792
|
+
// Dynamic, per mmnto-ai/totem#2339: a static value import from the core
|
|
793
|
+
// barrel here would pull LanceDB into every CLI startup, `--help` included.
|
|
794
|
+
const { isRelevanceInRange } = await import('@mmnto/totem');
|
|
795
|
+
const verdict = evaluateGroundingFloor(context, isRelevanceInRange, floor);
|
|
700
796
|
if (verdict.refuse) {
|
|
701
797
|
const refusal = formatGroundingRefusal(anchor.ref, verdict, floor, context.lessons.length);
|
|
702
798
|
throw new TotemError('GATE_INVALID', refusal.message, refusal.recoveryHint);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/commands/spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/commands/spec.ts"],"names":[],"mappings":"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"}
|