kiokuko-dsh 0.2.4 → 0.2.5

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.
Files changed (135) hide show
  1. package/dist/dsh/agenticreplay-event-mapper.d.ts +7 -0
  2. package/dist/dsh/agenticreplay-event-mapper.d.ts.map +1 -1
  3. package/dist/dsh/agenticreplay-event-mapper.js +52 -13
  4. package/dist/dsh/agenticreplay-event-mapper.js.map +1 -1
  5. package/dist/dsh/agenticreplay-hooks.d.ts.map +1 -1
  6. package/dist/dsh/agenticreplay-hooks.js +10 -1
  7. package/dist/dsh/agenticreplay-hooks.js.map +1 -1
  8. package/dist/dsh/agenticreplay-recorder.d.ts +5 -0
  9. package/dist/dsh/agenticreplay-recorder.d.ts.map +1 -1
  10. package/dist/dsh/agenticreplay-recorder.js +193 -20
  11. package/dist/dsh/agenticreplay-recorder.js.map +1 -1
  12. package/dist/dsh/answer-context.d.ts +8 -6
  13. package/dist/dsh/answer-context.d.ts.map +1 -1
  14. package/dist/dsh/answer-context.js +85 -21
  15. package/dist/dsh/answer-context.js.map +1 -1
  16. package/dist/dsh/coding-workflow/contracts.d.ts +5 -0
  17. package/dist/dsh/coding-workflow/contracts.d.ts.map +1 -1
  18. package/dist/dsh/coding-workflow/contracts.js +20 -3
  19. package/dist/dsh/coding-workflow/contracts.js.map +1 -1
  20. package/dist/dsh/coding-workflow/host.d.ts +4 -1
  21. package/dist/dsh/coding-workflow/host.d.ts.map +1 -1
  22. package/dist/dsh/coding-workflow/host.js +72 -44
  23. package/dist/dsh/coding-workflow/host.js.map +1 -1
  24. package/dist/dsh/coding-workflow/intent.d.ts +8 -0
  25. package/dist/dsh/coding-workflow/intent.d.ts.map +1 -1
  26. package/dist/dsh/coding-workflow/intent.js +33 -2
  27. package/dist/dsh/coding-workflow/intent.js.map +1 -1
  28. package/dist/dsh/coding-workflow/service.d.ts +214 -0
  29. package/dist/dsh/coding-workflow/service.d.ts.map +1 -1
  30. package/dist/dsh/coding-workflow/service.js +86 -6
  31. package/dist/dsh/coding-workflow/service.js.map +1 -1
  32. package/dist/dsh/coding-workflow/store.d.ts.map +1 -1
  33. package/dist/dsh/coding-workflow/store.js +10 -1
  34. package/dist/dsh/coding-workflow/store.js.map +1 -1
  35. package/dist/dsh/core/host.d.ts.map +1 -1
  36. package/dist/dsh/core/host.js +288 -48
  37. package/dist/dsh/core/host.js.map +1 -1
  38. package/dist/dsh/core/tasks.d.ts +7 -0
  39. package/dist/dsh/core/tasks.d.ts.map +1 -1
  40. package/dist/dsh/core/tasks.js +59 -8
  41. package/dist/dsh/core/tasks.js.map +1 -1
  42. package/dist/dsh/decisions/contracts.d.ts +3 -2
  43. package/dist/dsh/decisions/contracts.d.ts.map +1 -1
  44. package/dist/dsh/decisions/contracts.js +1 -1
  45. package/dist/dsh/decisions/contracts.js.map +1 -1
  46. package/dist/dsh/decisions/request-intent.d.ts +121 -0
  47. package/dist/dsh/decisions/request-intent.d.ts.map +1 -0
  48. package/dist/dsh/decisions/request-intent.js +260 -0
  49. package/dist/dsh/decisions/request-intent.js.map +1 -0
  50. package/dist/dsh/decisions/service.d.ts +5 -1
  51. package/dist/dsh/decisions/service.d.ts.map +1 -1
  52. package/dist/dsh/decisions/service.js +2 -1
  53. package/dist/dsh/decisions/service.js.map +1 -1
  54. package/dist/dsh/execution-support.d.ts +2 -0
  55. package/dist/dsh/execution-support.d.ts.map +1 -1
  56. package/dist/dsh/execution-support.js +36 -8
  57. package/dist/dsh/execution-support.js.map +1 -1
  58. package/dist/dsh/host-adapter/admission.d.ts +4 -1
  59. package/dist/dsh/host-adapter/admission.d.ts.map +1 -1
  60. package/dist/dsh/host-adapter/admission.js +294 -12
  61. package/dist/dsh/host-adapter/admission.js.map +1 -1
  62. package/dist/dsh/host-adapter/routing.d.ts +2 -1
  63. package/dist/dsh/host-adapter/routing.d.ts.map +1 -1
  64. package/dist/dsh/host-adapter/routing.js +32 -18
  65. package/dist/dsh/host-adapter/routing.js.map +1 -1
  66. package/dist/dsh/host-adapter/turn-state.d.ts +6 -0
  67. package/dist/dsh/host-adapter/turn-state.d.ts.map +1 -1
  68. package/dist/dsh/host-adapter/turn-state.js +19 -1
  69. package/dist/dsh/host-adapter/turn-state.js.map +1 -1
  70. package/dist/dsh/host-adapter.d.ts.map +1 -1
  71. package/dist/dsh/host-adapter.js +71 -8
  72. package/dist/dsh/host-adapter.js.map +1 -1
  73. package/dist/dsh/intake-clarification.d.ts +2 -2
  74. package/dist/dsh/intake-clarification.d.ts.map +1 -1
  75. package/dist/dsh/intake-clarification.js +13 -4
  76. package/dist/dsh/intake-clarification.js.map +1 -1
  77. package/dist/dsh/intake-gate.d.ts +5 -0
  78. package/dist/dsh/intake-gate.d.ts.map +1 -1
  79. package/dist/dsh/intake-gate.js +19 -5
  80. package/dist/dsh/intake-gate.js.map +1 -1
  81. package/dist/dsh/lisp/candidate.d.ts +1 -1
  82. package/dist/dsh/lisp/surface.d.ts +1 -1
  83. package/dist/dsh/memory-owner.d.ts +24 -0
  84. package/dist/dsh/memory-owner.d.ts.map +1 -0
  85. package/dist/dsh/memory-owner.js +35 -0
  86. package/dist/dsh/memory-owner.js.map +1 -0
  87. package/dist/dsh/memory-request-fence.d.ts +37 -0
  88. package/dist/dsh/memory-request-fence.d.ts.map +1 -0
  89. package/dist/dsh/memory-request-fence.js +48 -0
  90. package/dist/dsh/memory-request-fence.js.map +1 -0
  91. package/dist/dsh/message-sources.d.ts.map +1 -1
  92. package/dist/dsh/message-sources.js +2 -1
  93. package/dist/dsh/message-sources.js.map +1 -1
  94. package/dist/dsh/models/profiles.d.ts +23 -0
  95. package/dist/dsh/models/profiles.d.ts.map +1 -1
  96. package/dist/dsh/models/profiles.js +30 -1
  97. package/dist/dsh/models/profiles.js.map +1 -1
  98. package/dist/dsh/models/service.d.ts +9 -0
  99. package/dist/dsh/models/service.d.ts.map +1 -1
  100. package/dist/dsh/models/service.js +52 -13
  101. package/dist/dsh/models/service.js.map +1 -1
  102. package/dist/dsh/on-demand-intake.d.ts +71 -5
  103. package/dist/dsh/on-demand-intake.d.ts.map +1 -1
  104. package/dist/dsh/on-demand-intake.js +299 -70
  105. package/dist/dsh/on-demand-intake.js.map +1 -1
  106. package/dist/dsh/owned-execution.d.ts +3 -0
  107. package/dist/dsh/owned-execution.d.ts.map +1 -1
  108. package/dist/dsh/owned-execution.js +7 -0
  109. package/dist/dsh/owned-execution.js.map +1 -1
  110. package/dist/dsh/request-memory.d.ts +2 -0
  111. package/dist/dsh/request-memory.d.ts.map +1 -1
  112. package/dist/dsh/request-memory.js +33 -2
  113. package/dist/dsh/request-memory.js.map +1 -1
  114. package/dist/dsh/setup.d.ts +2 -2
  115. package/dist/dsh/setup.d.ts.map +1 -1
  116. package/dist/dsh/setup.js +37 -14
  117. package/dist/dsh/setup.js.map +1 -1
  118. package/dist/dsh/skill-prompts.json +1 -1
  119. package/dist/dsh/standard-skills.d.ts +2 -1
  120. package/dist/dsh/standard-skills.d.ts.map +1 -1
  121. package/dist/dsh/standard-skills.js +2 -1
  122. package/dist/dsh/standard-skills.js.map +1 -1
  123. package/dist/dsh/task-intake.d.ts +6 -0
  124. package/dist/dsh/task-intake.d.ts.map +1 -1
  125. package/dist/dsh/task-intake.js +7 -2
  126. package/dist/dsh/task-intake.js.map +1 -1
  127. package/dist/locale/en.json +1 -1
  128. package/dist/locale/ja.json +1 -1
  129. package/dist/locale/ko.json +1 -1
  130. package/dist/locale/zh-CN.json +1 -1
  131. package/docs/coding-workflow.md +3 -1
  132. package/docs/dsh-plugin.md +28 -5
  133. package/docs/on-demand-intake.md +13 -7
  134. package/package.json +3 -2
  135. package/skills/japanese-translation-for-oss-models/SKILL.md +5 -3
