@vincemakes/kiso-runtime 0.1.35 → 0.1.36
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/run.js +26 -0
- package/package.json +5 -5
package/dist/run.js
CHANGED
|
@@ -269,6 +269,14 @@ export class Run {
|
|
|
269
269
|
e.type === "summarized" ||
|
|
270
270
|
e.type === "model_output_abandoned");
|
|
271
271
|
if (boundary !== undefined) {
|
|
272
|
+
// R-E 0.1.44 (verified against sentence 2): the draft detection
|
|
273
|
+
// stays text-only — a bare tool-call suffix [tool_call_end,
|
|
274
|
+
// permission_requested] with no text is the legal approval-panel
|
|
275
|
+
// pause (the Area 2 contract: the pending request binds and
|
|
276
|
+
// executes, pair-closed — the extensions-e2e gate). The finding's
|
|
277
|
+
// shapes all carry text, and the VOID SCOPE (what the marker
|
|
278
|
+
// covers) is the type filter at project.ts: model output dies
|
|
279
|
+
// with the draft, the framework's facts never do.
|
|
272
280
|
const draft = scope.some((e) => (e.type === "text_delta" || e.type === "thinking") && e.seq > boundary.seq);
|
|
273
281
|
if (draft) {
|
|
274
282
|
yield log.append({
|
|
@@ -421,6 +429,24 @@ export class Run {
|
|
|
421
429
|
// identity — the request's own, or the callId+proximity
|
|
422
430
|
// fallback for old logs (the compat contract).
|
|
423
431
|
const invocationSeq = pending.invocationSeq ?? callSeqOf(pending.callId, pending.seq);
|
|
432
|
+
// R-E 0.1.44 (sentence 3): a stored request whose invocation is
|
|
433
|
+
// VOIDED is expired — never re-presented, never executed (the
|
|
434
|
+
// dead-run expiry precedent above). The void ranges come from
|
|
435
|
+
// log.all — the marker THIS recovery appended is included. The
|
|
436
|
+
// receipt stays in the audit; only the presentation is gone.
|
|
437
|
+
// An identity-less request (an old log where neither the field nor
|
|
438
|
+
// the callId+proximity fallback yields a seq) is never proven
|
|
439
|
+
// voided — it keeps the pre-0.1.44 behavior.
|
|
440
|
+
const voided = invocationSeq !== undefined &&
|
|
441
|
+
log.all.some((e) => e.type === "model_output_abandoned" && invocationSeq > e.voidFromSeq && invocationSeq <= e.seq);
|
|
442
|
+
if (voided) {
|
|
443
|
+
yield log.append({
|
|
444
|
+
type: "permission_expired",
|
|
445
|
+
decisionId: pending.decisionId,
|
|
446
|
+
reason: "the invocation was abandoned with an incomplete draft — never re-presented, never executed",
|
|
447
|
+
});
|
|
448
|
+
continue;
|
|
449
|
+
}
|
|
424
450
|
const decided = log.all.find((e) => e.type === "permission_decided" && e.decisionId === pending.decisionId);
|
|
425
451
|
// round 4: paired by events NEWER than the request — a historical
|
|
426
452
|
// same-callId execution from an earlier run must not count as THIS
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vincemakes/kiso-runtime",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.36",
|
|
4
4
|
"description": "kiso runtime — durable multi-turn agent sessions: AgentDefinition, AgentRuntime, AgentSession, Run, append-only JSONL store.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
"test": "vitest run"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@vincemakes/kiso-core": "0.1.
|
|
24
|
+
"@vincemakes/kiso-core": "0.1.35"
|
|
25
25
|
},
|
|
26
26
|
"peerDependencies": {
|
|
27
|
-
"@vincemakes/kiso-provider-anthropic": "0.1.
|
|
28
|
-
"@vincemakes/kiso-provider-openai": "0.1.
|
|
27
|
+
"@vincemakes/kiso-provider-anthropic": "0.1.36",
|
|
28
|
+
"@vincemakes/kiso-provider-openai": "0.1.36"
|
|
29
29
|
},
|
|
30
30
|
"peerDependenciesMeta": {
|
|
31
31
|
"@vincemakes/kiso-provider-anthropic": {
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
}
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@vincemakes/kiso-evals": "0.1.
|
|
39
|
+
"@vincemakes/kiso-evals": "0.1.36",
|
|
40
40
|
"@types/node": "^26.1.2",
|
|
41
41
|
"typescript": "^5.7.2",
|
|
42
42
|
"vitest": "^3.0.0"
|