@genesislcap/foundation-ai 14.467.2 → 14.468.0-GENC-1354.2

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.
@@ -8,7 +8,7 @@ export { AI_FEATURE_FLAG, isAIFeatureEnabled } from './utils/feature-flags';
8
8
  export { ChatTemperature } from './utils/temperature';
9
9
  export { SUPPORTED_ANTHROPIC_MODEL_IDS, SUPPORTED_GEMINI_MODEL_IDS } from './types';
10
10
  export type { AIConfig, AIStatus, AIProviderType, AnthropicAIConfig, AnthropicModelId, ChromeAIConfig, ChromeAvailability, GeminiAIConfig, GeminiModelId, ServerAIConfig, } from './types';
11
- export type { AgentPickerMode, ChatAgentConfig, ChatAgentPickerConfig, ChatAnimationsConfig, ChatAttachment, ChatConfig, ChatDriverResult, ChatInputDuringExecutionMode, ChatMessage, ChatInteraction, ChatRequestOptions, ChatResponseMeta, ChatRole, ChatStreamChunk, ChatToolCall, ChatToolCallUnknown, ChatToolChoice, ChatToolDefinition, ChatToolHandlers, ChatToolResult, ChatUiConfig, ChatSuggestionsConfig, InteractionPresentation, InteractionRequestOptions, InteractionResult, SubAgentFailureReason, SubAgentRequestOptions, } from './types/chat.types';
11
+ export type { AgentPickerMode, ChatAgentConfig, ChatAgentPickerConfig, ChatAnimationsConfig, ChatAttachment, ChatConfig, ChatDriverResult, ChatInputDuringExecutionMode, ChatMessage, ChatInteraction, ChatRequestOptions, ChatResponseMeta, ChatRole, ChatStreamChunk, ChatToolCall, ChatToolCallUnknown, ChatToolChoice, ChatToolDefinition, ChatToolHandlers, ChatToolResult, ChatUiConfig, CondensePolicy, CondenseResult, CondenseTrigger, ChatSuggestionsConfig, InteractionPresentation, InteractionRequestOptions, InteractionResult, SubAgentFailureReason, SubAgentRequestOptions, } from './types/chat.types';
12
12
  export { isChatToolCallUnknown } from './types/chat.types';
13
13
  export type { ChatTransport } from './types/chat-transport.types';
14
14
  export type { CostReportingTransport } from './types/transports.types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,yBAAyB,EACzB,0BAA0B,EAC1B,mBAAmB,EACnB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AACpF,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,4BAA4B,EAC5B,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC1E,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,yBAAyB,EACzB,0BAA0B,EAC1B,mBAAmB,EACnB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AACpF,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,4BAA4B,EAC5B,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC1E,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -388,6 +388,92 @@ export interface InteractionRequestOptions {
388
388
  * @beta
389
389
  */
390
390
  export type SubAgentFailureReason = 'max_iterations' | 'malformed_tool_call' | 'empty_response' | 'unknown_tool_limit' | 'timeout';
