@opengeni/contracts 0.44.1 → 1.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 (382) hide show
  1. package/dist/agent-authored-durable-text.d.ts +70 -0
  2. package/dist/agent-config.d.ts +869 -0
  3. package/dist/agent-instruction-changes.d.ts +110 -0
  4. package/dist/agent-learning.d.ts +243 -0
  5. package/dist/agent-topology.d.ts +292 -0
  6. package/dist/allowance-refusal.d.ts +9 -0
  7. package/dist/allowance-refusal.js +50 -0
  8. package/dist/allowance-refusal.js.map +1 -0
  9. package/dist/analytics-consent-report.d.ts +19 -0
  10. package/dist/analytics-consent-report.js +10 -0
  11. package/dist/analytics-consent-report.js.map +1 -0
  12. package/dist/api-key-presets.d.ts +19 -0
  13. package/dist/artifact-catalog.d.ts +161 -0
  14. package/dist/artifacts.d.ts +135 -11
  15. package/dist/atlassian-native-retirement.d.ts +16 -0
  16. package/dist/atlassian-native-retirement.js +30 -0
  17. package/dist/atlassian-native-retirement.js.map +1 -0
  18. package/dist/atlassian.d.ts +2 -0
  19. package/dist/atlassian.js +27 -11
  20. package/dist/browser-storage.d.ts +5 -0
  21. package/dist/browser-storage.js +9 -0
  22. package/dist/browser-storage.js.map +1 -0
  23. package/dist/bundled-skills.d.ts +40 -0
  24. package/dist/canonical-human-identities.d.ts +157 -0
  25. package/dist/canonical-human-identities.js +23 -0
  26. package/dist/canonical-human-identities.js.map +1 -0
  27. package/dist/chunk-2ACYHZFB.js +292 -0
  28. package/dist/chunk-2ACYHZFB.js.map +1 -0
  29. package/dist/chunk-2VORLN2R.js +353 -0
  30. package/dist/chunk-2VORLN2R.js.map +1 -0
  31. package/dist/{chunk-Y3MLSLB4.js → chunk-3SIZGL3O.js} +42 -30
  32. package/dist/chunk-3SIZGL3O.js.map +1 -0
  33. package/dist/chunk-46KLD2UH.js +186 -0
  34. package/dist/chunk-46KLD2UH.js.map +1 -0
  35. package/dist/chunk-4JGHSSB7.js +11 -0
  36. package/dist/chunk-4JGHSSB7.js.map +1 -0
  37. package/dist/{chunk-52SGB2QO.js → chunk-5IXYF6XN.js} +50 -10
  38. package/dist/chunk-5IXYF6XN.js.map +1 -0
  39. package/dist/chunk-BCS7WHCK.js +139 -0
  40. package/dist/chunk-BCS7WHCK.js.map +1 -0
  41. package/dist/chunk-EK7NDGFR.js +128 -0
  42. package/dist/chunk-EK7NDGFR.js.map +1 -0
  43. package/dist/{chunk-5UDNP7AO.js → chunk-FZ6BXQHL.js} +78 -38
  44. package/dist/chunk-FZ6BXQHL.js.map +1 -0
  45. package/dist/chunk-GRG7PHWQ.js +25 -0
  46. package/dist/chunk-GRG7PHWQ.js.map +1 -0
  47. package/dist/chunk-JUFK3T4Q.js +80 -0
  48. package/dist/chunk-JUFK3T4Q.js.map +1 -0
  49. package/dist/chunk-KHHZTBP7.js +11 -0
  50. package/dist/chunk-KHHZTBP7.js.map +1 -0
  51. package/dist/chunk-KR2V42UZ.js +187 -0
  52. package/dist/chunk-KR2V42UZ.js.map +1 -0
  53. package/dist/chunk-MZLBPKFE.js +168 -0
  54. package/dist/chunk-MZLBPKFE.js.map +1 -0
  55. package/dist/{chunk-H5BVCZKF.js → chunk-NRMCVHAU.js} +6 -5
  56. package/dist/chunk-NRMCVHAU.js.map +1 -0
  57. package/dist/{chunk-TZ6YEYN4.js → chunk-NVJMJWLL.js} +3 -1
  58. package/dist/chunk-NVJMJWLL.js.map +1 -0
  59. package/dist/chunk-O77VSFYZ.js +70 -0
  60. package/dist/chunk-O77VSFYZ.js.map +1 -0
  61. package/dist/chunk-PX3VCKAU.js +29 -0
  62. package/dist/chunk-PX3VCKAU.js.map +1 -0
  63. package/dist/chunk-QR5D2IQC.js +61 -0
  64. package/dist/chunk-QR5D2IQC.js.map +1 -0
  65. package/dist/chunk-RJ76DRPO.js +117 -0
  66. package/dist/chunk-RJ76DRPO.js.map +1 -0
  67. package/dist/chunk-RKX3NQYS.js +28 -0
  68. package/dist/chunk-RKX3NQYS.js.map +1 -0
  69. package/dist/{chunk-FJBG5E4O.js → chunk-SIOU2K4U.js} +45 -22
  70. package/dist/chunk-SIOU2K4U.js.map +1 -0
  71. package/dist/chunk-TSCDAGET.js +75 -0
  72. package/dist/chunk-TSCDAGET.js.map +1 -0
  73. package/dist/{chunk-LSB7GRLG.js → chunk-TXTQIYCV.js} +15 -11
  74. package/dist/chunk-TXTQIYCV.js.map +1 -0
  75. package/dist/chunk-X7ETVO4P.js +26544 -0
  76. package/dist/chunk-X7ETVO4P.js.map +1 -0
  77. package/dist/{chunk-CADSX6UN.js → chunk-Y3KNXVTD.js} +2 -2
  78. package/dist/chunk-YBW5JSA3.js +251 -0
  79. package/dist/chunk-YBW5JSA3.js.map +1 -0
  80. package/dist/chunk-YRXAWWCU.js +45 -0
  81. package/dist/chunk-YRXAWWCU.js.map +1 -0
  82. package/dist/claude-provider-account-authority.d.ts +18 -0
  83. package/dist/claude-subscription-oauth.d.ts +42 -0
  84. package/dist/claude-subscription-usage.d.ts +159 -0
  85. package/dist/client-error-report.d.ts +109 -0
  86. package/dist/client-error-report.js +87 -0
  87. package/dist/client-error-report.js.map +1 -0
  88. package/dist/code-search.d.ts +52 -0
  89. package/dist/code-search.js +40 -0
  90. package/dist/code-search.js.map +1 -0
  91. package/dist/codex-provider-account-authority.d.ts +23 -0
  92. package/dist/codex-provider-account-authority.js +23 -0
  93. package/dist/codex-provider-account-authority.js.map +1 -0
  94. package/dist/company-brain-governed-writes.d.ts +475 -0
  95. package/dist/company-brain.d.ts +336 -0
  96. package/dist/company-profile.d.ts +566 -0
  97. package/dist/connect.d.ts +325 -0
  98. package/dist/connect.js +191 -0
  99. package/dist/connect.js.map +1 -0
  100. package/dist/connection-account-label.d.ts +2 -0
  101. package/dist/connection-account-label.js +35 -0
  102. package/dist/connection-account-label.js.map +1 -0
  103. package/dist/connection-authority.d.ts +193 -0
  104. package/dist/connection-authority.js +50 -0
  105. package/dist/connection-authority.js.map +1 -0
  106. package/dist/connector-attachments.d.ts +95 -0
  107. package/dist/connector-attachments.js +51 -0
  108. package/dist/connector-attachments.js.map +1 -0
  109. package/dist/connector-tool-permissions.d.ts +73 -0
  110. package/dist/direct-model-provider.d.ts +36 -0
  111. package/dist/editable-artifact-codec-registry.d.ts +16 -7
  112. package/dist/editable-artifact-codec-registry.js +19 -9
  113. package/dist/editable-artifact-committed-transaction.d.ts +2 -2
  114. package/dist/editable-artifact-committed-transaction.js +2 -2
  115. package/dist/editable-artifact-live.d.ts +11 -12
  116. package/dist/editable-artifact-live.js +110 -45
  117. package/dist/editable-artifact-live.js.map +1 -1
  118. package/dist/editable-artifact-serialized-commit.d.ts +2 -1
  119. package/dist/editable-artifact-serialized-commit.js +8 -7
  120. package/dist/editable-artifact-versions.d.ts +20 -5
  121. package/dist/editable-artifact-versions.js +23 -5
  122. package/dist/editable-artifacts.d.ts +2 -0
  123. package/dist/editable-artifacts.js +48 -36
  124. package/dist/external-identities.d.ts +784 -0
  125. package/dist/external-identities.js +44 -0
  126. package/dist/external-identities.js.map +1 -0
  127. package/dist/feedback.d.ts +51 -0
  128. package/dist/github-repository-contracts.d.ts +36 -0
  129. package/dist/github-repository-contracts.js +59 -0
  130. package/dist/github-repository-contracts.js.map +1 -0
  131. package/dist/github-repository.d.ts +14 -0
  132. package/dist/github-repository.js +36 -0
  133. package/dist/github-repository.js.map +1 -0
  134. package/dist/google-drive.d.ts +90 -1
  135. package/dist/google-drive.js +91 -15
  136. package/dist/google-drive.js.map +1 -1
  137. package/dist/governed-learning-activation.d.ts +154 -0
  138. package/dist/governed-learning-evaluator.d.ts +152 -0
  139. package/dist/host-mcp-bindings.d.ts +326 -0
  140. package/dist/host-mcp-bindings.js +252 -0
  141. package/dist/host-mcp-bindings.js.map +1 -0
  142. package/dist/image-generation.d.ts +1 -0
  143. package/dist/index.d.ts +27574 -5374
  144. package/dist/index.js +2531 -177
  145. package/dist/insights-usage.d.ts +877 -0
  146. package/dist/insights-usage.js +509 -0
  147. package/dist/insights-usage.js.map +1 -0
  148. package/dist/interaction.d.ts +1752 -13
  149. package/dist/knowledge-entries.d.ts +982 -0
  150. package/dist/knowledge-preparation.d.ts +237 -0
  151. package/dist/knowledge.d.ts +740 -0
  152. package/dist/managed-auth-session-sets.d.ts +241 -0
  153. package/dist/managed-auth-session-sets.js +191 -0
  154. package/dist/managed-auth-session-sets.js.map +1 -0
  155. package/dist/managed-sign-in-methods.d.ts +56 -0
  156. package/dist/managed-sign-in-methods.js +46 -0
  157. package/dist/managed-sign-in-methods.js.map +1 -0
  158. package/dist/mcp-catalog-limits.d.ts +2 -0
  159. package/dist/mcp-endpoint.d.ts +7 -0
  160. package/dist/mcp-endpoint.js +9 -0
  161. package/dist/mcp-endpoint.js.map +1 -0
  162. package/dist/mcp-oauth.d.ts +71 -0
  163. package/dist/modal-native-proof-v2.d.ts +587 -0
  164. package/dist/modal-native-proof-v2.js +37 -0
  165. package/dist/modal-native-proof-v2.js.map +1 -0
  166. package/dist/model-availability.d.ts +15 -0
  167. package/dist/model-connection-access.d.ts +24 -0
  168. package/dist/model-context-inspector.d.ts +329 -0
  169. package/dist/model-display.d.ts +38 -0
  170. package/dist/model-display.js +134 -0
  171. package/dist/model-display.js.map +1 -0
  172. package/dist/model-picker-order.d.ts +25 -0
  173. package/dist/model-picker-order.js +42 -0
  174. package/dist/model-picker-order.js.map +1 -0
  175. package/dist/organization-access.d.ts +231 -0
  176. package/dist/organization-access.js +34 -0
  177. package/dist/organization-access.js.map +1 -0
  178. package/dist/organization-integration-policy.d.ts +27 -0
  179. package/dist/organization-membership-lifecycle.d.ts +1022 -0
  180. package/dist/organization-model-usage.d.ts +146 -0
  181. package/dist/organization-model-usage.js +67 -0
  182. package/dist/organization-model-usage.js.map +1 -0
  183. package/dist/organization-recovery.d.ts +337 -0
  184. package/dist/organization-recovery.js +37 -0
  185. package/dist/organization-recovery.js.map +1 -0
  186. package/dist/organization-usage.d.ts +138 -0
  187. package/dist/permissions.d.ts +54 -0
  188. package/dist/personal-github.d.ts +320 -0
  189. package/dist/personal-github.js +222 -0
  190. package/dist/personal-github.js.map +1 -0
  191. package/dist/plugin-discovery.d.ts +35 -0
  192. package/dist/plugin-discovery.js +7 -0
  193. package/dist/plugin-discovery.js.map +1 -0
  194. package/dist/preference-registry.d.ts +44 -1
  195. package/dist/product-analytics.d.ts +113 -0
  196. package/dist/product-lifecycle-facts.d.ts +73 -0
  197. package/dist/remember.d.ts +350 -0
  198. package/dist/retained-output.d.ts +8 -0
  199. package/dist/sandbox-file-artifacts.d.ts +57 -0
  200. package/dist/sandbox-provider-command.d.ts +113 -0
  201. package/dist/sandbox-recovery.d.ts +146 -0
  202. package/dist/sandbox-snapshots.d.ts +39 -0
  203. package/dist/session-final-reply.d.ts +6 -0
  204. package/dist/session-final-reply.js +9 -0
  205. package/dist/session-final-reply.js.map +1 -0
  206. package/dist/session-goal-reports.d.ts +21 -0
  207. package/dist/session-history-import.d.ts +947 -0
  208. package/dist/session-list-entries.d.ts +4 -0
  209. package/dist/session-list-entries.js +51 -0
  210. package/dist/session-list-entries.js.map +1 -0
  211. package/dist/session-mcp-projections.d.ts +215 -0
  212. package/dist/session-message-search.d.ts +68 -0
  213. package/dist/session-titles.d.ts +68 -0
  214. package/dist/session-titles.js +25 -0
  215. package/dist/session-titles.js.map +1 -0
  216. package/dist/session-topology-primitives.d.ts +22 -0
  217. package/dist/signup-attribution.d.ts +39 -0
  218. package/dist/site-request-headers.test.d.ts +1 -0
  219. package/dist/site-session-http.d.ts +11 -0
  220. package/dist/site-session-http.js +11 -0
  221. package/dist/site-session-http.js.map +1 -0
  222. package/dist/skill-catalog-context.d.ts +7 -0
  223. package/dist/skill-files.d.ts +12 -0
  224. package/dist/skill-metadata.d.ts +9 -0
  225. package/dist/skill-use.d.ts +61 -0
  226. package/dist/skills.d.ts +185 -0
  227. package/dist/slack-bot-scopes.d.ts +46 -21
  228. package/dist/slack-bot-scopes.js +14 -3
  229. package/dist/slack-rest-mcp.d.ts +31 -0
  230. package/dist/slack-rest-mcp.js +19 -0
  231. package/dist/slack-rest-mcp.js.map +1 -0
  232. package/dist/slack-task-policy.d.ts +294 -0
  233. package/dist/spreadsheet-artifact-commands.d.ts +2 -3
  234. package/dist/spreadsheet-artifact-commands.js +4 -2
  235. package/dist/spreadsheet-artifact-query.js +3 -2
  236. package/dist/subscription-account-pools.d.ts +292 -0
  237. package/dist/task-notes.d.ts +169 -0
  238. package/dist/tool-catalog.d.ts +286 -0
  239. package/dist/tool-result-spill.d.ts +16 -0
  240. package/dist/usage-allowances.d.ts +285 -0
  241. package/dist/usage-allowances.js +49 -0
  242. package/dist/usage-allowances.js.map +1 -0
  243. package/dist/video-generation.d.ts +51 -0
  244. package/dist/video-generation.js +9 -1
  245. package/dist/work-claims.d.ts +411 -0
  246. package/dist/workspace-instruction-policies.d.ts +94 -0
  247. package/dist/workspace-integration-wire.d.ts +36 -0
  248. package/dist/workspace-integration-wire.js +23 -0
  249. package/dist/workspace-integration-wire.js.map +1 -0
  250. package/dist/workspace-integrations.d.ts +948 -0
  251. package/dist/workspace-learning-administration.d.ts +289 -0
  252. package/dist/workspace-learning-policy.d.ts +1 -1
  253. package/dist/workspace-state.d.ts +85 -416
  254. package/dist/xai-provider-account-authority.d.ts +26 -0
  255. package/dist/xai-provider-account-authority.js +9 -0
  256. package/dist/xai-provider-account-authority.js.map +1 -0
  257. package/package.json +146 -1
  258. package/src/agent-authored-durable-text.ts +116 -0
  259. package/src/agent-config.ts +1527 -0
  260. package/src/agent-instruction-changes.ts +98 -0
  261. package/src/agent-learning.ts +161 -0
  262. package/src/agent-topology.ts +69 -0
  263. package/src/allowance-refusal.ts +81 -0
  264. package/src/analytics-consent-report.ts +20 -0
  265. package/src/api-key-presets.ts +25 -0
  266. package/src/artifact-catalog.ts +60 -0
  267. package/src/artifacts.ts +146 -18
  268. package/src/atlassian-native-retirement.ts +33 -0
  269. package/src/browser-storage.ts +10 -0
  270. package/src/bundled-skills.ts +73 -0
  271. package/src/canonical-human-identities.ts +93 -0
  272. package/src/claude-provider-account-authority.ts +12 -0
  273. package/src/claude-subscription-oauth.ts +62 -0
  274. package/src/claude-subscription-usage.ts +59 -0
  275. package/src/client-error-report.ts +184 -0
  276. package/src/code-search.ts +105 -0
  277. package/src/codex-provider-account-authority.ts +37 -0
  278. package/src/company-brain-governed-writes.ts +356 -0
  279. package/src/company-brain.ts +201 -0
  280. package/src/company-profile.ts +167 -1
  281. package/src/connect.ts +202 -0
  282. package/src/connection-account-label.ts +46 -0
  283. package/src/connection-authority.ts +213 -0
  284. package/src/connector-attachments.ts +327 -0
  285. package/src/connector-tool-permissions.ts +60 -0
  286. package/src/direct-model-provider.ts +98 -0
  287. package/src/editable-artifact-codec-registry.ts +55 -17
  288. package/src/editable-artifact-committed-transaction.ts +44 -31
  289. package/src/editable-artifact-live.ts +123 -57
  290. package/src/editable-artifact-serialized-commit.ts +2 -1
  291. package/src/editable-artifact-versions.ts +26 -5
  292. package/src/editable-artifacts.ts +2 -0
  293. package/src/external-identities.ts +285 -0
  294. package/src/feedback.ts +39 -0
  295. package/src/github-repository-contracts.ts +85 -0
  296. package/src/github-repository.ts +59 -0
  297. package/src/google-drive.ts +76 -4
  298. package/src/governed-learning-activation.ts +191 -0
  299. package/src/governed-learning-evaluator.ts +176 -0
  300. package/src/host-mcp-bindings.ts +298 -0
  301. package/src/image-generation.ts +8 -2
  302. package/src/index.ts +8019 -1799
  303. package/src/insights-usage.ts +679 -0
  304. package/src/interaction.ts +1102 -6
  305. package/src/knowledge-entries.ts +375 -0
  306. package/src/knowledge-preparation.ts +50 -0
  307. package/src/knowledge.ts +335 -0
  308. package/src/managed-auth-session-sets.ts +253 -0
  309. package/src/managed-sign-in-methods.ts +37 -0
  310. package/src/mcp-catalog-limits.ts +2 -0
  311. package/src/mcp-endpoint.ts +30 -0
  312. package/src/mcp-oauth.ts +66 -0
  313. package/src/modal-native-proof-v2.ts +398 -0
  314. package/src/model-availability.ts +22 -0
  315. package/src/model-connection-access.ts +17 -0
  316. package/src/model-context-inspector.ts +139 -0
  317. package/src/model-display.ts +195 -0
  318. package/src/model-picker-order.ts +97 -0
  319. package/src/organization-access.ts +176 -0
  320. package/src/organization-integration-policy.ts +54 -0
  321. package/src/organization-membership-lifecycle.ts +559 -0
  322. package/src/organization-model-usage.ts +72 -0
  323. package/src/organization-recovery.ts +186 -0
  324. package/src/organization-usage.ts +79 -0
  325. package/src/permissions.ts +58 -0
  326. package/src/personal-github.ts +267 -0
  327. package/src/plugin-discovery.ts +33 -0
  328. package/src/preference-registry.ts +20 -1
  329. package/src/product-analytics.ts +253 -0
  330. package/src/product-lifecycle-facts.ts +121 -0
  331. package/src/remember.ts +243 -0
  332. package/src/retained-output.ts +20 -3
  333. package/src/sandbox-file-artifacts.ts +73 -0
  334. package/src/sandbox-provider-command.ts +82 -0
  335. package/src/sandbox-recovery.ts +116 -0
  336. package/src/sandbox-snapshots.ts +142 -0
  337. package/src/session-final-reply.ts +16 -0
  338. package/src/session-goal-reports.ts +55 -0
  339. package/src/session-history-import.ts +159 -0
  340. package/src/session-list-entries.ts +91 -0
  341. package/src/session-mcp-projections.ts +273 -0
  342. package/src/session-message-search.ts +54 -0
  343. package/src/session-titles.ts +467 -0
  344. package/src/session-topology-primitives.ts +21 -0
  345. package/src/signup-attribution.ts +81 -0
  346. package/src/site-request-headers.test.ts +28 -0
  347. package/src/site-session-http.ts +63 -0
  348. package/src/skill-catalog-context.ts +50 -0
  349. package/src/skill-files.ts +52 -0
  350. package/src/skill-metadata.ts +40 -0
  351. package/src/skill-use.ts +77 -0
  352. package/src/skills.ts +136 -0
  353. package/src/slack-bot-scopes.ts +106 -42
  354. package/src/slack-rest-mcp.ts +194 -0
  355. package/src/slack-task-policy.ts +215 -0
  356. package/src/spreadsheet-artifact-commands.ts +12 -13
  357. package/src/subscription-account-pools.ts +44 -0
  358. package/src/task-notes.ts +105 -0
  359. package/src/tool-catalog.ts +155 -0
  360. package/src/tool-result-spill.ts +35 -0
  361. package/src/usage-allowances.ts +187 -0
  362. package/src/video-generation.ts +43 -6
  363. package/src/work-claims.ts +266 -0
  364. package/src/workspace-instruction-policies.ts +31 -0
  365. package/src/workspace-integration-wire.ts +99 -0
  366. package/src/workspace-integrations.ts +640 -0
  367. package/src/workspace-learning-administration.ts +88 -0
  368. package/src/workspace-learning-policy.ts +4 -3
  369. package/src/workspace-state.ts +16 -126
  370. package/src/xai-provider-account-authority.ts +38 -0
  371. package/dist/chunk-52SGB2QO.js.map +0 -1
  372. package/dist/chunk-5UDNP7AO.js.map +0 -1
  373. package/dist/chunk-BVGIYW7D.js +0 -11
  374. package/dist/chunk-BVGIYW7D.js.map +0 -1
  375. package/dist/chunk-FJBG5E4O.js.map +0 -1
  376. package/dist/chunk-H5BVCZKF.js.map +0 -1
  377. package/dist/chunk-LSB7GRLG.js.map +0 -1
  378. package/dist/chunk-TZ6YEYN4.js.map +0 -1
  379. package/dist/chunk-VA22KRHS.js +0 -15177
  380. package/dist/chunk-VA22KRHS.js.map +0 -1
  381. package/dist/chunk-Y3MLSLB4.js.map +0 -1
  382. /package/dist/{chunk-CADSX6UN.js.map → chunk-Y3KNXVTD.js.map} +0 -0