@@ -6,7 +6,7 @@ import { ConnectionSchema, CONNECTION_DEFAULTS, credentialKey, ManualModelSchema
6
6
  import { asStoredCredential } from "./vendor/credentials.js";
7
7
  import { adapterBuiltinProviders } from "./vendor/pi-ai.js";
8
8
  import { loginNous, refreshNous } from "./vendor/nous-oauth.js";
9
- import { connectionProfile, protocolApi, sharedCredentialStore } from "./profiles.js";
9
+ import { connectionProfile, OUTPUT_TOKEN_MARGIN, protocolApi, sharedCredentialStore, storableMaxTokens, } from "./profiles.js";
10
10
  import { OpenCodeAdapter } from "./vendor/opencode-adapter.js";
11
11
  import { OpenCodeCatalog, } from "./vendor/opencode-catalog.js";
12
12
  import { OPEN_CODE_SNAPSHOTS } from "./vendor/opencode-owned.generated.js";
@@ -21,13 +21,15 @@ const DEFAULT_CONTEXT_WINDOW = 262_144, DEFAULT_MAX_TOKENS = 32_768;
21
21
  class ModelsAdapter extends LlmAdapter {
22
22
  lifecycle;
23
23
  store;
24
+ onRejection;
24
25
  routes = new Map();
25
26
  active = new Set();
26
27
  requests = new WeakMap();
27
- constructor(lifecycle, store) {
28
+ constructor(lifecycle, store, onRejection) {
28
29
  super();
29
30
  this.lifecycle = lifecycle;
30
31
  this.store = store;
32
+ this.onRejection = onRejection;
31
33
  }
32
34
  route(id) {
33
35
  const route = this.routes.get(id);
@@ -82,17 +84,29 @@ class ModelsAdapter extends LlmAdapter {
82
84
  ...(options.signal ? [options.signal] : []),
83
85
  this.lifecycle,
84
86
  ]),
85
- });
87
+ }, id);
86
88
  },