391
+ /**
392
+ * When a tool call's declared payload(s) become stale and should be condensed
393
+ * out of the to-model history. The kinds form a spectrum of widening staleness
394
+ * horizons — call, model-call, request, and agent-flow.
395
+ *
396
+ * - `superseded` — keep only the LATEST call sharing `by` in the history sent
397
+ * to the model; collapse the targeted payload of all earlier ones. The natural
398
+ * key is the resource identity (e.g. a file path), so reads and writes of the
399
+ * same path share a `by` and an earlier read collapses once a later write/read
400
+ * of the same path lands. A re-call with the same `by` re-arms automatically.
401
+ * - `age` — a tool result first reaches the model on the model-call AFTER the
402
+ * call, so `turns` is how many model-calls may see the full result before it
403
+ * collapses: `turns: 1` lets the model read it on exactly one model-call, then
404
+ * collapses it; `turns: 2` keeps it for two; and so on. Use `turns >= 1`. The
405
+ * clock is monotonic across user turns (a sub-agent invocation counts as one
406
+ * call in the parent loop). For keyless payloads (grep / source / doc dumps).
407
+ * - `turnEnd` — collapse once the user turn (`sendMessage`) that made the call
408
+ * has ended: the payload stays full for the rest of that request, then
409
+ * collapses on every later one. "Relevant only to the request that fetched it."
410
+ * This is the right choice for a non-pinned agent (one that answers and hands
411
+ * straight back to the user); reach for it whenever the payload is per-request.
412
+ * - `agentEnd` — collapse once the agent's *continuous activation* ends. An
413
+ * activation spans every turn the agent stays in control — a pinned stateful
414
+ * flow is one activation across all its turns (mid-flow `requestInteraction`
415
+ * round-trips and turn boundaries do NOT end it) — and it ends only when the
416
+ * agent hands off to a different agent or releases its pin (`releaseAgent` /
417
+ * `completeSubAgent`). The right choice for a multi-turn stateful flow whose
418
+ * payload is needed throughout but dead afterwards (where `turnEnd` would be too
419
+ * eager). NOTE: for a non-pinned agent, "the agent" is only considered to have
420
+ * ended when routing actually moves to a *different* agent — if the classifier
421
+ * re-selects the same agent on the next turn it is treated as the same
422
+ * activation, so use `turnEnd` (not `agentEnd`) when you want per-request
423
+ * collapse on a non-stateful agent.
424
+ *
425
+ * @beta
426
+ */
427
+ export type CondenseTrigger = {
428
+ kind: 'superseded';
429
+ by: string;
430
+ } | {
431
+ kind: 'age';
432
+ turns: number;
433
+ } | {
434
+ kind: 'turnEnd';
435
+ } | {
436
+ kind: 'agentEnd';
437
+ };
438
+ /**
439
+ * How a stale payload is replaced in the to-model slice.
440
+ *
441
+ * - `'pointer'` — a framework-generated, re-readable stub with a "re-call to
442
+ * restore" hint. Safe ONLY for idempotent tools (re-calling reproduces the
443
+ * content); the framework cannot detect idempotency, so the author asserts it
444
+ * by choosing `'pointer'`.
445
+ * - `'drop'` — a minimal placeholder, no breadcrumb. Use when the content is
446
+ * provably never needed again (e.g. superseded write args).
447
+ * - `{ replaceWith }` — a tool-authored summary string, computed at declaration
448
+ * time (the handler has the content then). Left verbatim — no restore hint —
449
+ * so it is the correct choice for non-idempotent tools and semantic summaries.
450
+ *
451
+ * @beta
452
+ */
453
+ export type CondenseResult = 'pointer' | 'drop' | {
454
+ replaceWith: string;
455
+ };
456
+ /**
457
+ * Declarative policy passed to `condenseWhen`. The trigger(s) (`on`) are shared
458
+ * by both payloads of the call; the args and response are replaced independently.
459
+ * Presence of `args` / `response` IS the target — at least one must be set.
460
+ *
461
+ * @beta
462
+ */
463
+ export interface CondensePolicy {
464
+ /**
465
+ * When the call's payload(s) go stale. A single trigger, or an array of
466
+ * triggers combined with OR — the FIRST one to fire collapses the payload
467
+ * (e.g. `[{ kind: 'superseded', by: path }, { kind: 'turnEnd' }]` = "collapse
468
+ * when re-read, or at the end of this request, whichever comes first"). All
469
+ * triggers are monotonic, so a collapse never reverts.
470
+ */
471
+ on: CondenseTrigger | CondenseTrigger[];
472
+ /** Condense the tool-call ARGS (on the assistant message). Omit to leave untouched. */
473
+ args?: CondenseResult;
474
+ /** Condense the tool RESULT (on the tool message). Omit to leave untouched. */
475
+ response?: CondenseResult;
476
+ }
391
477
  /**
392
478
  * Map of tool name to async handler function.
393
479
  *
@@ -449,6 +535,21 @@ export type ChatToolHandlers<TSubAgent extends {
449
535
  * guards the flow can release.
450
536
  */
451
537
  releaseAgent?: () => void;
