@buoy-gg/agent-core 7.0.34 → 7.0.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/README.md +10 -7
  2. package/lib/commonjs/blocks/receipts.js +83 -24
  3. package/lib/commonjs/blocks/receipts.js.map +1 -1
  4. package/lib/commonjs/blocks/runId.js +31 -0
  5. package/lib/commonjs/blocks/runId.js.map +1 -0
  6. package/lib/commonjs/blocks/types.js +23 -2
  7. package/lib/commonjs/blocks/types.js.map +1 -1
  8. package/lib/commonjs/blocks/uiTool.js +426 -12
  9. package/lib/commonjs/blocks/uiTool.js.map +1 -1
  10. package/lib/commonjs/catalog/catalog.g.js +121 -43
  11. package/lib/commonjs/catalog/catalog.g.js.map +1 -1
  12. package/lib/commonjs/catalog/catalog.source.json +121 -45
  13. package/lib/commonjs/catalog/catalog.types.g.js +44 -0
  14. package/lib/commonjs/catalog/catalog.types.g.js.map +1 -0
  15. package/lib/commonjs/catalog/normalizeParams.js +333 -0
  16. package/lib/commonjs/catalog/normalizeParams.js.map +1 -0
  17. package/lib/commonjs/catalog/signature.js +68 -0
  18. package/lib/commonjs/catalog/signature.js.map +1 -0
  19. package/lib/commonjs/catalog/snapshotReads.js +13 -6
  20. package/lib/commonjs/catalog/snapshotReads.js.map +1 -1
  21. package/lib/commonjs/catalog/toProviderTools.js +41 -5
  22. package/lib/commonjs/catalog/toProviderTools.js.map +1 -1
  23. package/lib/commonjs/context/buildContextPack.js +367 -19
  24. package/lib/commonjs/context/buildContextPack.js.map +1 -1
  25. package/lib/commonjs/effects/digest.js +34 -0
  26. package/lib/commonjs/effects/digest.js.map +1 -0
  27. package/lib/commonjs/effects/ledger.js +85 -1
  28. package/lib/commonjs/effects/ledger.js.map +1 -1
  29. package/lib/commonjs/engine/askGate.js +287 -0
  30. package/lib/commonjs/engine/askGate.js.map +1 -0
  31. package/lib/commonjs/engine/effectFor.js +82 -1
  32. package/lib/commonjs/engine/effectFor.js.map +1 -1
  33. package/lib/commonjs/engine/historyBudget.js +260 -0
  34. package/lib/commonjs/engine/historyBudget.js.map +1 -0
  35. package/lib/commonjs/engine/runAgentTurn.js +958 -88
  36. package/lib/commonjs/engine/runAgentTurn.js.map +1 -1
  37. package/lib/commonjs/engine/systemPrompt.js +72 -8
  38. package/lib/commonjs/engine/systemPrompt.js.map +1 -1
  39. package/lib/commonjs/engine/textToolCalls.js +276 -0
  40. package/lib/commonjs/engine/textToolCalls.js.map +1 -0
  41. package/lib/commonjs/index.js +81 -1
  42. package/lib/commonjs/index.js.map +1 -1
  43. package/lib/commonjs/policy/labels.js +19 -3
  44. package/lib/commonjs/policy/labels.js.map +1 -1
  45. package/lib/commonjs/policy/policy.js +6 -1
  46. package/lib/commonjs/policy/policy.js.map +1 -1
  47. package/lib/commonjs/policy/redact.js +42 -5
  48. package/lib/commonjs/policy/redact.js.map +1 -1
  49. package/lib/commonjs/providers/anthropic.js +340 -174
  50. package/lib/commonjs/providers/anthropic.js.map +1 -1
  51. package/lib/commonjs/providers/openai.js +229 -103
  52. package/lib/commonjs/providers/openai.js.map +1 -1
  53. package/lib/commonjs/providers/sse.js +164 -29
  54. package/lib/commonjs/providers/sse.js.map +1 -1
  55. package/lib/commonjs/providers/streamTimer.js +123 -0
  56. package/lib/commonjs/providers/streamTimer.js.map +1 -0
  57. package/lib/commonjs/providers/transport.js +107 -0
  58. package/lib/commonjs/providers/transport.js.map +1 -0
  59. package/lib/commonjs/providers/xhrStream.js +209 -0
  60. package/lib/commonjs/providers/xhrStream.js.map +1 -0
  61. package/lib/commonjs/session.js +245 -52
  62. package/lib/commonjs/session.js.map +1 -1
  63. package/lib/module/blocks/receipts.js +83 -24
  64. package/lib/module/blocks/receipts.js.map +1 -1
  65. package/lib/module/blocks/runId.js +26 -0
  66. package/lib/module/blocks/runId.js.map +1 -0
  67. package/lib/module/blocks/types.js +23 -2
  68. package/lib/module/blocks/types.js.map +1 -1
  69. package/lib/module/blocks/uiTool.js +424 -12
  70. package/lib/module/blocks/uiTool.js.map +1 -1
  71. package/lib/module/catalog/catalog.g.js +121 -43
  72. package/lib/module/catalog/catalog.g.js.map +1 -1
  73. package/lib/module/catalog/catalog.source.json +121 -45
  74. package/lib/module/catalog/catalog.types.g.js +40 -0
  75. package/lib/module/catalog/catalog.types.g.js.map +1 -0
  76. package/lib/module/catalog/normalizeParams.js +327 -0
  77. package/lib/module/catalog/normalizeParams.js.map +1 -0
  78. package/lib/module/catalog/signature.js +63 -0
  79. package/lib/module/catalog/signature.js.map +1 -0
  80. package/lib/module/catalog/snapshotReads.js +13 -6
  81. package/lib/module/catalog/snapshotReads.js.map +1 -1
  82. package/lib/module/catalog/toProviderTools.js +41 -5
  83. package/lib/module/catalog/toProviderTools.js.map +1 -1
  84. package/lib/module/context/buildContextPack.js +366 -19
  85. package/lib/module/context/buildContextPack.js.map +1 -1
  86. package/lib/module/effects/digest.js +29 -0
  87. package/lib/module/effects/digest.js.map +1 -0
  88. package/lib/module/effects/ledger.js +85 -1
  89. package/lib/module/effects/ledger.js.map +1 -1
  90. package/lib/module/engine/askGate.js +280 -0
  91. package/lib/module/engine/askGate.js.map +1 -0
  92. package/lib/module/engine/effectFor.js +83 -1
  93. package/lib/module/engine/effectFor.js.map +1 -1
  94. package/lib/module/engine/historyBudget.js +251 -0
  95. package/lib/module/engine/historyBudget.js.map +1 -0
  96. package/lib/module/engine/runAgentTurn.js +954 -88
  97. package/lib/module/engine/runAgentTurn.js.map +1 -1
  98. package/lib/module/engine/systemPrompt.js +71 -8
  99. package/lib/module/engine/systemPrompt.js.map +1 -1
  100. package/lib/module/engine/textToolCalls.js +270 -0
  101. package/lib/module/engine/textToolCalls.js.map +1 -0
  102. package/lib/module/index.js +7 -4
  103. package/lib/module/index.js.map +1 -1
  104. package/lib/module/policy/labels.js +19 -3
  105. package/lib/module/policy/labels.js.map +1 -1
  106. package/lib/module/policy/policy.js +6 -1
  107. package/lib/module/policy/policy.js.map +1 -1
  108. package/lib/module/policy/redact.js +42 -5
  109. package/lib/module/policy/redact.js.map +1 -1
  110. package/lib/module/providers/anthropic.js +341 -175
  111. package/lib/module/providers/anthropic.js.map +1 -1
  112. package/lib/module/providers/openai.js +230 -104
  113. package/lib/module/providers/openai.js.map +1 -1
  114. package/lib/module/providers/sse.js +160 -29
  115. package/lib/module/providers/sse.js.map +1 -1
  116. package/lib/module/providers/streamTimer.js +118 -0
  117. package/lib/module/providers/streamTimer.js.map +1 -0
  118. package/lib/module/providers/transport.js +103 -0
  119. package/lib/module/providers/transport.js.map +1 -0
  120. package/lib/module/providers/xhrStream.js +204 -0
  121. package/lib/module/providers/xhrStream.js.map +1 -0
  122. package/lib/module/session.js +228 -54
  123. package/lib/module/session.js.map +1 -1
  124. package/lib/typescript/blocks/receipts.d.ts +5 -10
  125. package/lib/typescript/blocks/receipts.d.ts.map +1 -1
  126. package/lib/typescript/blocks/runId.d.ts +20 -0
  127. package/lib/typescript/blocks/runId.d.ts.map +1 -0
  128. package/lib/typescript/blocks/types.d.ts +23 -2
  129. package/lib/typescript/blocks/types.d.ts.map +1 -1
  130. package/lib/typescript/blocks/uiTool.d.ts +11 -2
  131. package/lib/typescript/blocks/uiTool.d.ts.map +1 -1
  132. package/lib/typescript/catalog/catalog.g.d.ts.map +1 -1
  133. package/lib/typescript/catalog/catalog.types.g.d.ts +40 -0
  134. package/lib/typescript/catalog/catalog.types.g.d.ts.map +1 -0
  135. package/lib/typescript/catalog/normalizeParams.d.ts +43 -0
  136. package/lib/typescript/catalog/normalizeParams.d.ts.map +1 -0
  137. package/lib/typescript/catalog/signature.d.ts +29 -0
  138. package/lib/typescript/catalog/signature.d.ts.map +1 -0
  139. package/lib/typescript/catalog/snapshotReads.d.ts.map +1 -1
  140. package/lib/typescript/catalog/toProviderTools.d.ts +28 -15
  141. package/lib/typescript/catalog/toProviderTools.d.ts.map +1 -1
  142. package/lib/typescript/context/buildContextPack.d.ts +24 -2
  143. package/lib/typescript/context/buildContextPack.d.ts.map +1 -1
  144. package/lib/typescript/effects/digest.d.ts +10 -0
  145. package/lib/typescript/effects/digest.d.ts.map +1 -0
  146. package/lib/typescript/effects/ledger.d.ts +55 -0
  147. package/lib/typescript/effects/ledger.d.ts.map +1 -1
  148. package/lib/typescript/engine/askGate.d.ts +29 -0
  149. package/lib/typescript/engine/askGate.d.ts.map +1 -0
  150. package/lib/typescript/engine/effectFor.d.ts +6 -1
  151. package/lib/typescript/engine/effectFor.d.ts.map +1 -1
  152. package/lib/typescript/engine/historyBudget.d.ts +92 -0
  153. package/lib/typescript/engine/historyBudget.d.ts.map +1 -0
  154. package/lib/typescript/engine/runAgentTurn.d.ts +115 -1
  155. package/lib/typescript/engine/runAgentTurn.d.ts.map +1 -1
  156. package/lib/typescript/engine/systemPrompt.d.ts +41 -0
  157. package/lib/typescript/engine/systemPrompt.d.ts.map +1 -1
  158. package/lib/typescript/engine/textToolCalls.d.ts +58 -0
  159. package/lib/typescript/engine/textToolCalls.d.ts.map +1 -0
  160. package/lib/typescript/index.d.ts +8 -5
  161. package/lib/typescript/index.d.ts.map +1 -1
  162. package/lib/typescript/policy/labels.d.ts.map +1 -1
  163. package/lib/typescript/policy/policy.d.ts.map +1 -1
  164. package/lib/typescript/policy/redact.d.ts.map +1 -1
  165. package/lib/typescript/providers/anthropic.d.ts +5 -0
  166. package/lib/typescript/providers/anthropic.d.ts.map +1 -1
  167. package/lib/typescript/providers/openai.d.ts +0 -16
  168. package/lib/typescript/providers/openai.d.ts.map +1 -1
  169. package/lib/typescript/providers/sse.d.ts +82 -1
  170. package/lib/typescript/providers/sse.d.ts.map +1 -1
  171. package/lib/typescript/providers/streamTimer.d.ts +59 -0
  172. package/lib/typescript/providers/streamTimer.d.ts.map +1 -0
  173. package/lib/typescript/providers/transport.d.ts +40 -0
  174. package/lib/typescript/providers/transport.d.ts.map +1 -0
  175. package/lib/typescript/providers/types.d.ts +116 -3
  176. package/lib/typescript/providers/types.d.ts.map +1 -1
  177. package/lib/typescript/providers/xhrStream.d.ts +43 -0
  178. package/lib/typescript/providers/xhrStream.d.ts.map +1 -0
  179. package/lib/typescript/session.d.ts +63 -2
  180. package/lib/typescript/session.d.ts.map +1 -1
  181. package/package.json +2 -2
