@gaunt-sloth/core 2.0.0-beta.0 → 2.0.0-beta.2
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/LICENSE +6 -6
- package/dist/config/loader.d.ts +13 -0
- package/dist/config/loader.js +55 -11
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts +10 -0
- package/dist/config/schema.js +46 -24
- package/dist/config/schema.js.map +1 -1
- package/dist/config/shell-policy.d.ts +142 -1
- package/dist/config/shell-policy.js +114 -7
- package/dist/config/shell-policy.js.map +1 -1
- package/dist/config/types.d.ts +19 -0
- package/dist/config/types.js.map +1 -1
- package/dist/constants.d.ts +10 -0
- package/dist/constants.js +10 -0
- package/dist/constants.js.map +1 -1
- package/dist/core/GthAbstractAgent.d.ts +31 -0
- package/dist/core/GthAbstractAgent.js +159 -4
- package/dist/core/GthAbstractAgent.js.map +1 -1
- package/dist/core/GthAgentRunner.d.ts +314 -18
- package/dist/core/GthAgentRunner.js +1032 -101
- package/dist/core/GthAgentRunner.js.map +1 -1
- package/dist/core/approvals/approvalRequest.d.ts +247 -0
- package/dist/core/approvals/approvalRequest.js +315 -0
- package/dist/core/approvals/approvalRequest.js.map +1 -0
- package/dist/core/approvals/grants.d.ts +165 -9
- package/dist/core/approvals/grants.js +702 -57
- package/dist/core/approvals/grants.js.map +1 -1
- package/dist/core/plainToolIndication.d.ts +11 -1
- package/dist/core/plainToolIndication.js +25 -10
- package/dist/core/plainToolIndication.js.map +1 -1
- package/dist/core/shell/abstention.d.ts +1 -1
- package/dist/core/shell/abstention.js +65 -11
- package/dist/core/shell/abstention.js.map +1 -1
- package/dist/core/shell/alignment.d.ts +491 -0
- package/dist/core/shell/alignment.js +687 -0
- package/dist/core/shell/alignment.js.map +1 -0
- package/dist/core/shell/approvalCapture.d.ts +53 -41
- package/dist/core/shell/approvalCapture.js +0 -42
- package/dist/core/shell/approvalCapture.js.map +1 -1
- package/dist/core/shell/approvalStop.d.ts +121 -3
- package/dist/core/shell/approvalStop.js +153 -90
- package/dist/core/shell/approvalStop.js.map +1 -1
- package/dist/core/shell/hardline.d.ts +26 -4
- package/dist/core/shell/hardline.js +321 -16
- package/dist/core/shell/hardline.js.map +1 -1
- package/dist/core/shell/negotiation.d.ts +352 -63
- package/dist/core/shell/negotiation.js +295 -123
- package/dist/core/shell/negotiation.js.map +1 -1
- package/dist/core/shell/openWorld.d.ts +135 -0
- package/dist/core/shell/openWorld.js +572 -35
- package/dist/core/shell/openWorld.js.map +1 -1
- package/dist/core/shell/provenance.d.ts +91 -0
- package/dist/core/shell/provenance.js +136 -0
- package/dist/core/shell/provenance.js.map +1 -0
- package/dist/core/shell/rater.d.ts +394 -163
- package/dist/core/shell/rater.js +536 -238
- package/dist/core/shell/rater.js.map +1 -1
- package/dist/core/shell/raterHealth.d.ts +101 -0
- package/dist/core/shell/raterHealth.js +121 -0
- package/dist/core/shell/raterHealth.js.map +1 -0
- package/dist/core/shell/raterModel.d.ts +17 -8
- package/dist/core/shell/raterModel.js +11 -8
- package/dist/core/shell/raterModel.js.map +1 -1
- package/dist/core/shell/rejection.d.ts +20 -5
- package/dist/core/shell/rejection.js +18 -4
- package/dist/core/shell/rejection.js.map +1 -1
- package/dist/core/toolDisplay.d.ts +42 -0
- package/dist/core/toolDisplay.js +31 -0
- package/dist/core/toolDisplay.js.map +1 -1
- package/dist/core/types.d.ts +134 -16
- package/dist/core/types.js.map +1 -1
- package/dist/providers/configurationPassthrough.d.ts +36 -6
- package/dist/providers/configurationPassthrough.js +40 -28
- package/dist/providers/configurationPassthrough.js.map +1 -1
- package/dist/providers/openrouter.js +36 -6
- package/dist/providers/openrouter.js.map +1 -1
- package/dist/providers/vertexai.js +21 -0
- package/dist/providers/vertexai.js.map +1 -1
- package/dist/utils/binaryOutputUtils.js +103 -21
- package/dist/utils/binaryOutputUtils.js.map +1 -1
- package/dist/utils/fileUtils.d.ts +7 -1
- package/dist/utils/fileUtils.js +17 -3
- package/dist/utils/fileUtils.js.map +1 -1
- package/dist/utils/globalConfigUtils.d.ts +5 -2
- package/dist/utils/globalConfigUtils.js +14 -3
- package/dist/utils/globalConfigUtils.js.map +1 -1
- package/dist/utils/vertexaiUtils.js +61 -3
- package/dist/utils/vertexaiUtils.js.map +1 -1
- package/package.json +4 -4
- package/schema/gsloth-config.schema.json +34 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rater.js","sourceRoot":"","sources":["../../../src/core/shell/rater.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rater.js","sourceRoot":"","sources":["../../../src/core/shell/rater.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module core/shell/raterHealth
|
|
3
|
+
*
|
|
4
|
+
* [[EXT-82]] — **a rater that answers nothing is indistinguishable from a very cautious one.**
|
|
5
|
+
*
|
|
6
|
+
* {@link import('./rater.js').failClosedVerdict} makes ONE failed rating explicable: the verdict
|
|
7
|
+
* now carries the provider's own account of why the call never reached the model. That is enough to
|
|
8
|
+
* understand an occurrence and not enough to understand a session. Pointed at a model whose
|
|
9
|
+
* provider refuses the shape the rater must send, every call fails, every verdict is `destructive`,
|
|
10
|
+
* every explanation is identical, and the user concludes the gate is broken or unbearably noisy and
|
|
11
|
+
* turns it off. The one conclusion the output does not support is the true one — that their model
|
|
12
|
+
* choice cannot answer the question at all.
|
|
13
|
+
*
|
|
14
|
+
* This module owns the second half: **the rate**, reported once.
|
|
15
|
+
*
|
|
16
|
+
* ## Three properties, and each of them is a decision
|
|
17
|
+
*
|
|
18
|
+
* 1. **It measures consecutive failures, not a total.** A rater that fails on one command and
|
|
19
|
+
* answers on the next is a different situation — a flaky call, not a broken configuration — and
|
|
20
|
+
* a signal that latched on the first failure would report the broken case and the flaky one with
|
|
21
|
+
* the same sentence. Any real verdict resets the run to zero.
|
|
22
|
+
* 2. **It fires at most once per session.** The signal is about a standing condition; repeating it
|
|
23
|
+
* per call is how a warning becomes furniture. What licenses the low threshold is exactly this
|
|
24
|
+
* cap: over-warning costs one line for the life of the session, so there is no reason to make
|
|
25
|
+
* the user wait.
|
|
26
|
+
* 3. **It says only what the counter proves.** The counter knows that the last N calls failed. It
|
|
27
|
+
* does not know that every call this session failed, and the message must not claim it.
|
|
28
|
+
*
|
|
29
|
+
* ## Nothing here may leak
|
|
30
|
+
*
|
|
31
|
+
* The signal is text a user pastes into an issue. It names the rater MODEL (an id and a provider
|
|
32
|
+
* type, from `raterModelLabel` — never the instance, never a key) and the failure clause built by
|
|
33
|
+
* {@link import('./rater.js').renderRaterCallFailure}, which is sanitised where it is constructed.
|
|
34
|
+
* It never names the rated command, and there is deliberately no parameter through which it could:
|
|
35
|
+
* {@link RaterHealth.record} is not given one.
|
|
36
|
+
*/
|
|
37
|
+
import type { FailClosedCause, RaterCallFailure } from '#src/core/shell/rater.js';
|
|
38
|
+
/**
|
|
39
|
+
* How many CONSECUTIVE failed rating calls raise the session-level signal.
|
|
40
|
+
*
|
|
41
|
+
* **Three, and the number is an error-cost argument in both directions.**
|
|
42
|
+
*
|
|
43
|
+
* - *Warning too late costs the whole session.* The measured incident failed all 27 calls; a
|
|
44
|
+
* threshold a user's session never reaches is a diagnostic nobody ever receives, and this node
|
|
45
|
+
* exists because the user's reasonable conclusion — "the gate is broken, turn it off" — is
|
|
46
|
+
* reached within a handful of commands.
|
|
47
|
+
* - *Warning too early costs one line, once.* One failure is a blip and two consecutive can still
|
|
48
|
+
* be one bad minute on a network; three consecutive with no interleaved success is a standing
|
|
49
|
+
* condition rather than weather. Because the signal is capped at one per session, a wrong fire
|
|
50
|
+
* costs a single sentence and never becomes noise — which is what makes the low number safe, and
|
|
51
|
+
* the reason a higher one buys nothing.
|
|
52
|
+
*
|
|
53
|
+
* Exported so the tests drive the threshold rather than restating it, and so a session that wants
|
|
54
|
+
* to reason about the number has one place to read it.
|
|
55
|
+
*/
|
|
56
|
+
export declare const RATER_FAILURE_SIGNAL_THRESHOLD = 3;
|
|
57
|
+
/** One rating call, as the tracker needs to see it. */
|
|
58
|
+
export interface RaterCallReport {
|
|
59
|
+
/**
|
|
60
|
+
* The cause the gate recorded, or `undefined` when the model actually answered.
|
|
61
|
+
*
|
|
62
|
+
* **Read from the call's own capture, never from the verdict's text.** `isFailClosed` keys on a
|
|
63
|
+
* reason prefix the rater is itself instructed to produce ("say in your explanation that you
|
|
64
|
+
* could not assess it"), so a model that follows that instruction would be counted as a gate
|
|
65
|
+
* failure. The capture records what the gate DID.
|
|
66
|
+
*/
|
|
67
|
+
failClosed?: FailClosedCause;
|
|
68
|
+
/** [[EXT-82]] — the provider's account, when the failure was a rejected call. */
|
|
69
|
+
failure?: RaterCallFailure;
|
|
70
|
+
/** The rater model's label, for naming it in the signal. */
|
|
71
|
+
model?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Whether a FAILURE on this call counts toward the rate. Defaults to true.
|
|
74
|
+
*
|
|
75
|
+
* §3.2's tripwire path passes false: on an `approvals.allow` match the rating is advisory and the
|
|
76
|
+
* command runs on the human's standing grant either way, so a failed tripwire rating did not make
|
|
77
|
+
* any verdict default — and the signal's claim that they are would be false. A SUCCESS always
|
|
78
|
+
* resets regardless of the path, because a rater that answered is a rater that works and the
|
|
79
|
+
* asymmetry can only ever make this signal fire less.
|
|
80
|
+
*/
|
|
81
|
+
countsTowardRate?: boolean;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* The consecutive-failure tracker for ONE session.
|
|
85
|
+
*
|
|
86
|
+
* **An instance, never module state.** The ACP surface serves several sessions from one process,
|
|
87
|
+
* each with its own runner; a shared counter would let one session's broken rater raise the signal
|
|
88
|
+
* in another's, and the reset half would be meaningless because a healthy session would keep
|
|
89
|
+
* clearing a broken one's run.
|
|
90
|
+
*/
|
|
91
|
+
export declare class RaterHealth {
|
|
92
|
+
private consecutiveFailures;
|
|
93
|
+
private signalled;
|
|
94
|
+
/**
|
|
95
|
+
* Record one rating call.
|
|
96
|
+
*
|
|
97
|
+
* @returns the session-level signal the single time the rate is first met, and `undefined` every
|
|
98
|
+
* other time — including every subsequent failure once it has fired.
|
|
99
|
+
*/
|
|
100
|
+
record(report: RaterCallReport): string | undefined;
|
|
101
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module core/shell/raterHealth
|
|
3
|
+
*
|
|
4
|
+
* [[EXT-82]] — **a rater that answers nothing is indistinguishable from a very cautious one.**
|
|
5
|
+
*
|
|
6
|
+
* {@link import('./rater.js').failClosedVerdict} makes ONE failed rating explicable: the verdict
|
|
7
|
+
* now carries the provider's own account of why the call never reached the model. That is enough to
|
|
8
|
+
* understand an occurrence and not enough to understand a session. Pointed at a model whose
|
|
9
|
+
* provider refuses the shape the rater must send, every call fails, every verdict is `destructive`,
|
|
10
|
+
* every explanation is identical, and the user concludes the gate is broken or unbearably noisy and
|
|
11
|
+
* turns it off. The one conclusion the output does not support is the true one — that their model
|
|
12
|
+
* choice cannot answer the question at all.
|
|
13
|
+
*
|
|
14
|
+
* This module owns the second half: **the rate**, reported once.
|
|
15
|
+
*
|
|
16
|
+
* ## Three properties, and each of them is a decision
|
|
17
|
+
*
|
|
18
|
+
* 1. **It measures consecutive failures, not a total.** A rater that fails on one command and
|
|
19
|
+
* answers on the next is a different situation — a flaky call, not a broken configuration — and
|
|
20
|
+
* a signal that latched on the first failure would report the broken case and the flaky one with
|
|
21
|
+
* the same sentence. Any real verdict resets the run to zero.
|
|
22
|
+
* 2. **It fires at most once per session.** The signal is about a standing condition; repeating it
|
|
23
|
+
* per call is how a warning becomes furniture. What licenses the low threshold is exactly this
|
|
24
|
+
* cap: over-warning costs one line for the life of the session, so there is no reason to make
|
|
25
|
+
* the user wait.
|
|
26
|
+
* 3. **It says only what the counter proves.** The counter knows that the last N calls failed. It
|
|
27
|
+
* does not know that every call this session failed, and the message must not claim it.
|
|
28
|
+
*
|
|
29
|
+
* ## Nothing here may leak
|
|
30
|
+
*
|
|
31
|
+
* The signal is text a user pastes into an issue. It names the rater MODEL (an id and a provider
|
|
32
|
+
* type, from `raterModelLabel` — never the instance, never a key) and the failure clause built by
|
|
33
|
+
* {@link import('./rater.js').renderRaterCallFailure}, which is sanitised where it is constructed.
|
|
34
|
+
* It never names the rated command, and there is deliberately no parameter through which it could:
|
|
35
|
+
* {@link RaterHealth.record} is not given one.
|
|
36
|
+
*/
|
|
37
|
+
import { renderRaterCallFailure } from '#src/core/shell/rater.js';
|
|
38
|
+
/**
|
|
39
|
+
* How many CONSECUTIVE failed rating calls raise the session-level signal.
|
|
40
|
+
*
|
|
41
|
+
* **Three, and the number is an error-cost argument in both directions.**
|
|
42
|
+
*
|
|
43
|
+
* - *Warning too late costs the whole session.* The measured incident failed all 27 calls; a
|
|
44
|
+
* threshold a user's session never reaches is a diagnostic nobody ever receives, and this node
|
|
45
|
+
* exists because the user's reasonable conclusion — "the gate is broken, turn it off" — is
|
|
46
|
+
* reached within a handful of commands.
|
|
47
|
+
* - *Warning too early costs one line, once.* One failure is a blip and two consecutive can still
|
|
48
|
+
* be one bad minute on a network; three consecutive with no interleaved success is a standing
|
|
49
|
+
* condition rather than weather. Because the signal is capped at one per session, a wrong fire
|
|
50
|
+
* costs a single sentence and never becomes noise — which is what makes the low number safe, and
|
|
51
|
+
* the reason a higher one buys nothing.
|
|
52
|
+
*
|
|
53
|
+
* Exported so the tests drive the threshold rather than restating it, and so a session that wants
|
|
54
|
+
* to reason about the number has one place to read it.
|
|
55
|
+
*/
|
|
56
|
+
export const RATER_FAILURE_SIGNAL_THRESHOLD = 3;
|
|
57
|
+
/**
|
|
58
|
+
* The consecutive-failure tracker for ONE session.
|
|
59
|
+
*
|
|
60
|
+
* **An instance, never module state.** The ACP surface serves several sessions from one process,
|
|
61
|
+
* each with its own runner; a shared counter would let one session's broken rater raise the signal
|
|
62
|
+
* in another's, and the reset half would be meaningless because a healthy session would keep
|
|
63
|
+
* clearing a broken one's run.
|
|
64
|
+
*/
|
|
65
|
+
export class RaterHealth {
|
|
66
|
+
consecutiveFailures = 0;
|
|
67
|
+
signalled = false;
|
|
68
|
+
/**
|
|
69
|
+
* Record one rating call.
|
|
70
|
+
*
|
|
71
|
+
* @returns the session-level signal the single time the rate is first met, and `undefined` every
|
|
72
|
+
* other time — including every subsequent failure once it has fired.
|
|
73
|
+
*/
|
|
74
|
+
record(report) {
|
|
75
|
+
if (report.failClosed === undefined) {
|
|
76
|
+
this.consecutiveFailures = 0;
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
if (report.countsTowardRate === false)
|
|
80
|
+
return undefined;
|
|
81
|
+
this.consecutiveFailures += 1;
|
|
82
|
+
if (this.consecutiveFailures < RATER_FAILURE_SIGNAL_THRESHOLD || this.signalled) {
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
this.signalled = true;
|
|
86
|
+
return buildRaterFailureSignal(this.consecutiveFailures, report);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/** The failure clause, one spelling per cause, for the session-level signal. */
|
|
90
|
+
function causeClause(report) {
|
|
91
|
+
switch (report.failClosed) {
|
|
92
|
+
case 'threw':
|
|
93
|
+
return report.failure ? renderRaterCallFailure(report.failure) : 'the calls failed';
|
|
94
|
+
case 'timeout':
|
|
95
|
+
return 'the rater did not answer within its timeout';
|
|
96
|
+
case 'unparseable':
|
|
97
|
+
return 'the rater returned output that did not match the verdict schema';
|
|
98
|
+
case 'no-model':
|
|
99
|
+
return 'no usable rater model is configured';
|
|
100
|
+
default:
|
|
101
|
+
return 'the calls failed';
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* The signal's wording.
|
|
106
|
+
*
|
|
107
|
+
* Two sentences are load-bearing rather than decorative. *"The model was never asked"* is the one
|
|
108
|
+
* statement the old output could not support and the whole reason this node exists. The
|
|
109
|
+
* `approvals.rater` pointer is what makes the notice actionable: a model that cannot return the
|
|
110
|
+
* rater's structured output fails every call, and the fix is a different rater — not a different
|
|
111
|
+
* command, which is what the user would otherwise go looking for.
|
|
112
|
+
*/
|
|
113
|
+
function buildRaterFailureSignal(failures, report) {
|
|
114
|
+
const model = report.model ? ` to ${report.model}` : '';
|
|
115
|
+
return (`The command safety rater is not answering: the last ${failures} rating calls${model} all failed ` +
|
|
116
|
+
`— ${causeClause(report)}. The model was never asked, so those verdicts are the gate defaulting ` +
|
|
117
|
+
`to "could not assess" rather than a judgement about the commands. Check approvals.rater and ` +
|
|
118
|
+
`the model behind it; a model that cannot return the rater's structured output fails every ` +
|
|
119
|
+
`call. This notice appears once per session.`);
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=raterHealth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raterHealth.js","sourceRoot":"","sources":["../../../src/core/shell/raterHealth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AA6BhD;;;;;;;GAOG;AACH,MAAM,OAAO,WAAW;IACd,mBAAmB,GAAG,CAAC,CAAC;IACxB,SAAS,GAAG,KAAK,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,CAAC,MAAuB;QAC5B,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,MAAM,CAAC,gBAAgB,KAAK,KAAK;YAAE,OAAO,SAAS,CAAC;QACxD,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,mBAAmB,GAAG,8BAA8B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAChF,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,OAAO,uBAAuB,CAAC,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;CACF;AAED,gFAAgF;AAChF,SAAS,WAAW,CAAC,MAAuB;IAC1C,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1B,KAAK,OAAO;YACV,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACtF,KAAK,SAAS;YACZ,OAAO,6CAA6C,CAAC;QACvD,KAAK,aAAa;YAChB,OAAO,iEAAiE,CAAC;QAC3E,KAAK,UAAU;YACb,OAAO,qCAAqC,CAAC;QAC/C;YACE,OAAO,kBAAkB,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,uBAAuB,CAAC,QAAgB,EAAE,MAAuB;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,OAAO,CACL,uDAAuD,QAAQ,gBAAgB,KAAK,cAAc;QAClG,KAAK,WAAW,CAAC,MAAM,CAAC,yEAAyE;QACjG,8FAA8F;QAC9F,4FAA4F;QAC5F,6CAA6C,CAC9C,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module core/shell/raterModel
|
|
3
3
|
*
|
|
4
|
-
* CFG-26 — resolve the model
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* CFG-26 — resolve the model a gate model runs on when a config key names an identity profile.
|
|
5
|
+
* Without this the profile is validated and then IGNORED: the config parses, `gth config validate`
|
|
6
|
+
* passes, CFG-24's first-run dialog promises a stronger model can be set as the rater later — and
|
|
7
|
+
* the runtime quietly rates with the main model.
|
|
8
|
+
*
|
|
9
|
+
* [[EXT-127]] — **it serves two keys now**, `approvals.rater` and `approvals.alignmentChecker`,
|
|
10
|
+
* which is why the key name is a parameter rather than a literal. The two resolve identically and
|
|
11
|
+
* fail identically; only the sentence the user is shown differs, and pointing them at one wrong key
|
|
12
|
+
* is a user-facing defect in the one message that is supposed to tell them what to fix.
|
|
8
13
|
*
|
|
9
14
|
* Why it matters concretely (QA-5 rater baseline, 2026-07-26): rating quality varies enormously by
|
|
10
15
|
* model. A local `gemma4:12b` scored 61.7% tier accuracy; `llama3.2:1b` scored 25.5% and rated
|
|
@@ -17,7 +22,7 @@
|
|
|
17
22
|
*/
|
|
18
23
|
import type { BaseChatModel } from '@langchain/core/language_models/chat_models';
|
|
19
24
|
/**
|
|
20
|
-
* Load the identity profile named by `
|
|
25
|
+
* Load the identity profile named by `configKey` and return ITS model.
|
|
21
26
|
*
|
|
22
27
|
* Strict, per [[GS2-62]]: a profile that cannot be loaded, or that resolves to a config with no
|
|
23
28
|
* usable model, is an ERROR — never a silent fallback to the session's main model. A silent
|
|
@@ -34,8 +39,12 @@ import type { BaseChatModel } from '@langchain/core/language_models/chat_models'
|
|
|
34
39
|
* silently repoint every `getProjectDir()` consumer — prompt files, output paths, the shell
|
|
35
40
|
* allow-list file, debug dumps. So the project dir is snapshotted and restored in a `finally`.
|
|
36
41
|
*
|
|
37
|
-
* @param profile The identity profile name
|
|
38
|
-
* @
|
|
42
|
+
* @param profile The identity profile name the key carried.
|
|
43
|
+
* @param configKey The config key that named it, for the error messages — `approvals.rater` or
|
|
44
|
+
* `approvals.alignmentChecker`. It is the only thing the user can act on, so it is required
|
|
45
|
+
* rather than defaulted: a default is how one of the two call sites would come to report the
|
|
46
|
+
* other one's key.
|
|
47
|
+
* @returns The profile's chat model, ready to be handed to a gate call's `model` option.
|
|
39
48
|
* @throws When the profile's config cannot be loaded or carries no usable model.
|
|
40
49
|
*/
|
|
41
|
-
export declare function resolveRaterModel(profile: string): Promise<BaseChatModel>;
|
|
50
|
+
export declare function resolveRaterModel(profile: string, configKey: string): Promise<BaseChatModel>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { initConfig } from '#src/config/loader.js';
|
|
2
2
|
import { peekProjectDir, setProjectDir } from '#src/utils/systemUtils.js';
|
|
3
3
|
/**
|
|
4
|
-
* Load the identity profile named by `
|
|
4
|
+
* Load the identity profile named by `configKey` and return ITS model.
|
|
5
5
|
*
|
|
6
6
|
* Strict, per [[GS2-62]]: a profile that cannot be loaded, or that resolves to a config with no
|
|
7
7
|
* usable model, is an ERROR — never a silent fallback to the session's main model. A silent
|
|
@@ -18,11 +18,15 @@ import { peekProjectDir, setProjectDir } from '#src/utils/systemUtils.js';
|
|
|
18
18
|
* silently repoint every `getProjectDir()` consumer — prompt files, output paths, the shell
|
|
19
19
|
* allow-list file, debug dumps. So the project dir is snapshotted and restored in a `finally`.
|
|
20
20
|
*
|
|
21
|
-
* @param profile The identity profile name
|
|
22
|
-
* @
|
|
21
|
+
* @param profile The identity profile name the key carried.
|
|
22
|
+
* @param configKey The config key that named it, for the error messages — `approvals.rater` or
|
|
23
|
+
* `approvals.alignmentChecker`. It is the only thing the user can act on, so it is required
|
|
24
|
+
* rather than defaulted: a default is how one of the two call sites would come to report the
|
|
25
|
+
* other one's key.
|
|
26
|
+
* @returns The profile's chat model, ready to be handed to a gate call's `model` option.
|
|
23
27
|
* @throws When the profile's config cannot be loaded or carries no usable model.
|
|
24
28
|
*/
|
|
25
|
-
export async function resolveRaterModel(profile) {
|
|
29
|
+
export async function resolveRaterModel(profile, configKey) {
|
|
26
30
|
// Snapshot BEFORE initConfig's discovery mutates it (see the note above). `peekProjectDir`
|
|
27
31
|
// rather than `getProjectDir` so an UNSET dir is restored as unset, not pinned to today's cwd.
|
|
28
32
|
const projectDirBefore = peekProjectDir();
|
|
@@ -31,7 +35,7 @@ export async function resolveRaterModel(profile) {
|
|
|
31
35
|
raterConfig = await initConfig({ identityProfile: profile });
|
|
32
36
|
}
|
|
33
37
|
catch (error) {
|
|
34
|
-
throw new Error(`Could not load the
|
|
38
|
+
throw new Error(`Could not load the identity profile "${profile}" named by ${configKey}: ` +
|
|
35
39
|
`${error instanceof Error ? error.message : String(error)}`, error instanceof Error ? { cause: error } : undefined);
|
|
36
40
|
}
|
|
37
41
|
finally {
|
|
@@ -42,9 +46,8 @@ export async function resolveRaterModel(profile) {
|
|
|
42
46
|
// `config.llm` when its `model` option is undefined, so handing it undefined here would
|
|
43
47
|
// reintroduce the very silent fallback this module removes.
|
|
44
48
|
if (!model || typeof model.withStructuredOutput !== 'function') {
|
|
45
|
-
throw new Error(`The
|
|
46
|
-
|
|
47
|
-
'session model.');
|
|
49
|
+
throw new Error(`The identity profile "${profile}" resolved to a config with no usable model. ` +
|
|
50
|
+
`Give that profile a valid \`llm\`, or remove ${configKey} to use the session model.`);
|
|
48
51
|
}
|
|
49
52
|
return model;
|
|
50
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raterModel.js","sourceRoot":"","sources":["../../../src/core/shell/raterModel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"raterModel.js","sourceRoot":"","sources":["../../../src/core/shell/raterModel.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAe,EACf,SAAiB;IAEjB,2FAA2F;IAC3F,+FAA+F;IAC/F,MAAM,gBAAgB,GAAG,cAAc,EAAE,CAAC;IAC1C,IAAI,WAAW,CAAC;IAChB,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,UAAU,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,wCAAwC,OAAO,cAAc,SAAS,IAAI;YACxE,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAC7D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CACtD,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,EAAE,GAAG,CAAC;IAC/B,uFAAuF;IACvF,wFAAwF;IACxF,4DAA4D;IAC5D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,oBAAoB,KAAK,UAAU,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CACb,yBAAyB,OAAO,+CAA+C;YAC7E,gDAAgD,SAAS,4BAA4B,CACxF,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
* The pre-EXT-58 message was the bare string *"User rejected the shell command."*, which tells the
|
|
8
8
|
* model it failed and nothing about what to do instead — so it either re-runs the identical call or
|
|
9
9
|
* abandons a legitimate task silently. §7 fixes both ends: state the refusal, carry the explanation
|
|
10
|
-
* when one exists, and name the
|
|
11
|
-
* command
|
|
10
|
+
* when one exists, and name the moves it has (re-call with a justification, call a different
|
|
11
|
+
* command) — see {@link REJECTION_MOVES} for why that list names nothing else.
|
|
12
12
|
*
|
|
13
13
|
* When the rater named an already-granted alternative (§4.4), the message MUST carry it **and** say
|
|
14
14
|
* that the alternative needs no approval. That last clause is the sentence that actually redirects
|
|
@@ -35,8 +35,23 @@ export type RejectionSource =
|
|
|
35
35
|
'user'
|
|
36
36
|
/** The auto-rater refused during a negotiation (§5 / [[EXT-29]]). */
|
|
37
37
|
| 'rater';
|
|
38
|
-
/**
|
|
39
|
-
|
|
38
|
+
/**
|
|
39
|
+
* The moves §7 requires a JUDGED rejection to name — and **only moves the model actually has.**
|
|
40
|
+
*
|
|
41
|
+
* [[EXT-106]] §5 — *"ask the user if there is no way around it"* was not one of them. It named no
|
|
42
|
+
* mechanism, so the model did the only thing the sentence could mean: it wrote prose asking for a
|
|
43
|
+
* confirmation and ended the turn. That text never reaches the gate. The confirmation cannot arrive,
|
|
44
|
+
* the next call meets the identical deterministic floor, and the run ends having handed the user
|
|
45
|
+
* homework that cannot be done — while the two remedies that would have worked (an `approvals.allow`
|
|
46
|
+
* entry, or a different rung) went unnamed.
|
|
47
|
+
*
|
|
48
|
+
* **Removing it costs the model nothing it could use.** Where these two moves genuinely run out, §5.3
|
|
49
|
+
* spends the negotiation bound and the call goes to a person through the gate — which is the
|
|
50
|
+
* escalation the removed sentence was pantomiming. Do not restore it, in this or any other wording,
|
|
51
|
+
* until there is a TOOL that escalates: the fault was never the phrasing, it was offering an exit
|
|
52
|
+
* with nothing behind it.
|
|
53
|
+
*/
|
|
54
|
+
export declare const REJECTION_MOVES = "You may call the same command with a justification, or call a different command.";
|
|
40
55
|
/**
|
|
41
56
|
* §7 — the clause that makes a suggestion actionable. Verbatim in substance from the spec:
|
|
42
57
|
* *"`gth_edit_file` does this and is already approved at this level, so it will not interrupt the
|
|
@@ -63,7 +78,7 @@ export interface RejectionMessageOptions {
|
|
|
63
78
|
* §7 shape, each part omitted when it does not apply:
|
|
64
79
|
* 1. who refused what;
|
|
65
80
|
* 2. the rater's explanation, when a rating exists;
|
|
66
|
-
* 3. the
|
|
81
|
+
* 3. the moves — always;
|
|
67
82
|
* 4. the granted alternative plus the no-approval-needed clause, when the rater named one.
|
|
68
83
|
*/
|
|
69
84
|
export declare function buildRejectionMessage(options: RejectionMessageOptions): string;
|
|
@@ -1,6 +1,20 @@
|
|
|
1
|
-
/**
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* The moves §7 requires a JUDGED rejection to name — and **only moves the model actually has.**
|
|
3
|
+
*
|
|
4
|
+
* [[EXT-106]] §5 — *"ask the user if there is no way around it"* was not one of them. It named no
|
|
5
|
+
* mechanism, so the model did the only thing the sentence could mean: it wrote prose asking for a
|
|
6
|
+
* confirmation and ended the turn. That text never reaches the gate. The confirmation cannot arrive,
|
|
7
|
+
* the next call meets the identical deterministic floor, and the run ends having handed the user
|
|
8
|
+
* homework that cannot be done — while the two remedies that would have worked (an `approvals.allow`
|
|
9
|
+
* entry, or a different rung) went unnamed.
|
|
10
|
+
*
|
|
11
|
+
* **Removing it costs the model nothing it could use.** Where these two moves genuinely run out, §5.3
|
|
12
|
+
* spends the negotiation bound and the call goes to a person through the gate — which is the
|
|
13
|
+
* escalation the removed sentence was pantomiming. Do not restore it, in this or any other wording,
|
|
14
|
+
* until there is a TOOL that escalates: the fault was never the phrasing, it was offering an exit
|
|
15
|
+
* with nothing behind it.
|
|
16
|
+
*/
|
|
17
|
+
export const REJECTION_MOVES = 'You may call the same command with a justification, or call a different command.';
|
|
4
18
|
/**
|
|
5
19
|
* §7 — the clause that makes a suggestion actionable. Verbatim in substance from the spec:
|
|
6
20
|
* *"`gth_edit_file` does this and is already approved at this level, so it will not interrupt the
|
|
@@ -15,7 +29,7 @@ export function buildGrantedAlternativeClause(toolName) {
|
|
|
15
29
|
* §7 shape, each part omitted when it does not apply:
|
|
16
30
|
* 1. who refused what;
|
|
17
31
|
* 2. the rater's explanation, when a rating exists;
|
|
18
|
-
* 3. the
|
|
32
|
+
* 3. the moves — always;
|
|
19
33
|
* 4. the granted alternative plus the no-approval-needed clause, when the rater named one.
|
|
20
34
|
*/
|
|
21
35
|
export function buildRejectionMessage(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rejection.js","sourceRoot":"","sources":["../../../src/core/shell/rejection.ts"],"names":[],"mappings":"AAuCA
|
|
1
|
+
{"version":3,"file":"rejection.js","sourceRoot":"","sources":["../../../src/core/shell/rejection.ts"],"names":[],"mappings":"AAuCA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,kFAAkF,CAAC;AAErF;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAAC,QAAgB;IAC5D,OAAO,KAAK,QAAQ,wFAAwF,CAAC;AAC/G,CAAC;AAiBD;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAgC;IACpE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;IACtF,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,KAAK,OAAO;QACxB,CAAC,CAAC,2BAA2B,MAAM,GAAG;QACtC,CAAC,CAAC,qBAAqB,MAAM,GAAG,CAAC;IAErC,MAAM,KAAK,GAAa,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACzD,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
|
|
@@ -43,6 +43,12 @@ export interface ToolCallDisplayInput {
|
|
|
43
43
|
output?: string;
|
|
44
44
|
/** The real `ToolMessage.status === 'error'` signal (TUI-C7) — never sniffed from text. */
|
|
45
45
|
isError?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* [[TUI-C69]] §5.4 — the gate refused this call BACK TO THE AGENT as a negotiation round, so the
|
|
48
|
+
* status row reads as a clarification request rather than as a failure. See
|
|
49
|
+
* {@link toolStatusDisplay}. Display-only, and additive to {@link isError}.
|
|
50
|
+
*/
|
|
51
|
+
raterClarification?: boolean;
|
|
46
52
|
/**
|
|
47
53
|
* True when the live child output ALREADY streamed raw to the user's terminal (the plain
|
|
48
54
|
* surface's default sink). Formatters then suppress the duplicated output body and render
|
|
@@ -50,6 +56,42 @@ export interface ToolCallDisplayInput {
|
|
|
50
56
|
*/
|
|
51
57
|
liveOutputAlreadyShown?: boolean;
|
|
52
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* [[TUI-C69]] §5.4 — **what a finished tool call's status row says, glyph, word and tone**, for
|
|
61
|
+
* both surfaces at once.
|
|
62
|
+
*
|
|
63
|
+
* `tone` rather than a colour name, because the two surfaces paint through different systems (Ink
|
|
64
|
+
* `<Text color>` and raw ANSI) and only one of them has a `magenta`. What is shared is the
|
|
65
|
+
* DISTINCTION, which is the thing a divergence would break.
|
|
66
|
+
*/
|
|
67
|
+
export type ToolStatusTone = 'success' | 'warn' | 'error';
|
|
68
|
+
/** Glyph + word + tone for one finished call. */
|
|
69
|
+
export interface ToolStatusDisplay {
|
|
70
|
+
glyph: string;
|
|
71
|
+
label: string;
|
|
72
|
+
tone: ToolStatusTone;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* [[TUI-C69]] §5.4 — **an intermediate rating rejection is a clarification request, never a
|
|
76
|
+
* failure**, and this is the one place that decides so for every surface.
|
|
77
|
+
*
|
|
78
|
+
* A `destructive` rating at `auto` does not end anything: it goes back to the agent naming what
|
|
79
|
+
* would make the command acceptable (§5.2), and on the happy path the very next round succeeds.
|
|
80
|
+
* Drawn in the same red `✗ … [error]` vocabulary a genuinely failed tool gets, it teaches the user
|
|
81
|
+
* that a working safety mechanism is a malfunction — which is the fastest way to make someone want
|
|
82
|
+
* it switched off. It is measured, not hypothetical: a live `auto` run rendered a round-1 rejection
|
|
83
|
+
* as `▾ ✗ 🔧 run_shell_command(command=git clone …) [error]`.
|
|
84
|
+
*
|
|
85
|
+
* **The glyph and the word carry the distinction, not the colour.** A monochrome terminal — and a
|
|
86
|
+
* user who cannot tell red from orange — must still be able to tell a refused round from a broken
|
|
87
|
+
* command, so `⚠` and the words differ before any tone is applied.
|
|
88
|
+
*
|
|
89
|
+
* **`raterClarification` outranks `isError`, and both are facts.** The call did not run, so
|
|
90
|
+
* LangChain's error status is correct and every reader that grades on it is right to; what this
|
|
91
|
+
* answers is the different question of how to TONE the row. Neither is ever sniffed from the
|
|
92
|
+
* result text — legitimate output may begin with "Error handling…".
|
|
93
|
+
*/
|
|
94
|
+
export declare function toolStatusDisplay(input: Pick<ToolCallDisplayInput, 'isError' | 'raterClarification'>): ToolStatusDisplay;
|
|
53
95
|
/**
|
|
54
96
|
* Tolerant parse of a (possibly partial) streamed args JSON. Mirrors the view-model's
|
|
55
97
|
* defensive posture: a half-streamed or malformed buffer never throws — it returns `null`.
|
package/dist/core/toolDisplay.js
CHANGED
|
@@ -49,6 +49,37 @@ export const ELLIPSIS = '…';
|
|
|
49
49
|
* before slicing. Derived rather than written as `1` so it stays true of whatever marker is used.
|
|
50
50
|
*/
|
|
51
51
|
export const ELLIPSIS_WIDTH = displayWidth(ELLIPSIS);
|
|
52
|
+
/**
|
|
53
|
+
* [[TUI-C69]] §5.4 — **an intermediate rating rejection is a clarification request, never a
|
|
54
|
+
* failure**, and this is the one place that decides so for every surface.
|
|
55
|
+
*
|
|
56
|
+
* A `destructive` rating at `auto` does not end anything: it goes back to the agent naming what
|
|
57
|
+
* would make the command acceptable (§5.2), and on the happy path the very next round succeeds.
|
|
58
|
+
* Drawn in the same red `✗ … [error]` vocabulary a genuinely failed tool gets, it teaches the user
|
|
59
|
+
* that a working safety mechanism is a malfunction — which is the fastest way to make someone want
|
|
60
|
+
* it switched off. It is measured, not hypothetical: a live `auto` run rendered a round-1 rejection
|
|
61
|
+
* as `▾ ✗ 🔧 run_shell_command(command=git clone …) [error]`.
|
|
62
|
+
*
|
|
63
|
+
* **The glyph and the word carry the distinction, not the colour.** A monochrome terminal — and a
|
|
64
|
+
* user who cannot tell red from orange — must still be able to tell a refused round from a broken
|
|
65
|
+
* command, so `⚠` and the words differ before any tone is applied.
|
|
66
|
+
*
|
|
67
|
+
* **`raterClarification` outranks `isError`, and both are facts.** The call did not run, so
|
|
68
|
+
* LangChain's error status is correct and every reader that grades on it is right to; what this
|
|
69
|
+
* answers is the different question of how to TONE the row. Neither is ever sniffed from the
|
|
70
|
+
* result text — legitimate output may begin with "Error handling…".
|
|
71
|
+
*/
|
|
72
|
+
export function toolStatusDisplay(input) {
|
|
73
|
+
if (input.raterClarification) {
|
|
74
|
+
// **The words name the actor as well as the event.** "clarification requested" alone leaves
|
|
75
|
+
// the reader to guess who asked, and the one thing they must not conclude is that the command
|
|
76
|
+
// was wrong: the auto-rater asked the agent to narrow it, and the argument is still running.
|
|
77
|
+
return { glyph: '⚠', label: 'auto-rater: clarification requested', tone: 'warn' };
|
|
78
|
+
}
|
|
79
|
+
if (input.isError)
|
|
80
|
+
return { glyph: '✗', label: 'error', tone: 'error' };
|
|
81
|
+
return { glyph: '✓', label: 'done', tone: 'success' };
|
|
82
|
+
}
|
|
52
83
|
const FALLBACK_GLYPH = '⚙';
|
|
53
84
|
const FILE_GLYPH = '📁';
|
|
54
85
|
const SHELL_GLYPH = '🔧';
|