538
+ /**
539
+ * Declare how THIS tool call's payload(s) should be condensed out of the
540
+ * history sent to the model once they go stale (see {@link CondensePolicy}).
541
+ * Applied to the model-bound history only — stored history (UI, debug
542
+ * export) is never mutated. No-op if neither `args` nor `response` is set.
543
+ *
544
+ * Opt-in and computed at call time: the handler can pass different params
545
+ * on each invocation (e.g. `by: args.path`) or skip the call entirely for
546
+ * a payload it wants to keep. Only the first call per tool invocation is
547
+ * honoured; a second call for the same tool call is ignored.
548
+ *
549
+ * `'pointer'` is valid only for idempotent tools (it promises a re-call
550
+ * restores the content); non-idempotent tools must use `replaceWith`.
551
+ */
552
+ condenseWhen: (policy: CondensePolicy) => void;
452
553
  }) => Promise<unknown>>;
453
554
  /**
454
555
  * Controls whether (and how) the model may call a tool on a given turn. Maps to
@@ -628,6 +729,18 @@ export interface ChatUiConfig {
628
729
  * - `false` — hidden
629
730
  */
630
731
  showSessionCost?: boolean;
732
+ /**
733
+ * Show cumulative session token usage (input + output across all turns) on
734
+ * the Cost tab.
735
+ * - `true` or `undefined` (default) — shown when usage data is available
736
+ * - `false` — hidden
737
+ */
738
+ showSessionTokens?: boolean;
739
+ /**
740
+ * Live-session badge label on the Cost tab summary block.
741
+ * Default: `"Currently building"`.
742
+ */
743
+ sessionCostBadgeLabel?: string;
631
744
  /**
632
745
  * Show the active model id in the settings panel.
633
746
  * - `true` or `undefined` (default) — shown when the provider exposes a model
@@ -1 +1 @@
1
- {"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/types/chat.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/types/chat.types.ts"],"names":[],"mappings":"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"}
@@ -4344,7 +4344,16 @@
4344
4344
  },
4345
4345
  {
4346
4346
  "kind": "Content",
4347
- "text": ";\n }>;\n completeSubAgent?: (result: unknown) => void;\n releaseAgent?: () => void;\n}) => "
4347
+ "text": ";\n }>;\n completeSubAgent?: (result: unknown) => void;\n releaseAgent?: () => void;\n condenseWhen: (policy: "
4348
+ },
4349
+ {
4350
+ "kind": "Reference",
4351
+ "text": "CondensePolicy",
4352
+ "canonicalReference": "@genesislcap/foundation-ai!CondensePolicy:interface"
4353
+ },
4354
+ {
4355
+ "kind": "Content",
4356
+ "text": ") => void;\n}) => "
4348
4357
  },
4349
4358
  {
4350
4359
  "kind": "Reference",
@@ -4378,7 +4387,7 @@
4378
4387
  ],
4379
4388
  "typeTokenRange": {
4380
4389
  "startIndex": 5,
4381
- "endIndex": 21
4390
+ "endIndex": 23
4382
4391
  }
4383
4392
  },
4384
4393
  {
@@ -4870,6 +4879,33 @@
4870
4879
  "endIndex": 2
4871
4880
  }
4872
4881
  },
4882
+ {
4883
+ "kind": "PropertySignature",
4884
+ "canonicalReference": "@genesislcap/foundation-ai!ChatUiConfig#sessionCostBadgeLabel:member",
4885
+ "docComment": "/**\n * Live-session badge label on the Cost tab summary block. Default: `\"Currently building\"`.\n */\n",
4886
+ "excerptTokens": [
4887
+ {
4888
+ "kind": "Content",
4889
+ "text": "sessionCostBadgeLabel?: "
4890
+ },
4891
+ {
4892
+ "kind": "Content",
4893
+ "text": "string"
4894
+ },
4895
+ {
4896
+ "kind": "Content",
4897
+ "text": ";"
4898
+ }
4899
+ ],
4900
+ "isReadonly": false,
4901
+ "isOptional": true,
4902
+ "releaseTag": "Beta",
4903
+ "name": "sessionCostBadgeLabel",
4904
+ "propertyTypeTokenRange": {
4905
+ "startIndex": 1,
4906
+ "endIndex": 2
4907
+ }
4908
+ },
4873
4909
  {
4874
4910
  "kind": "PropertySignature",
4875
4911
  "canonicalReference": "@genesislcap/foundation-ai!ChatUiConfig#showActiveModel:member",
@@ -4978,6 +5014,33 @@
4978
5014
  "endIndex": 2
4979
5015
  }