@@ -0,0 +1,4 @@
1
+ import type { Session, SessionListEntry } from "./index.js";
2
+ /** Explicit list projection. Detail/configuration remains available from getSession. */
3
+ export type SessionListEntryInput = Omit<SessionListEntry, "displayTitle" | "renameSeed" | "scheduledTaskId" | "siteOrigin" | "pinned" | "pinnedAt" | "pinVersion" | "unread" | "activelyWorking" | "attentionVersion" | "archived" | "archivedAt" | "archiveVersion"> & Partial<Pick<Session, "pinned" | "pinnedAt" | "pinVersion" | "unread" | "activelyWorking" | "attentionVersion" | "archived" | "archivedAt" | "archiveVersion">> & Pick<Session, "metadata" | "initialMessage">;
4
+ export declare function sessionListEntry(session: SessionListEntryInput): SessionListEntry;
@@ -0,0 +1,51 @@
1
+ import {
2
+ deriveAutomaticSessionTitlePreview,
3
+ deriveSessionDisplayTitle,
4
+ sessionTitleIsPending
5
+ } from "./chunk-2ACYHZFB.js";
6
+
7
+ // src/session-list-entries.ts
8
+ function sessionListEntry(session) {
9
+ const origin = session.metadata._opengeniSiteOrigin;
10
+ const siteOrigin = origin && typeof origin.siteId === "string" && /^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/i.test(origin.siteId) && typeof origin.title === "string" ? { siteId: origin.siteId, title: origin.title } : null;
11
+ const scheduledTaskId = session.metadata.scheduledTaskId;
12
+ return {
13
+ id: session.id,
14
+ workspaceId: session.workspaceId,
15
+ accountId: session.accountId,
16
+ status: session.status,
17
+ backgroundCommandActivity: session.backgroundCommandActivity,
18
+ hasSchedules: session.hasSchedules,
19
+ title: session.title,
20
+ titleSource: session.titleSource,
21
+ displayTitle: deriveSessionDisplayTitle(session),
22
+ renameSeed: sessionTitleIsPending(session) ? deriveAutomaticSessionTitlePreview(session.initialMessage) ?? "" : session.title?.trim() ?? "",
23
+ scheduledTaskId: typeof scheduledTaskId === "string" && scheduledTaskId.length > 0 ? scheduledTaskId : null,
24
+ siteOrigin,
25
+ createdBy: session.createdBy,
26
+ channelId: session.channelId,
27
+ parentSessionId: session.parentSessionId,
28
+ rootSessionId: session.rootSessionId,
29
+ effectiveControl: session.effectiveControl,
30
+ inputWait: session.inputWait,
31
+ lastSequence: session.lastSequence,
32
+ pinned: session.pinned ?? false,
33
+ pinnedAt: session.pinnedAt ?? null,
34
+ pinVersion: session.pinVersion ?? 0,
35
+ unread: session.unread ?? false,
36
+ activelyWorking: session.activelyWorking ?? false,
37
+ attentionVersion: session.attentionVersion ?? 0,
38
+ archived: session.archived ?? false,
39
+ archivedAt: session.archivedAt ?? null,
40
+ importedArchive: session.importedArchive,
41
+ archiveVersion: session.archiveVersion ?? 0,
42
+ treeStats: session.treeStats,
43
+ requiresActionSince: session.requiresActionSince,
44
+ createdAt: session.createdAt,
45
+ updatedAt: session.updatedAt
46
+ };
47
+ }
48
+ export {
49
+ sessionListEntry
50
+ };
51
+ //# sourceMappingURL=session-list-entries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/session-list-entries.ts"],"sourcesContent":["import type { Session, SessionListEntry } from \"./index\";\nimport {\n deriveAutomaticSessionTitlePreview,\n deriveSessionDisplayTitle,\n sessionTitleIsPending,\n} from \"./session-titles\";\n\n/** Explicit list projection. Detail/configuration remains available from getSession. */\nexport type SessionListEntryInput = Omit<\n SessionListEntry,\n | \"displayTitle\"\n | \"renameSeed\"\n | \"scheduledTaskId\"\n | \"siteOrigin\"\n | \"pinned\"\n | \"pinnedAt\"\n | \"pinVersion\"\n | \"unread\"\n | \"activelyWorking\"\n | \"attentionVersion\"\n | \"archived\"\n | \"archivedAt\"\n | \"archiveVersion\"\n> &\n Partial<\n Pick<\n Session,\n | \"pinned\"\n | \"pinnedAt\"\n | \"pinVersion\"\n | \"unread\"\n | \"activelyWorking\"\n | \"attentionVersion\"\n | \"archived\"\n | \"archivedAt\"\n | \"archiveVersion\"\n >\n > &\n Pick<Session, \"metadata\" | \"initialMessage\">;\n\nexport function sessionListEntry(session: SessionListEntryInput): SessionListEntry {\n const origin = session.metadata._opengeniSiteOrigin as\n | { siteId?: unknown; title?: unknown }\n | undefined;\n const siteOrigin =\n origin &&\n typeof origin.siteId === \"string\" &&\n /^[\\da-f]{8}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{12}$/i.test(origin.siteId) &&\n typeof origin.title === \"string\"\n ? { siteId: origin.siteId, title: origin.title }\n : null;\n const scheduledTaskId = session.metadata.scheduledTaskId;\n return {\n id: session.id,\n workspaceId: session.workspaceId,\n accountId: session.accountId,\n status: session.status,\n backgroundCommandActivity: session.backgroundCommandActivity,\n hasSchedules: session.hasSchedules,\n title: session.title,\n titleSource: session.titleSource,\n displayTitle: deriveSessionDisplayTitle(session),\n renameSeed: sessionTitleIsPending(session)\n ? (deriveAutomaticSessionTitlePreview(session.initialMessage) ?? \"\")\n : (session.title?.trim() ?? \"\"),\n scheduledTaskId:\n typeof scheduledTaskId === \"string\" && scheduledTaskId.length > 0 ? scheduledTaskId : null,\n siteOrigin,\n createdBy: session.createdBy,\n channelId: session.channelId,\n parentSessionId: session.parentSessionId,\n rootSessionId: session.rootSessionId,\n effectiveControl: session.effectiveControl,\n inputWait: session.inputWait,\n lastSequence: session.lastSequence,\n pinned: session.pinned ?? false,\n pinnedAt: session.pinnedAt ?? null,\n pinVersion: session.pinVersion ?? 0,\n unread: session.unread ?? false,\n activelyWorking: session.activelyWorking ?? false,\n attentionVersion: session.attentionVersion ?? 0,\n archived: session.archived ?? false,\n archivedAt: session.archivedAt ?? null,\n importedArchive: session.importedArchive,\n archiveVersion: session.archiveVersion ?? 0,\n treeStats: session.treeStats,\n requiresActionSince: session.requiresActionSince,\n createdAt: session.createdAt,\n updatedAt: session.updatedAt,\n };\n}\n"],"mappings":";;;;;;;AAwCO,SAAS,iBAAiB,SAAkD;AACjF,QAAM,SAAS,QAAQ,SAAS;AAGhC,QAAM,aACJ,UACA,OAAO,OAAO,WAAW,YACzB,6DAA6D,KAAK,OAAO,MAAM,KAC/E,OAAO,OAAO,UAAU,WACpB,EAAE,QAAQ,OAAO,QAAQ,OAAO,OAAO,MAAM,IAC7C;AACN,QAAM,kBAAkB,QAAQ,SAAS;AACzC,SAAO;AAAA,IACL,IAAI,QAAQ;AAAA,IACZ,aAAa,QAAQ;AAAA,IACrB,WAAW,QAAQ;AAAA,IACnB,QAAQ,QAAQ;AAAA,IAChB,2BAA2B,QAAQ;AAAA,IACnC,cAAc,QAAQ;AAAA,IACtB,OAAO,QAAQ;AAAA,IACf,aAAa,QAAQ;AAAA,IACrB,cAAc,0BAA0B,OAAO;AAAA,IAC/C,YAAY,sBAAsB,OAAO,IACpC,mCAAmC,QAAQ,cAAc,KAAK,KAC9D,QAAQ,OAAO,KAAK,KAAK;AAAA,IAC9B,iBACE,OAAO,oBAAoB,YAAY,gBAAgB,SAAS,IAAI,kBAAkB;AAAA,IACxF;AAAA,IACA,WAAW,QAAQ;AAAA,IACnB,WAAW,QAAQ;AAAA,IACnB,iBAAiB,QAAQ;AAAA,IACzB,eAAe,QAAQ;AAAA,IACvB,kBAAkB,QAAQ;AAAA,IAC1B,WAAW,QAAQ;AAAA,IACnB,cAAc,QAAQ;AAAA,IACtB,QAAQ,QAAQ,UAAU;AAAA,IAC1B,UAAU,QAAQ,YAAY;AAAA,IAC9B,YAAY,QAAQ,cAAc;AAAA,IAClC,QAAQ,QAAQ,UAAU;AAAA,IAC1B,iBAAiB,QAAQ,mBAAmB;AAAA,IAC5C,kBAAkB,QAAQ,oBAAoB;AAAA,IAC9C,UAAU,QAAQ,YAAY;AAAA,IAC9B,YAAY,QAAQ,cAAc;AAAA,IAClC,iBAAiB,QAAQ;AAAA,IACzB,gBAAgB,QAAQ,kBAAkB;AAAA,IAC1C,WAAW,QAAQ;AAAA,IACnB,qBAAqB,QAAQ;AAAA,IAC7B,WAAW,QAAQ;AAAA,IACnB,WAAW,QAAQ;AAAA,EACrB;AACF;","names":[]}
@@ -0,0 +1,215 @@
1
+ import type { SessionGoalStatus, SessionStatus } from "./session-topology-primitives.js";
2
+ import type { WorkDiscoveryProjection } from "./work-claims.js";
3
+ import type { Session, SessionQueueSnapshot } from "./index.js";
4
+ /** MCP-only presentation choice. REST/SDK session shapes keep their own defaults. */
5
+ export type SessionMcpDetail = "compact" | "full";
6
+ /** Search evidence is inseparable from matching; presentation opts never weaken search. */
7
+ export declare function sessionMcpIncludesRelatedWork(options: {
8
+ detail?: SessionMcpDetail | undefined;
9
+ includeRelatedWork?: boolean | undefined;
10
+ query?: string | undefined;
11
+ subject?: unknown;
12
+ }): boolean;
13
+ /** A database prefix plus its exact Unicode code-point count, not a JS UTF-16 count. */
14
+ export declare function boundSessionMcpText(value: string | null, maxChars?: number, originalChars?: number | null): {
15
+ text: null;
16
+ truncated: boolean;
17
+ } | {
18
+ text: string;
19
+ truncated: boolean;
20
+ };
21
+ export type SessionMcpControlSource = {
22
+ state: string;
23
+ primaryBlocker: {
24
+ kind: "session" | "workspace";
25
+ sessionId?: string | undefined;
26
+ displayName: string;
27
+ displayNameOriginalChars?: number;
28
+ reason?: string | null;
29
+ } | null;
30
+ additionalBlockerCount: number;
31
+ };
32
+ /** Call only after related-access projection: this helper never grants ancestor access. */
33
+ export declare function compactSessionMcpPause(control: SessionMcpControlSource): {
34
+ state: string;
35
+ source?: {
36
+ kind: "session" | "workspace";
37
+ sessionId?: string;
38
+ displayName: string | null;
39
+ displayNameTruncated?: boolean;
40
+ reason?: string | null;
41
+ reasonTruncated?: boolean;
42
+ };
43
+ additionalBlockerCount?: number;
44
+ } | undefined;
45
+ export type SessionMcpListSource = {
46
+ channelId?: string | null;
47
+ id: string;
48
+ title: string | null;
49
+ titleOriginalChars?: number | null;
50
+ status: SessionStatus;
51
+ parentSessionId: string | null;
52
+ effectiveControl: SessionMcpControlSource;
53
+ goal: {
54
+ status: SessionGoalStatus;
55
+ text: string;
56
+ textOriginalChars?: number;
57
+ } | null;
58
+ updatedAt: string;
59
+ workDiscovery?: WorkDiscoveryProjection;
60
+ treeStats?: {
61
+ attentionDescendants: number;
62
+ pausedDescendants: number;
63
+ failedDescendants: number;
64
+ truncated: boolean;
65
+ };
66
+ };
67
+ /** Closed allowlist, shared by MCP adapters. Never spread a database/session object. */
68
+ export declare function compactSessionMcpListRow(session: SessionMcpListSource, includeRelatedWork?: boolean): {
69
+ id: string;
70
+ projectId?: string;
71
+ title: string | null;
72
+ status: "cancelled" | "failed" | "idle" | "queued" | "recovering" | "requires_action" | "running" | "waiting_capacity";
73
+ titleTruncated?: boolean;
74
+ parentSessionId?: string;
75
+ goal?: {
76
+ status: "active" | "completed" | "paused";
77
+ summary: string | null;
78
+ summaryTruncated?: boolean;
79
+ };
80
+ pause?: {
81
+ state: string;
82
+ source?: {
83
+ kind: "session" | "workspace";
84
+ sessionId?: string;
85
+ displayName: string | null;
86
+ displayNameTruncated?: boolean;
87
+ reason?: string | null;
88
+ reasonTruncated?: boolean;
89
+ };
90
+ additionalBlockerCount?: number;
91
+ };
92
+ attention?: {
93
+ requiresActionDescendants?: number;
94
+ pausedDescendants?: number;
95
+ failedDescendants?: number;
96
+ truncated?: boolean;
97
+ };
98
+ relatedWork?: {
99
+ claims: {
100
+ id: string;
101
+ sessionId: string;
102
+ subject: {
103
+ namespace: string;
104
+ type: "artifact" | "branch" | "ci_run" | "issue" | "other" | "pull_request" | "release" | "repository";
105
+ canonicalKey: string;
106
+ displayLabel: string | null;
107
+ };
108
+ role: "delivering" | "monitoring" | "reviewing" | "working";
109
+ state: "active" | "released" | "stale" | "superseded";
110
+ revision: number;
111
+ provenance: "explicit_agent" | "session_resource" | "system_lifecycle" | "trusted_integration" | "user_api";
112
+ version: {
113
+ kind: "artifact_version" | "branch_head" | "ci_run" | "git_commit" | "other" | "pull_request_head" | "release_version";
114
+ value: string;
115
+ } | null;
116
+ observedAt: string;
117
+ updatedAt: string;
118
+ settledAt: string | null;
119
+ }[];
120
+ claimsTruncated: boolean;
121
+ match: {
122
+ class: "exact_subject" | "fuzzy" | "goal" | "title";
123
+ field: "claim_key" | "claim_label" | "goal" | "subject" | "title";
124
+ scoreBand: "exact" | "related" | "strong";
125
+ claimId: string | null;
126
+ } | null;
127
+ possibleOverlap: boolean;
128
+ advisoryOnly: true;
129
+ noAdditionalAccess: true;
130
+ };
131
+ updatedAt: string;
132
+ };
133
+ export type SessionMcpMonitoringSource = {
134
+ goal: {
135
+ status: SessionGoalStatus;
136
+ text: string;
137
+ textOriginalChars: number;
138
+ evidence: string | null;
139
+ evidenceOriginalChars: number | null;
140
+ rationale: string | null;
141
+ rationaleOriginalChars: number | null;
142
+ pausedReason: string | null;
143
+ pausedReasonOriginalChars: number | null;
144
+ } | null;
145
+ progress: {
146
+ sequence: number;
147
+ text: string | null;
148
+ /** Null when a bounded encoded prefix cannot establish the original code-point count. */
149
+ originalChars: number | null;
150
+ textTruncated?: true;
151
+ occurredAt: string;
152
+ } | null;
153
+ wait: {
154
+ reason: string;
155
+ until: string;
156
+ } | null;
157
+ };
158
+ /** Closed management projection shared by adapters; never includes session configuration.
159
+ * Apply target/ancestor authorization projection to session before calling. */
160
+ export declare function compactSessionMcpDetail(session: Session, monitoring: SessionMcpMonitoringSource, queue: SessionQueueSnapshot | null): {
161
+ id: string;
162
+ projectId?: string;
163
+ title: string | null;
164
+ status: "cancelled" | "failed" | "idle" | "queued" | "recovering" | "requires_action" | "running" | "waiting_capacity";
165
+ titleTruncated?: boolean;
166
+ parentSessionId?: string;
167
+ activeTurnId?: string;
168
+ lastSequence: number;
169
+ goal?: {
170
+ status: "active" | "completed" | "paused";
171
+ summary: string | null;
172
+ summaryTruncated?: boolean;
173
+ evidence?: string | null;
174
+ evidenceTruncated?: true;
175
+ pausedReason?: string | null;
176
+ pausedReasonTruncated?: true;
177
+ rationale?: string | null;
178
+ rationaleTruncated?: true;
179
+ };
180
+ progress?: {
181
+ sequence: number;
182
+ text: string | null;
183
+ occurredAt: string;
184
+ textTruncated?: boolean;
185
+ };
186
+ pause?: {
187
+ state: string;
188
+ source?: {
189
+ kind: "session" | "workspace";
190
+ sessionId?: string;
191
+ displayName: string | null;
192
+ displayNameTruncated?: boolean;
193
+ reason?: string | null;
194
+ reasonTruncated?: boolean;
195
+ };
196
+ additionalBlockerCount?: number;
197
+ };
198
+ wait?: {
199
+ reason: string | null;
200
+ until: string;
201
+ reasonTruncated?: boolean;
202
+ };
203
+ queue?: {
204
+ queuedTurns: number;
205
+ pendingInputs: number;
206
+ stoppingPreviousAttempt?: boolean;
207
+ };
208
+ stopping?: {
209
+ attempts?: number;
210
+ backgroundCommands?: number;
211
+ };
212
+ updatedAt: string;
213
+ };
214
+ export type SessionMcpCompactListRow = ReturnType<typeof compactSessionMcpListRow>;
215
+ export type SessionMcpCompactDetail = ReturnType<typeof compactSessionMcpDetail>;
@@ -0,0 +1,68 @@
1
+ import { z } from "zod";
2
+ /** Literal Unicode case-insensitive search, without trimming or normalization. */
3
+ export declare const SessionMessageSearchRequest: z.ZodObject<{
4
+ query: z.ZodString;
5
+ sessionId: z.ZodOptional<z.ZodString>;
6
+ groupBy: z.ZodOptional<z.ZodLiteral<"session">>;
7
+ archiveStatus: z.ZodOptional<z.ZodEnum<{
8
+ active: "active";
9
+ all: "all";
10
+ archived: "archived";
11
+ }>>;
12
+ limit: z.ZodOptional<z.ZodNumber>;
13
+ cursor: z.ZodOptional<z.ZodString>;
14
+ }, z.core.$strict>;
15
+ export type SessionMessageSearchRequest = z.infer<typeof SessionMessageSearchRequest>;
16
+ export declare const SessionMessageSearchMatch: z.ZodObject<{
17
+ sessionId: z.ZodString;
18
+ sessionTitle: z.ZodNullable<z.ZodString>;
19
+ eventId: z.ZodString;
20
+ sequence: z.ZodNumber;
21
+ turnId: z.ZodNullable<z.ZodString>;
22
+ role: z.ZodEnum<{
23
+ assistant: "assistant";
24
+ user: "user";
25
+ }>;
26
+ messageId: z.ZodNullable<z.ZodString>;
27
+ messageMatchOffset: z.ZodNumber;
28
+ snippet: z.ZodObject<{
29
+ text: z.ZodString;
30
+ matchStart: z.ZodNumber;
31
+ matchEnd: z.ZodNumber;
32
+ }, z.core.$strip>;
33
+ }, z.core.$strip>;
34
+ export type SessionMessageSearchMatch = z.infer<typeof SessionMessageSearchMatch>;
35
+ /** A bounded scan page, not necessarily a full page of matches. Continue even
36
+ * after an empty page while hasMore is true. Counts describe this live traversal,
37
+ * not a frozen snapshot; restart to reflect concurrent changes. All non-overlapping
38
+ * literal occurrences in user messages and completed assistant messages.
39
+ * With groupBy=session, matches and both matched counts describe one first-hit
40
+ * representative per matching session, not full message/occurrence totals.
41
+ */
42
+ export declare const SessionMessageSearchResponse: z.ZodObject<{
43
+ matches: z.ZodArray<z.ZodObject<{
44
+ sessionId: z.ZodString;
45
+ sessionTitle: z.ZodNullable<z.ZodString>;
46
+ eventId: z.ZodString;
47
+ sequence: z.ZodNumber;
48
+ turnId: z.ZodNullable<z.ZodString>;
49
+ role: z.ZodEnum<{
50
+ assistant: "assistant";
51
+ user: "user";
52
+ }>;
53
+ messageId: z.ZodNullable<z.ZodString>;
54
+ messageMatchOffset: z.ZodNumber;
55
+ snippet: z.ZodObject<{
56
+ text: z.ZodString;
57
+ matchStart: z.ZodNumber;
58
+ matchEnd: z.ZodNumber;
59
+ }, z.core.$strip>;
60
+ }, z.core.$strip>>;
61
+ nextCursor: z.ZodNullable<z.ZodString>;
62
+ hasMore: z.ZodBoolean;
63
+ scannedMessages: z.ZodNumber;
64
+ matchedMessageCount: z.ZodNumber;
65
+ matchedOccurrenceCount: z.ZodNumber;
66
+ countIsExact: z.ZodBoolean;
67
+ }, z.core.$strip>;
68
+ export type SessionMessageSearchResponse = z.infer<typeof SessionMessageSearchResponse>;
@@ -0,0 +1,68 @@
1
+ /** Human-authored session titles keep the existing public API ceiling. */
2
+ export declare const SESSION_TITLE_MAX_CHARACTERS = 200;
3
+ /**
4
+ * Automatic titles are intentionally much shorter than the manual rename
5
+ * ceiling. This is measured in grapheme clusters so emoji and combining text
6
+ * are never split into malformed display strings.
7
+ */
8
+ export declare const AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES = 80;
9
+ /**
10
+ * Safe durable title used until semantic generation succeeds. It contains no
11
+ * user prompt bytes, so provider failure/offline operation cannot leak a
12
+ * credential or leave a raw prompt prefix in navigation surfaces.
13
+ */
14
+ export declare const AUTOMATIC_SESSION_TITLE_FALLBACK = "New conversation";
15
+ export declare const PROMPT_PREVIEW_SCAN_MAX_CODE_UNITS = 4096;
16
+ /**
17
+ * Whether a bounded automatic-title candidate contains a credential, URL, or
18
+ * opaque identifier that must stay out of navigation and other display-title
19
+ * surfaces. Callers handling an unbounded source must bound it before invoking
20
+ * this helper.
21
+ */
22
+ export declare function containsSensitiveAutomaticSessionTitleValue(value: string): boolean;
23
+ /** Bound an already-normalized automatic-title candidate without splitting graphemes. */
24
+ export declare function boundAutomaticSessionTitle(value: string): string;
25
+ /**
26
+ * Normalize a model/system-authored title before it reaches durable session
27
+ * metadata. Human renames intentionally do not use this path.
28
+ *
29
+ * Returns null when the candidate is empty, only boilerplate, or appears to
30
+ * contain a credential/opaque prompt value. Callers should retain the current
31
+ * title (normally {@link AUTOMATIC_SESSION_TITLE_FALLBACK}) in that case.
32
+ */
33
+ export declare function normalizeAutomaticSessionTitle(value: string): string | null;
34
+ export type SessionDisplayTitleInput = {
35
+ id?: string | null | undefined;
36
+ title?: string | null | undefined;
37
+ titleSource?: "user" | "agent" | null | undefined;
38
+ initialMessage?: string | null | undefined;
39
+ metadata?: Readonly<Record<string, unknown>> | undefined;
40
+ };
41
+ export type SessionDisplayTitleOptions = {
42
+ /** Optional metadata fields to try before the opening-prompt preview. */
43
+ metadataKeys?: readonly string[] | undefined;
44
+ };
45
+ /**
46
+ * Derive a bounded, sensitive-safe preview from the opening prompt.
47
+ *
48
+ * Unsafe leading lines are skipped instead of forcing the whole session back
49
+ * to a generic label. This covers prompts that begin with a pasted URL or
50
+ * identifier followed by an ordinary natural-language request on the next
51
+ * line, without putting the rejected value into navigation surfaces.
52
+ */
53
+ export declare function deriveAutomaticSessionTitlePreview(value: unknown): string | null;
54
+ /**
55
+ * Whether the durable title still represents the automatic-title pending state.
56
+ * A user-authored title always wins, even when its literal value is the marker.
57
+ */
58
+ export declare function sessionTitleIsPending(input: SessionDisplayTitleInput): boolean;
59
+ /**
60
+ * Derive the title a human-facing client should display for a session.
61
+ *
62
+ * A semantic agent title or human rename wins. While automatic naming is still
63
+ * pending, clients show a short, sensitive-safe preview of the opening prompt.
64
+ * If no safe prompt text exists, a UUID-derived reference keeps real sessions
65
+ * distinguishable without exposing prompt bytes. The durable pending marker is
66
+ * therefore an internal lifecycle value rather than the ordinary visible name.
67
+ */
68
+ export declare function deriveSessionDisplayTitle(input: SessionDisplayTitleInput, options?: SessionDisplayTitleOptions): string;
@@ -0,0 +1,25 @@
1
+ import {
2
+ AUTOMATIC_SESSION_TITLE_FALLBACK,
3
+ AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
4
+ PROMPT_PREVIEW_SCAN_MAX_CODE_UNITS,
5
+ SESSION_TITLE_MAX_CHARACTERS,
6
+ boundAutomaticSessionTitle,
7
+ containsSensitiveAutomaticSessionTitleValue,
8
+ deriveAutomaticSessionTitlePreview,
9
+ deriveSessionDisplayTitle,
10
+ normalizeAutomaticSessionTitle,
11
+ sessionTitleIsPending
12
+ } from "./chunk-2ACYHZFB.js";
13
+ export {
14
+ AUTOMATIC_SESSION_TITLE_FALLBACK,
15
+ AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
16
+ PROMPT_PREVIEW_SCAN_MAX_CODE_UNITS,
17
+ SESSION_TITLE_MAX_CHARACTERS,
18
+ boundAutomaticSessionTitle,
19
+ containsSensitiveAutomaticSessionTitleValue,
20
+ deriveAutomaticSessionTitlePreview,
21
+ deriveSessionDisplayTitle,
22
+ normalizeAutomaticSessionTitle,
23
+ sessionTitleIsPending
24
+ };
25
+ //# sourceMappingURL=session-titles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,22 @@
1
+ import { z } from "zod";
2
+ export declare const SessionStatus: z.ZodEnum<{
3
+ cancelled: "cancelled";
4
+ failed: "failed";
5
+ idle: "idle";
6
+ queued: "queued";
7
+ recovering: "recovering";
8
+ requires_action: "requires_action";
9
+ running: "running";
10
+ waiting_capacity: "waiting_capacity";
11
+ }>;
12
+ export type SessionStatus = z.infer<typeof SessionStatus>;
13
+ export declare const SessionGoalStatus: z.ZodEnum<{
14
+ active: "active";
15
+ completed: "completed";
16
+ paused: "paused";
17
+ }>;
18
+ export type SessionGoalStatus = z.infer<typeof SessionGoalStatus>;
19
+ /** Physical ceiling of the PostgreSQL integer columns that persist depth policy. */
20
+ export declare const MAX_NESTED_AGENT_DEPTH = 2147483647;
21
+ export declare const NestedAgentDepthValue: z.ZodNumber;
22
+ export type NestedAgentDepthValue = z.infer<typeof NestedAgentDepthValue>;
@@ -0,0 +1,39 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * First-touch marketing parameters accepted on the web app landing URL. The
4
+ * browser keeps them in memory only and forwards them with a sign-up request,
5
+ * so nothing is written to the device before analytics consent.
6
+ */
7
+ export declare const SIGNUP_ATTRIBUTION_URL_PARAMETERS: {
8
+ readonly utmSource: "utm_source";
9
+ readonly utmMedium: "utm_medium";
10
+ readonly utmCampaign: "utm_campaign";
11
+ readonly utmContent: "utm_content";
12
+ readonly ref: "ref";
13
+ };
14
+ /** Maximum retained length of one attribution value. */
15
+ export declare const SIGNUP_ATTRIBUTION_VALUE_MAX_LENGTH = 100;
16
+ /**
17
+ * Campaign labels are marketer-chosen slug tokens such as `hero-cta` or
18
+ * `opengeni.ai`. The closed character set has no space, `@`, `:`, `/`, `?`,
19
+ * `=`, or `%`, so free text, email addresses, and URL payloads are rejected
20
+ * before they reach any sink. The web boot capture and the session-set social
21
+ * start request mirror this rule; tests pin each copy to it.
22
+ */
23
+ export declare const SIGNUP_ATTRIBUTION_VALUE_PATTERN: RegExp;
24
+ export declare const SignupAttribution: z.ZodObject<{
25
+ utmSource: z.ZodOptional<z.ZodString>;
26
+ utmMedium: z.ZodOptional<z.ZodString>;
27
+ utmCampaign: z.ZodOptional<z.ZodString>;
28
+ utmContent: z.ZodOptional<z.ZodString>;
29
+ ref: z.ZodOptional<z.ZodString>;
30
+ }, z.core.$strict>;
31
+ export type SignupAttribution = z.infer<typeof SignupAttribution>;
32
+ /** Closed acquisition channels reported by server-side sign-up metrics. */
33
+ export declare const SIGNUP_ACQUISITION_SOURCES: readonly ["producthunt", "website", "direct", "other"];
34
+ export type SignupAcquisitionSource = (typeof SIGNUP_ACQUISITION_SOURCES)[number];
35
+ /**
36
+ * Normalize untrusted first-touch attribution to a closed channel. Missing
37
+ * attribution is `direct`; malformed or unrecognized attribution is `other`.
38
+ */
39
+ export declare function signupAcquisitionSource(input: unknown): SignupAcquisitionSource;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ /** A Site/Codemode SDK request named a route outside the proxied surface. */
2
+ export declare class SiteSessionPathError extends Error {
3
+ readonly code = "site_session_path_unsupported";
4
+ constructor();
5
+ }
6
+ /** Route browser/preview SDK requests to the host workspace. This is a URL
7
+ * boundary, not an endpoint or HTTP-method allowlist. Ordinary API handlers
8
+ * authorize every operation with the viewer or agent's existing authority. */
9
+ export declare function siteSessionPath(path: string, workspaceId: string, _method?: string, siteId?: string): string;
10
+ /** Preserve SDK request semantics while the host supplies identity and transport headers. */
11
+ export declare function siteRequestHeaders(input: HeadersInit): Headers;
@@ -0,0 +1,11 @@
1
+ import {
2
+ SiteSessionPathError,
3
+ siteRequestHeaders,
4
+ siteSessionPath
5
+ } from "./chunk-YRXAWWCU.js";
6
+ export {
7
+ SiteSessionPathError,
8
+ siteRequestHeaders,
9
+ siteSessionPath
10
+ };
11
+ //# sourceMappingURL=site-session-http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,7 @@
1
+ /** Durable, model-visible catalog context. Text markers survive SDK/provider replay. */
2
+ export declare const SKILL_CATALOG_CONTEXT_PREFIX = "<opengeni_skill_catalog>\n";
3
+ export declare const SKILL_CATALOG_CONTEXT_SUFFIX = "\n</opengeni_skill_catalog>";
4
+ export declare function skillCatalogContextItem(catalog: string): Record<string, unknown>;
5
+ /** Accept the Chat Completions projection and SDK text-part normalization too. */
6
+ export declare function readSkillCatalogContext(item: Record<string, unknown>): string | null;
7
+ export declare function latestSkillCatalogContext(items: readonly Record<string, unknown>[]): Record<string, unknown> | undefined;
@@ -0,0 +1,12 @@
1
+ /** Shared text-folder limits for API admission, runtime imports and checkout. */
2
+ export declare const SKILL_MAX_FILES = 1024;
3
+ export declare const SKILL_MAX_FILE_BYTES: number;
4
+ export declare const SKILL_MAX_TOTAL_BYTES: number;
5
+ export declare function isSafeSkillRelativePath(path: string): boolean;
6
+ /** Validates bytes, not extensions. Does not rewrite text or interpret metadata. */
7
+ export declare function validateSkillTextFiles(files: readonly {
8
+ path: string;
9
+ content: string;
10
+ }[]): {
11
+ totalBytes: number;
12
+ };
@@ -0,0 +1,9 @@
1
+ /** The one interpretation of Skill metadata for imports, writes and migration. */
2
+ export declare function parseSkillFrontmatter(markdown: string): {
3
+ name: string | null;
4
+ description: string | null;
5
+ };
6
+ export declare function readSkillMetadata(markdown: string): {
7
+ name: string;
8
+ description: string;
9
+ };
@@ -0,0 +1,61 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * `_meta` key of the content-free Skill-use fact on a model `skill_read`
4
+ * result. MCP `_meta` never reaches the model: it survives only into the
5
+ * `agent.toolCall.output` event projection, never into model history.
6
+ */
7
+ export declare const SKILL_USE_META_KEY: "opengeni/skillUse";
8
+ /** Where the Skill a read resolved to comes from. `personal` is a user-scope Skill. */
9
+ export declare const SkillUseSource: z.ZodEnum<{
10
+ builtin: "builtin";
11
+ organization: "organization";
12
+ personal: "personal";
13
+ session: "session";
14
+ workspace: "workspace";
15
+ }>;
16
+ export type SkillUseSource = z.infer<typeof SkillUseSource>;
17
+ /**
18
+ * What a `skill_read` returned: `full` is the default SKILL.md read, `files`
19
+ * explicit paths, `list` a path inventory, and `already_in_context` the short
20
+ * repeat receipt. `refused` means the read returned an error instead of Skill
21
+ * text; it has no result, so it appears only in metrics.
22
+ */
23
+ export declare const SkillReadKind: z.ZodEnum<{
24
+ already_in_context: "already_in_context";
25
+ files: "files";
26
+ full: "full";
27
+ list: "list";
28
+ refused: "refused";
29
+ }>;
30
+ export type SkillReadKind = z.infer<typeof SkillReadKind>;
31
+ /**
32
+ * Ids, digests, and counts only. Never Skill text, user text, or a Skill's
33
+ * title or description. `label` is reserved for a platform display label of a
34
+ * built-in; user-authored Skills never set it. This is the writer's closed
35
+ * shape: an unknown field fails the parse, so nothing else can be attached.
36
+ */
37
+ export declare const SkillUse: z.ZodObject<{
38
+ id: z.ZodString;
39
+ source: z.ZodEnum<{
40
+ builtin: "builtin";
41
+ organization: "organization";
42
+ personal: "personal";
43
+ session: "session";
44
+ workspace: "workspace";
45
+ }>;
46
+ label: z.ZodOptional<z.ZodString>;
47
+ contentSha256: z.ZodOptional<z.ZodString>;
48
+ revisionId: z.ZodOptional<z.ZodString>;
49
+ kind: z.ZodEnum<{
50
+ already_in_context: "already_in_context";
51
+ files: "files";
52
+ full: "full";
53
+ list: "list";
54
+ }>;
55
+ bytes: z.ZodNumber;
56
+ inIndex: z.ZodBoolean;
57
+ searchedThisTurn: z.ZodBoolean;
58
+ }, z.core.$strict>;
59
+ export type SkillUse = z.infer<typeof SkillUse>;
60
+ /** The Skill-use fact on a tool result or its event projection, when present and valid. */
61
+ export declare function skillUseFromToolOutput(output: unknown): SkillUse | null;