@@ -5,8 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.UI_TOOL_NAME = exports.UI_PARAMS = void 0;
7
7
  exports.buildUiBlock = buildUiBlock;
8
+ exports.normaliseUiParams = normaliseUiParams;
9
+ exports.uiParamsHelp = uiParamsHelp;
8
10
  exports.uiProviderTool = uiProviderTool;
9
11
  var _validateParams = require("../catalog/validateParams");
12
+ var _signature = require("../catalog/signature");
13
+ var _runId = require("./runId");
10
14
  var _types = require("./types");
11
15
  /**
12
16
  * `buoy_ui` — the one tool the model uses to SHOW or ASK instead of writing
@@ -90,6 +94,9 @@ const cell = {
90
94
  };
91
95
 
92
96
  /** Per-kind param schemas. Keys are block kinds; `kind` itself is the `action`. */
97
+ // Keyed by BlockKind, not ModelKind: the definitions for kinds that are no
98
+ // longer offered to the model are kept so restoring one is adding its name
99
+ // back to MODEL_KINDS. Only MODEL_KINDS decides what is offered.
93
100
  const UI_PARAMS = exports.UI_PARAMS = {
94
101
  choice: {
95
102
  type: "object",
@@ -260,7 +267,7 @@ const UI_PARAMS = exports.UI_PARAMS = {
260
267
  },
261
268
  image: {
262
269
  type: "string",
263
- description: "Only a URL you read from the app this turn."
270
+ description: "Only a URL you read from the app in this conversation."
264
271
  },
265
272
  tone,
266
273
  action
@@ -289,16 +296,21 @@ const UI_PARAMS = exports.UI_PARAMS = {
289
296
  properties: {
290
297
  url: {
291
298
  type: "string",
292
- description: "Only a URL you read from the app this turn."
299
+ description: "Only a URL you read from the app in this conversation."
293
300
  },
294
301
  alt: {
295
- type: "string"
302
+ type: "string",
303
+ description: "What the picture IS — the name. Shown as the tile's heading and read by VoiceOver. `title` is accepted as a synonym; when neither is given it is filled from the caption or the file name."
296
304
  },
297
305
  caption: {
298
- type: "string"
306
+ type: "string",
307
+ description: "The line under the name — stats, price, status."
299
308
  }
300
309
  },
301
- required: ["url", "alt"]
310
+ // `alt` used to be required and models kept omitting it while
311
+ // sending `title` instead, which cost a whole round to a field the
312
+ // block can derive. See normaliseImages.
313
+ required: ["url"]
302
314
  }
303
315
  },
304
316
  total: {
@@ -847,6 +859,388 @@ const UI_PARAMS = exports.UI_PARAMS = {
847
859
  additionalProperties: false
848
860
  }
849
861
  };
862
+
863
+ /* ------------------------------------------------------------------------ *
864
+ * Accepting the shape models actually send.
865
+ *
866
+ * The same lesson as `catalog/normalizeParams.ts`, learned again on the block
867
+ * tool: A MECHANICAL ALIAS MUST NEVER COST A TURN. Measured on a live device
868
+ * (gateway #182-#184, gpt-4.1), one `imageGrid` + `suggestions` pair took
869
+ * THREE rounds to land — `items` for `images`, `items` for `chips`, a missing
870
+ * `alt`, then chips as bare strings. Half the turn, and because the model
871
+ * rewrites its prose on every round the user read the same closing paragraph
872
+ * four times.
873
+ *
874
+ * None of those were disagreements about meaning. They were field names, and
875
+ * the model had never been shown them (see `uiProviderTool`, which now sends
876
+ * the signatures). This layer covers the rest: the container the model reached
877
+ * for, the item shape it flattened, the synonym it preferred.
878
+ *
879
+ * The rule for what belongs here: the correction has to be MECHANICAL — one
880
+ * unambiguous reading, no guess about intent. Renaming `items` to `images` on
881
+ * an imageGrid is mechanical. Inventing a caption is not.
882
+ *
883
+ * Runs BEFORE `validateParams`, unlike `normaliseChoice`/`normaliseConfirm`
884
+ * below it, which predate this and work by listing their synonyms in the
885
+ * schema instead. Pre-validation is the better seam: an alias renamed here
886
+ * never has to appear in the schema at all, and `additionalProperties: false`
887
+ * keeps its meaning.
888
+ * ------------------------------------------------------------------------ */
889
+
890
+ const isRec = v => !!v && typeof v === "object" && !Array.isArray(v);
891
+ const text = v => typeof v === "string" && v.trim() ? v.trim() : undefined;
892
+
893
+ /** `Ship it now` -> `ship-it-now`, for an option that arrived without an id. */
894
+ const slug = label => label.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-|-$/g, "").slice(0, 40) || "option";
895
+
896
+ /**
897
+ * Canonical field name -> the names models send instead. Applied only when
898
+ * the canonical field is absent, so a model that sent both keeps its own.
899
+ */
900
+ const FIELD_ALIASES = {
901
+ choice: {
902
+ options: ["choices", "items"]
903
+ },
904
+ multiSelect: {
905
+ options: ["choices", "items"],
906
+ question: ["title", "label"]
907
+ },
908
+ select: {
909
+ options: ["choices", "items"],
910
+ label: ["title", "question"]
911
+ },
912
+ input: {
913
+ label: ["title", "question", "prompt"]
914
+ },
915
+ slider: {
916
+ label: ["title"]
917
+ },
918
+ dateTime: {
919
+ label: ["title"]
920
+ },
921
+ table: {
922
+ rows: ["data", "items"],
923
+ columns: ["headers", "header"]
924
+ },
925
+ keyValue: {
926
+ pairs: ["items", "fields", "rows", "entries"]
927
+ },
928
+ list: {
929
+ items: ["rows", "entries", "data"]
930
+ },
931
+ imageGrid: {
932
+ images: ["items", "urls", "data", "pictures"]
933
+ },
934
+ diff: {
935
+ changes: ["items", "rows", "diffs"]
936
+ },
937
+ chart: {
938
+ bars: ["items", "data", "values"]
939
+ },
940
+ steps: {
941
+ steps: ["items"]
942
+ },
943
+ code: {
944
+ text: ["code", "content"]
945
+ },
946
+ actions: {
947
+ actions: ["items", "buttons"]
948
+ },
949
+ suggestions: {
950
+ chips: ["items", "suggestions", "options", "questions"]
951
+ },
952
+ finding: {
953
+ evidence: ["items", "rows"]
954
+ },
955
+ claim: {
956
+ text: ["claim", "statement"],
957
+ sources: ["items", "evidence"]
958
+ },
959
+ details: {
960
+ summary: ["title", "label"],
961
+ body: ["text", "detail"]
962
+ },
963
+ card: {
964
+ title: ["name"]
965
+ },
966
+ cardCarousel: {
967
+ cards: ["items"]
968
+ },
969
+ sparkline: {
970
+ series: ["data", "values", "points"]
971
+ },
972
+ plan: {
973
+ steps: ["items"]
974
+ },
975
+ form: {
976
+ fields: ["items", "inputs"]
977
+ },
978
+ proposal: {
979
+ fields: ["items", "inputs"]
980
+ }
981
+ };
982
+
983
+ /** Rename in place: `canonical <- first alias present`, canonical wins. */
984
+ function applyAliases(params, aliases) {
985
+ if (!aliases) return;
986
+ for (const [canonical, alts] of Object.entries(aliases)) {
987
+ if (params[canonical] !== undefined) continue;
988
+ for (const alt of alts) {
989
+ if (params[alt] === undefined) continue;
990
+ params[canonical] = params[alt];
991
+ delete params[alt];
992
+ break;
993
+ }
994
+ }
995
+ }
996
+
997
+ /** Map one array field through a coercion, leaving a non-array untouched. */
998
+ function eachItem(params, field, fn) {
999
+ const arr = params[field];
1000
+ if (Array.isArray(arr)) params[field] = arr.map(fn);
1001
+ }
1002
+
1003
+ /** Rename inside an item object, canonical wins — the per-item `applyAliases`. */
1004
+ function renameIn(item, canonical, alts) {
1005
+ if (item[canonical] !== undefined) return;
1006
+ for (const alt of alts) {
1007
+ if (item[alt] === undefined) continue;
1008
+ item[canonical] = item[alt];
1009
+ delete item[alt];
1010
+ return;
1011
+ }
1012
+ }
1013
+
1014
+ /** `"Ship it"` or `{value,name}` -> `{id, label}`. Options carry a required id. */
1015
+ const normaliseOption = raw => {
1016
+ if (typeof raw === "string") return {
1017
+ id: slug(raw),
1018
+ label: raw
1019
+ };
1020
+ if (!isRec(raw)) return raw;
1021
+ const item = {
1022
+ ...raw
1023
+ };
1024
+ renameIn(item, "label", ["name", "text", "title"]);
1025
+ renameIn(item, "id", ["value", "key"]);
1026
+ renameIn(item, "detail", ["description", "subtitle"]);
1027
+ const label = text(item.label);
1028
+ if (label && text(item.id) === undefined) item.id = slug(label);
1029
+ return item;
1030
+ };
1031
+
1032
+ /** `"Compare their HP"` -> `{label}`. Chips and buttons. */
1033
+ const normaliseLabelled = raw => {
1034
+ if (typeof raw === "string") return {
1035
+ label: raw
1036
+ };
1037
+ if (!isRec(raw)) return raw;
1038
+ const item = {
1039
+ ...raw
1040
+ };
1041
+ renameIn(item, "label", ["name", "text", "title", "question"]);
1042
+ return item;
1043
+ };
1044
+
1045
+ /** `"Open the bag"` -> `{text}`. Steps and plans. */
1046
+ const normaliseStep = raw => {
1047
+ if (typeof raw === "string") return {
1048
+ text: raw
1049
+ };
1050
+ if (!isRec(raw)) return raw;
1051
+ const item = {
1052
+ ...raw
1053
+ };
1054
+ renameIn(item, "text", ["label", "title", "step", "description"]);
1055
+ return item;
1056
+ };
1057
+
1058
+ /**
1059
+ * The imageGrid item, and the only coercion here that fills a field rather
1060
+ * than renaming one.
1061
+ *
1062
+ * `alt` is what the tile shows as its heading and what VoiceOver reads, so it
1063
+ * cannot be empty — but every model reaches for `title` first, and refusing
1064
+ * that cost a whole round on the wire. Derive it, in the order a person would:
1065
+ * the name it gave, else the caption, else the file name it came from.
1066
+ */
1067
+ const normaliseImage = raw => {
1068
+ if (typeof raw === "string") return {
1069
+ url: raw,
1070
+ alt: fileName(raw)
1071
+ };
1072
+ if (!isRec(raw)) return raw;
1073
+ const item = {
1074
+ ...raw
1075
+ };
1076
+ renameIn(item, "url", ["image", "src", "uri", "href"]);
1077
+ renameIn(item, "alt", ["title", "name", "label"]);
1078
+ renameIn(item, "caption", ["subtitle", "description", "detail"]);
1079
+ if (text(item.alt) === undefined) {
1080
+ const url = text(item.url);
1081
+ item.alt = text(item.caption) ?? (url ? fileName(url) : "Image");
1082
+ }
1083
+ return item;
1084
+ };
1085
+
1086
+ /** `…/official-artwork/25.png?x=1` -> `25`. Last resort for a missing alt. */
1087
+ function fileName(url) {
1088
+ const path = url.split(/[?#]/)[0] ?? url;
1089
+ const last = path.split("/").filter(Boolean).pop() ?? "Image";
1090
+ return last.replace(/\.[a-z0-9]{1,5}$/i, "") || "Image";
1091
+ }
1092
+ const normaliseListItem = raw => {
1093
+ if (typeof raw === "string") return {
1094
+ title: raw
1095
+ };
1096
+ if (!isRec(raw)) return raw;
1097
+ const item = {
1098
+ ...raw
1099
+ };
1100
+ renameIn(item, "title", ["name", "label"]);
1101
+ renameIn(item, "subtitle", ["description", "detail", "caption"]);
1102
+ renameIn(item, "image", ["url", "thumbnail", "img", "src"]);
1103
+ renameIn(item, "trailing", ["value", "right"]);
1104
+ return item;
1105
+ };
1106
+ const normaliseBar = raw => {
1107
+ if (!isRec(raw)) return raw;
1108
+ const item = {
1109
+ ...raw
1110
+ };
1111
+ renameIn(item, "label", ["name", "title", "key"]);
1112
+ renameIn(item, "value", ["count", "amount", "n"]);
1113
+ return item;
1114
+ };
1115
+ const normalisePair = raw => {
1116
+ if (!isRec(raw)) return raw;
1117
+ const item = {
1118
+ ...raw
1119
+ };
1120
+ renameIn(item, "key", ["label", "name", "field"]);
1121
+ return item;
1122
+ };
1123
+ const normaliseEvidence = raw => {
1124
+ if (!isRec(raw)) return raw;
1125
+ const item = {
1126
+ ...raw
1127
+ };
1128
+ renameIn(item, "label", ["name", "key", "title"]);
1129
+ renameIn(item, "value", ["text", "detail", "description"]);
1130
+ return item;
1131
+ };
1132
+ const normaliseChange = raw => {
1133
+ if (!isRec(raw)) return raw;
1134
+ const item = {
1135
+ ...raw
1136
+ };
1137
+ renameIn(item, "path", ["field", "key", "name", "label"]);
1138
+ renameIn(item, "before", ["from", "old", "previous"]);
1139
+ renameIn(item, "after", ["to", "new", "current"]);
1140
+ return item;
1141
+ };
1142
+
1143
+ /**
1144
+ * Per-kind fixes that are more than a rename. Each one is still mechanical:
1145
+ * one reading, no guess about what the model meant.
1146
+ */
1147
+ const SHAPE_FIXES = {
1148
+ choice: p => eachItem(p, "options", normaliseOption),
1149
+ multiSelect: p => eachItem(p, "options", normaliseOption),
1150
+ select: p => eachItem(p, "options", normaliseOption),
1151
+ suggestions: p => eachItem(p, "chips", normaliseLabelled),
1152
+ actions: p => eachItem(p, "actions", normaliseLabelled),
1153
+ steps: p => eachItem(p, "steps", normaliseStep),
1154
+ plan: p => {
1155
+ eachItem(p, "steps", normaliseStep);
1156
+ eachItem(p, "actions", normaliseLabelled);
1157
+ },
1158
+ imageGrid: p => eachItem(p, "images", normaliseImage),
1159
+ list: p => eachItem(p, "items", normaliseListItem),
1160
+ chart: p => eachItem(p, "bars", normaliseBar),
1161
+ diff: p => eachItem(p, "changes", normaliseChange),
1162
+ claim: p => eachItem(p, "sources", normaliseLabelled),
1163
+ finding: p => {
1164
+ eachItem(p, "evidence", normaliseEvidence);
1165
+ eachItem(p, "actions", normaliseLabelled);
1166
+ },
1167
+ card: p => eachItem(p, "actions", normaliseLabelled),
1168
+ keyValue: p => {
1169
+ // `{pairs: {hp: 35, attack: 55}}` — the object map is what a model reaches
1170
+ // for when the block is "one record's fields", and it means exactly one
1171
+ // thing.
1172
+ if (isRec(p.pairs)) {
1173
+ p.pairs = Object.entries(p.pairs).map(([key, value]) => ({
1174
+ key,
1175
+ value
1176
+ }));
1177
+ }
1178
+ eachItem(p, "pairs", normalisePair);
1179
+ },
1180
+ table: p => {
1181
+ // Rows as OBJECTS keyed by the column names, instead of positional
1182
+ // arrays. Only resolvable when `columns` is there to give the order —
1183
+ // without it there is no single reading, so it is left to the validator.
1184
+ const columns = Array.isArray(p.columns) ? p.columns.map(c => String(c)) : undefined;
1185
+ if (!columns?.length) return;
1186
+ eachItem(p, "rows", row => {
1187
+ if (!isRec(row)) return row;
1188
+ const keys = Object.keys(row);
1189
+ return columns.map(col => row[col] ?? row[keys.find(k => k.toLowerCase() === col.toLowerCase()) ?? ""] ?? "");
1190
+ });
1191
+ },
1192
+ sparkline: p => {
1193
+ // `[{value: 12}]` or `["12"]` -> `[12]`. The block draws numbers.
1194
+ eachItem(p, "series", point => {
1195
+ if (typeof point === "number") return point;
1196
+ if (typeof point === "string" && point.trim() !== "" && Number.isFinite(Number(point))) {
1197
+ return Number(point);
1198
+ }
1199
+ if (isRec(point)) {
1200
+ const v = point.value ?? point.y ?? point.n;
1201
+ if (typeof v === "number") return v;
1202
+ }
1203
+ return point;
1204
+ });
1205
+ },
1206
+ code: p => {
1207
+ // The enum is json|text. A model naming the real language ("javascript",
1208
+ // "tsx") means "not JSON", and bouncing the block over a label nobody
1209
+ // renders differently is the definition of a wasted turn.
1210
+ const language = text(p.language)?.toLowerCase();
1211
+ if (language && language !== "json" && language !== "text") p.language = "text";
1212
+ }
1213
+ };
1214
+
1215
+ /**
1216
+ * The whole pre-validation pass. Returns a NEW object — the caller's params
1217
+ * come straight off the model's tool call and are echoed back in the trace.
1218
+ */
1219
+ function normaliseUiParams(kind, raw) {
1220
+ const params = isRec(raw) ? {
1221
+ ...raw
1222
+ } : {};
1223
+ applyAliases(params, FIELD_ALIASES[kind]);
1224
+ SHAPE_FIXES[kind]?.(params);
1225
+ return params;
1226
+ }
1227
+
1228
+ /* ------------------------------------------------------------------------ *
1229
+ * The signatures the model is shown.
1230
+ *
1231
+ * `uiProviderTool` used to send `params: { type: "object" }` and 26 lines of
1232
+ * prose about what each kind is FOR — and not one field name. The model was
1233
+ * being asked to guess `images` vs `items` and `chips` vs `options`, and it
1234
+ * guessed wrong three rounds running. Rendered from `UI_PARAMS` rather than
1235
+ * written out, so the thing the model reads can never drift from the thing
1236
+ * the validator enforces.
1237
+ * ------------------------------------------------------------------------ */
1238
+
1239
+ /** The `Fields per kind` block sent in the `params` property description. */
1240
+ function uiParamsHelp() {
1241
+ const lines = _types.MODEL_KINDS.map(k => `- ${k}: ${(0, _signature.signature)(UI_PARAMS[k])}`).join("\n");
1242
+ return `The block's fields. \`*\` marks a required one; everything else is optional. Send EXACTLY these names — a field that is not listed is rejected.\n\n${lines}`;
1243
+ }
850
1244
  const KIND_HELP = {
851
1245
  choice: "ASK the user to pick one of 2–5 options when a request could mean different things. Ends your turn; their pick comes back as their next message.",
852
1246
  confirm: "ASK before a change you are guessing at (a shape you haven't read, a user you invented, anything destructive). Ends your turn.",
@@ -854,7 +1248,7 @@ const KIND_HELP = {
854
1248
  table: "Show rows of comparable facts — prices before/after, requests, counts. ≤4 columns, ≤8 rows; put the rest in total.",
855
1249
  keyValue: "Show one record's fields — a profile, a store's state, a stored value.",
856
1250
  list: "Show several things with a title each — items, orders, users. Add image only from URLs you read. Each item may carry one action.",
857
- imageGrid: "Show pictures — menu items, loaded images. Only URLs you read from the app this turn. ≤24; grid up to 6, carousel after.",
1251
+ imageGrid: "Show pictures — menu items, loaded images. Only URLs you read from the app in this conversation; a URL you did not read is dropped. ≤24; grid up to 6, carousel after.",
858
1252
  diff: "Show what changed: path, before, after. Use for compare questions and after any write.",
859
1253
  chart: "Show numbers side by side as bars — render counts, timings, sizes. ≤8 bars.",
860
1254
  steps: "Show a procedure or a plan as a checklist (to reproduce, to test).",
@@ -881,9 +1275,17 @@ const KIND_HELP = {
881
1275
  function uiProviderTool() {
882
1276
  const kinds = _types.MODEL_KINDS.join(" | ");
883
1277
  const help = _types.MODEL_KINDS.map(k => `- ${k}: ${KIND_HELP[k]}`).join("\n");
1278
+ const intro = `Show the user something richer than text, or ask them something. Blocks render inline in the chat BELOW your text, as the last thing in your answer — so say what is coming and what it means first, then let the block land. Never repeat its contents in the text. Kinds: ${kinds}.`;
1279
+ const rules = `Rules: choice/confirm/input END your turn — send them last, alone, with no other tool calls, and the answer arrives as the user's next message. Never put URLs, ids or numbers in a block that you did not read from a tool result in this conversation. Prefer the smallest block that answers.`;
884
1280
  return {
885
1281
  name: UI_TOOL_NAME,
886
- description: `Show the user something richer than text, or ask them something. Blocks render inline in the chat, ABOVE your text — so your text should say what the block means, never repeat it. Kinds: ${kinds}.\n${help}\n\nRules: choice/confirm/input END your turn — send them last, alone, with no other tool calls, and the answer arrives as the user's next message. Never put URLs, ids or numbers in a block that you did not read from a tool result this turn. Prefer the smallest block that answers.`,
1282
+ description: `${intro}\n${help}\n\n${rules}`,
1283
+ // The split the OpenAI adapter serializes (see ProviderTool): the prose
1284
+ // fits its 1024-char cap, the per-kind help rides on the `action`
1285
+ // property, where nothing is capped. Before the split that cap cut this
1286
+ // tool off inside the kind list and the Rules never reached the model.
1287
+ summaryDescription: `${intro}\n\n${rules}`,
1288
+ actionsBlock: `Kinds:\n${help}`,
887
1289
  inputSchema: {
888
1290
  type: "object",
889
1291
  properties: {
@@ -892,9 +1294,12 @@ function uiProviderTool() {
892
1294
  enum: [..._types.MODEL_KINDS],
893
1295
  description: "The block kind."
894
1296
  },
1297
+ // The per-kind field names, rendered from UI_PARAMS. Nothing caps a
1298
+ // property description on either protocol (see ProviderTool), so this
1299
+ // reaches the model whole — which the prose alone never did.
895
1300
  params: {
896
1301
  type: "object",
897
- description: "The block's fields; see the kind's schema."
1302
+ description: uiParamsHelp()
898
1303
  }
899
1304
  },
900
1305
  required: ["action", "params"],
@@ -902,7 +1307,7 @@ function uiProviderTool() {
902
1307
  }
903
1308
  };
904
1309
  }
905
- let seq = 0;
1310
+ const nextUiId = (0, _runId.idFactory)("ui");
906
1311
 
907
1312
  /** Validate a `buoy_ui` call and build the block. */
908
1313
  /**
@@ -952,13 +1357,22 @@ function buildUiBlock(input) {
952
1357
  errors: [`"action" must be one of: ${_types.MODEL_KINDS.join(", ")}`]
953
1358
  };
954
1359
  }
1360
+ // `kind` is already known to be in MODEL_KINDS, so a missing schema means a
1361
+ // kind was offered without one — a build mistake, not model input.
955
1362
  const schema = UI_PARAMS[kind];
956
- const check = (0, _validateParams.validateParams)(input.params, schema);
1363
+ if (!schema) {
1364
+ return {
1365
+ ok: false,
1366
+ errors: [`"${kind}" is offered but has no schema — this is a Buoy bug, not your call.`]
1367
+ };
1368
+ }
1369
+ // Aliases and item shapes FIRST, so a field name never costs a round trip.
1370
+ let params = normaliseUiParams(kind, input.params);
1371
+ const check = (0, _validateParams.validateParams)(params, schema);
957
1372
  if (!check.ok) return {
958
1373
  ok: false,
959
1374
  errors: check.errors
960
1375
  };
961
- let params = input.params ?? {};
962
1376
  if (kind === "choice") {
963
1377
  const fixed = normaliseChoice(params);
964
1378
  if (!fixed) {
@@ -982,7 +1396,7 @@ function buildUiBlock(input) {
982
1396
  const block = {
983
1397
  ...params,
984
1398
  kind,
985
- id: `ui${++seq}`,
1399
+ id: nextUiId(),
986
1400
  source: "model"
987
1401
  };
988
1402
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_validateParams","require","_types","UI_TOOL_NAME","exports","tone","type","enum","action","properties","label","description","primary","send","dispatch","toolId","params","required","openTool","select","minimize","additionalProperties","cell","anyOf","text","UI_PARAMS","choice","question","title","options","maxItems","CAPS","choiceOptions","items","id","detail","allowFreeText","confirm","change","message","consequence","approveLabel","declineLabel","input","placeholder","submitLabel","table","columns","rows","total","keyValue","pairs","key","value","list","subtitle","trailing","image","imageGrid","images","gridMax","url","alt","caption","diff","changes","path","before","after","chart","bars","chartBars","unit","max","steps","state","code","language","actions","suggestions","chips","multiSelect","min","searchable","slider","step","dateTime","mode","presets","form","fields","proposal","claim","sources","verify","details","summary","body","open","compare","left","right","card","facts","cardCarousel","cards","sparkline","series","current","plan","pending","finding","evidence","KIND_HELP","uiProviderTool","kinds","MODEL_KINDS","join","help","map","k","name","inputSchema","seq","normaliseConfirm","str","v","trim","undefined","rest","spare","normaliseChoice","buildUiBlock","kind","includes","ok","errors","schema","check","validateParams","fixed","block","source"],"sourceRoot":"../../../src","sources":["blocks/uiTool.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_validateParams","require","_signature","_runId","_types","UI_TOOL_NAME","exports","tone","type","enum","action","properties","label","description","primary","send","dispatch","toolId","params","required","openTool","select","minimize","additionalProperties","cell","anyOf","text","UI_PARAMS","choice","question","title","options","maxItems","CAPS","choiceOptions","items","id","detail","allowFreeText","confirm","change","message","consequence","approveLabel","declineLabel","input","placeholder","submitLabel","table","columns","rows","total","keyValue","pairs","key","value","list","subtitle","trailing","image","imageGrid","images","gridMax","url","alt","caption","diff","changes","path","before","after","chart","bars","chartBars","unit","max","steps","state","code","language","actions","suggestions","chips","multiSelect","min","searchable","slider","step","dateTime","mode","presets","form","fields","proposal","claim","sources","verify","details","summary","body","open","compare","left","right","card","facts","cardCarousel","cards","sparkline","series","current","plan","pending","finding","evidence","isRec","v","Array","isArray","trim","undefined","slug","toLowerCase","replace","slice","FIELD_ALIASES","applyAliases","aliases","canonical","alts","Object","entries","eachItem","field","fn","arr","map","renameIn","item","normaliseOption","raw","normaliseLabelled","normaliseStep","normaliseImage","fileName","split","last","filter","Boolean","pop","normaliseListItem","normaliseBar","normalisePair","normaliseEvidence","normaliseChange","SHAPE_FIXES","p","c","String","length","row","keys","col","find","k","point","Number","isFinite","y","n","normaliseUiParams","kind","uiParamsHelp","lines","MODEL_KINDS","signature","join","KIND_HELP","uiProviderTool","kinds","help","intro","rules","name","summaryDescription","actionsBlock","inputSchema","nextUiId","idFactory","normaliseConfirm","str","rest","spare","normaliseChoice","buildUiBlock","includes","ok","errors","schema","check","validateParams","fixed","block","source"],"sourceRoot":"../../../src","sources":["blocks/uiTool.ts"],"mappings":"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","ignoreList":[]}