@vincemakes/kiso-core 0.16.6 → 0.16.8
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/kernel/loop.d.ts +21 -1
- package/dist/kernel/loop.js +21 -1
- package/package.json +2 -2
package/dist/kernel/loop.d.ts
CHANGED
|
@@ -146,7 +146,27 @@ export interface LoopConfig {
|
|
|
146
146
|
/** P3: the session's id — carried to tools via ToolContext.sessionId. */
|
|
147
147
|
readonly sessionId?: string;
|
|
148
148
|
}
|
|
149
|
-
|
|
149
|
+
/**
|
|
150
|
+
* R3e (owner ruling, 2026-08-28) — there is NO default turn limit.
|
|
151
|
+
*
|
|
152
|
+
* `maxTurns` stays: a caller that wants a bound sets one, and the
|
|
153
|
+
* `max_turns` terminal is unchanged. What is retired is the DEFAULT.
|
|
154
|
+
*
|
|
155
|
+
* The reasoning, from the incident that found it: a real session read a
|
|
156
|
+
* doc, listed a directory, read four files and ran four commands — 43
|
|
157
|
+
* calls — and stopped at 20 turns, mid-task, saying nothing. A guardrail
|
|
158
|
+
* for "you set it running and walked away" was firing on someone sitting
|
|
159
|
+
* at the keyboard, where esc, the context window and the balance are
|
|
160
|
+
* already the bounds. Both reference implementations agree: neither puts
|
|
161
|
+
* a turn limit on an interactive session, and the one that has the
|
|
162
|
+
* mechanism spends it on forked subagents and non-interactive SDK calls,
|
|
163
|
+
* where nobody is watching.
|
|
164
|
+
*
|
|
165
|
+
* `Number.POSITIVE_INFINITY` rather than deleting the check: the
|
|
166
|
+
* comparison, the terminal and every test that sets a limit stay exactly
|
|
167
|
+
* as they were, and one line says what changed.
|
|
168
|
+
*/
|
|
169
|
+
export declare const DEFAULT_MAX_TURNS: number;
|
|
150
170
|
export declare const DEFAULT_MAX_RETRIES = 2;
|
|
151
171
|
export declare function loop(config: LoopConfig): AsyncGenerator<Event>;
|
|
152
172
|
/**
|
package/dist/kernel/loop.js
CHANGED
|
@@ -41,7 +41,27 @@ import { NoOpHooks } from "./hooks.js";
|
|
|
41
41
|
import { resolveModeProfile } from "./mode.js";
|
|
42
42
|
import { denialResult } from "./permission.js";
|
|
43
43
|
import { messagesToEvents, MICROCOMPACTABLE, DO_NOT_COMPACT, projectMessages } from "./project.js";
|
|
44
|
-
|
|
44
|
+
/**
|
|
45
|
+
* R3e (owner ruling, 2026-08-28) — there is NO default turn limit.
|
|
46
|
+
*
|
|
47
|
+
* `maxTurns` stays: a caller that wants a bound sets one, and the
|
|
48
|
+
* `max_turns` terminal is unchanged. What is retired is the DEFAULT.
|
|
49
|
+
*
|
|
50
|
+
* The reasoning, from the incident that found it: a real session read a
|
|
51
|
+
* doc, listed a directory, read four files and ran four commands — 43
|
|
52
|
+
* calls — and stopped at 20 turns, mid-task, saying nothing. A guardrail
|
|
53
|
+
* for "you set it running and walked away" was firing on someone sitting
|
|
54
|
+
* at the keyboard, where esc, the context window and the balance are
|
|
55
|
+
* already the bounds. Both reference implementations agree: neither puts
|
|
56
|
+
* a turn limit on an interactive session, and the one that has the
|
|
57
|
+
* mechanism spends it on forked subagents and non-interactive SDK calls,
|
|
58
|
+
* where nobody is watching.
|
|
59
|
+
*
|
|
60
|
+
* `Number.POSITIVE_INFINITY` rather than deleting the check: the
|
|
61
|
+
* comparison, the terminal and every test that sets a limit stay exactly
|
|
62
|
+
* as they were, and one line says what changed.
|
|
63
|
+
*/
|
|
64
|
+
export const DEFAULT_MAX_TURNS = Number.POSITIVE_INFINITY;
|
|
45
65
|
export const DEFAULT_MAX_RETRIES = 2;
|
|
46
66
|
export async function* loop(config) {
|
|
47
67
|
const log = config.log ?? new EventLog();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vincemakes/kiso-core",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.8",
|
|
4
4
|
"description": "kiso (foundation) core — protocol, event log, loop, hooks, modes, permissions, compaction, delivery truth. The 2,000-line kernel at the bottom of the kiso framework.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"openai"
|
|
34
34
|
],
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@vincemakes/kiso-evals": "0.16.
|
|
36
|
+
"@vincemakes/kiso-evals": "0.16.8",
|
|
37
37
|
"@types/node": "^26.1.2",
|
|
38
38
|
"typescript": "^5.7.2",
|
|
39
39
|
"vitest": "^3.0.0"
|