4980
5016
  },
5017
+ {
5018
+ "kind": "PropertySignature",
5019
+ "canonicalReference": "@genesislcap/foundation-ai!ChatUiConfig#showSessionTokens:member",
5020
+ "docComment": "/**\n * Show cumulative session token usage (input + output across all turns) on the Cost tab. - `true` or `undefined` (default) — shown when usage data is available - `false` — hidden\n */\n",
5021
+ "excerptTokens": [
5022
+ {
5023
+ "kind": "Content",
5024
+ "text": "showSessionTokens?: "
5025
+ },
5026
+ {
5027
+ "kind": "Content",
5028
+ "text": "boolean"
5029
+ },
5030
+ {
5031
+ "kind": "Content",
5032
+ "text": ";"
5033
+ }
5034
+ ],
5035
+ "isReadonly": false,
5036
+ "isOptional": true,
5037
+ "releaseTag": "Beta",
5038
+ "name": "showSessionTokens",
5039
+ "propertyTypeTokenRange": {
5040
+ "startIndex": 1,
5041
+ "endIndex": 2
5042
+ }
5043
+ },
4981
5044
  {
4982
5045
  "kind": "PropertySignature",
4983
5046
  "canonicalReference": "@genesislcap/foundation-ai!ChatUiConfig#showSplash:member",
@@ -5201,6 +5264,173 @@
5201
5264
  "endIndex": 2
5202
5265
  }
5203
5266
  },
