@nifrajs/coding-agent 4.0.2 → 5.0.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.
Files changed (99) hide show
  1. package/README.md +14 -2
  2. package/dist/cli.d.ts +13 -0
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +120 -100
  5. package/dist/cli.js.map +1 -1
  6. package/dist/context.d.ts.map +1 -1
  7. package/dist/context.js +9 -21
  8. package/dist/context.js.map +1 -1
  9. package/dist/diff.d.ts.map +1 -1
  10. package/dist/diff.js +8 -21
  11. package/dist/diff.js.map +1 -1
  12. package/dist/handoffs.d.ts +5 -0
  13. package/dist/handoffs.d.ts.map +1 -1
  14. package/dist/handoffs.js +27 -0
  15. package/dist/handoffs.js.map +1 -1
  16. package/dist/host.d.ts +15 -1
  17. package/dist/host.d.ts.map +1 -1
  18. package/dist/host.js +117 -13
  19. package/dist/host.js.map +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +1 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/native.d.ts +22 -0
  25. package/dist/native.d.ts.map +1 -1
  26. package/dist/native.js +75 -18
  27. package/dist/native.js.map +1 -1
  28. package/dist/orchestration/dispatch.d.ts +5 -1
  29. package/dist/orchestration/dispatch.d.ts.map +1 -1
  30. package/dist/orchestration/dispatch.js +1 -1
  31. package/dist/orchestration/dispatch.js.map +1 -1
  32. package/dist/orchestration/evidence-store.d.ts.map +1 -1
  33. package/dist/orchestration/evidence-store.js +5 -6
  34. package/dist/orchestration/evidence-store.js.map +1 -1
  35. package/dist/orchestration/host.d.ts +14 -0
  36. package/dist/orchestration/host.d.ts.map +1 -1
  37. package/dist/orchestration/host.js +26 -0
  38. package/dist/orchestration/host.js.map +1 -1
  39. package/dist/orchestration/index.d.ts +1 -1
  40. package/dist/orchestration/index.d.ts.map +1 -1
  41. package/dist/orchestration/index.js.map +1 -1
  42. package/dist/orchestration/recovery.d.ts +5 -1
  43. package/dist/orchestration/recovery.d.ts.map +1 -1
  44. package/dist/orchestration/recovery.js +5 -3
  45. package/dist/orchestration/recovery.js.map +1 -1
  46. package/dist/process.d.ts +22 -1
  47. package/dist/process.d.ts.map +1 -1
  48. package/dist/process.js +63 -1
  49. package/dist/process.js.map +1 -1
  50. package/dist/rpc.d.ts +23 -0
  51. package/dist/rpc.d.ts.map +1 -1
  52. package/dist/rpc.js +204 -46
  53. package/dist/rpc.js.map +1 -1
  54. package/dist/session-migration.d.ts.map +1 -1
  55. package/dist/session-migration.js +30 -6
  56. package/dist/session-migration.js.map +1 -1
  57. package/dist/sessions.d.ts +13 -2
  58. package/dist/sessions.d.ts.map +1 -1
  59. package/dist/sessions.js +104 -24
  60. package/dist/sessions.js.map +1 -1
  61. package/dist/subagents.d.ts.map +1 -1
  62. package/dist/subagents.js +13 -2
  63. package/dist/subagents.js.map +1 -1
  64. package/dist/turn-replay.d.ts +40 -0
  65. package/dist/turn-replay.d.ts.map +1 -0
  66. package/dist/turn-replay.js +136 -0
  67. package/dist/turn-replay.js.map +1 -0
  68. package/dist/ui.js +84 -30
  69. package/dist/ui.js.map +1 -1
  70. package/dist/verification.d.ts +7 -0
  71. package/dist/verification.d.ts.map +1 -1
  72. package/dist/verification.js +66 -63
  73. package/dist/verification.js.map +1 -1
  74. package/dist/workflows.d.ts +5 -0
  75. package/dist/workflows.d.ts.map +1 -1
  76. package/dist/workflows.js +2 -1
  77. package/dist/workflows.js.map +1 -1
  78. package/package.json +6 -6
  79. package/src/cli.ts +125 -93
  80. package/src/context.ts +12 -20
  81. package/src/diff.ts +11 -23
  82. package/src/handoffs.ts +27 -0
  83. package/src/host.ts +134 -12
  84. package/src/index.ts +1 -0
  85. package/src/native.ts +118 -21
  86. package/src/orchestration/dispatch.ts +6 -2
  87. package/src/orchestration/evidence-store.ts +5 -6
  88. package/src/orchestration/host.ts +44 -0
  89. package/src/orchestration/index.ts +1 -0
  90. package/src/orchestration/recovery.ts +14 -8
  91. package/src/process.ts +77 -0
  92. package/src/rpc.ts +261 -49
  93. package/src/session-migration.ts +29 -5
  94. package/src/sessions.ts +115 -29
  95. package/src/subagents.ts +11 -2
  96. package/src/turn-replay.ts +151 -0
  97. package/src/ui.ts +90 -32
  98. package/src/verification.ts +74 -60
  99. package/src/workflows.ts +7 -1
package/dist/handoffs.js CHANGED
@@ -31,11 +31,13 @@ export class HandoffError extends Error {
31
31
  }
32
32
  const DEFAULT_TTL_MS = 5 * 60_000;
33
33
  const DEFAULT_MAX_PENDING = 64;
