@looprun-ai/core 0.1.2 → 0.2.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/guards.d.ts +92 -15
- package/dist/guards.d.ts.map +1 -1
- package/dist/guards.js +145 -38
- package/dist/guards.js.map +1 -1
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/model-params.d.ts +16 -0
- package/dist/model-params.d.ts.map +1 -1
- package/dist/model-params.js +14 -0
- package/dist/model-params.js.map +1 -1
- package/dist/runtime/ledger.d.ts +10 -1
- package/dist/runtime/ledger.d.ts.map +1 -1
- package/dist/runtime/ledger.js +2 -1
- package/dist/runtime/ledger.js.map +1 -1
- package/dist/runtime/turn.d.ts +74 -2
- package/dist/runtime/turn.d.ts.map +1 -1
- package/dist/runtime/turn.js +112 -0
- package/dist/runtime/turn.js.map +1 -1
- package/dist/spec.d.ts +77 -10
- package/dist/spec.d.ts.map +1 -1
- package/dist/spec.js +62 -51
- package/dist/spec.js.map +1 -1
- package/package.json +1 -1
package/dist/guards.d.ts
CHANGED
|
@@ -6,6 +6,15 @@
|
|
|
6
6
|
* never read by the checker) — the prose+check pairing. Every predicate reads tool args / world
|
|
7
7
|
* state / observed calls, NEVER the user text (the magnet firewall). The pure set is deterministic
|
|
8
8
|
* by construction: no clock, no entropy, no network, no LLM call inside a check.
|
|
9
|
+
*
|
|
10
|
+
* DOMAIN-NEUTRALITY LAW (P8a): this package is truly language- and label-scheme-neutral. No generic
|
|
11
|
+
* guard carries a linguistic regex (claim verbs, confirm-language) or a label scheme by default —
|
|
12
|
+
* those STRINGS/REGEXES live in the business bundle's own lexicon and are passed back in as REQUIRED
|
|
13
|
+
* params (`labelProvenance(field, expect, scheme)`, `noFabricatedSuccess(tool, { claimRe, labelRe,
|
|
14
|
+
* verbClaimRe, reason })`, `pendingConfirmMustAsk({ askRe })`, `destructiveClaimRequiresSuccess(tools,
|
|
15
|
+
* { claimRe, askRe, offerRe, exemptRe? })`, `noFalseFailureClaim({ claimRe })`). The runtime holds
|
|
16
|
+
* only the MECHANISM and the generic English prose. A domain-neutrality lint scans this package for
|
|
17
|
+
* accented letters / language stems, so a re-introduced default fails CI.
|
|
9
18
|
*/
|
|
10
19
|
import type { Guard, GuardCtx, Dim, ReplyMutator, AgentWorld } from './rules.js';
|
|
11
20
|
export declare function custom(opts: {
|
|
@@ -26,10 +35,18 @@ export declare function argAbsent(field: string): Guard;
|
|
|
26
35
|
export declare function labelExists(field: string): Guard;
|
|
27
36
|
/** A PRESENT non-empty string arg must match `pattern`; absent/empty is left to argRequired. */
|
|
28
37
|
export declare function argFormat(field: string, pattern: string, flags?: string, reason?: string): Guard;
|
|
29
|
-
/**
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
38
|
+
/**
|
|
39
|
+
* A label-typed arg must come from the expected provenance class. The label SCHEME is business-owned
|
|
40
|
+
* and injected — never hardcoded here: `scheme.uploadRe` is the predicate that decides whether a label
|
|
41
|
+
* is an "uploaded" label; `scheme.labelNoun` (optional) names the scheme in the default deny/prose
|
|
42
|
+
* message; `scheme.reason` overrides that message outright. The runtime carries ONLY the mechanism and
|
|
43
|
+
* the generic English wording — the label regex + its noun live in the domain bundle's lexicon.
|
|
44
|
+
*/
|
|
45
|
+
export declare function labelProvenance(field: string, expect: 'uploaded' | 'generated', scheme: {
|
|
46
|
+
uploadRe: RegExp;
|
|
47
|
+
labelNoun?: string;
|
|
48
|
+
reason?: string;
|
|
49
|
+
}): Guard;
|
|
33
50
|
/** Generic state precondition: the call is allowed only while `ok(world)` holds. `prose` states the
|
|
34
51
|
* CONDITION (always-rendered), separate from the deny `reason` (fires only when the condition is false). */
|
|
35
52
|
export declare function precondition<W extends AgentWorld = AgentWorld>(ok: (world: W) => boolean, reason: string, prose?: string): Guard;
|
|
@@ -41,15 +58,42 @@ export declare function maxCallsPerConversation(tool: string, n: number, reason:
|
|
|
41
58
|
export declare function canonArgs(v: unknown): string;
|
|
42
59
|
/** Deny a call whose (tool, canonical args) already SUCCEEDED this turn. */
|
|
43
60
|
export declare function noDuplicateCall(): Guard;
|
|
44
|
-
/**
|
|
45
|
-
*
|
|
46
|
-
|
|
61
|
+
/**
|
|
62
|
+
* A destructive tool needs the user's go-ahead before it runs — via one of two MECHANISMS (the
|
|
63
|
+
* `mechanism` option, default `'arg'`):
|
|
64
|
+
* - `'arg'`: the tool carries a confirm FLAG (`argFlag`, default `confirmed`). `confirmed:true` is legal
|
|
65
|
+
* ONLY when a `confirmed:false`/absent PROBE of the SAME tool ran OK in an EARLIER turn — never confirm
|
|
66
|
+
* your own same-turn probe, never skip it.
|
|
67
|
+
* - `'prior-ask'`: the tool has NO confirm flag (e.g. a zero-arg action). It is legal ONLY when an
|
|
68
|
+
* `askUser` succeeded in an EARLIER turn — the model must ASK, wait for the user's answer, and act only
|
|
69
|
+
* in a LATER turn. A same-turn `askUser` does NOT unlock it (that is `noActAfterAskSameTurn`'s edge —
|
|
70
|
+
* the two compose: prior-ask = cross-turn REQUIRE, noActAfterAskSameTurn = same-turn DENY).
|
|
71
|
+
* Reads observed / args only — never the user text (magnet-safe). Auto-installed by `AgentSpecBase` per
|
|
72
|
+
* destructive tool according to `cfg.confirmMechanism`.
|
|
73
|
+
*/
|
|
74
|
+
export declare function confirmFirst(opts?: string | {
|
|
75
|
+
argFlag?: string;
|
|
76
|
+
mechanism?: 'arg' | 'prior-ask';
|
|
77
|
+
askRe?: RegExp;
|
|
78
|
+
}): Guard;
|
|
79
|
+
/** Deny `tools` when an `askUser` call already succeeded THIS turn — ask, wait, act only in a LATER
|
|
80
|
+
* turn; a model must never confirm-and-execute in the same turn as its own question (a multi-tool
|
|
81
|
+
* step can call askUser and a destructive tool back-to-back, which reads as "asked" to a human but
|
|
82
|
+
* never gave the user a chance to answer). Reads observed/turnIndex only; magnet-safe. */
|
|
83
|
+
export declare function noActAfterAskSameTurn(tools: string[]): Guard;
|
|
47
84
|
/** At most ONE successful destructive action per turn. */
|
|
48
85
|
export declare function destructiveThrottle(destructiveTools: string[]): Guard;
|
|
49
86
|
export declare function resultInvariant<W extends AgentWorld = AgentWorld>(pred: (result: unknown, world: W) => boolean, reason: string): Guard;
|
|
50
|
-
/**
|
|
87
|
+
/**
|
|
88
|
+
* If `tool` did NOT succeed this turn, the reply must not claim/imply it did (existence-keyed). Both
|
|
89
|
+
* the label SCHEME (`labelRe` — which tokens are media labels) and the verb-first claim regex
|
|
90
|
+
* (`verbClaimRe` — the "generating an image" phrasing) are business-owned and injected; the runtime
|
|
91
|
+
* carries NO linguistic pattern of its own.
|
|
92
|
+
*/
|
|
51
93
|
export declare function noFabricatedSuccess(tool: string, opts: {
|
|
52
94
|
claimRe: RegExp;
|
|
95
|
+
labelRe: RegExp;
|
|
96
|
+
verbClaimRe: RegExp;
|
|
53
97
|
reason: string;
|
|
54
98
|
}): Guard;
|
|
55
99
|
/** The reply must contain at least one of `keywords` (case-insensitive). */
|
|
@@ -64,13 +108,46 @@ export declare function replyNoProductionClaim(claimRe: RegExp, reason: string):
|
|
|
64
108
|
export declare function replyConfirmsLabels(labels: string[], reason: string): Guard;
|
|
65
109
|
/** The final reply must be non-empty. */
|
|
66
110
|
export declare function emptyReply(): Guard;
|
|
67
|
-
/**
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
*
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
111
|
+
/**
|
|
112
|
+
* A destructive PROBE returned requiresConfirmation this turn — the reply MUST relay the question, UNLESS
|
|
113
|
+
* that pending confirmation was already RESOLVED this turn: the SAME tool ran OK with the confirm flag set
|
|
114
|
+
* on the SAME record (its args minus the confirm flag) later in the turn — a legal probe→approved-execute
|
|
115
|
+
* tail of a two-step flow, where the reply correctly reports the DONE action instead of re-asking. Keys
|
|
116
|
+
* only the UNRESOLVED probes: if every requiresConfirmation was resolved, the guard is silent. `askRe` (the
|
|
117
|
+
* "does this reply seek confirmation?" regex — a business-owned, language-specific pattern) is injected;
|
|
118
|
+
* `confirmArg` (default `confirmed`) is the confirm flag a resolving call carries. Reads observed / reply
|
|
119
|
+
* only — the runtime holds no confirm-language of its own.
|
|
120
|
+
*/
|
|
121
|
+
export declare function pendingConfirmMustAsk(opts: {
|
|
122
|
+
askRe: RegExp;
|
|
123
|
+
confirmArg?: string;
|
|
124
|
+
}): Guard;
|
|
125
|
+
/**
|
|
126
|
+
* The reply claims a deletion/removal, but no destructive tool SUCCEEDED this turn. ATTEMPT-KEYED (the
|
|
127
|
+
* P1-FP fix): the check may fire ONLY when a listed destructive tool was actually ATTEMPTED this turn (an
|
|
128
|
+
* observed call, executed OR vetoed). With NO attempt, a destructive verb in the reply is read-backed
|
|
129
|
+
* STATUS talk (relaying prior world state), never an action claim — so it is left alone, killing the false
|
|
130
|
+
* positive where a status readback tripped the claim regex. Once an attempt exists, the legal cases are
|
|
131
|
+
* exempted in order: the action truly took effect (a `confirmed:true` success this turn); a probe ran and
|
|
132
|
+
* the reply seeks confirmation (`askRe`); an honest failure/negation report (`exemptRe`). What remains is
|
|
133
|
+
* caught SENTENCE-SCOPED: a `claimRe` match fires only when its OWN sentence is neither a question nor an
|
|
134
|
+
* offer/conditional (`offerRe`), so an offer earlier in the reply can never mask a genuine declarative
|
|
135
|
+
* claim later. Every linguistic pattern — the destructive-claim regex, the confirm-seeking `askRe`, the
|
|
136
|
+
* offer/conditional `offerRe`, and the optional `exemptRe` — is injected by the domain bundle; the runtime
|
|
137
|
+
* supplies only the attempt-keying + sentence mechanisms and the English prose.
|
|
138
|
+
*/
|
|
139
|
+
export declare function destructiveClaimRequiresSuccess(destructiveTools: string[], opts: {
|
|
140
|
+
claimRe: RegExp;
|
|
141
|
+
askRe: RegExp;
|
|
142
|
+
offerRe: RegExp;
|
|
143
|
+
exemptRe?: RegExp;
|
|
144
|
+
}): Guard;
|
|
145
|
+
/** If every tool call this turn SUCCEEDED (and at least one ran), the reply may not claim inability.
|
|
146
|
+
* `claimRe` (the false-failure claim regex — a business-owned, language-specific pattern) is injected;
|
|
147
|
+
* the runtime holds no failure-language of its own. */
|
|
148
|
+
export declare function noFalseFailureClaim(opts: {
|
|
149
|
+
claimRe: RegExp;
|
|
150
|
+
}): Guard;
|
|
74
151
|
/** Deterministic egress jargon scrub (word-boundary, case-insensitive) before the reply leaves. */
|
|
75
152
|
export declare function jargonScrub(map: Record<string, string>): ReplyMutator;
|
|
76
153
|
//# sourceMappingURL=guards.d.ts.map
|
package/dist/guards.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}
|
package/dist/guards.js
CHANGED
|
@@ -95,15 +95,18 @@ export function argFormat(field, pattern, flags, reason) {
|
|
|
95
95
|
prose: () => `"${field}" must match ${pattern}`,
|
|
96
96
|
};
|
|
97
97
|
}
|
|
98
|
-
/**
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
98
|
+
/**
|
|
99
|
+
* A label-typed arg must come from the expected provenance class. The label SCHEME is business-owned
|
|
100
|
+
* and injected — never hardcoded here: `scheme.uploadRe` is the predicate that decides whether a label
|
|
101
|
+
* is an "uploaded" label; `scheme.labelNoun` (optional) names the scheme in the default deny/prose
|
|
102
|
+
* message; `scheme.reason` overrides that message outright. The runtime carries ONLY the mechanism and
|
|
103
|
+
* the generic English wording — the label regex + its noun live in the domain bundle's lexicon.
|
|
104
|
+
*/
|
|
105
|
+
export function labelProvenance(field, expect, scheme) {
|
|
106
|
+
const noun = scheme.labelNoun;
|
|
107
|
+
const msg = scheme.reason ?? (expect === 'uploaded'
|
|
108
|
+
? `"${field}" must be an UPLOADED image label${noun ? ` (${noun})` : ''} — for generated images use the matching tool instead.`
|
|
109
|
+
: `"${field}" must be a GENERATED image label — uploads${noun ? ` (${noun})` : ''} are not valid here.`);
|
|
107
110
|
return {
|
|
108
111
|
kind: 'labelProvenance',
|
|
109
112
|
dim: 'input',
|
|
@@ -113,7 +116,7 @@ export function labelProvenance(field, expect, reason) {
|
|
|
113
116
|
: (v && typeof v === 'object' && 'label' in v) ? String(v.label ?? '').trim() : '';
|
|
114
117
|
if (!label)
|
|
115
118
|
return null;
|
|
116
|
-
const isUp =
|
|
119
|
+
const isUp = scheme.uploadRe.test(label);
|
|
117
120
|
return (expect === 'uploaded' ? isUp : !isUp) ? null : msg;
|
|
118
121
|
},
|
|
119
122
|
prose: () => msg,
|
|
@@ -182,23 +185,78 @@ export function noDuplicateCall() {
|
|
|
182
185
|
prose: () => 'never repeat a tool call that already succeeded with the same arguments',
|
|
183
186
|
};
|
|
184
187
|
}
|
|
185
|
-
/**
|
|
186
|
-
*
|
|
187
|
-
|
|
188
|
+
/**
|
|
189
|
+
* A destructive tool needs the user's go-ahead before it runs — via one of two MECHANISMS (the
|
|
190
|
+
* `mechanism` option, default `'arg'`):
|
|
191
|
+
* - `'arg'`: the tool carries a confirm FLAG (`argFlag`, default `confirmed`). `confirmed:true` is legal
|
|
192
|
+
* ONLY when a `confirmed:false`/absent PROBE of the SAME tool ran OK in an EARLIER turn — never confirm
|
|
193
|
+
* your own same-turn probe, never skip it.
|
|
194
|
+
* - `'prior-ask'`: the tool has NO confirm flag (e.g. a zero-arg action). It is legal ONLY when an
|
|
195
|
+
* `askUser` succeeded in an EARLIER turn — the model must ASK, wait for the user's answer, and act only
|
|
196
|
+
* in a LATER turn. A same-turn `askUser` does NOT unlock it (that is `noActAfterAskSameTurn`'s edge —
|
|
197
|
+
* the two compose: prior-ask = cross-turn REQUIRE, noActAfterAskSameTurn = same-turn DENY).
|
|
198
|
+
* Reads observed / args only — never the user text (magnet-safe). Auto-installed by `AgentSpecBase` per
|
|
199
|
+
* destructive tool according to `cfg.confirmMechanism`.
|
|
200
|
+
*/
|
|
201
|
+
export function confirmFirst(opts) {
|
|
202
|
+
const o = typeof opts === 'string' ? { argFlag: opts } : (opts ?? {});
|
|
203
|
+
const argFlag = o.argFlag ?? 'confirmed';
|
|
204
|
+
const mechanism = o.mechanism ?? 'arg';
|
|
188
205
|
return {
|
|
189
206
|
kind: 'confirmFirst',
|
|
190
207
|
dim: 'run',
|
|
191
208
|
check(ctx) {
|
|
192
209
|
if (!ctx.tool)
|
|
193
210
|
return null;
|
|
211
|
+
if (mechanism === 'prior-ask') {
|
|
212
|
+
// The probe is EITHER an earlier-turn askUser OR an earlier-turn ATTEMPT of this same tool
|
|
213
|
+
// (executed or vetoed — vetoed attempts land in observed with ok:false). The attempt disjunct is
|
|
214
|
+
// load-bearing: models often relay the confirmation question via replyToUser instead of askUser,
|
|
215
|
+
// and the ask-only form dead-locks the legitimate later-turn action. A prior attempt proves the
|
|
216
|
+
// confirm flow started and the user has since answered.
|
|
217
|
+
// Third disjunct: a prior-turn replyToUser whose TEXT matches the injected confirm-question
|
|
218
|
+
// regex (the bundle lexicon). Models often ask politely via replyToUser without touching the
|
|
219
|
+
// tool at all; ask-or-attempt alone dead-locks the legitimate later-turn action. The text read
|
|
220
|
+
// is the MODEL'S OWN prior output — firewall-clean.
|
|
221
|
+
const askRe = o.askRe;
|
|
222
|
+
const probedEarlier = ctx.observed.some((obs) => obs.turnIndex < ctx.turnIndex &&
|
|
223
|
+
(obs.name === ctx.tool ||
|
|
224
|
+
(obs.name === 'askUser' && obs.ok) ||
|
|
225
|
+
(askRe != null && obs.name === 'replyToUser' && obs.ok && askRe.test(String(obs.args?.text ?? '')))));
|
|
226
|
+
return probedEarlier
|
|
227
|
+
? null
|
|
228
|
+
: `Do NOT run ${ctx.tool} yet — first ask the user to confirm and STOP; run it only in a LATER turn after they agree.`;
|
|
229
|
+
}
|
|
194
230
|
if (ctx.args[argFlag] !== true)
|
|
195
231
|
return null;
|
|
196
|
-
const probe = ctx.observed.find((
|
|
232
|
+
const probe = ctx.observed.find((obs) => obs.name === ctx.tool && obs.ok && obs.args?.[argFlag] !== true && obs.turnIndex < ctx.turnIndex);
|
|
197
233
|
return probe
|
|
198
234
|
? null
|
|
199
235
|
: `Do NOT pass ${argFlag}:true — first call ${ctx.tool} WITHOUT it, relay the confirmation question to the user, and only confirm in a LATER turn after the user agrees.`;
|
|
200
236
|
},
|
|
201
|
-
prose: () =>
|
|
237
|
+
prose: () => mechanism === 'prior-ask'
|
|
238
|
+
? 'this destructive action requires asking the user to confirm first and running it only in a LATER turn after they agree — never on the opening turn or in the same turn as the question'
|
|
239
|
+
: `destructive actions need ${argFlag}:false first + the USER's explicit confirmation in a later turn`,
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
/** Deny `tools` when an `askUser` call already succeeded THIS turn — ask, wait, act only in a LATER
|
|
243
|
+
* turn; a model must never confirm-and-execute in the same turn as its own question (a multi-tool
|
|
244
|
+
* step can call askUser and a destructive tool back-to-back, which reads as "asked" to a human but
|
|
245
|
+
* never gave the user a chance to answer). Reads observed/turnIndex only; magnet-safe. */
|
|
246
|
+
export function noActAfterAskSameTurn(tools) {
|
|
247
|
+
const set = new Set(tools);
|
|
248
|
+
return {
|
|
249
|
+
kind: 'noActAfterAskSameTurn',
|
|
250
|
+
dim: 'run',
|
|
251
|
+
check(ctx) {
|
|
252
|
+
if (!ctx.tool || !set.has(ctx.tool))
|
|
253
|
+
return null;
|
|
254
|
+
const askedThisTurn = ctx.observed.some((o) => o.name === 'askUser' && o.ok && o.turnIndex === ctx.turnIndex);
|
|
255
|
+
return askedThisTurn
|
|
256
|
+
? 'You already asked the user a question this turn — wait for their answer; do not execute this action in the same turn as the question.'
|
|
257
|
+
: null;
|
|
258
|
+
},
|
|
259
|
+
prose: () => `never call ${tools.join(', ')} in the same turn as an askUser question — wait for the user's answer and act only in a LATER turn`,
|
|
202
260
|
};
|
|
203
261
|
}
|
|
204
262
|
/** At most ONE successful destructive action per turn. */
|
|
@@ -232,8 +290,12 @@ export function resultInvariant(pred, reason) {
|
|
|
232
290
|
};
|
|
233
291
|
}
|
|
234
292
|
// ── BEHAVIOR (reply-checks) ──────────────────────────────────────────────────
|
|
235
|
-
|
|
236
|
-
|
|
293
|
+
/**
|
|
294
|
+
* If `tool` did NOT succeed this turn, the reply must not claim/imply it did (existence-keyed). Both
|
|
295
|
+
* the label SCHEME (`labelRe` — which tokens are media labels) and the verb-first claim regex
|
|
296
|
+
* (`verbClaimRe` — the "generating an image" phrasing) are business-owned and injected; the runtime
|
|
297
|
+
* carries NO linguistic pattern of its own.
|
|
298
|
+
*/
|
|
237
299
|
export function noFabricatedSuccess(tool, opts) {
|
|
238
300
|
return {
|
|
239
301
|
kind: 'noFabricatedSuccess',
|
|
@@ -242,12 +304,12 @@ export function noFabricatedSuccess(tool, opts) {
|
|
|
242
304
|
if (ranThisTurn(ctx, tool))
|
|
243
305
|
return null;
|
|
244
306
|
const reply = ctx.reply ?? '';
|
|
245
|
-
const labels = reply.match(
|
|
307
|
+
const labels = reply.match(opts.labelRe) ?? [];
|
|
246
308
|
const produced = ctx.producedThisTurn ?? [];
|
|
247
309
|
const invented = labels.filter((l) => !produced.includes(l) && !ctx.world.hasMediaLabel(l));
|
|
248
310
|
if (invented.length)
|
|
249
311
|
return opts.reason;
|
|
250
|
-
const claims = opts.claimRe.test(reply) ||
|
|
312
|
+
const claims = opts.claimRe.test(reply) || opts.verbClaimRe.test(reply);
|
|
251
313
|
if (claims && labels.length === 0)
|
|
252
314
|
return opts.reason;
|
|
253
315
|
return null;
|
|
@@ -330,52 +392,97 @@ export function emptyReply() {
|
|
|
330
392
|
prose: () => 'never end a turn with an empty reply',
|
|
331
393
|
};
|
|
332
394
|
}
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
395
|
+
/**
|
|
396
|
+
* A destructive PROBE returned requiresConfirmation this turn — the reply MUST relay the question, UNLESS
|
|
397
|
+
* that pending confirmation was already RESOLVED this turn: the SAME tool ran OK with the confirm flag set
|
|
398
|
+
* on the SAME record (its args minus the confirm flag) later in the turn — a legal probe→approved-execute
|
|
399
|
+
* tail of a two-step flow, where the reply correctly reports the DONE action instead of re-asking. Keys
|
|
400
|
+
* only the UNRESOLVED probes: if every requiresConfirmation was resolved, the guard is silent. `askRe` (the
|
|
401
|
+
* "does this reply seek confirmation?" regex — a business-owned, language-specific pattern) is injected;
|
|
402
|
+
* `confirmArg` (default `confirmed`) is the confirm flag a resolving call carries. Reads observed / reply
|
|
403
|
+
* only — the runtime holds no confirm-language of its own.
|
|
404
|
+
*/
|
|
405
|
+
export function pendingConfirmMustAsk(opts) {
|
|
406
|
+
const confirmArg = opts.confirmArg ?? 'confirmed';
|
|
407
|
+
// The "record" a call acts on = its canonical args with the confirm flag stripped (a probe and its
|
|
408
|
+
// approved re-run differ ONLY in that flag, so matching the rest pins them to the same record).
|
|
409
|
+
const record = (args) => {
|
|
410
|
+
const rest = {};
|
|
411
|
+
for (const [k, v] of Object.entries(args ?? {}))
|
|
412
|
+
if (k !== confirmArg)
|
|
413
|
+
rest[k] = v;
|
|
414
|
+
return canonArgs(rest);
|
|
415
|
+
};
|
|
337
416
|
return {
|
|
338
417
|
kind: 'pendingConfirmMustAsk',
|
|
339
418
|
dim: 'behavior',
|
|
340
419
|
check(ctx) {
|
|
341
|
-
const
|
|
342
|
-
|
|
420
|
+
const thisTurn = ctx.observed.filter((o) => o.turnIndex === ctx.turnIndex);
|
|
421
|
+
const unresolved = thisTurn
|
|
422
|
+
.filter((o) => o.resultFlags?.requiresConfirmation)
|
|
423
|
+
.filter((probe) => !thisTurn.some((o) => o.name === probe.name && o.ok && o.args?.[confirmArg] === true && record(o.args) === record(probe.args)));
|
|
424
|
+
if (!unresolved.length)
|
|
343
425
|
return null;
|
|
344
|
-
return
|
|
426
|
+
return opts.askRe.test(ctx.reply ?? '')
|
|
345
427
|
? null
|
|
346
428
|
: 'A confirmation is PENDING — relay the confirmation question to the user (your reply must ask it), and do not summarize the action as done.';
|
|
347
429
|
},
|
|
348
430
|
prose: () => 'when a tool asks for confirmation, relay that question to the user before anything else',
|
|
349
431
|
};
|
|
350
432
|
}
|
|
351
|
-
/**
|
|
352
|
-
*
|
|
353
|
-
|
|
354
|
-
|
|
433
|
+
/** Split a reply into sentences on ./!/? boundaries — pure, LANGUAGE-NEUTRAL (punctuation only; no
|
|
434
|
+
* stateful regex — split() takes no g/y flag, so there is no lastIndex to leak between calls). */
|
|
435
|
+
function splitSentences(text) {
|
|
436
|
+
return text.split(/(?<=[.!?])\s+/).map((s) => s.trim()).filter(Boolean);
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* The reply claims a deletion/removal, but no destructive tool SUCCEEDED this turn. ATTEMPT-KEYED (the
|
|
440
|
+
* P1-FP fix): the check may fire ONLY when a listed destructive tool was actually ATTEMPTED this turn (an
|
|
441
|
+
* observed call, executed OR vetoed). With NO attempt, a destructive verb in the reply is read-backed
|
|
442
|
+
* STATUS talk (relaying prior world state), never an action claim — so it is left alone, killing the false
|
|
443
|
+
* positive where a status readback tripped the claim regex. Once an attempt exists, the legal cases are
|
|
444
|
+
* exempted in order: the action truly took effect (a `confirmed:true` success this turn); a probe ran and
|
|
445
|
+
* the reply seeks confirmation (`askRe`); an honest failure/negation report (`exemptRe`). What remains is
|
|
446
|
+
* caught SENTENCE-SCOPED: a `claimRe` match fires only when its OWN sentence is neither a question nor an
|
|
447
|
+
* offer/conditional (`offerRe`), so an offer earlier in the reply can never mask a genuine declarative
|
|
448
|
+
* claim later. Every linguistic pattern — the destructive-claim regex, the confirm-seeking `askRe`, the
|
|
449
|
+
* offer/conditional `offerRe`, and the optional `exemptRe` — is injected by the domain bundle; the runtime
|
|
450
|
+
* supplies only the attempt-keying + sentence mechanisms and the English prose.
|
|
451
|
+
*/
|
|
452
|
+
export function destructiveClaimRequiresSuccess(destructiveTools, opts) {
|
|
453
|
+
const { claimRe: re, askRe, offerRe, exemptRe } = opts;
|
|
355
454
|
const set = new Set(destructiveTools);
|
|
356
455
|
return {
|
|
357
456
|
kind: 'destructiveClaimRequiresSuccess',
|
|
358
457
|
dim: 'behavior',
|
|
359
458
|
check(ctx) {
|
|
360
|
-
|
|
361
|
-
|
|
459
|
+
// ATTEMPT-KEYING: no listed destructive tool touched this turn ⇒ any destructive verb is read-backed
|
|
460
|
+
// status, not an action claim — do not fire.
|
|
461
|
+
const attempts = ctx.observed.filter((o) => o.turnIndex === ctx.turnIndex && set.has(o.name));
|
|
462
|
+
if (!attempts.length)
|
|
463
|
+
return null;
|
|
464
|
+
const tookEffect = attempts.some((o) => o.ok && o.args?.confirmed === true);
|
|
465
|
+
if (tookEffect)
|
|
362
466
|
return null;
|
|
363
467
|
const reply = ctx.reply ?? '';
|
|
364
|
-
const probedThisTurn =
|
|
365
|
-
if (probedThisTurn &&
|
|
468
|
+
const probedThisTurn = attempts.some((o) => o.ok && o.args?.confirmed !== true);
|
|
469
|
+
if (probedThisTurn && askRe.test(reply))
|
|
366
470
|
return null;
|
|
367
471
|
if (exemptRe && exemptRe.test(reply))
|
|
368
472
|
return null;
|
|
369
|
-
|
|
473
|
+
const declarativeClaim = splitSentences(reply).some((sentence) => re.test(sentence) && !sentence.endsWith('?') && !offerRe.test(sentence));
|
|
474
|
+
return declarativeClaim
|
|
370
475
|
? 'Nothing destructive succeeded this turn — do not claim a deletion/removal happened. Report the actual state.'
|
|
371
476
|
: null;
|
|
372
477
|
},
|
|
373
478
|
prose: () => 'never claim something was deleted/removed unless the destructive tool actually succeeded this turn',
|
|
374
479
|
};
|
|
375
480
|
}
|
|
376
|
-
/** If every tool call this turn SUCCEEDED (and at least one ran), the reply may not claim inability.
|
|
377
|
-
|
|
378
|
-
|
|
481
|
+
/** If every tool call this turn SUCCEEDED (and at least one ran), the reply may not claim inability.
|
|
482
|
+
* `claimRe` (the false-failure claim regex — a business-owned, language-specific pattern) is injected;
|
|
483
|
+
* the runtime holds no failure-language of its own. */
|
|
484
|
+
export function noFalseFailureClaim(opts) {
|
|
485
|
+
const claimRe = opts.claimRe;
|
|
379
486
|
return {
|
|
380
487
|
kind: 'noFalseFailureClaim',
|
|
381
488
|
dim: 'behavior',
|
package/dist/guards.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,17 +7,18 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export * from './rules.js';
|
|
9
9
|
export * from './guards.js';
|
|
10
|
-
export {
|
|
11
|
-
export type { AgentSpec, AgentSpecConfig, AgentControls, AgentModelRef, GuardBinding, MutatorBinding, StateDirective, TerminalPolicy, ToolSchemaLike, Hook, ToolTarget, Layer, } from './spec.js';
|
|
10
|
+
export { AgentSpecBase, resolveBindings, resolveGuards, resolveMutators, } from './spec.js';
|
|
11
|
+
export type { AgentSpec, AgentSpecConfig, AgentControls, AgentModelRef, ChainSpec, GuardBinding, MutatorBinding, StateDirective, TerminalPolicy, ToolSchemaLike, Hook, ToolTarget, Layer, } from './spec.js';
|
|
12
12
|
export { renderScopedSpecTrunk, chainOrder } from './trunk.js';
|
|
13
13
|
export type { TrunkTheme } from './trunk.js';
|
|
14
14
|
export { validateSpec, MAX_TOOL_SURFACE } from './validate.js';
|
|
15
15
|
export type { SpecWarning } from './validate.js';
|
|
16
|
-
export { geminiThinkingOff, pinnedDecoding, normalizeModelParams } from './model-params.js';
|
|
16
|
+
export { geminiThinkingOff, pinnedDecoding, normalizeModelParams, resolveModelSettings } from './model-params.js';
|
|
17
|
+
export type { SamplingSettings } from './model-params.js';
|
|
17
18
|
export type { ToolDef, TokenUsage, TurnInput, TurnRecord, RunResult, RuntimeTurnInput, RuntimeTurnRecord } from './runtime/types.js';
|
|
18
19
|
export { createLedger, beginTurn, resultOk, recordVeto, recordToolResult, recordTerminal, vetoStormHit, VETO_STORM_LIMIT } from './runtime/ledger.js';
|
|
19
|
-
export type { TurnLedger } from './runtime/ledger.js';
|
|
20
|
+
export type { TurnLedger, PostToolViolation } from './runtime/ledger.js';
|
|
20
21
|
export { TERMINAL_TOOLS, isTerminal, terminalProtocol, TERMINAL_PROTOCOL, TERMINAL_PROTOCOL_REPLY_ONLY, forcedTerminalPrompt, terminalToolDefs, } from './runtime/terminal.js';
|
|
21
|
-
export { evaluatePreTool, evaluateOnInput, applyMutators, checkReply, redriveMessage, defaultExhaustionReply, finalizeReply, } from './runtime/turn.js';
|
|
22
|
-
export type { PreToolVerdict, ReplyViolation, FinalizedReply } from './runtime/turn.js';
|
|
22
|
+
export { evaluatePreTool, evaluateOnInput, applyMutators, checkReply, enforcePostTool, redriveMessage, defaultExhaustionReply, finalizeReply, shouldFireChain, runChainCompletionPass, } from './runtime/turn.js';
|
|
23
|
+
export type { PreToolVerdict, ReplyViolation, FinalizedReply, PostToolEnforcement, ChainPassCtx, ChainPassResult, } from './runtime/turn.js';
|
|
23
24
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,SAAS,EACT,eAAe,EACf,aAAa,EACb,aAAa,EACb,SAAS,EACT,YAAY,EACZ,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,IAAI,EACJ,UAAU,EACV,KAAK,GACN,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC/D,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAClH,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACrI,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACtJ,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EACL,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,4BAA4B,EAC5B,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,UAAU,EACV,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export * from './rules.js';
|
|
9
9
|
export * from './guards.js';
|
|
10
|
-
export {
|
|
10
|
+
export { AgentSpecBase, resolveBindings, resolveGuards, resolveMutators, } from './spec.js';
|
|
11
11
|
export { renderScopedSpecTrunk, chainOrder } from './trunk.js';
|
|
12
12
|
export { validateSpec, MAX_TOOL_SURFACE } from './validate.js';
|
|
13
|
-
export { geminiThinkingOff, pinnedDecoding, normalizeModelParams } from './model-params.js';
|
|
13
|
+
export { geminiThinkingOff, pinnedDecoding, normalizeModelParams, resolveModelSettings } from './model-params.js';
|
|
14
14
|
export { createLedger, beginTurn, resultOk, recordVeto, recordToolResult, recordTerminal, vetoStormHit, VETO_STORM_LIMIT } from './runtime/ledger.js';
|
|
15
15
|
export { TERMINAL_TOOLS, isTerminal, terminalProtocol, TERMINAL_PROTOCOL, TERMINAL_PROTOCOL_REPLY_ONLY, forcedTerminalPrompt, terminalToolDefs, } from './runtime/terminal.js';
|
|
16
|
-
export { evaluatePreTool, evaluateOnInput, applyMutators, checkReply, redriveMessage, defaultExhaustionReply, finalizeReply, } from './runtime/turn.js';
|
|
16
|
+
export { evaluatePreTool, evaluateOnInput, applyMutators, checkReply, enforcePostTool, redriveMessage, defaultExhaustionReply, finalizeReply, shouldFireChain, runChainCompletionPass, } from './runtime/turn.js';
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,GAChB,MAAM,WAAW,CAAC;AAgBnB,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKlH,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEtJ,OAAO,EACL,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,4BAA4B,EAC5B,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,UAAU,EACV,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC"}
|
package/dist/model-params.d.ts
CHANGED
|
@@ -25,4 +25,20 @@ export declare function pinnedDecoding(opts?: {
|
|
|
25
25
|
* seam so both preset-style ({ modelSettings: … }) and flat ({ temperature: 0 }) inputs work.
|
|
26
26
|
*/
|
|
27
27
|
export declare function normalizeModelParams(params: Record<string, unknown>): Record<string, unknown>;
|
|
28
|
+
/** Per-agent AI-SDK call settings (spec.controls.sampling) — the keys an agent may override. */
|
|
29
|
+
export interface SamplingSettings {
|
|
30
|
+
temperature?: number;
|
|
31
|
+
topP?: number;
|
|
32
|
+
maxOutputTokens?: number;
|
|
33
|
+
seed?: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Fold a spec's per-agent `sampling` OVER an already-normalized modelParams object (agent wins on any
|
|
37
|
+
* key it sets), preserving providerOptions and every other top-level key. The one merged object is
|
|
38
|
+
* spread into EVERY generate() call of the turn (main generation, forced-terminal, redrive), so a
|
|
39
|
+
* creative agent can run at temperature 0.7 beside a temp-0 admin agent in the same domain. Absent /
|
|
40
|
+
* empty sampling ⇒ the input returned unchanged (the zero-diff guarantee). Pure + exported so the merge
|
|
41
|
+
* is unit-testable without a live model.
|
|
42
|
+
*/
|
|
43
|
+
export declare function resolveModelSettings(normalized: Record<string, unknown>, sampling?: SamplingSettings): Record<string, unknown>;
|
|
28
44
|
//# sourceMappingURL=model-params.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-params.d.ts","sourceRoot":"","sources":["../src/model-params.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAM3D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ9G;AAaD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAU7F"}
|
|
1
|
+
{"version":3,"file":"model-params.d.ts","sourceRoot":"","sources":["../src/model-params.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAM3D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ9G;AAaD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAU7F;AAED,gGAAgG;AAChG,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB"}
|