5267
+ {
5268
+ "kind": "Interface",
5269
+ "canonicalReference": "@genesislcap/foundation-ai!CondensePolicy:interface",
5270
+ "docComment": "/**\n * Declarative policy passed to `condenseWhen`. The trigger(s) (`on`) are shared by both payloads of the call; the args and response are replaced independently. Presence of `args` / `response` IS the target — at least one must be set.\n *\n * @beta\n */\n",
5271
+ "excerptTokens": [
5272
+ {
5273
+ "kind": "Content",
5274
+ "text": "export interface CondensePolicy "
5275
+ }
5276
+ ],
5277
+ "fileUrlPath": "src/types/chat.types.ts",
5278
+ "releaseTag": "Beta",
5279
+ "name": "CondensePolicy",
5280
+ "preserveMemberOrder": false,
5281
+ "members": [
5282
+ {
5283
+ "kind": "PropertySignature",
5284
+ "canonicalReference": "@genesislcap/foundation-ai!CondensePolicy#args:member",
5285
+ "docComment": "/**\n * Condense the tool-call ARGS (on the assistant message). Omit to leave untouched.\n */\n",
5286
+ "excerptTokens": [
5287
+ {
5288
+ "kind": "Content",
5289
+ "text": "args?: "
5290
+ },
5291
+ {
5292
+ "kind": "Reference",
5293
+ "text": "CondenseResult",
5294
+ "canonicalReference": "@genesislcap/foundation-ai!CondenseResult:type"
5295
+ },
5296
+ {
5297
+ "kind": "Content",
5298
+ "text": ";"
5299
+ }
5300
+ ],
5301
+ "isReadonly": false,
5302
+ "isOptional": true,
5303
+ "releaseTag": "Beta",
5304
+ "name": "args",
5305
+ "propertyTypeTokenRange": {
5306
+ "startIndex": 1,
5307
+ "endIndex": 2
5308
+ }
5309
+ },
5310
+ {
5311
+ "kind": "PropertySignature",
5312
+ "canonicalReference": "@genesislcap/foundation-ai!CondensePolicy#on:member",
5313
+ "docComment": "/**\n * When the call's payload(s) go stale. A single trigger, or an array of triggers combined with OR — the FIRST one to fire collapses the payload (e.g. `[{ kind: 'superseded', by: path }, { kind: 'turnEnd' }]` = \"collapse when re-read, or at the end of this request, whichever comes first\"). All triggers are monotonic, so a collapse never reverts.\n */\n",
5314
+ "excerptTokens": [
5315
+ {
5316
+ "kind": "Content",
5317
+ "text": "on: "
5318
+ },
5319
+ {
5320
+ "kind": "Reference",
5321
+ "text": "CondenseTrigger",
5322
+ "canonicalReference": "@genesislcap/foundation-ai!CondenseTrigger:type"
5323
+ },
5324
+ {
5325
+ "kind": "Content",
5326
+ "text": " | "
5327
+ },
5328
+ {
5329
+ "kind": "Reference",
5330
+ "text": "CondenseTrigger",
5331
+ "canonicalReference": "@genesislcap/foundation-ai!CondenseTrigger:type"
5332
+ },
5333
+ {
5334
+ "kind": "Content",
5335
+ "text": "[]"
5336
+ },
5337
+ {
5338
+ "kind": "Content",
5339
+ "text": ";"
5340
+ }
5341
+ ],
5342
+ "isReadonly": false,
5343
+ "isOptional": false,
5344
+ "releaseTag": "Beta",
5345
+ "name": "on",
5346
+ "propertyTypeTokenRange": {
5347
+ "startIndex": 1,
5348
+ "endIndex": 5
5349
+ }
5350
+ },
5351
+ {
5352
+ "kind": "PropertySignature",
5353
+ "canonicalReference": "@genesislcap/foundation-ai!CondensePolicy#response:member",
5354
+ "docComment": "/**\n * Condense the tool RESULT (on the tool message). Omit to leave untouched.\n */\n",
5355
+ "excerptTokens": [
5356
+ {
5357
+ "kind": "Content",
5358
+ "text": "response?: "
5359
+ },
5360
+ {
5361
+ "kind": "Reference",
5362
+ "text": "CondenseResult",
5363
+ "canonicalReference": "@genesislcap/foundation-ai!CondenseResult:type"
5364
+ },
5365
+ {
5366
+ "kind": "Content",
5367
+ "text": ";"
5368
+ }
5369
+ ],
5370
+ "isReadonly": false,
5371
+ "isOptional": true,
5372
+ "releaseTag": "Beta",
5373
+ "name": "response",
5374
+ "propertyTypeTokenRange": {
5375
+ "startIndex": 1,
5376
+ "endIndex": 2
5377
+ }
5378
+ }
5379
+ ],
5380
+ "extendsTokenRanges": []
5381
+ },
5382
+ {
5383
+ "kind": "TypeAlias",
5384
+ "canonicalReference": "@genesislcap/foundation-ai!CondenseResult:type",
5385
+ "docComment": "/**\n * How a stale payload is replaced in the to-model slice.\n *\n * - `'pointer'` — a framework-generated, re-readable stub with a \"re-call to restore\" hint. Safe ONLY for idempotent tools (re-calling reproduces the content); the framework cannot detect idempotency, so the author asserts it by choosing `'pointer'`. - `'drop'` — a minimal placeholder, no breadcrumb. Use when the content is provably never needed again (e.g. superseded write args). - `{ replaceWith }` — a tool-authored summary string, computed at declaration time (the handler has the content then). Left verbatim — no restore hint — so it is the correct choice for non-idempotent tools and semantic summaries.\n *\n * @beta\n */\n",
5386
+ "excerptTokens": [
5387
+ {
5388
+ "kind": "Content",
5389
+ "text": "export type CondenseResult = "
5390
+ },
5391
+ {
5392
+ "kind": "Content",
5393
+ "text": "'pointer' | 'drop' | {\n replaceWith: string;\n}"
5394
+ },
5395
+ {
5396
+ "kind": "Content",
5397
+ "text": ";"
5398
+ }
5399
+ ],
5400
+ "fileUrlPath": "src/types/chat.types.ts",
5401
+ "releaseTag": "Beta",
5402
+ "name": "CondenseResult",
5403
+ "typeTokenRange": {
5404
+ "startIndex": 1,
5405
+ "endIndex": 2
5406
+ }
5407
+ },
5408
+ {
5409
+ "kind": "TypeAlias",
5410
+ "canonicalReference": "@genesislcap/foundation-ai!CondenseTrigger:type",
5411
+ "docComment": "/**\n * When a tool call's declared payload(s) become stale and should be condensed out of the to-model history. The kinds form a spectrum of widening staleness horizons — call, model-call, request, and agent-flow.\n *\n * - `superseded` — keep only the LATEST call sharing `by` in the history sent to the model; collapse the targeted payload of all earlier ones. The natural key is the resource identity (e.g. a file path), so reads and writes of the same path share a `by` and an earlier read collapses once a later write/read of the same path lands. A re-call with the same `by` re-arms automatically. - `age` — a tool result first reaches the model on the model-call AFTER the call, so `turns` is how many model-calls may see the full result before it collapses: `turns: 1` lets the model read it on exactly one model-call, then collapses it; `turns: 2` keeps it for two; and so on. Use `turns >= 1`. The clock is monotonic across user turns (a sub-agent invocation counts as one call in the parent loop). For keyless payloads (grep / source / doc dumps). - `turnEnd` — collapse once the user turn (`sendMessage`) that made the call has ended: the payload stays full for the rest of that request, then collapses on every later one. \"Relevant only to the request that fetched it.\" This is the right choice for a non-pinned agent (one that answers and hands straight back to the user); reach for it whenever the payload is per-request. - `agentEnd` — collapse once the agent's *continuous activation* ends. An activation spans every turn the agent stays in control — a pinned stateful flow is one activation across all its turns (mid-flow `requestInteraction` round-trips and turn boundaries do NOT end it) — and it ends only when the agent hands off to a different agent or releases its pin (`releaseAgent` / `completeSubAgent`). The right choice for a multi-turn stateful flow whose payload is needed throughout but dead afterwards (where `turnEnd` would be too eager). NOTE: for a non-pinned agent, \"the agent\" is only considered to have ended when routing actually moves to a *different* agent — if the classifier re-selects the same agent on the next turn it is treated as the same activation, so use `turnEnd` (not `agentEnd`) when you want per-request collapse on a non-stateful agent.\n *\n * @beta\n */\n",
5412
+ "excerptTokens": [
5413
+ {
5414
+ "kind": "Content",
5415
+ "text": "export type CondenseTrigger = "
5416
+ },
5417
+ {
5418
+ "kind": "Content",
5419
+ "text": "{\n kind: 'superseded';\n by: string;\n} | {\n kind: 'age';\n turns: number;\n} | {\n kind: 'turnEnd';\n} | {\n kind: 'agentEnd';\n}"
5420
+ },
5421
+ {
5422
+ "kind": "Content",
5423
+ "text": ";"
5424
+ }
5425
+ ],
5426
+ "fileUrlPath": "src/types/chat.types.ts",
5427
+ "releaseTag": "Beta",
5428
+ "name": "CondenseTrigger",
5429
+ "typeTokenRange": {
5430
+ "startIndex": 1,
5431
+ "endIndex": 2
5432
+ }
5433
+ },
5204
5434
  {
5205
5435
  "kind": "Interface",
5206
5436
  "canonicalReference": "@genesislcap/foundation-ai!CostReportingTransport:interface",
@@ -874,6 +874,21 @@ export declare type ChatToolHandlers<TSubAgent extends {
874
874
  * guards the flow can release.
875
875
  */
876
876
  releaseAgent?: () => void;
877
+ /**
878
+ * Declare how THIS tool call's payload(s) should be condensed out of the
879
+ * history sent to the model once they go stale (see {@link CondensePolicy}).
880
+ * Applied to the model-bound history only — stored history (UI, debug
881
+ * export) is never mutated. No-op if neither `args` nor `response` is set.
882
+ *
883
+ * Opt-in and computed at call time: the handler can pass different params
884
+ * on each invocation (e.g. `by: args.path`) or skip the call entirely for
885
+ * a payload it wants to keep. Only the first call per tool invocation is
886
+ * honoured; a second call for the same tool call is ignored.
887
+ *
888
+ * `'pointer'` is valid only for idempotent tools (it promises a re-call
889
+ * restores the content); non-idempotent tools must use `replaceWith`.
890
+ */
891
+ condenseWhen: (policy: CondensePolicy) => void;
877
892
  }) => Promise<unknown>>;