34
+ const DEFAULT_MAX_RETAINED = 256;
34
35
  export class HandoffCoordinator {
35
36
  vectors;
36
37
  approvals;
37
38
  defaultTtlMs;
38
39
  maxPending;
40
+ maxRetained;
39
41
  now;
40
42
  records = new Map();
41
43
  constructor(options = {}) {
@@ -43,11 +45,14 @@ export class HandoffCoordinator {
43
45
  this.approvals = options.approvals;
44
46
  this.defaultTtlMs = options.defaultTtlMs ?? DEFAULT_TTL_MS;
45
47
  this.maxPending = options.maxPending ?? DEFAULT_MAX_PENDING;
48
+ this.maxRetained = options.maxRetained ?? DEFAULT_MAX_RETAINED;
46
49
  this.now = options.now ?? Date.now;
47
50
  if (!Number.isSafeInteger(this.defaultTtlMs) || this.defaultTtlMs < 1)
48
51
  throw new RangeError("handoff: defaultTtlMs must be positive");
49
52
  if (!Number.isSafeInteger(this.maxPending) || this.maxPending < 1)
50
53
  throw new RangeError("handoff: maxPending must be positive");
54
+ if (!Number.isSafeInteger(this.maxRetained) || this.maxRetained < 0)
55
+ throw new RangeError("handoff: maxRetained must be a non-negative integer");
51
56
  }
52
57
  /** Open a pending handoff. Allocates the run's next monotonic child vector. */
53
58
  open(input) {
@@ -60,6 +65,7 @@ export class HandoffCoordinator {
60
65
  input.from.length > 128 ||
61
66
  (input.sessionId !== undefined && !SESSION_TOKEN.test(input.sessionId)))
62
67
  throw new HandoffError("invalid_handoff");
68
+ this.sweep();
63
69
  if (this.records.has(input.requestId))
64
70
  throw new HandoffError("duplicate");
65
71
  if (this.activeCount() >= this.maxPending)
@@ -100,6 +106,7 @@ export class HandoffCoordinator {
100
106
  }
101
107
  /** Every boundary, or - with `activeOnly` - just those still awaiting a decision. */
102
108
  list(activeOnly = false) {
109
+ this.sweep();
103
110
  const views = [];
104
111
  for (const record of this.records.values()) {
105
112
  if (activeOnly && this.isTerminal(record.state))
@@ -110,6 +117,7 @@ export class HandoffCoordinator {
110
117
  }
111
118
  /** Inspect one boundary by request id, or `undefined` when unknown. */
112
119
  inspect(requestId) {
120
+ this.sweep();
113
121
  const record = this.records.get(requestId);
114
122
  return record === undefined ? undefined : this.view(record);
115
123
  }
@@ -167,6 +175,25 @@ export class HandoffCoordinator {
167
175
  this.settleApproval(record, op);
168
176
  return this.view(record);
169
177
  }
178
+ /** Expire every boundary past its deadline, then drop the oldest settled ones over `maxRetained`. */
179
+ sweep() {
180
+ const now = this.now();
181
+ let settled = 0;
182
+ for (const record of this.records.values()) {
183
+ if (!this.isTerminal(record.state) && !coordinateIsFresh(record.coordinate, now))
184
+ this.settle(record, "expired");
185
+ if (this.isTerminal(record.state))
186
+ settled++;
187
+ }
188
+ for (const [requestId, record] of this.records) {
189
+ if (settled <= this.maxRetained)
190
+ break;
191
+ if (!this.isTerminal(record.state))
192
+ continue;
193
+ this.records.delete(requestId);
194
+ settled--;
195
+ }
196
+ }
170
197
  settle(record, state) {
171
198
  record.state = state;
172
199
  this.settleApproval(record, "expire");
@@ -1 +1 @@
1
- {"version":3,"file":"handoffs.js","sourceRoot":"","sources":["../src/handoffs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handoffs.js","sourceRoot":"","sources":["../src/handoffs.ts"],"names":[],"mappings":"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"}
package/dist/host.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { type AgentBackend, type AgentEvent, type AgentSessionSnapshot, type CreateSessionInput, type ForkSessionResult, type ReloadResult } from "@nifrajs/agent-protocol";
1
+ import { type AgentBackend, type AgentEvent, type AgentExtensionEvent, type AgentSessionSnapshot, type CreateSessionInput, type ForkSessionResult, type ReloadResult } from "@nifrajs/agent-protocol";
2
2
  import { type ApprovalDecision, ApprovalManager, type ApprovalManagerOptions, type ApprovalRequest } from "./approvals.js";
3
3
  import type { ExtensionHost } from "./extensions.js";
4
4
  import { type CompactionReport, ContextWindow, type ContextWindowOptions, type SessionStore } from "./sessions.js";
@@ -19,25 +19,39 @@ export interface CodingAgentHostOptions {
19
19
  readonly verification?: Pick<VerificationOptions, "command" | "commandArgs" | "timeoutMs" | "maxOutputBytes" | "env">;
20
20
  /** Retain bounded exception stacks for trusted local diagnostics. */
21
21
  readonly exposeErrorStacks?: boolean;
22
+ /**
23
+ * Checks for a backend's extension events (`x-<vendor>.<name>`), by type. An event whose check
24
+ * returns false or throws fails the turn like a malformed protocol event; a type with no check
25
+ * passes through as long as it stays inside the protocol's bounds.
26
+ */
27
+ readonly extensionEvents?: Readonly<Record<string, (event: AgentExtensionEvent) => boolean>>;
22
28
  }
23
29
  /** Small lifecycle host shared by the CLI, RPC server, and future Workbench. */
24
30
  export declare class CodingAgentHost {
25
31
  readonly backend: AgentBackend;
26
32
  private session;
33
+ private starting;
34
+ private lifecycle;
27
35
  private readonly sessionStore;
28
36
  private readonly context;
29
37
  private readonly extensions;
30
38
  readonly approvals: ApprovalManager;
39
+ /** Approvals {@link resolveApproval} is settling; it forwards those itself, once the broker accepts. */
40
+ private readonly resolving;
31
41
  private readonly verifyAfterTurn;
32
42
  private readonly maxRepairAttempts;
33
43
  private readonly exposeErrorStacks;
44
+ private readonly extensionChecks;
34
45
  private readonly verification;
35
46
  constructor(options: CodingAgentHostOptions);
36
47
  start(input: CreateSessionInput): Promise<AgentSessionSnapshot>;
48
+ private startSession;
37
49
  get snapshot(): AgentSessionSnapshot | undefined;
38
50
  prompt(message: string, signal?: AbortSignal): AsyncIterable<AgentEvent>;
39
51
  private nextSeq;
40
52
  private acceptBackendEvent;
53
+ private protocolFailure;
54
+ private acceptedEventProblem;
41
55
  private verifyTurn;
42
56
  private createEvent;
43
57
  private recordEvent;
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,UAAU,EAEf,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAGzB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EAGtB,KAAK,YAAY,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,KAAK,gBAAgB,EACrB,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EACL,KAAK,gBAAgB,EACrB,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,YAAY,EAClB,MAAM,eAAe,CAAA;AACtB,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;IACpC,QAAQ,CAAC,aAAa,CAAC,EAAE,oBAAoB,CAAA;IAC7C,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAA;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAA;IAC3C,+EAA+E;IAC/E,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAA;IACnE;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,CAC1B,mBAAmB,EACnB,SAAS,GAAG,aAAa,GAAG,WAAW,GAAG,gBAAgB,GAAG,KAAK,CACnE,CAAA;IACD,qEAAqE;IACrE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,CAAC,CAAA;CAC7F;AAED,gFAAgF;AAChF,qBAAa,eAAe;IAC1B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;IAC9B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,QAAQ,CAA2C;IAE3D,OAAO,CAAC,SAAS,CAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;IACtD,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAA;IACnC,wGAAwG;IACxG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;IAC1E,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA8D;IAC9F,OAAO,CAAC,QAAQ,CAAC,YAAY,CAEhB;gBAED,OAAO,EAAE,sBAAsB;IAgDrC,KAAK,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAYvD,YAAY;IAwC1B,IAAI,QAAQ,IAAI,oBAAoB,GAAG,SAAS,CAE/C;IAEM,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC,UAAU,CAAC;IAiC/E,OAAO,CAAC,OAAO,CAAI;IAEnB,OAAO,CAAC,kBAAkB;IAqD1B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,oBAAoB;YAcd,UAAU;IAqCxB,OAAO,CAAC,WAAW;YA6BL,WAAW;IA2BzB,OAAO,CAAC,cAAc;IAKhB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAuB/B,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5C,OAAO,CAAC,MAAM,GAAE,gBAAgB,CAAC,QAAQ,CAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQjF,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmB1D,OAAO,CAAC,KAAK,SAAM,GAAG,OAAO,CAAC,SAAS,OAAO,eAAe,EAAE,eAAe,EAAE,CAAC;IASjF,IAAI,CAAC,MAAM,SAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB7C,IAAI,gBAAgB,IAAI,SAAS,eAAe,EAAE,CAEjD;IAEK,aAAa,CACjB,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG;QACtE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAC5B,GACA,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAMjC,eAAe,CACnB,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG;QACtE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAC5B,GACA,OAAO,CAAC,OAAO,CAAC;IAMb,eAAe,CACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAoBxC,IAAI,aAAa,IAAI,aAAa,CAEjC;CACF"}
package/dist/host.js CHANGED
@@ -1,4 +1,4 @@
1
- import { agentError, isAgentEvent, } from "@nifrajs/agent-protocol";
1
+ import { agentError, agentEventProblem, isAgentEvent, isAgentExtensionEventType, } from "@nifrajs/agent-protocol";
2
2
  import { ApprovalManager, } from "./approvals.js";
3
3
  import { ContextWindow, } from "./sessions.js";
4
4
  import { createVerificationRepairTask, runNifraVerification, } from "./verification.js";
@@ -6,20 +6,43 @@ import { createVerificationRepairTask, runNifraVerification, } from "./verificat
6
6
  export class CodingAgentHost {
7
7
  backend;
8
8
  session;
9
+ starting;
10
+ // Bumped by every start and stop: a start that finds it changed was superseded by a stop.
11
+ lifecycle = 0;
9
12
  sessionStore;
10
13
  context;
11
14
  extensions;
12
15
  approvals;
16
+ /** Approvals {@link resolveApproval} is settling; it forwards those itself, once the broker accepts. */
17
+ resolving = new Set();
13
18
  verifyAfterTurn;
14
19
  maxRepairAttempts;
15
20
  exposeErrorStacks;
21
+ extensionChecks;
16
22
  verification;
17
23
  constructor(options) {
18
24
  this.backend = options.backend;
19
25
  this.sessionStore = options.sessionStore;
20
26
  this.context = new ContextWindow(options.contextWindow);
21
27
  this.extensions = options.extensions;
22
- this.approvals = new ApprovalManager(options.approvals);
28
+ const onResolved = options.approvals?.onResolved;
29
+ this.approvals = new ApprovalManager({
30
+ ...options.approvals,
31
+ // A denial the broker reaches on its own (timeout, expiry, close) goes to the backend too, or a
32
+ // backend holding the approval open longer than the host could still act on it.
33
+ onResolved: async (decision) => {
34
+ const sessionId = this.session?.id;
35
+ if (!decision.approved && !this.resolving.has(decision.approvalId) && sessionId) {
36
+ try {
37
+ await this.backend.resolveApproval?.(sessionId, decision.approvalId, false, decision.reason);
38
+ }
39
+ catch {
40
+ // The broker's denial stands whether or not the backend still knew the approval.
41
+ }
42
+ }
43
+ await onResolved?.(decision);
44
+ },
45
+ });
23
46
  this.verifyAfterTurn = Object.freeze([...(options.verifyAfterTurn ?? [])]);
24
47
  this.maxRepairAttempts = options.maxRepairAttempts ?? 2;
25
48
  if (!Number.isSafeInteger(this.maxRepairAttempts) ||
@@ -28,11 +51,36 @@ export class CodingAgentHost {
28
51
  throw new RangeError("coding agent: maxRepairAttempts must be between 0 and 8");
29
52
  this.exposeErrorStacks = options.exposeErrorStacks === true;
30
53
  this.verification = options.verification;
54
+ const checks = new Map();
55
+ for (const [type, check] of Object.entries(options.extensionEvents ?? {})) {
56
+ if (!isAgentExtensionEventType(type))
57
+ throw new TypeError(`coding agent: extension event type must be x-<vendor>.<name>: ${type}`);
58
+ if (typeof check !== "function")
59
+ throw new TypeError(`coding agent: the check for ${type} must be a function`);
60
+ checks.set(type, check);
61
+ }
62
+ this.extensionChecks = checks;
31
63
  }
32
64
  async start(input) {
33
- if (this.session !== undefined)
65
+ if (this.session !== undefined || this.starting !== undefined)
34
66
  throw new Error("coding agent: a session is already active");
67
+ const starting = this.startSession(input, ++this.lifecycle);
68
+ this.starting = starting;
69
+ try {
70
+ return await starting;
71
+ }
72
+ finally {
73
+ if (this.starting === starting)
74
+ this.starting = undefined;
75
+ }
76
+ }
77
+ async startSession(input, generation) {
35
78
  const created = await this.backend.createSession(input);
79
+ if (generation !== this.lifecycle) {
80
+ await this.backend.cancel(created.id, "host stopped").catch(() => { });
81
+ await this.backend.close(created.id).catch(() => { });
82
+ throw new Error("coding agent: the host stopped while the session was starting");
83
+ }
36
84
  this.session = created;
37
85
  try {
38
86
  let history = [];
@@ -46,6 +94,8 @@ export class CodingAgentHost {
46
94
  this.nextSeq = nextSequence(created, history);
47
95
  await this.extensions?.reload();
48
96
  await this.sessionStore?.append(created.id, "session.started", created);
97
+ if (generation !== this.lifecycle)
98
+ throw new Error("coding agent: the host stopped while the session was starting");
49
99
  return created;
50
100
  }
51
101
  catch (error) {
@@ -103,13 +153,12 @@ export class CodingAgentHost {
103
153
  nextSeq = 0;
104
154
  acceptBackendEvent(rawEvent) {
105
155
  const session = this.requireSession();
106
- if (!isAgentEvent(rawEvent) || rawEvent.sessionId !== session.id) {
107
- return this.createEvent({
108
- type: "session.failed",
109
- error: agentError("BACKEND_PROTOCOL", "backend emitted an invalid agent event"),
110
- recoverable: false,
111
- });
112
- }
156
+ // agentEventProblem re-walks the event, so it runs only once the event is known to be bad.
157
+ if (!isAgentEvent(rawEvent))
158
+ return this.protocolFailure(agentEventProblem(rawEvent) ?? "event is invalid");
159
+ const problem = this.acceptedEventProblem(rawEvent, session.id);
160
+ if (problem !== undefined)
161
+ return this.protocolFailure(problem);
113
162
  const event = Object.freeze({
114
163
  ...rawEvent,
115
164
  sessionId: session.id,
@@ -153,6 +202,30 @@ export class CodingAgentHost {
153
202
  });
154
203
  return event;
155
204
  }
205
+ protocolFailure(problem) {
206
+ return this.createEvent({
207
+ type: "session.failed",
208
+ error: agentError("BACKEND_PROTOCOL", `backend emitted an invalid agent event: ${problem}`),
209
+ recoverable: false,
210
+ });
211
+ }
212
+ acceptedEventProblem(event, sessionId) {
213
+ if (event.sessionId !== sessionId)
214
+ return "sessionId is not this session's";
215
+ if (!isExtensionEvent(event))
216
+ return undefined;
217
+ const check = this.extensionChecks.get(event.type);
218
+ if (check === undefined)
219
+ return undefined;
220
+ let accepted = false;
221
+ try {
222
+ accepted = check(event) === true;
223
+ }
224
+ catch {
225
+ accepted = false;
226
+ }
227
+ return accepted ? undefined : `${event.type} failed its registered check`;
228
+ }
156
229
  async verifyTurn() {
157
230
  const events = [];
158
231
  const tasks = [];
@@ -309,6 +382,9 @@ export class CodingAgentHost {
309
382
  return Object.freeze(entries.slice(-limit));
310
383
  }
311
384
  async stop(reason = "stopped") {
385
+ // A start still in flight is superseded: wait for it to roll its session back.
386
+ this.lifecycle++;
387
+ await this.starting?.catch(() => { });
312
388
  if (this.session === undefined)
313
389
  return;
314
390
  const id = this.session.id;
@@ -341,10 +417,21 @@ export class CodingAgentHost {
341
417
  return this.approvals.request({ ...input, sessionId: input.sessionId ?? session.id });
342
418
  }
343
419
  async resolveApproval(approvalId, approved, reason) {
420
+ // The broker decides first: an approval it no longer holds (unknown, expired, already settled,
421
+ // or bound to a coordinate) never reaches the backend.
422
+ this.resolving.add(approvalId);
423
+ let decision;
424
+ try {
425
+ decision = this.approvals.resolve(approvalId, approved, reason);
426
+ }
427
+ finally {
428
+ this.resolving.delete(approvalId);
429
+ }
430
+ if (decision === undefined)
431
+ return undefined;
344
432
  if (this.session !== undefined && this.backend.resolveApproval !== undefined)
345
- await this.backend.resolveApproval(this.session.id, approvalId, approved, reason);
346
- const decision = this.approvals.resolve(approvalId, approved, reason);
347
- if (decision !== undefined && this.session !== undefined)
433
+ await this.backend.resolveApproval(this.session.id, approvalId, decision.approved, reason);
434
+ if (this.session !== undefined)
348
435
  await this.sessionStore?.append(this.session.id, "approval.resolved", decision, {
349
436
  pinned: true,
350
437
  });
@@ -431,8 +518,14 @@ function boundedHostText(value, max) {
431
518
  function boundedHostToken(value) {
432
519
  return typeof value === "string" && /^[A-Za-z0-9._:/-]{1,128}$/.test(value);
433
520
  }
521
+ function isExtensionEvent(event) {
522
+ return isAgentExtensionEventType(event.type);
523
+ }
434
524
  /** Default session evidence is content-free; live protocol consumers still receive the full event. */
435
525
  function eventEvidence(event) {
526
+ // An extension event's data is the backend's own content; evidence keeps only where it belongs.
527
+ if (isExtensionEvent(event))
528
+ return event.turnId === undefined ? {} : { turnId: event.turnId };
436
529
  switch (event.type) {
437
530
  case "session.started":
438
531
  case "session.updated":
@@ -447,7 +540,18 @@ function eventEvidence(event) {
447
540
  return { turnId: event.turnId };
448
541
  case "assistant.delta":
449
542
  case "assistant.message":
543
+ case "reasoning.delta":
450
544
  return { turnId: event.turnId };
545
+ case "plan.updated":
546
+ return {
547
+ turnId: event.turnId,
548
+ entries: event.entries.length,
549
+ completed: event.entries.filter((entry) => entry.status === "completed").length,
550
+ };
551
+ case "context.usage": {
552
+ const { version: _version, sessionId: _sessionId, seq: _seq, at: _at, type: _type, ...counts } = event;
553
+ return counts;
554
+ }
451
555
  case "tool.started":
452
556
  return { turnId: event.turnId, callId: event.callId, name: event.name };
453
557
  case "tool.delta":
package/dist/host.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,UAAU,EAGV,YAAY,GAEb,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAEL,eAAe,GAGhB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAEL,aAAa,GAGd,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,GAGrB,MAAM,mBAAmB,CAAA;AAuB1B,gFAAgF;AAChF,MAAM,OAAO,eAAe;IACjB,OAAO,CAAc;IACtB,OAAO,CAAkC;IAChC,YAAY,CAA0B;IACtC,OAAO,CAAe;IACtB,UAAU,CAA2B;IAC7C,SAAS,CAAiB;IAClB,eAAe,CAA0C;IACzD,iBAAiB,CAAQ;IACzB,iBAAiB,CAAS;IAC1B,YAAY,CAEhB;IAEb,YAAY,OAA+B;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QACvD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;QACpC,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACvD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1E,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAA;QACvD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC7C,IAAI,CAAC,iBAAiB,GAAG,CAAC;YAC1B,IAAI,CAAC,iBAAiB,GAAG,CAAC;YAE1B,MAAM,IAAI,UAAU,CAAC,yDAAyD,CAAC,CAAA;QACjF,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAA;QAC3D,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;IAC1C,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAyB;QACnC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;QAC5F,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QACvD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC;YACH,IAAI,OAAO,GAAuD,EAAE,CAAA;YACpE,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACrE,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBACvD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAA;YAChE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC1B,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC7C,MAAM,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAA;YAC/B,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAA;YACvE,OAAO,OAAO,CAAA;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,4FAA4F;YAC5F,6FAA6F;YAC7F,oGAAoG;YACpG,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YACxB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACxB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;YAChB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAC/E,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACpD,MAAM,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;YACtB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,OAAe,EAAE,MAAoB;QACjD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QACjC,IAAI,WAAW,GAAG,OAAO,CAAA;QACzB,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,SAAS,CAAC;YACR,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC/B,SAAS;gBACT,OAAO,EAAE,WAAW;gBACpB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;aAC5C,CAAC,CAAA;YACF,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;gBAC/C,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC7B,MAAM,KAAK,CAAA;gBACX,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB;oBAAE,OAAM;gBAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;oBACpC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB;wBACzC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;oBAChF,OAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI;gBAAE,OAAM;YAEpC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC3C,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,MAAM;gBAAE,MAAM,KAAK,CAAA;YACnD,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,IAAI,IAAI,CAAC,iBAAiB;gBAAE,OAAM;YAEtF,cAAc,EAAE,CAAA;YAChB,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC7F,CAAC;IACH,CAAC;IAEO,OAAO,GAAG,CAAC,CAAA;IAEX,kBAAkB,CAAC,QAAiB;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACrC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,SAAS,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC;YACjE,OAAO,IAAI,CAAC,WAAW,CAAC;gBACtB,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,UAAU,CAAC,kBAAkB,EAAE,wCAAwC,CAAC;gBAC/E,WAAW,EAAE,KAAK;aACnB,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;YAC1B,GAAG,QAAQ;YACX,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE;SACpB,CAAe,CAAA;QAChB,IACE,KAAK,CAAC,IAAI,KAAK,iBAAiB;YAChC,KAAK,CAAC,IAAI,KAAK,mBAAmB;YAClC,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAChC,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC7B,GAAG,KAAK,CAAC,QAAQ;gBACjB,OAAO,EAAE,KAAK,CAAC,GAAG;gBAClB,SAAS,EAAE,KAAK,CAAC,EAAE;aACpB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAA;YACvB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAe,CAAA;QAC5D,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACrC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,iBAAiB,EAAE,GAAG,OAAO,CAAA;YACrE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC3B,GAAG,iBAAiB;gBACpB,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,KAAK,CAAC,GAAG;gBAClB,SAAS,EAAE,KAAK,CAAC,EAAE;aACpB,CAAC,CAAA;YACF,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACpC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,iBAAiB,EAAE,GAAG,OAAO,CAAA;YACrE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC3B,GAAG,iBAAiB;gBACpB,MAAM,EAAE,QAAQ;gBAChB,OAAO,EAAE,KAAK,CAAC,GAAG;gBAClB,SAAS,EAAE,KAAK,CAAC,EAAE;aACpB,CAAC,CAAA;YACF,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;YAC3B,GAAG,OAAO;YACV,OAAO,EAAE,KAAK,CAAC,GAAG;YAClB,SAAS,EAAE,KAAK,CAAC,EAAE;SACpB,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,UAAU;QAItB,MAAM,MAAM,GAAiB,EAAE,CAAA;QAC/B,MAAM,KAAK,GAA6B,EAAE,CAAA;QAC1C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YACrC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE;gBAC9C,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,GAAG,IAAI,CAAC,YAAY;gBACpB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;aAC1C,CAAC,CAAA;YACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC;gBACzC,IAAI,EAAE,wBAAwB;gBAC9B,IAAI;gBACJ,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,MAAM,EAAE,MAAM;aACf,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAA;YACzC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;YAE9B,MAAM,UAAU,GAAG,4BAA4B,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;YACpE,IAAI,UAAU,KAAK,SAAS;gBAAE,SAAQ;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBACnC,IAAI,EAAE,iBAAiB;gBACvB,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;gBAC/E,IAAI,EAAE,UAAU;aACjB,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;YACnC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACxB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACxB,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;IAC1B,CAAC;IAEO,WAAW,CAAC,OAA0B;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACrC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,OAAO,EAAE,CAAU;YACnB,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE;YACnB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,GAAG,OAAO;SACX,CAAe,CAAA;QAChB,MAAM,KAAK,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAC3C,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;QAC/F,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACxE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,iBAAiB,EAAE,GAAG,OAAO,CAAA;YACrE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC3B,GAAG,iBAAiB;gBACpB,MAAM,EAAE,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;gBAC/D,OAAO,EAAE,KAAK,CAAC,GAAG;gBAClB,SAAS,EAAE,KAAK,CAAC,EAAE;aACpB,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC3B,GAAG,OAAO;gBACV,OAAO,EAAE,KAAK,CAAC,GAAG;gBAClB,SAAS,EAAE,KAAK,CAAC,EAAE;aACpB,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAiB;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,EAAE,CAAA;QAC1C,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB;YACpC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAmC,CAAC,CAAA;aAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,KAAmC,CAAA;YACpD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;QACjF,CAAC;QACD,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE;YAC3E,MAAM,EACJ,KAAK,CAAC,IAAI,KAAK,mBAAmB;gBAClC,KAAK,CAAC,IAAI,KAAK,wBAAwB;gBACvC,KAAK,CAAC,IAAI,KAAK,iBAAiB;SACnC,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC;YACzB,MAAM,EACJ,KAAK,CAAC,IAAI,KAAK,mBAAmB;gBAClC,KAAK,CAAC,IAAI,KAAK,wBAAwB;gBACvC,KAAK,CAAC,IAAI,KAAK,iBAAiB;SACnC,CAAC,CAAA;QACF,IAAI,MAAM,KAAK,SAAS;YACtB,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5F,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,MAAM,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAClE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAA;QAC7C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC1D,MAAM,MAAM,GAAiB;YAC3B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YACpE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1E,UAAU,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,IAAI,OAAO,CAAC,UAAU;YAC5D,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAC3D,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE,KAAK,EACH,KAAK,EAAE,KAAK,KAAK,SAAS;wBACxB,CAAC,CAAC,OAAO,CAAC,KAAK;wBACf,CAAC,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC;iBAClD,CAAC;SACP,CAAA;QACD,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;QAC9E,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAiB;QAChC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAA;QAC5D,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;YAAE,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAChG,MAAM,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAC3D,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IACjG,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAqC,QAAQ;QACzD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC;YACpB,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAChG,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,eAAwB;QACjC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS;YACjC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACvB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC1B,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;aAC9D,CAAC,CAAA;QACJ,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;YACjC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;QACjE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,CAAA;QAChF,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAC5B,SAAS,EACT,gBAAgB,EAChB,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EACpC,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;QACD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG;QACvB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC7D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI;YAC3D,MAAM,IAAI,UAAU,CAAC,wDAAwD,CAAC,CAAA;QAChF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QACpE,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IAC7C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS;QAC3B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAM;QACtC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;QACxB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QACpE,CAAC;gBAAS,CAAC;YACT,6FAA6F;YAC7F,uFAAuF;YACvF,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACrD,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAC5C,MAAM,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;QACxB,CAAC;IACH,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAEC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAC5B,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACjF,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IACrF,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAEC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAC5B,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACjF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IACvF,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,UAAkB,EAClB,QAAiB,EACjB,MAAe;QAEf,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;YAC1E,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QACrE,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YACtD,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,mBAAmB,EAAE,QAAQ,EAAE;gBAC9E,MAAM,EAAE,IAAI;aACb,CAAC,CAAA;QACJ,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF;AAED,SAAS,SAAS,CAAC,KAAiB;IAClC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,iBAAiB;YACpB,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,KAAK,mBAAmB;YACtB,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,KAAK,cAAc;YACjB,OAAO,KAAK,CAAC,MAAM,CAAA;QACrB,KAAK,cAAc;YACjB,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAA;QAC7D,KAAK,YAAY;YACf,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,KAAK,gBAAgB;YACnB,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAA;QAC7E,KAAK,mBAAmB;YACtB,OAAO,GAAG,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,MAAM,EAAE,CAAA;QAC/C,KAAK,iBAAiB;YACpB,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;QAC3D,KAAK,gBAAgB;YACnB,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CAAA;QAC5B;YACE,OAAO,KAAK,CAAC,IAAI,CAAA;IACrB,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,YAAY,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IACzF,MAAM,SAAS,GAAG,KAAgC,CAAA;IAClD,IAAI,SAAS,CAAC,IAAI,KAAK,wBAAwB,EAAE,CAAC;QAChD,wFAAwF;QACxF,iGAAiG;QACjG,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,GAAG,SAAS,CAAA;QACvD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QAC7C,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,QAAuB,CAAC,CAAC,CAAC,SAAS,CAAA;IACtE,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,KAAK,iBAAiB;QAAE,OAAO,SAAS,CAAA;IAE1D,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAA;IAC7B,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IAC5F,MAAM,UAAU,GAAG,MAAiC,CAAA;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,EAAE,EAAE,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,CAAC,CAAC,UAAU,CAAC,EAAE;YACf,CAAC,CAAC,gBAAgB,OAAO,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;QACnF,YAAY,EACV,UAAU,CAAC,YAAY,KAAK,OAAO;YACnC,UAAU,CAAC,YAAY,KAAK,QAAQ;YACpC,UAAU,CAAC,YAAY,KAAK,MAAM;YAChC,CAAC,CAAC,UAAU,CAAC,YAAY;YACzB,CAAC,CAAC,OAAO;QACb,GAAG,EAAE,eAAe,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,GAAG;QAClD,MAAM,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,IAAI,qBAAqB;QAC/E,YAAY,EAAE,MAAM,CAAC,MAAM,CACzB,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAC5E,gBAAgB,CACjB,CACF;QACD,GAAG,CAAC,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ;YACvC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE;YAC5D,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAA;IACF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,CAAA;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,GAAG,IAAI;QACP,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,IAAI;KACL,CAAC,CAAA;IACF,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,QAAuB,CAAC,CAAC,CAAC,SAAS,CAAA;AACtE,CAAC;AAED,SAAS,eAAe,CAAC,KAAc,EAAE,GAAW;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAA;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACxC,OAAO,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC7E,CAAC;AAED,sGAAsG;AACtG,SAAS,aAAa,CAAC,KAAiB;IACtC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,iBAAiB,CAAC;QACvB,KAAK,iBAAiB,CAAC;QACvB,KAAK,mBAAmB;YACtB,OAAO;gBACL,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;gBAC7B,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;gBAC/B,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY;gBACzC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY;aAC1C,CAAA;QACH,KAAK,cAAc;YACjB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;QACjC,KAAK,iBAAiB,CAAC;QACvB,KAAK,mBAAmB;YACtB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;QACjC,KAAK,cAAc;YACjB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;QACzE,KAAK,YAAY;YACf,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;QACvD,KAAK,gBAAgB;YACnB,OAAO;gBACL,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aACtE,CAAA;QACH,KAAK,mBAAmB;YACtB,OAAO;gBACL,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAA;QACH,KAAK,mBAAmB;YACtB,OAAO;gBACL,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC/D,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAA;QACH,KAAK,iBAAiB;YACpB,OAAO;gBACL,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC/D,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE;gBACrB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY;gBACrC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY;aACtC,CAAA;QACH,KAAK,wBAAwB;YAC3B,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAA;QAC3C,KAAK,kBAAkB;YACrB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;QAC3E,KAAK,oBAAoB;YACvB,OAAO;gBACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAA;QACH,KAAK,gBAAgB;YACnB,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAA;QACxE,KAAK,iBAAiB;YACpB,OAAO,EAAE,CAAA;IACb,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAwC,EACxC,OAAe,EACf,WAAmB;IAEnB,MAAM,WAAW,GAAG,KAAK;SACtB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;QACtF,OAAO;YACL,iBAAiB,IAAI,CAAC,YAAY,EAAE;YACpC,WAAW,IAAI,CAAC,MAAM,EAAE;YACxB,sBAAsB,IAAI,CAAC,GAAG,EAAE;YAChC,MAAM,CAAC,MAAM,KAAK,CAAC;gBACjB,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,oCAAoC,MAAM,EAAE;SACjD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACd,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC;SACZ,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;IACtB,OAAO;QACL,qDAAqD;QACrD,4BAA4B,OAAO,OAAO,WAAW,GAAG;QACxD,wFAAwF;QACxF,2FAA2F;QAC3F,WAAW;QACX,qFAAqF;KACtF,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,8BAA8B,CAAA;IACvC,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CACnB,QAA8B,EAC9B,OAA2D;IAE3D,IAAI,aAAa,GAAG,CAAC,CAAC,CAAA;IACtB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QAC7B,IACE,OAAO,KAAK,IAAI;YAChB,OAAO,OAAO,KAAK,QAAQ;YAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACvB,OAAQ,OAA6B,CAAC,GAAG,KAAK,QAAQ;YACtD,MAAM,CAAC,aAAa,CAAE,OAA2B,CAAC,GAAG,CAAC;YAEtD,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAG,OAA2B,CAAC,GAAG,CAAC,CAAA;IAC7E,CAAC;IACD,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,aAAa,GAAG,CAAC,CAAA;IAChD,OAAO,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACxD,CAAC;AAED,SAAS,2BAA2B,CAClC,KAA8C;IAE9C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC7B,IAAI,OAAe,CAAA;IACnB,IAAI,CAAC;QACH,OAAO,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;IACjF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,mCAAmC,CAAA;IAC/C,CAAC;IACD,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QAC/B,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -21,6 +21,6 @@ export { type CompactionReport, type ContextRecord, ContextWindow, type ContextW
21
21
  export { BoundedSubagentRunner, type SubagentAbandonment, type SubagentAbandonmentLedger, type SubagentExecutor, type SubagentResult, type SubagentRunnerOptions, type SubagentSpec, } from "./subagents.js";
22
22
  export { createNifraTools, NIFRA_AGENT_INSTRUCTIONS, type NifraAgentTool } from "./tools.js";
23
23
  export { UiExtensionHost, type UiExtensionHostOptions, type UiExtensionManifest, type UiExtensionSlot, type UiReloadResult, type UiStatusWidget, type UiThemeDescriptor, } from "./ui.js";
24
- export { createVerificationRepairTask, isSafeReviewDiff, type ReviewExecutionErrorCode, type ReviewExecutionResult, type ReviewOptions, runNifraReview, runNifraVerification, type VerificationOptions, type VerificationRepairTask, type VerificationResult, } from "./verification.js";
24
+ export { createVerificationRepairTask, isSafeReviewDiff, isVerificationAvailable, type ReviewExecutionErrorCode, type ReviewExecutionResult, type ReviewOptions, runNifraReview, runNifraVerification, type VerificationOptions, type VerificationRepairTask, type VerificationResult, } from "./verification.js";
25
25
  export { type WorkflowContext, type WorkflowEvent, type WorkflowResult, WorkflowRunner, type WorkflowRunnerOptions, type WorkflowStep, } from "./workflows.js";
26
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -21,6 +21,6 @@ export { ContextWindow, FileSessionStore, } from "./sessions.js";
21
21
  export { BoundedSubagentRunner, } from "./subagents.js";
22
22
  export { createNifraTools, NIFRA_AGENT_INSTRUCTIONS } from "./tools.js";
23
23
  export { UiExtensionHost, } from "./ui.js";
24
- export { createVerificationRepairTask, isSafeReviewDiff, runNifraReview, runNifraVerification, } from "./verification.js";
24
+ export { createVerificationRepairTask, isSafeReviewDiff, isVerificationAvailable, runNifraReview, runNifraVerification, } from "./verification.js";
25
25
  export { WorkflowRunner, } from "./workflows.js";
26
26
  //# 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,OAAO,EAAE,SAAS,EAAyB,MAAM,aAAa,CAAA;AAC9D,OAAO,EAEL,eAAe,EAKf,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iCAAiC,EAGjC,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,mCAAmC,EACnC,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAmD,eAAe,EAAE,MAAM,WAAW,CAAA;AAC5F,OAAO,EAEL,kBAAkB,EAIlB,aAAa,EAMb,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,kBAAkB,EAGlB,YAAY,GAIb,MAAM,eAAe,CAAA;AACtB,OAAO,EAKL,qBAAqB,GACtB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,eAAe,EAA+B,MAAM,WAAW,CAAA;AACxE,OAAO,EAGL,uBAAuB,GAExB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,4BAA4B,EAS5B,YAAY,GAEb,MAAM,aAAa,CAAA;AACpB,OAAO,EAKL,UAAU,GAEX,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,aAAa,EAGb,gBAAgB,EAChB,cAAc,GACf,MAAM,cAAc,CAAA;AACrB,OAAO,EAAoB,eAAe,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAIL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,aAAa,EAA6B,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACxF,OAAO,EACL,oBAAoB,GAGrB,MAAM,UAAU,CAAA;AACjB,OAAO,EAEL,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EAExB,qBAAqB,EAErB,sBAAsB,GACvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGL,aAAa,EAEb,gBAAgB,GAIjB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,qBAAqB,GAOtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAuB,MAAM,YAAY,CAAA;AAC5F,OAAO,EACL,eAAe,GAOhB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAIhB,cAAc,EACd,oBAAoB,GAIrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAIL,cAAc,GAGf,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,aAAa,CAAA;AAC9D,OAAO,EAEL,eAAe,EAKf,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iCAAiC,EAGjC,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,mCAAmC,EACnC,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAmD,eAAe,EAAE,MAAM,WAAW,CAAA;AAC5F,OAAO,EAEL,kBAAkB,EAIlB,aAAa,EAMb,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,kBAAkB,EAGlB,YAAY,GAIb,MAAM,eAAe,CAAA;AACtB,OAAO,EAKL,qBAAqB,GACtB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,eAAe,EAA+B,MAAM,WAAW,CAAA;AACxE,OAAO,EAGL,uBAAuB,GAExB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,4BAA4B,EAS5B,YAAY,GAEb,MAAM,aAAa,CAAA;AACpB,OAAO,EAKL,UAAU,GAEX,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,aAAa,EAGb,gBAAgB,EAChB,cAAc,GACf,MAAM,cAAc,CAAA;AACrB,OAAO,EAAoB,eAAe,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAIL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,aAAa,EAA6B,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACxF,OAAO,EACL,oBAAoB,GAGrB,MAAM,UAAU,CAAA;AACjB,OAAO,EAEL,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EAExB,qBAAqB,EAErB,sBAAsB,GACvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGL,aAAa,EAEb,gBAAgB,GAIjB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,qBAAqB,GAOtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAuB,MAAM,YAAY,CAAA;AAC5F,OAAO,EACL,eAAe,GAOhB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAChB,uBAAuB,EAIvB,cAAc,EACd,oBAAoB,GAIrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAIL,cAAc,GAGf,MAAM,gBAAgB,CAAA"}
package/dist/native.d.ts CHANGED
@@ -33,6 +33,21 @@ export type NativeModelResponse = {
33
33
  export type NativeModelChunk = {
34
34
  readonly type: "text_delta";
35
35
  readonly text: string;
36
+ } | {
37
+ readonly type: "reasoning_delta";
38
+ readonly text: string;
39
+ readonly itemId?: string;
40
+ }
41
+ /** Token counts for the request; becomes a `context.usage` event. */
42
+ | {
43
+ readonly type: "usage";
44
+ readonly usedTokens: number;
45
+ readonly windowTokens?: number;
46
+ readonly inputTokens?: number;
47
+ readonly outputTokens?: number;
48
+ readonly cachedInputTokens?: number;
49
+ readonly reasoningTokens?: number;
50
+ readonly estimated?: boolean;
36
51
  } | {
37
52
  readonly type: "response";
38
53
  readonly response: NativeModelResponse;
@@ -68,7 +83,14 @@ export interface NifraBackendOptions {
68
83
  /** Maximum time a protocol-visible native approval may remain unresolved. */
69
84
  readonly approvalTimeoutMs?: number;
70
85
  readonly maxSteps?: number;
86
+ /** Longest message `send` accepts (default 64 KiB). */
71
87
  readonly maxMessageChars?: number;
88
+ /**
89
+ * Longest reply the model may give in one turn (default 1 MiB); past it the reply is cut with
90
+ * a marker. A reply longer than one event's text travels as consecutive `assistant.message`
91
+ * events, and the model's history keeps it whole.
92
+ */
93
+ readonly maxReplyChars?: number;
72
94
  /**
73
95
  * Character budget for the conversation a session sends to the model (default 1 MiB). Past it,
74
96
  * whole earlier turns are dropped, oldest first; the current turn is always sent in full.
@@ -1 +1 @@
1
- {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}