87
89
  };
88
90
  }
89
- async *run(call, options) {
91
+ async *run(call, options, provider) {
90
92
  this.lifecycle.throwIfAborted();
91
93
  let finish;
92
94
  const done = new Promise((resolve) => { finish = resolve; });
93
95
  this.active.add(done);
94
96
  try {
95
- yield* call.stream(options);
97
+ for await (const chunk of call.stream(options)) {
98
+ // pi-ai reports provider failures in-band; retain its original finish.
99
+ if (chunk.type === "finish" && chunk.reason.kind === "error") {
100
+ await this.onRejection(provider, options.model, new Error(chunk.reason.failure.message));
101
+ }
102
+ yield chunk;
103
+ }
104
+ }
105
+ catch (error) {
106
+ // A rejection that names the endpoint's own ceiling teaches the stored
107
+ // output cap; the provider's failure still reaches the caller unchanged.
108
+ await this.onRejection(provider, options.model, error);
109
+ throw error;
96
110
  }
97
111
  finally {
98
112
  this.active.delete(done);
@@ -124,7 +138,32 @@ export class KiokukoModelsService {
124
138
  closed = false;
125
139
  constructor(options) {
126
140
  this.options = options;
127
- this.adapter = new ModelsAdapter(this.lifecycle.signal, options.credentials);
141
+ this.adapter = new ModelsAdapter(this.lifecycle.signal, options.credentials, (provider, model, error) => this.learnCeiling(provider, model, error));
142
+ }
143
+ /**
144
+ * A provider rejection that names its own ceiling ("max_completion_tokens=…
145
+ * cannot be greater than max_model_len=…") is the only place a deployment
146
+ * discloses a limit below its listing. Record it as that model's output cap —
147
+ * never the context window, never upward, only for the route and model that
148
+ * failed — so the next request fits. Best effort: the provider's failure is
149
+ * what the caller sees.
150
+ */
151
+ async learnCeiling(provider, model, error) {
152
+ const detail = error instanceof Error ? error.message : "", match = /max_model_len=(?:max_total_tokens=)?(\d{1,9})(?!\d)/.exec(detail);
153
+ if (!match || !detail.includes("max_completion_tokens"))
154
+ return;
155
+ const c = this.document.connections.find((v) => v.id === provider), row = c?.models.find((m) => m.id === model), capped = Math.max(1, Number(match[1]) - OUTPUT_TOKEN_MARGIN);
156
+ if (!c || !row || capped >= row.maxTokens)
157
+ return;
158
+ try {
159
+ await this.save({
160
+ ...c,
161
+ models: c.models.map((m) => m.id === model ? { ...m, maxTokens: capped } : m),
162
+ }, this.document.revision);
163
+ }
164
+ catch {
165
+ // Learning is best effort; a concurrent save wins over this correction.
166
+ }
128
167
  }
129
168
  bindRequest(signal, binding, turn, step) {
130
169
  if (binding.provider && binding.model)
@@ -418,17 +457,17 @@ export class KiokukoModelsService {
418
457
  .find((p) => p.id === credentialKey(c))
419
458
  ?.getModels() ?? [];
420
459
  return discovered.flatMap((entry) => {
421
- const known = shipped.find((m) => m.id === entry.id), prior = c.models.find((m) => m.id === entry.id), parsed = ManualModelSchema.safeParse({
460
+ const known = shipped.find((m) => m.id === entry.id), prior = c.models.find((m) => m.id === entry.id), contextWindow = entry.contextWindow ??
461
+ known?.contextWindow ??
462
+ prior?.contextWindow ??
463
+ DEFAULT_CONTEXT_WINDOW, parsed = ManualModelSchema.safeParse({
422
464
  id: entry.id,
423
465
  name: entry.name ?? entry.id,
424
- contextWindow: entry.contextWindow ??
425
- known?.contextWindow ??
426
- prior?.contextWindow ??
427
- DEFAULT_CONTEXT_WINDOW,
428
- maxTokens: entry.maxTokens ??
466
+ contextWindow,
467
+ maxTokens: storableMaxTokens(entry.maxTokens ??
429
468
  known?.maxTokens ??
430
469
  prior?.maxTokens ??
431
- DEFAULT_MAX_TOKENS,
470
+ DEFAULT_MAX_TOKENS, contextWindow),
432
471
  reasoning: known?.reasoning ?? prior?.reasoning ?? false,
433
472
  image: entry.inputModalities !== undefined
434
473
  ? entry.inputModalities.includes("image")
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/dsh/models/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/dsh/models/service.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,43 @@
1
1
  import type { DshAnswerContext } from './answer-context.js';
2
2
  import type { DshLogEvent } from './session-memory-finalizer.js';
3
+ import { z } from 'zod';
3
4
  import { type TaskType } from '../akinator/types.js';
4
5
  import type { AkinatorTaskClassification } from './decisions/akinator-classification.js';
6
+ import { type RequestIntentContext, type RequestIntentDecision, type RequestIntentInterpretation } from './decisions/request-intent.js';
7
+ import { type MemoryOwnerKind } from './memory-owner.js';
5
8
  export type { IntakeMode } from './intake-mode.js';
6
9
  export declare const TASK_PREPARE_TOOL = "prepare_requested_work";
7
- export declare const ON_DEMAND_GUIDANCE = "The original user request may be answered now without selecting a task category. No execution task has been prepared yet. Preserve all requested actions, negations, alternatives and target uncertainty. Native read, glob, grep, web_search and web_fetch demands automatically prepare the original request with research advice when no non-chat action type is resolved. Use these tools directly to gather requested evidence; do not call prepare_requested_work merely to read a plan or inspect files. An explicit development request is prepared automatically on its first tool demand. prepare_requested_work(taskType) remains an advisory control operation. Do not silently replace a requested action with a text-only answer or claim work was done. Ask a concrete clarification in ordinary conversation when the actual target or requested action is unclear. Installed Skill reads need no preparation and do not activate execution. Do not prepare work merely to load a skill. Owned development tools use their own authorization; Plan, goal, cancellation and execution ownership still apply. If only run_code is exposed and the request is ambiguous, prepare with exactly return await tools.prepare_requested_work({\"taskType\":\"research\"}) using the appropriate advisory type; the host intercepts that preparation-only carrier without evaluating code. For an explicit development request, its first run_code demand prepares automatically before evaluating the program.";
10
+ export declare const ON_DEMAND_GUIDANCE = "The original user request may be answered now without selecting a task category. No execution task has been prepared yet. Preserve the original utterance, every requested action, negation, quotation, target uncertainty, and current-session references; never replace it with a model rewrite. Use only the supplied active Goal and proposal references from this exact native session, never another chat. Classify relation as new, same_scope_continuation, scope_change, or unknown, and action as answer, research, verify, change, operate, or unknown; do not infer either from a fixed phrase or tool name. \u201CCheck how it behaves\u201D is verification/research even when the next tool is Bash. This interpretation grants no native permission. When the decision provider is unavailable, abstains, or returns unknown, interpret the same context in the main model; ask the user only if the action or referenced target remains unclear, and preserve active work while waiting. Native read, glob, grep, web_search and web_fetch demands can gather evidence without preparation. Do not call prepare_requested_work merely to read a plan or inspect files. prepare_requested_work accepts either the legacy taskType alone or a requestIntent with exact evidenceRefs from the supplied context; it never accepts a rewritten task or target and never changes native permissions. Installed Skill reads need no preparation and do not activate execution. Do not prepare work merely to load a skill. Plan, Goal, cancellation, memory-owner and execution ownership still apply. If only run_code is exposed, use the exact preparation-only carrier returned by this tool contract; the host intercepts it without evaluating code.";
11
+ declare const preparationFieldsSchema: z.ZodObject<{
12
+ taskType: z.ZodOptional<z.ZodEnum<{
13
+ build: "build";
14
+ debug: "debug";
15
+ research: "research";
16
+ review: "review";
17
+ devops: "devops";
18
+ writing: "writing";
19
+ analysis: "analysis";
20
+ chat: "chat";
21
+ }>>;
22
+ requestIntent: z.ZodOptional<z.ZodObject<{
23
+ relation: z.ZodEnum<{
24
+ unknown: "unknown";
25
+ new: "new";
26
+ same_scope_continuation: "same_scope_continuation";
27
+ scope_change: "scope_change";
28
+ }>;
29
+ action: z.ZodEnum<{
30
+ unknown: "unknown";
31
+ research: "research";
32
+ answer: "answer";
33
+ change: "change";
34
+ verify: "verify";
35
+ operate: "operate";
36
+ }>;
37
+ evidenceRefs: z.ZodArray<z.ZodString>;
38
+ }, z.core.$strict>>;
39
+ }, z.core.$strict>;
40
+ type PreparationRequest = z.infer<typeof preparationFieldsSchema>;
8
41
  export interface DemandAgent {
9
42
  readonly ctx?: unknown;
10
43
  readonly id: string;
@@ -41,13 +74,41 @@ interface Dependencies {
41
74
  readonly answerContext?: DshAnswerContext | undefined;
42
75
  readonly nativeChild?: (agent: DemandAgent) => boolean;
43
76
  readonly validate: (input: DemandInput) => Promise<void>;
44
- readonly existing: (input: DemandInput) => Promise<boolean>;
77
+ /** Exact idempotent request replay; never accepts a new turn as continuation. */
78
+ readonly replay?: (input: DemandInput) => Promise<boolean>;
79
+ /** Finalize or preserve the prior native turn only after its matching boundary is observed. */
80
+ readonly advance?: (input: DemandInput, requestIntent?: RequestIntentDecision) => Promise<void>;
81
+ /** Route an answer to a pending host-owned confirmation before model generation. */
82
+ readonly resumeConfirmation?: (input: DemandInput) => Promise<boolean>;
83
+ readonly existing: (input: DemandInput, requestIntent?: RequestIntentDecision) => Promise<boolean>;
45
84
  readonly classify: (input: DemandInput, task: string) => Promise<AkinatorTaskClassification>;
46
- readonly prepare: (input: DemandInput, taskType: TaskType) => Promise<boolean>;
85
+ readonly interpret?: (input: DemandInput, task: string) => Promise<RequestIntentInterpretation | undefined>;
86
+ readonly prepare: (input: DemandInput, taskType: TaskType, requestIntent?: RequestIntentDecision, requestIntentContext?: RequestIntentContext) => Promise<boolean>;
47
87
  readonly ready: (agent: DemandAgent, turn?: number) => boolean;
48
88
  }
89
+ interface Turn {
90
+ readonly input: DemandInput;
91
+ readonly task: string;
92
+ readonly humanContents: ReadonlyMap<string, string>;
93
+ status: 'capturing' | 'answer' | 'preparing' | 'prepared' | 'closed' | 'stale';
94
+ intent: AkinatorTaskClassification;
95
+ requestIntent?: RequestIntentDecision;
96
+ requestIntentContext?: RequestIntentContext;
97
+ requestIntentContextDigest?: string;
98
+ preparedIntentDigest?: string;
99
+ memoryOwner: MemoryOwnerKind;
100
+ taskType?: TaskType;
101
+ existing?: boolean;
102
+ confirmationResume?: boolean;
103
+ capture?: Promise<boolean>;
104
+ captureError?: unknown;
105
+ preparation?: Promise<void>;
106
+ selectionPending?: boolean;
107
+ readonly preparationCalls: Set<string>;
108
+ readonly controller: AbortController;
109
+ }
49
110
  /** A protocol carrier, not JavaScript evaluation. Only this exact JSON-literal call is recognized. */
50
- export declare function preparationCarrier(value: unknown): TaskType | undefined;
111
+ export declare function preparationCarrier(value: unknown): PreparationRequest | undefined;
51
112
  /** Conversation entry and execution intake are distinct; neither this mode nor a type hint grants native permission. */
52
113
  export declare class OnDemandIntake {
53
114
  #private;
@@ -58,12 +119,15 @@ export declare class OnDemandIntake {
58
119
  });
59
120
  private watch;
60
121
  private existingTurn;
122
+ private acknowledgeExisting;
61
123
  /** True means ordinary text may continue; false leaves an existing execution on its original path. */
62
124
  capture(input: DemandInput): Promise<boolean>;
63
125
  private assertCurrent;
64
126
  private bound;
127
+ private ownerIdentity;
65
128
  private definition;
66
129
  private prepare;
130
+ private bindIntent;
67
131
  answerMessages(input: DemandInput, messages: readonly unknown[]): Promise<readonly unknown[]>;
68
132
  beforeRequest(agent: DemandAgent): Promise<void>;
69
133
  fence(agent: DemandAgent, request: {
@@ -71,12 +135,14 @@ export declare class OnDemandIntake {
71
135
  purpose?: string;
72
136
  messages?: readonly unknown[];
73
137
  }): Promise<void>;
74
- guidance(messages: readonly unknown[]): readonly unknown[];
138
+ guidance(messages: readonly unknown[], state?: Turn): readonly unknown[];
75
139
  snapshot(sessionId: string): {
76
140
  task: string;
77
141
  taskType: TaskType | null;
78
142
  status: string;
79
143
  turn: number;
144
+ requestIntent?: RequestIntentDecision;
145
+ memoryOwner: MemoryOwnerKind;
80
146
  } | undefined;
81
147
  /** A current host-validated control call, never arbitrary code or a name-based exemption. */
82
148
  preparationOnly(execution: Execution): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"on-demand-intake.d.ts","sourceRoot":"","sources":["../../src/dsh/on-demand-intake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"on-demand-intake.d.ts","sourceRoot":"","sources":["../../src/dsh/on-demand-intake.ts"],"names":[],"mappings":"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"}