878
893
 
879
894
  /**
@@ -975,6 +990,18 @@ export declare interface ChatUiConfig {
975
990
  * - `false` — hidden
976
991
  */
977
992
  showSessionCost?: boolean;
993
+ /**
994
+ * Show cumulative session token usage (input + output across all turns) on
995
+ * the Cost tab.
996
+ * - `true` or `undefined` (default) — shown when usage data is available
997
+ * - `false` — hidden
998
+ */
999
+ showSessionTokens?: boolean;
1000
+ /**
1001
+ * Live-session badge label on the Cost tab summary block.
1002
+ * Default: `"Currently building"`.
1003
+ */
1004
+ sessionCostBadgeLabel?: string;
978
1005
  /**
979
1006
  * Show the active model id in the settings panel.
980
1007
  * - `true` or `undefined` (default) — shown when the provider exposes a model
@@ -1011,6 +1038,95 @@ export declare interface ChromeAIConfig extends AIProviderConfig {
1011
1038
  */
1012
1039
  export declare type ChromeAvailability = 'available' | 'downloading' | 'downloadable' | 'unavailable';
1013
1040
 
1041
+ /**
1042
+ * Declarative policy passed to `condenseWhen`. The trigger(s) (`on`) are shared
1043
+ * by both payloads of the call; the args and response are replaced independently.
1044
+ * Presence of `args` / `response` IS the target — at least one must be set.
1045
+ *
1046
+ * @beta
1047
+ */
1048
+ export declare interface CondensePolicy {
1049
+ /**
1050
+ * When the call's payload(s) go stale. A single trigger, or an array of
1051
+ * triggers combined with OR — the FIRST one to fire collapses the payload
1052
+ * (e.g. `[{ kind: 'superseded', by: path }, { kind: 'turnEnd' }]` = "collapse
1053
+ * when re-read, or at the end of this request, whichever comes first"). All
1054
+ * triggers are monotonic, so a collapse never reverts.
1055
+ */
1056
+ on: CondenseTrigger | CondenseTrigger[];
1057
+ /** Condense the tool-call ARGS (on the assistant message). Omit to leave untouched. */
1058
+ args?: CondenseResult;
1059
+ /** Condense the tool RESULT (on the tool message). Omit to leave untouched. */
1060
+ response?: CondenseResult;
1061
+ }
1062
+
1063
+ /**
1064
+ * How a stale payload is replaced in the to-model slice.
1065
+ *
1066
+ * - `'pointer'` — a framework-generated, re-readable stub with a "re-call to
1067
+ * restore" hint. Safe ONLY for idempotent tools (re-calling reproduces the
1068
+ * content); the framework cannot detect idempotency, so the author asserts it
1069
+ * by choosing `'pointer'`.
1070
+ * - `'drop'` — a minimal placeholder, no breadcrumb. Use when the content is
1071
+ * provably never needed again (e.g. superseded write args).
1072
+ * - `{ replaceWith }` — a tool-authored summary string, computed at declaration
1073
+ * time (the handler has the content then). Left verbatim — no restore hint —
1074
+ * so it is the correct choice for non-idempotent tools and semantic summaries.
1075
+ *
1076
+ * @beta
1077
+ */
1078
+ export declare type CondenseResult = 'pointer' | 'drop' | {
1079
+ replaceWith: string;
1080
+ };
1081
+
1082
+ /**
1083
+ * When a tool call's declared payload(s) become stale and should be condensed
1084
+ * out of the to-model history. The kinds form a spectrum of widening staleness
1085
+ * horizons — call, model-call, request, and agent-flow.
1086
+ *
1087
+ * - `superseded` — keep only the LATEST call sharing `by` in the history sent
1088
+ * to the model; collapse the targeted payload of all earlier ones. The natural
1089
+ * key is the resource identity (e.g. a file path), so reads and writes of the
1090
+ * same path share a `by` and an earlier read collapses once a later write/read
1091
+ * of the same path lands. A re-call with the same `by` re-arms automatically.
1092
+ * - `age` — a tool result first reaches the model on the model-call AFTER the
1093
+ * call, so `turns` is how many model-calls may see the full result before it
1094
+ * collapses: `turns: 1` lets the model read it on exactly one model-call, then
1095
+ * collapses it; `turns: 2` keeps it for two; and so on. Use `turns >= 1`. The
1096
+ * clock is monotonic across user turns (a sub-agent invocation counts as one
1097
+ * call in the parent loop). For keyless payloads (grep / source / doc dumps).
1098
+ * - `turnEnd` — collapse once the user turn (`sendMessage`) that made the call
1099
+ * has ended: the payload stays full for the rest of that request, then
1100
+ * collapses on every later one. "Relevant only to the request that fetched it."
1101
+ * This is the right choice for a non-pinned agent (one that answers and hands
1102
+ * straight back to the user); reach for it whenever the payload is per-request.
1103
+ * - `agentEnd` — collapse once the agent's *continuous activation* ends. An
1104
+ * activation spans every turn the agent stays in control — a pinned stateful
1105
+ * flow is one activation across all its turns (mid-flow `requestInteraction`
1106
+ * round-trips and turn boundaries do NOT end it) — and it ends only when the
1107
+ * agent hands off to a different agent or releases its pin (`releaseAgent` /
1108
+ * `completeSubAgent`). The right choice for a multi-turn stateful flow whose
1109
+ * payload is needed throughout but dead afterwards (where `turnEnd` would be too
1110
+ * eager). NOTE: for a non-pinned agent, "the agent" is only considered to have
1111
+ * ended when routing actually moves to a *different* agent — if the classifier
1112
+ * re-selects the same agent on the next turn it is treated as the same
1113
+ * activation, so use `turnEnd` (not `agentEnd`) when you want per-request
1114
+ * collapse on a non-stateful agent.
1115
+ *
1116
+ * @beta
1117
+ */
1118
+ export declare type CondenseTrigger = {
1119
+ kind: 'superseded';
1120
+ by: string;
1121
+ } | {
1122
+ kind: 'age';
1123
+ turns: number;
1124
+ } | {
1125
+ kind: 'turnEnd';
1126
+ } | {
1127
+ kind: 'agentEnd';
1128
+ };
1129
+
1014
1130
  /**
1015
1131
  * Optional capability implemented by transports that can report the estimated
1016
1132
  * USD cost they have incurred over their lifetime.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/foundation-ai",
3
3
  "description": "Genesis Foundation AI - Provider-agnostic AI configuration and shared utilities",
4
- "version": "14.467.2",
4
+ "version": "14.468.0-GENC-1354.2",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -52,17 +52,17 @@
52
52
  }
53
53
  },
54
54
  "devDependencies": {
55
- "@genesislcap/foundation-testing": "14.467.2",
56
- "@genesislcap/genx": "14.467.2",
57
- "@genesislcap/rollup-builder": "14.467.2",
58
- "@genesislcap/ts-builder": "14.467.2",
59
- "@genesislcap/uvu-playwright-builder": "14.467.2",
60
- "@genesislcap/vite-builder": "14.467.2",
61
- "@genesislcap/webpack-builder": "14.467.2"
55
+ "@genesislcap/foundation-testing": "14.468.0-GENC-1354.2",
56
+ "@genesislcap/genx": "14.468.0-GENC-1354.2",
57
+ "@genesislcap/rollup-builder": "14.468.0-GENC-1354.2",
58
+ "@genesislcap/ts-builder": "14.468.0-GENC-1354.2",
59
+ "@genesislcap/uvu-playwright-builder": "14.468.0-GENC-1354.2",
60
+ "@genesislcap/vite-builder": "14.468.0-GENC-1354.2",
61
+ "@genesislcap/webpack-builder": "14.468.0-GENC-1354.2"
62
62
  },
63
63
  "dependencies": {
64
- "@genesislcap/foundation-logger": "14.467.2",
65
- "@genesislcap/foundation-utils": "14.467.2",
64
+ "@genesislcap/foundation-logger": "14.468.0-GENC-1354.2",
65
+ "@genesislcap/foundation-utils": "14.468.0-GENC-1354.2",
66
66
  "@microsoft/fast-foundation": "2.50.0"
67
67
  },
68
68
  "repository": {
@@ -73,5 +73,5 @@
73
73
  "publishConfig": {
74
74
  "access": "public"
75
75
  },
76
- "gitHead": "2edbf1311578ebd00440aacdd362b30411428923"
76
+ "gitHead": "a1f93e7db745cd3ba779dcede57ae6d0e1dd8dc6"
77
77
  }