@gaunt-sloth/batch 2.0.0-beta.1 → 2.0.0-beta.3
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/classificationTypes.d.ts +25 -3
- package/dist/classificationTypes.js.map +1 -1
- package/dist/evalRunner.js +30 -7
- package/dist/evalRunner.js.map +1 -1
- package/dist/evalSuite.js +7 -2
- package/dist/evalSuite.js.map +1 -1
- package/dist/evalTypes.d.ts +72 -19
- package/dist/evalTypes.js +32 -16
- package/dist/evalTypes.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/metrics.d.ts +4 -1
- package/dist/metrics.js +67 -13
- package/dist/metrics.js.map +1 -1
- package/dist/raterTarget.d.ts +16 -3
- package/dist/raterTarget.js +237 -36
- package/dist/raterTarget.js.map +1 -1
- package/package.json +4 -4
package/dist/raterTarget.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { checkHardline } from '@gaunt-sloth/core/core/shell/hardline.js';
|
|
2
2
|
import { APPROVAL_RUNGS, isNegotiatingRung, isRatedRung, resolveApprovals, } from '@gaunt-sloth/core/config/shell-policy.js';
|
|
3
|
+
import { isAlignmentFailClosed, runAlignmentCheck, } from '@gaunt-sloth/core/core/shell/alignment.js';
|
|
3
4
|
import { ShellNegotiationState } from '@gaunt-sloth/core/core/shell/negotiation.js';
|
|
4
|
-
import { FAIL_CLOSED_VERDICT, RATER_OUTCOMES, mapVerdictToAction, preflightFloorFinding, rateShellCommand, } from '@gaunt-sloth/core/core/shell/rater.js';
|
|
5
|
+
import { FAIL_CLOSED_VERDICT, RATER_OUTCOMES, effectivePreflightFloorFinding, isFailClosed, isNegotiableCall, mapVerdictToAction, preflightFloorFinding, rateShellCommand, } from '@gaunt-sloth/core/core/shell/rater.js';
|
|
5
6
|
import { resolveRaterModel } from '@gaunt-sloth/core/core/shell/raterModel.js';
|
|
6
7
|
import { displayWarning } from '@gaunt-sloth/core/utils/consoleUtils.js';
|
|
7
8
|
import { env } from '@gaunt-sloth/core/utils/systemUtils.js';
|
|
@@ -24,7 +25,8 @@ import { FORCED_BY_ASSERTIONS, HARDLINE_REFUSAL_MARKER, mechanismNeedsPermissive
|
|
|
24
25
|
export { HARDLINE_REFUSAL_MARKER };
|
|
25
26
|
/**
|
|
26
27
|
* The marker a rationale carries when the decision cost NO rating call, followed by which of the
|
|
27
|
-
*
|
|
28
|
+
* **three** reasons applied: the §8 hardline floor refused the command before any rating
|
|
29
|
+
* ({@link HARDLINE_NO_RATING_REASON}), the case declared `model_free`, or the rung is not rated.
|
|
28
30
|
*
|
|
29
31
|
* It exists because the honest alternative was worse. `mapVerdictToAction` treats a missing verdict
|
|
30
32
|
* as core's fail-closed one, whose reason says the rater "could not evaluate" the command — true
|
|
@@ -32,8 +34,19 @@ export { HARDLINE_REFUSAL_MARKER };
|
|
|
32
34
|
* written into every model-free case's per-case JSON, and a reader diagnosing a corpus would have
|
|
33
35
|
* concluded the rater was broken. So the placeholder reason is dropped on this path and replaced by
|
|
34
36
|
* this: what actually happened.
|
|
37
|
+
*
|
|
38
|
+
* **The reasons are not mutually exclusive, and the floor outranks the other two** — it is the one
|
|
39
|
+
* production acts on, so a `model_free` case whose command the floor also refuses reports the floor.
|
|
40
|
+
* Its `model_free` declaration is then redundant rather than wrong: both say zero calls.
|
|
35
41
|
*/
|
|
36
42
|
export const NO_RATING_CALL_MARKER = 'no rating call';
|
|
43
|
+
/**
|
|
44
|
+
* The {@link NO_RATING_CALL_MARKER} reason for a command §8's floor refuses outright.
|
|
45
|
+
*
|
|
46
|
+
* Named rather than spelled at the call site so a suite (and the unit suite) can assert the
|
|
47
|
+
* short-circuit by the reason it reports, without pinning prose in two places.
|
|
48
|
+
*/
|
|
49
|
+
export const HARDLINE_NO_RATING_REASON = 'refused at the floor before rating';
|
|
37
50
|
/**
|
|
38
51
|
* BATCH-34 — the marker a rationale carries when the round's `reject` became an **escalation because
|
|
39
52
|
* a §5.3 bound was spent**, not because the rating said so.
|
|
@@ -218,16 +231,27 @@ function resolveRung(target, config) {
|
|
|
218
231
|
* floor marker when the floor refuses this command, which preflight forced the decision when one
|
|
219
232
|
* did, and the reason behind it.
|
|
220
233
|
*
|
|
221
|
-
* All of it is present on
|
|
222
|
-
* whether or not the case is model-free
|
|
223
|
-
*
|
|
224
|
-
*
|
|
234
|
+
* All of it is present on every path. The floor check is deterministic and free, so it is run
|
|
235
|
+
* whether or not the case is model-free.
|
|
236
|
+
*
|
|
237
|
+
* **What production does with a floor match, stated because a stale reading of it is what this
|
|
238
|
+
* function's rationale used to assert:** the approvals gate consults `checkHardline` ITSELF, one arm
|
|
239
|
+
* below the `bypass` early return, and refuses there — before any rating call and before any §5
|
|
240
|
+
* round. It does not rate the command and let the shell refuse it afterwards. The exec-time check in
|
|
241
|
+
* `GthDevToolkit.executeCommand` still stands behind that and is what makes the refusal a guarantee,
|
|
242
|
+
* but it is the second line of the two, not the only one.
|
|
243
|
+
*
|
|
244
|
+
* So a rated case whose command the floor refuses does not exist, and cannot: the two rated rungs
|
|
245
|
+
* are refused at the floor arm before reaching a rating ({@link classifyOneRound}), and `bypass` —
|
|
246
|
+
* the one rung that arm does not cover — is not a rated rung either. The marker therefore never
|
|
247
|
+
* accompanies a rater verdict. At `bypass` it accompanies an `approve`, which is the honest report:
|
|
248
|
+
* the gate approved before the arm and only the exec-time check refuses.
|
|
225
249
|
*
|
|
226
250
|
* **The mechanism markers are what make a deterministic case gradeable at all**, because the ACTION
|
|
227
251
|
* is not: with no verdict, `mapVerdictToAction` returns the same action for every command at a rated
|
|
228
252
|
* rung. See {@link ../evalTypes.js FORCED_BY_MECHANISMS}.
|
|
229
253
|
*/
|
|
230
|
-
function buildRationale(command, floorDescription, decision, noRatingReason, ratingIn, boundSpent) {
|
|
254
|
+
function buildRationale(command, floorDescription, decision, noRatingReason, ratingIn, boundSpent, alignment) {
|
|
231
255
|
const parts = [];
|
|
232
256
|
if (floorDescription !== undefined) {
|
|
233
257
|
parts.push(`${HARDLINE_REFUSAL_MARKER} (${floorDescription})`);
|
|
@@ -258,6 +282,15 @@ function buildRationale(command, floorDescription, decision, noRatingReason, rat
|
|
|
258
282
|
else if (reason !== undefined) {
|
|
259
283
|
parts.push(reason);
|
|
260
284
|
}
|
|
285
|
+
// [[EXT-127]] — **what the ALIGNMENT CHECKER said, when one was consulted.** It belongs in the
|
|
286
|
+
// rationale for the same reason the rater's own sentence does: after the split the gate speaks
|
|
287
|
+
// with two voices, and a report carrying only the classifier's would attribute an action the
|
|
288
|
+
// checker took to a component that did not take it. Named, so a reader can tell the two apart.
|
|
289
|
+
if (alignment !== undefined) {
|
|
290
|
+
parts.push(alignment.reason.trim()
|
|
291
|
+
? `alignment check (${alignment.kind}): ${alignment.reason.trim()}`
|
|
292
|
+
: `alignment check (${alignment.kind})`);
|
|
293
|
+
}
|
|
261
294
|
// BATCH-34 — last, because it is the only part that describes the ACTION rather than the rating:
|
|
262
295
|
// the rating said `destructive` and the negotiation is what turned it into a human's decision.
|
|
263
296
|
if (boundSpent) {
|
|
@@ -270,8 +303,9 @@ function buildRationale(command, floorDescription, decision, noRatingReason, rat
|
|
|
270
303
|
* PRODUCTION runner would have taken.
|
|
271
304
|
*
|
|
272
305
|
* It mirrors `GthAgentRunner`'s four arms and adds nothing: an approved call is progress (§5.3 —
|
|
273
|
-
*
|
|
274
|
-
*
|
|
306
|
+
* resets the consecutive counter and, since [[EXT-108]], leaves the rounds standing, so the round
|
|
307
|
+
* after it is rated as a round 2), a halt reaches a human, and a `reject` is recorded before either
|
|
308
|
+
* bound is tested, so the attempt being ruled on is itself on the transcript.
|
|
275
309
|
* The remaining arm carries the one assumption in here — that an action which is neither approved,
|
|
276
310
|
* halted nor rejected has already reached a person — so it ends the negotiation and hands the
|
|
277
311
|
* action back untouched.
|
|
@@ -291,7 +325,7 @@ function buildRationale(command, floorDescription, decision, noRatingReason, rat
|
|
|
291
325
|
*
|
|
292
326
|
* @returns the action to report, and whether a spent bound is what produced it (for the rationale).
|
|
293
327
|
*/
|
|
294
|
-
function advanceNegotiation(negotiation, command, justification, decision) {
|
|
328
|
+
function advanceNegotiation(negotiation, command, justification, decision, alignment) {
|
|
295
329
|
if (decision.action === 'approve') {
|
|
296
330
|
negotiation.noteProgress();
|
|
297
331
|
return { action: decision.action, boundSpent: false };
|
|
@@ -309,6 +343,8 @@ function advanceNegotiation(negotiation, command, justification, decision) {
|
|
|
309
343
|
// just decided from rather than a second guess at it.
|
|
310
344
|
outcome: decision.verdict?.outcome ?? FAIL_CLOSED_VERDICT.outcome,
|
|
311
345
|
reason: decision.verdict?.reason ?? '',
|
|
346
|
+
// [[EXT-127]] — carried so the NEXT round's check replays this one as its own turn.
|
|
347
|
+
...(alignment ? { alignment } : {}),
|
|
312
348
|
});
|
|
313
349
|
// A served round is the whole of it: the refusal goes back to the agent and the argument
|
|
314
350
|
// continues. Anything else means the bound is spent and this round goes out to a person, exactly
|
|
@@ -329,27 +365,44 @@ function advanceNegotiation(negotiation, command, justification, decision) {
|
|
|
329
365
|
/**
|
|
330
366
|
* Classify ONE round: one command, rated (or not) and mapped to an action.
|
|
331
367
|
*
|
|
332
|
-
* **When no model is rung.**
|
|
368
|
+
* **When no model is rung.** THREE conditions short-circuit the rating call, and all report
|
|
333
369
|
* `modelCalls: 0`:
|
|
370
|
+
* - **[[BATCH-37]] §8's hardline floor refuses the command, at every rung but `bypass`** — the
|
|
371
|
+
* runner's own pre-rating arm, mirrored here so the target does not measure a rating production
|
|
372
|
+
* never buys. It is the only one of the three that also fixes the ACTION (`reject`, the runner's
|
|
373
|
+
* word) and the only one that skips {@link advanceNegotiation}: the refusal opens no §5 round, so
|
|
374
|
+
* it spends neither bound. See the arm's own comment below;
|
|
334
375
|
* - the case declares `model_free` — the suite asserting that this command is decided by the
|
|
335
376
|
* deterministic layer alone, which is what makes 17-odd cases of an approvals corpus free to run
|
|
336
377
|
* and is the EXT-55 regression gate;
|
|
337
378
|
* - the rung is not a RATED rung — `manual`, `write` and `bypass` consult no model in production
|
|
338
379
|
* either, so ringing one here would bill for a call the gate would never make.
|
|
339
380
|
*
|
|
340
|
-
*
|
|
341
|
-
*
|
|
342
|
-
*
|
|
343
|
-
*
|
|
344
|
-
*
|
|
345
|
-
*
|
|
381
|
+
* The first outranks the other two where they overlap, because it is the one production acts on.
|
|
382
|
+
* Anything that enumerates these — a docblock, a marker's reason list, a suite's guidance — has to
|
|
383
|
+
* grow with them; a corrected statement in one place above a stale list in another is the same
|
|
384
|
+
* defect one screen down.
|
|
385
|
+
*
|
|
386
|
+
* **A model-free decision reports NO label — and no rating either.** The action is real —
|
|
387
|
+
* `mapVerdictToAction` produces it from the rung and its own preflights, exactly as production
|
|
388
|
+
* would before the rater is consulted — but the LABEL is the rater's judgement, and on this path
|
|
389
|
+
* nobody asked. Reporting core's fail-closed placeholder as though it were a verdict would write a
|
|
390
|
+
* judgement nobody rendered into the confusion matrix and count it as a MISS against the corpus's
|
|
391
|
+
* expected label. So both {@link ../evalTypes.js ClassifyOutcome.label} and its BATCH-26 sibling
|
|
392
|
+
* {@link ../evalTypes.js ClassifyOutcome.modelLabel} are omitted, on the one condition.
|
|
346
393
|
*
|
|
347
|
-
* Omitting
|
|
394
|
+
* Omitting them is the better of the two, not a clean escape: the cell is still scored, so it still
|
|
348
395
|
* enters a label metric's denominator, where two absent values compare EQUAL and score as a free
|
|
349
396
|
* hit. A rater suite's label metrics must narrow their own denominator —
|
|
350
397
|
* `over: ["expected.label != none"]` — which is what `computeMetric`'s absent-field warning says
|
|
351
398
|
* when it fires. See {@link ../evalTypes.js ClassifyOutcome.label}.
|
|
352
399
|
*
|
|
400
|
+
* **BATCH-26 — on a RATED round the two are both reported, and on some commands they differ.** The
|
|
401
|
+
* label is read off the verdict the gate returned, so a preflight that raised a permissive rating
|
|
402
|
+
* has already moved it; `modelLabel` is the verdict that went in. Neither is a second opinion —
|
|
403
|
+
* both are relayed — and the difference is what lets a rater-accuracy metric include the commands a
|
|
404
|
+
* preflight floors instead of scoring the floor against the corpus and calling it the rater.
|
|
405
|
+
*
|
|
353
406
|
* **And a model-free case does not grade on its `action` either.** At a rated rung the action is
|
|
354
407
|
* the same for every command with no verdict, so it discriminates nothing; what discriminates is
|
|
355
408
|
* the mechanism, in the rationale ({@link buildRationale}).
|
|
@@ -360,24 +413,33 @@ function advanceNegotiation(negotiation, command, justification, decision) {
|
|
|
360
413
|
* flatter the case — when the claimed preflight really fires the action is the same either way, and
|
|
361
414
|
* when it does not, the marker and the action go red together.
|
|
362
415
|
*
|
|
363
|
-
* **BATCH-34 — the negotiation state advances on
|
|
364
|
-
* driven by the ACTION the gate returned, never by how the round was decided,
|
|
365
|
-
* the rest of this file is: what a `reject` costs the negotiation is a property
|
|
366
|
-
* a target that spent the bound only on rounds it happened to ring a model for
|
|
367
|
-
* different exchange than production for the same corpus. At a rung that rates
|
|
368
|
-
* nothing to spend either way — no round is ever rejected there.
|
|
416
|
+
* **BATCH-34 — the negotiation state advances on every path that reaches a DECISION, the model-free
|
|
417
|
+
* one included.** It is driven by the ACTION the gate returned, never by how the round was decided,
|
|
418
|
+
* for the same reason the rest of this file is: what a `reject` costs the negotiation is a property
|
|
419
|
+
* of the decision, and a target that spent the bound only on rounds it happened to ring a model for
|
|
420
|
+
* would report a different exchange than production for the same corpus. At a rung that rates
|
|
421
|
+
* nothing there is nothing to spend either way — no round is ever rejected there.
|
|
422
|
+
*
|
|
423
|
+
* **[[BATCH-37]] — the floor arm is the one exception, and it is production's exception, not ours.**
|
|
424
|
+
* A round §8 refuses returns above without advancing the state at all, because the runner's floor
|
|
425
|
+
* arm does the same: the refusal opens no round, and counting it would walk an unappealable refusal
|
|
426
|
+
* toward a human escalation §4.2 says it must not reach. So a floored round costs a case neither of
|
|
427
|
+
* its §5.3 bounds, and the rounds around it are rated with the exchange they would have had if it
|
|
428
|
+
* had not been attempted.
|
|
369
429
|
*
|
|
370
430
|
* **At a rung that DOES rate, `model_free` spends the bound for real, and that is worth knowing
|
|
371
431
|
* before authoring one.** With no verdict, `mapVerdictToAction` reads core's fail-closed verdict,
|
|
372
432
|
* whose outcome is `destructive`; at a negotiating rung that is a `reject`, so every model-free round
|
|
373
433
|
* of such a case is recorded as one and the third ends at a human carrying
|
|
374
|
-
* {@link NEGOTIATION_BOUND_MARKER} — a full §5.3 negotiation for zero model calls.
|
|
434
|
+
* {@link NEGOTIATION_BOUND_MARKER} — a full §5.3 negotiation for zero model calls. (A model-free
|
|
435
|
+
* round whose command §8 refuses is NOT one of those: it returns at the floor arm, spending
|
|
436
|
+
* nothing.) The rounds are
|
|
375
437
|
* not fabrications (this is production's own action for a rating nobody rendered) but they are
|
|
376
438
|
* indistinguishable from one another, so an author reading only the action column sees an escalation
|
|
377
439
|
* the corpus never argued for. `model_free` is CASE-level, so it costs a multi-round case all of its
|
|
378
440
|
* ratings or none: a case that wants one deterministic round beside rated ones cannot say so.
|
|
379
441
|
*/
|
|
380
|
-
async function classifyOneRound(round, roundIndex, request, rung, negotiation, config, model, options) {
|
|
442
|
+
async function classifyOneRound(round, roundIndex, request, rung, negotiation, config, model, checkerModel, options) {
|
|
381
443
|
const trimmed = round.command.trim();
|
|
382
444
|
if (trimmed.length === 0) {
|
|
383
445
|
// Excluded from every metric denominator rather than counted as a miss: an empty round is a
|
|
@@ -388,17 +450,64 @@ async function classifyOneRound(round, roundIndex, request, rung, negotiation, c
|
|
|
388
450
|
error: `case "${request.caseId}": a rater case's prompt must be a command, not an empty string.`,
|
|
389
451
|
};
|
|
390
452
|
}
|
|
391
|
-
// Free and deterministic, so it runs on
|
|
453
|
+
// Free and deterministic, so it runs on every path — see buildRationale.
|
|
392
454
|
const floor = checkHardline(trimmed);
|
|
393
455
|
// BATCH-34 §5.1 — what the user said before this round enters the conversation's memory FIRST, so
|
|
394
456
|
// this round's own context can carry it. Core owns the retention bound and the last-5 window; a
|
|
395
457
|
// round declaring none adds none, which is how a single-round case keeps a byte-identical prompt.
|
|
458
|
+
//
|
|
459
|
+
// **This must stay ABOVE the floor arm below, and `raterTarget.spec.ts` pins that it does.**
|
|
460
|
+
// Production notes the user's words at a turn boundary, upstream of the approvals gate entirely,
|
|
461
|
+
// so a mandate given alongside a floor-matching command still has to reach the §5.1 window that
|
|
462
|
+
// LATER rounds are rated against. Hoisting the arm above this line reads like a harmless
|
|
463
|
+
// guard-clause tidy and silently drops that mandate from every later rating.
|
|
396
464
|
negotiation.noteUserMessages(round.userMessages ?? []);
|
|
465
|
+
// BATCH-37 — **§8's floor refuses BEFORE any rating, exactly as `GthAgentRunner` does.**
|
|
466
|
+
//
|
|
467
|
+
// The runner consults `checkHardline` in the approvals gate itself, one arm below the `bypass`
|
|
468
|
+
// early return, and returns `reject` there: "without this line `auto` spends three rating calls
|
|
469
|
+
// and a human dialog arguing about a fork bomb that was never going to run". A target that rated
|
|
470
|
+
// such a command would be measuring a rating production never buys — the divergence this node
|
|
471
|
+
// exists to close.
|
|
472
|
+
//
|
|
473
|
+
// **The condition is the runner's, not a new one.** `bypass` is excluded because the runner
|
|
474
|
+
// approves a gated shell call and returns before this arm is reached, NOT because the floor stops
|
|
475
|
+
// applying there — the exec-time check in `GthDevToolkit.executeCommand` still refuses it, which
|
|
476
|
+
// is why the marker is still emitted below at `bypass`. Every other rung reaches the arm
|
|
477
|
+
// deliberately, the deterministic ones included: §4.2 is a statement about the COMMAND, not about
|
|
478
|
+
// who was going to be asked about it.
|
|
479
|
+
//
|
|
480
|
+
// **`advanceNegotiation` is deliberately NOT called**, and that is the half of this a rating count
|
|
481
|
+
// alone would miss. The runner's floor arm returns without touching either §5.3 bound: "this
|
|
482
|
+
// refusal opens no round, so counting it would walk an unappealable refusal toward the human
|
|
483
|
+
// escalation §4.2 says it must not reach". A target that short-circuited the rating but still
|
|
484
|
+
// spent the bound would replace one divergence with another in the same direction.
|
|
485
|
+
//
|
|
486
|
+
// **No label**, for the model-free path's reason: the label is the rater's judgement and on this
|
|
487
|
+
// path nobody was asked. The mechanism lands in the rationale, where a `forced_by: hardline-floor`
|
|
488
|
+
// case grades it.
|
|
489
|
+
if (floor !== null && rung !== 'bypass') {
|
|
490
|
+
return {
|
|
491
|
+
ok: true,
|
|
492
|
+
// The runner's own word for it — `{ type: 'reject' }` at stage `hardline-floor`. It is the
|
|
493
|
+
// only refusal in `RATER_ACTIONS`; that this `reject` opens no round, while a §5 `reject`
|
|
494
|
+
// does, is what the floor marker in the rationale says.
|
|
495
|
+
action: 'reject',
|
|
496
|
+
rationale: buildRationale(trimmed, floor.description, { action: 'reject', verdict: undefined }, HARDLINE_NO_RATING_REASON, undefined, false, undefined),
|
|
497
|
+
modelCalls: 0,
|
|
498
|
+
};
|
|
499
|
+
}
|
|
397
500
|
// §5.2 — a rejection is addressed to the AGENT only at a negotiating rung, and saying so changes
|
|
398
501
|
// the rating prompt. Read from the resolved rung rather than from whether a context exists: the
|
|
399
|
-
// two are independent by construction (
|
|
502
|
+
// two are independent by construction (an empty transcript is still a round of a negotiation),
|
|
400
503
|
// and a corpus rated without it would be measuring a prompt production never sends.
|
|
401
|
-
|
|
504
|
+
//
|
|
505
|
+
// [[EXT-106]] §3 — which is also why it goes through core's `isNegotiableCall` and not through
|
|
506
|
+
// the rung alone: production withholds the same guidance from a command §4.6's preflight floors,
|
|
507
|
+
// because nothing the agent argues can move an outcome recomputed from the raw command every
|
|
508
|
+
// round. A corpus that kept the guidance on a floored command would be scoring a prompt against
|
|
509
|
+
// an instruction production no longer sends with it.
|
|
510
|
+
const negotiable = isNegotiableCall(rung, trimmed);
|
|
402
511
|
// Gated on the rung exactly as production gates it, and handed over RAW. §5.1 withholds it from a
|
|
403
512
|
// round-1 rating, and `contextFor` is the single implementation of that rule — while the
|
|
404
513
|
// transcript records what the agent actually argued, whatever the round.
|
|
@@ -444,23 +553,94 @@ async function classifyOneRound(round, roundIndex, request, rung, negotiation, c
|
|
|
444
553
|
// to every rating at `auto` including the first. A corpus rated without it was measuring a
|
|
445
554
|
// prompt no session ever sends — so an `auto` suite's numbers may move here, toward the gate
|
|
446
555
|
// it claims to describe. Nothing changes at the other rungs.
|
|
447
|
-
negotiation: negotiable ? negotiation.contextFor(justification) : undefined,
|
|
448
556
|
negotiable,
|
|
449
557
|
});
|
|
450
558
|
modelCalls = 1;
|
|
451
559
|
}
|
|
452
560
|
const decision = mapVerdictToAction(trimmed, verdict, { rung });
|
|
561
|
+
// [[EXT-127]] — **the alignment check, driven exactly where production drives it.** Reached only
|
|
562
|
+
// on a `destructive` decline at a negotiating rung, and only for the two arms the node grants it
|
|
563
|
+
// authority over: a plain `reject`, or an `escalate` that §4.6's open-world floor produced. Its
|
|
564
|
+
// decision then REPLACES the classifier's action, which is what makes a corpus before/after a
|
|
565
|
+
// measurement of the gate rather than of half of it.
|
|
566
|
+
//
|
|
567
|
+
// **The count is what a suite author reads, so the call is counted.** A check is a model call, and
|
|
568
|
+
// an `auto` suite whose `modelCalls` said 1 while spending 2 would understate the cost of the very
|
|
569
|
+
// feature it was measuring.
|
|
570
|
+
let alignment;
|
|
571
|
+
const alignmentReachable = !deterministicOnly &&
|
|
572
|
+
isNegotiatingRung(rung) &&
|
|
573
|
+
decision.verdict?.outcome === 'destructive' &&
|
|
574
|
+
(decision.action === 'reject' ||
|
|
575
|
+
(decision.action === 'escalate' &&
|
|
576
|
+
effectivePreflightFloorFinding(trimmed, { rung })?.kind === 'open-world'));
|
|
577
|
+
if (alignmentReachable) {
|
|
578
|
+
alignment = await runAlignmentCheck({
|
|
579
|
+
command: trimmed,
|
|
580
|
+
outcome: 'destructive',
|
|
581
|
+
reason: decision.verdict?.reason ?? '',
|
|
582
|
+
...(round.justification ? { justification: round.justification } : {}),
|
|
583
|
+
}, config, {
|
|
584
|
+
model: checkerModel,
|
|
585
|
+
userMessages: negotiation.retainedUserMessages(),
|
|
586
|
+
priorRounds: negotiation.alignmentRounds(),
|
|
587
|
+
...((options?.home ?? env?.HOME) ? { home: options?.home ?? env?.HOME } : {}),
|
|
588
|
+
...(options?.timeoutMs !== undefined ? { timeoutMs: options.timeoutMs } : {}),
|
|
589
|
+
});
|
|
590
|
+
// A check that never happened changes nothing — the classifier's action stands, exactly as it
|
|
591
|
+
// does in production. See core's ALIGNMENT_FAIL_CLOSED.
|
|
592
|
+
//
|
|
593
|
+
// **And it is not COUNTED either.** `modelCalls` is what a suite author reads as the cost of a
|
|
594
|
+
// case and what a reporter divides by; a check the gate could not obtain contributed no label,
|
|
595
|
+
// no action and no judgement, so counting it would report a rating that nobody made. A check
|
|
596
|
+
// that DID happen is counted, because an `auto` suite spending two calls per declined command
|
|
597
|
+
// must not report one.
|
|
598
|
+
if (isAlignmentFailClosed(alignment)) {
|
|
599
|
+
alignment = undefined;
|
|
600
|
+
}
|
|
601
|
+
else {
|
|
602
|
+
modelCalls += 1;
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
if (alignment !== undefined) {
|
|
606
|
+
decision.action =
|
|
607
|
+
alignment.kind === 'approve'
|
|
608
|
+
? 'approve'
|
|
609
|
+
: alignment.kind === 'suggest'
|
|
610
|
+
? 'reject'
|
|
611
|
+
: 'escalate';
|
|
612
|
+
}
|
|
453
613
|
// BATCH-34 — record the decision with §5's state and take the action production would take. This
|
|
454
614
|
// is the only step between the mapping and the reported action; see `advanceNegotiation`.
|
|
455
|
-
const negotiated = advanceNegotiation(negotiation, trimmed, justification, decision);
|
|
615
|
+
const negotiated = advanceNegotiation(negotiation, trimmed, justification, decision, alignment);
|
|
456
616
|
return {
|
|
457
617
|
ok: true,
|
|
458
618
|
// Opaque both ways: whatever the gate decided, reported verbatim. Omitted on the model-free
|
|
459
619
|
// path — the docblock above says why, and a stubbed rating does not change that: the outcome it
|
|
460
620
|
// would report is OUR lever floored by a preflight, never a judgement anyone rendered.
|
|
461
|
-
|
|
621
|
+
//
|
|
622
|
+
// BATCH-26 — and the RATING beside the decision, on the same condition and for the same reason.
|
|
623
|
+
// `label` is read off the verdict the gate returned, i.e. after a preflight may have raised it;
|
|
624
|
+
// `modelLabel` is the verdict that went IN, which is the rater's own answer and the only thing
|
|
625
|
+
// a rater-accuracy metric can honestly divide by on a floored command. Both are relayed, never
|
|
626
|
+
// compared: this file does not decide whether they differ, it reports both and lets the metric
|
|
627
|
+
// layer say so.
|
|
628
|
+
//
|
|
629
|
+
// **Except where the gate FAILED CLOSED, where there is no rating to report.** `label` still
|
|
630
|
+
// carries core's default — that IS the decision, and it is `destructive` whether a rater judged
|
|
631
|
+
// the command or the call timed out. `modelLabel` claims to be what the MODEL said, so
|
|
632
|
+
// reporting the default there would count a timeout as a rater judgement: EXT-66's finding, and
|
|
633
|
+
// EXT-62 measured a whole sweep column reading exactly that as rater coverage. Asked of core's
|
|
634
|
+
// own `isFailClosed` rather than recognised from the reason here — the distinction has one
|
|
635
|
+
// implementation and this file relays it like every other.
|
|
636
|
+
...(deterministicOnly
|
|
637
|
+
? {}
|
|
638
|
+
: {
|
|
639
|
+
label: decision.verdict?.outcome,
|
|
640
|
+
...(isFailClosed(verdict) ? {} : { modelLabel: verdict?.outcome }),
|
|
641
|
+
}),
|
|
462
642
|
action: negotiated.action,
|
|
463
|
-
rationale: buildRationale(trimmed, floor?.description, decision, noRatingReason, verdict, negotiated.boundSpent),
|
|
643
|
+
rationale: buildRationale(trimmed, floor?.description, decision, noRatingReason, verdict, negotiated.boundSpent, alignment),
|
|
464
644
|
modelCalls,
|
|
465
645
|
};
|
|
466
646
|
}
|
|
@@ -479,11 +659,22 @@ async function classifyOneRound(round, roundIndex, request, rung, negotiation, c
|
|
|
479
659
|
*/
|
|
480
660
|
export async function buildRaterClassifier(target, config, options) {
|
|
481
661
|
const rung = resolveRung(target, config);
|
|
482
|
-
const
|
|
662
|
+
const approvals = config.approvals !== undefined ? resolveApprovals(config, undefined) : undefined;
|
|
663
|
+
const raterProfile = approvals?.rater;
|
|
483
664
|
// `undefined` lets `rateShellCommand` use the run's own `config.llm` — the same fallback
|
|
484
665
|
// production has, so the sweep's `model:` axis moves the rater exactly when no rater profile is
|
|
485
666
|
// pinned (a pinned profile wins over the sweep, in the eval as in the session).
|
|
486
|
-
const model = options?.model ??
|
|
667
|
+
const model = options?.model ??
|
|
668
|
+
(raterProfile ? await resolveRaterModel(raterProfile, 'approvals.rater') : undefined);
|
|
669
|
+
// [[EXT-127]] — the ALIGNMENT CHECKER's model, resolved once for the same reason the rater's is.
|
|
670
|
+
// `approvals.alignmentChecker` has already been defaulted to the rater's profile by
|
|
671
|
+
// `resolveApprovals`, so a suite that names one rater measures both halves on it — which is what
|
|
672
|
+
// makes a sweep's `model:` axis move the whole gate rather than half of it.
|
|
673
|
+
const checkerProfile = approvals?.alignmentChecker;
|
|
674
|
+
const checkerModel = options?.model ??
|
|
675
|
+
(checkerProfile
|
|
676
|
+
? await resolveRaterModel(checkerProfile, 'approvals.alignmentChecker')
|
|
677
|
+
: undefined);
|
|
487
678
|
return async (request) => {
|
|
488
679
|
const outcomes = [];
|
|
489
680
|
// BATCH-34 — ONE negotiation per REQUEST, i.e. per (case × cell). It is built here rather than
|
|
@@ -491,12 +682,22 @@ export async function buildRaterClassifier(target, config, options) {
|
|
|
491
682
|
// suite and the runner may run several concurrently: a shared instance would let one case's
|
|
492
683
|
// transcript be rated into another's, and one case's rejections spend another's bound.
|
|
493
684
|
const negotiation = new ShellNegotiationState();
|
|
685
|
+
// [[EXT-127]] — **a corpus case's `user_messages` ARE the user's own words, by declaration.**
|
|
686
|
+
// The provenance window fails closed for a session whose driver nobody has classified, and a
|
|
687
|
+
// suite is exactly such a driver — so without this the alignment checker would meet an empty
|
|
688
|
+
// mandate on every case and escalate every one of them, measuring nothing.
|
|
689
|
+
//
|
|
690
|
+
// **It changes only what the CHECKER sees.** Nothing else in this file reads
|
|
691
|
+
// `retainedUserMessages`, and `mapVerdictToAction` below is still called with no `provenance` —
|
|
692
|
+
// deliberately, per its own contract: §4.6's carve-out must not move a published corpus label
|
|
693
|
+
// for a reason no suite author asked for.
|
|
694
|
+
negotiation.admitUserProvenance(true);
|
|
494
695
|
// ONE outcome per round, in order, and SERIALLY: the rounds of a case are a sequence, and the
|
|
495
696
|
// suite runner already parallelizes across cases (`concurrency`), so racing within a case would
|
|
496
697
|
// only make the eval's own load harder to reason about. Serial is now also REQUIRED rather than
|
|
497
698
|
// merely tidy — each round is rated with the exchange the rounds before it produced.
|
|
498
699
|
for (const [roundIndex, round] of request.rounds.entries()) {
|
|
499
|
-
outcomes.push(await classifyOneRound(round, roundIndex, request, rung, negotiation, config, model, options));
|
|
700
|
+
outcomes.push(await classifyOneRound(round, roundIndex, request, rung, negotiation, config, model, checkerModel, options));
|
|
500
701
|
}
|
|
501
702
|
return outcomes;
|
|
502
703
|
};
|
package/dist/raterTarget.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raterTarget.js","sourceRoot":"","sources":["../src/raterTarget.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"raterTarget.js","sourceRoot":"","sources":["../src/raterTarget.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gaunt-sloth/batch",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.3",
|
|
4
4
|
"description": "Batch matrix runtime for Gaunt Sloth (BATCH-1): run a prompt-executable over a matrix of models and/or content-bound inputs",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Andrew Kondratev",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"#src/*.js": "./dist/*.js"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@langchain/core": "^1.2.
|
|
37
|
+
"@langchain/core": "^1.2.9",
|
|
38
38
|
"yaml": "^2.9.0",
|
|
39
39
|
"zod": "^4.4.3",
|
|
40
|
-
"@gaunt-sloth/
|
|
41
|
-
"@gaunt-sloth/
|
|
40
|
+
"@gaunt-sloth/core": "2.0.0-beta.3",
|
|
41
|
+
"@gaunt-sloth/agent": "2.0.0-beta.3"
|
|
42
42
|
},
|
|
43
43
|
"files": [
|
|
44
44
|
"./dist/*"
|