@cat-factory/contracts 0.34.0 → 0.35.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 (209) hide show
  1. package/dist/api-keys.d.ts +17 -0
  2. package/dist/api-keys.d.ts.map +1 -1
  3. package/dist/api-keys.js +2 -0
  4. package/dist/api-keys.js.map +1 -1
  5. package/dist/github.d.ts +14 -0
  6. package/dist/github.d.ts.map +1 -1
  7. package/dist/github.js +13 -0
  8. package/dist/github.js.map +1 -1
  9. package/dist/index.d.ts +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +1 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/observability.d.ts +63 -0
  14. package/dist/observability.d.ts.map +1 -1
  15. package/dist/observability.js +57 -0
  16. package/dist/observability.js.map +1 -1
  17. package/dist/requests.d.ts +7 -0
  18. package/dist/requests.d.ts.map +1 -1
  19. package/dist/requests.js +2 -0
  20. package/dist/requests.js.map +1 -1
  21. package/dist/routes/_shared.d.ts +49 -0
  22. package/dist/routes/_shared.d.ts.map +1 -0
  23. package/dist/routes/_shared.js +34 -0
  24. package/dist/routes/_shared.js.map +1 -0
  25. package/dist/routes/accounts.d.ts +775 -0
  26. package/dist/routes/accounts.d.ts.map +1 -0
  27. package/dist/routes/accounts.js +145 -0
  28. package/dist/routes/accounts.js.map +1 -0
  29. package/dist/routes/agent-runs.d.ts +659 -0
  30. package/dist/routes/agent-runs.d.ts.map +1 -0
  31. package/dist/routes/agent-runs.js +33 -0
  32. package/dist/routes/agent-runs.js.map +1 -0
  33. package/dist/routes/api-keys.d.ts +245 -0
  34. package/dist/routes/api-keys.d.ts.map +1 -0
  35. package/dist/routes/api-keys.js +49 -0
  36. package/dist/routes/api-keys.js.map +1 -0
  37. package/dist/routes/auth.d.ts +411 -0
  38. package/dist/routes/auth.d.ts.map +1 -0
  39. package/dist/routes/auth.js +129 -0
  40. package/dist/routes/auth.js.map +1 -0
  41. package/dist/routes/board.d.ts +1260 -0
  42. package/dist/routes/board.d.ts.map +1 -0
  43. package/dist/routes/board.js +85 -0
  44. package/dist/routes/board.js.map +1 -0
  45. package/dist/routes/bootstrap.d.ts +395 -0
  46. package/dist/routes/bootstrap.d.ts.map +1 -0
  47. package/dist/routes/bootstrap.js +56 -0
  48. package/dist/routes/bootstrap.js.map +1 -0
  49. package/dist/routes/brainstorm.d.ts +482 -0
  50. package/dist/routes/brainstorm.d.ts.map +1 -0
  51. package/dist/routes/brainstorm.js +69 -0
  52. package/dist/routes/brainstorm.js.map +1 -0
  53. package/dist/routes/clarity.d.ts +462 -0
  54. package/dist/routes/clarity.d.ts.map +1 -0
  55. package/dist/routes/clarity.js +67 -0
  56. package/dist/routes/clarity.js.map +1 -0
  57. package/dist/routes/consensus.d.ts +71 -0
  58. package/dist/routes/consensus.d.ts.map +1 -0
  59. package/dist/routes/consensus.js +23 -0
  60. package/dist/routes/consensus.js.map +1 -0
  61. package/dist/routes/documents.d.ts +449 -0
  62. package/dist/routes/documents.d.ts.map +1 -0
  63. package/dist/routes/documents.js +89 -0
  64. package/dist/routes/documents.js.map +1 -0
  65. package/dist/routes/environments.d.ts +715 -0
  66. package/dist/routes/environments.d.ts.map +1 -0
  67. package/dist/routes/environments.js +82 -0
  68. package/dist/routes/environments.js.map +1 -0
  69. package/dist/routes/execution.d.ts +2768 -0
  70. package/dist/routes/execution.d.ts.map +1 -0
  71. package/dist/routes/execution.js +119 -0
  72. package/dist/routes/execution.js.map +1 -0
  73. package/dist/routes/followUp.d.ts +277 -0
  74. package/dist/routes/followUp.d.ts.map +1 -0
  75. package/dist/routes/followUp.js +47 -0
  76. package/dist/routes/followUp.js.map +1 -0
  77. package/dist/routes/fragment-library.d.ts +594 -0
  78. package/dist/routes/fragment-library.d.ts.map +1 -0
  79. package/dist/routes/fragment-library.js +102 -0
  80. package/dist/routes/fragment-library.js.map +1 -0
  81. package/dist/routes/github.d.ts +807 -0
  82. package/dist/routes/github.d.ts.map +1 -0
  83. package/dist/routes/github.js +157 -0
  84. package/dist/routes/github.js.map +1 -0
  85. package/dist/routes/human-review.d.ts +290 -0
  86. package/dist/routes/human-review.d.ts.map +1 -0
  87. package/dist/routes/human-review.js +20 -0
  88. package/dist/routes/human-review.js.map +1 -0
  89. package/dist/routes/human-test.d.ts +1435 -0
  90. package/dist/routes/human-test.d.ts.map +1 -0
  91. package/dist/routes/human-test.js +48 -0
  92. package/dist/routes/human-test.js.map +1 -0
  93. package/dist/routes/incident-enrichment.d.ts +110 -0
  94. package/dist/routes/incident-enrichment.d.ts.map +1 -0
  95. package/dist/routes/incident-enrichment.js +26 -0
  96. package/dist/routes/incident-enrichment.js.map +1 -0
  97. package/dist/routes/index.d.ts +47 -0
  98. package/dist/routes/index.d.ts.map +1 -0
  99. package/dist/routes/index.js +50 -0
  100. package/dist/routes/index.js.map +1 -0
  101. package/dist/routes/kaizen.d.ts +113 -0
  102. package/dist/routes/kaizen.d.ts.map +1 -0
  103. package/dist/routes/kaizen.js +22 -0
  104. package/dist/routes/kaizen.js.map +1 -0
  105. package/dist/routes/localModels.d.ts +163 -0
  106. package/dist/routes/localModels.d.ts.map +1 -0
  107. package/dist/routes/localModels.js +41 -0
  108. package/dist/routes/localModels.js.map +1 -0
  109. package/dist/routes/localSettings.d.ts +93 -0
  110. package/dist/routes/localSettings.d.ts.map +1 -0
  111. package/dist/routes/localSettings.js +22 -0
  112. package/dist/routes/localSettings.js.map +1 -0
  113. package/dist/routes/merge.d.ts +197 -0
  114. package/dist/routes/merge.d.ts.map +1 -0
  115. package/dist/routes/merge.js +36 -0
  116. package/dist/routes/merge.js.map +1 -0
  117. package/dist/routes/model-presets.d.ts +162 -0
  118. package/dist/routes/model-presets.d.ts.map +1 -0
  119. package/dist/routes/model-presets.js +36 -0
  120. package/dist/routes/model-presets.js.map +1 -0
  121. package/dist/routes/models.d.ts +123 -0
  122. package/dist/routes/models.d.ts.map +1 -0
  123. package/dist/routes/models.js +25 -0
  124. package/dist/routes/models.js.map +1 -0
  125. package/dist/routes/notifications.d.ts +213 -0
  126. package/dist/routes/notifications.d.ts.map +1 -0
  127. package/dist/routes/notifications.js +31 -0
  128. package/dist/routes/notifications.js.map +1 -0
  129. package/dist/routes/openrouter.d.ts +145 -0
  130. package/dist/routes/openrouter.d.ts.map +1 -0
  131. package/dist/routes/openrouter.js +32 -0
  132. package/dist/routes/openrouter.js.map +1 -0
  133. package/dist/routes/personal-subscriptions.d.ts +124 -0
  134. package/dist/routes/personal-subscriptions.d.ts.map +1 -0
  135. package/dist/routes/personal-subscriptions.js +32 -0
  136. package/dist/routes/personal-subscriptions.js.map +1 -0
  137. package/dist/routes/pipelines.d.ts +457 -0
  138. package/dist/routes/pipelines.d.ts.map +1 -0
  139. package/dist/routes/pipelines.js +51 -0
  140. package/dist/routes/pipelines.js.map +1 -0
  141. package/dist/routes/prompt-fragments.d.ts +52 -0
  142. package/dist/routes/prompt-fragments.d.ts.map +1 -0
  143. package/dist/routes/prompt-fragments.js +14 -0
  144. package/dist/routes/prompt-fragments.js.map +1 -0
  145. package/dist/routes/provisioning-logs.d.ts +45 -0
  146. package/dist/routes/provisioning-logs.d.ts.map +1 -0
  147. package/dist/routes/provisioning-logs.js +14 -0
  148. package/dist/routes/provisioning-logs.js.map +1 -0
  149. package/dist/routes/recurring.d.ts +309 -0
  150. package/dist/routes/recurring.d.ts.map +1 -0
  151. package/dist/routes/recurring.js +50 -0
  152. package/dist/routes/recurring.js.map +1 -0
  153. package/dist/routes/release.d.ts +218 -0
  154. package/dist/routes/release.d.ts.map +1 -0
  155. package/dist/routes/release.js +47 -0
  156. package/dist/routes/release.js.map +1 -0
  157. package/dist/routes/requirements.d.ts +901 -0
  158. package/dist/routes/requirements.d.ts.map +1 -0
  159. package/dist/routes/requirements.js +96 -0
  160. package/dist/routes/requirements.js.map +1 -0
  161. package/dist/routes/runners.d.ts +442 -0
  162. package/dist/routes/runners.d.ts.map +1 -0
  163. package/dist/routes/runners.js +47 -0
  164. package/dist/routes/runners.js.map +1 -0
  165. package/dist/routes/sandbox.d.ts +898 -0
  166. package/dist/routes/sandbox.d.ts.map +1 -0
  167. package/dist/routes/sandbox.js +119 -0
  168. package/dist/routes/sandbox.js.map +1 -0
  169. package/dist/routes/service-fragment-defaults.d.ts +66 -0
  170. package/dist/routes/service-fragment-defaults.d.ts.map +1 -0
  171. package/dist/routes/service-fragment-defaults.js +20 -0
  172. package/dist/routes/service-fragment-defaults.js.map +1 -0
  173. package/dist/routes/services.d.ts +224 -0
  174. package/dist/routes/services.d.ts.map +1 -0
  175. package/dist/routes/services.js +44 -0
  176. package/dist/routes/services.js.map +1 -0
  177. package/dist/routes/slack.d.ts +332 -0
  178. package/dist/routes/slack.d.ts.map +1 -0
  179. package/dist/routes/slack.js +72 -0
  180. package/dist/routes/slack.js.map +1 -0
  181. package/dist/routes/spec.d.ts +76 -0
  182. package/dist/routes/spec.d.ts.map +1 -0
  183. package/dist/routes/spec.js +17 -0
  184. package/dist/routes/spec.js.map +1 -0
  185. package/dist/routes/tasks.d.ts +723 -0
  186. package/dist/routes/tasks.d.ts.map +1 -0
  187. package/dist/routes/tasks.js +108 -0
  188. package/dist/routes/tasks.js.map +1 -0
  189. package/dist/routes/tracker.d.ts +77 -0
  190. package/dist/routes/tracker.d.ts.map +1 -0
  191. package/dist/routes/tracker.js +20 -0
  192. package/dist/routes/tracker.js.map +1 -0
  193. package/dist/routes/user-secret.d.ts +231 -0
  194. package/dist/routes/user-secret.d.ts.map +1 -0
  195. package/dist/routes/user-secret.js +49 -0
  196. package/dist/routes/user-secret.js.map +1 -0
  197. package/dist/routes/vendor-credentials.d.ts +120 -0
  198. package/dist/routes/vendor-credentials.d.ts.map +1 -0
  199. package/dist/routes/vendor-credentials.js +33 -0
  200. package/dist/routes/vendor-credentials.js.map +1 -0
  201. package/dist/routes/workspace-settings.d.ts +93 -0
  202. package/dist/routes/workspace-settings.d.ts.map +1 -0
  203. package/dist/routes/workspace-settings.js +20 -0
  204. package/dist/routes/workspace-settings.js.map +1 -0
  205. package/dist/routes/workspaces.d.ts +1309 -0
  206. package/dist/routes/workspaces.d.ts.map +1 -0
  207. package/dist/routes/workspaces.js +45 -0
  208. package/dist/routes/workspaces.js.map +1 -0
  209. package/package.json +3 -1
@@ -0,0 +1,102 @@
1
+ import { ContractNoBody, defineApiContract, withObjectKeys } from '@toad-contracts/valibot';
2
+ import * as v from 'valibot';
3
+ import { promptFragmentSchema } from '../entities.js';
4
+ import { createDocumentFragmentSchema, createPromptFragmentSchema, fragmentSourceSchema, fragmentSourceStatusSchema, fragmentSyncResultSchema, linkFragmentSourceSchema, resolvedFragmentCatalogSchema, updatePromptFragmentSchema, } from '../fragment-library.js';
5
+ import { errorResponses } from './_shared.js';
6
+ // ---------------------------------------------------------------------------
7
+ // Prompt-fragment library route contracts. See FragmentLibraryController in
8
+ // @cat-factory/server. The controller is mounted at BOTH `/accounts/:accountId`
9
+ // and `/workspaces/:workspaceId` from a single factory, so its route literals are
10
+ // RELATIVE to whichever prefix it is mounted under — the owner id (accountId /
11
+ // workspaceId) is read by the handler via its own param helper and is NOT a
12
+ // contract param. One set of relative contracts serves both mounts.
13
+ //
14
+ // Fragment ids are dot-separated (e.g. `node.performance`), never slash-bearing, so a
15
+ // plain `:fragmentId` (Hono's default `[^/]+`) matches them and the shared resolver works
16
+ // for both the server route and the client URL (a `{.+}` matcher would leak into the
17
+ // client-built URL).
18
+ // ---------------------------------------------------------------------------
19
+ const promptFragmentListSchema = v.array(promptFragmentSchema);
20
+ const fragmentSourceListSchema = v.array(fragmentSourceSchema);
21
+ const fragmentIdParams = withObjectKeys(v.object({ fragmentId: v.string() }));
22
+ const sourceIdParams = withObjectKeys(v.object({ id: v.string() }));
23
+ // ---- fragments (this tier, raw — not merged) ------------------------------
24
+ export const listPromptFragmentsContract = defineApiContract({
25
+ method: 'get',
26
+ pathResolver: () => '/prompt-fragments',
27
+ responsesByStatusCode: { 200: promptFragmentListSchema, ...errorResponses },
28
+ });
29
+ export const createPromptFragmentContract = defineApiContract({
30
+ method: 'post',
31
+ pathResolver: () => '/prompt-fragments',
32
+ requestBodySchema: createPromptFragmentSchema,
33
+ responsesByStatusCode: { 201: promptFragmentSchema, ...errorResponses },
34
+ });
35
+ export const updatePromptFragmentContract = defineApiContract({
36
+ method: 'patch',
37
+ requestPathParamsSchema: fragmentIdParams,
38
+ pathResolver: ({ fragmentId }) => `/prompt-fragments/${fragmentId}`,
39
+ requestBodySchema: updatePromptFragmentSchema,
40
+ responsesByStatusCode: { 200: promptFragmentSchema, ...errorResponses },
41
+ });
42
+ export const deletePromptFragmentContract = defineApiContract({
43
+ method: 'delete',
44
+ requestPathParamsSchema: fragmentIdParams,
45
+ pathResolver: ({ fragmentId }) => `/prompt-fragments/${fragmentId}`,
46
+ responsesByStatusCode: { 204: ContractNoBody, ...errorResponses },
47
+ });
48
+ // ---- document-backed fragments (living source of truth) -------------------
49
+ export const createDocumentFragmentContract = defineApiContract({
50
+ method: 'post',
51
+ pathResolver: () => '/document-fragments',
52
+ requestBodySchema: createDocumentFragmentSchema,
53
+ responsesByStatusCode: { 201: promptFragmentSchema, ...errorResponses },
54
+ });
55
+ export const refreshPromptFragmentContract = defineApiContract({
56
+ method: 'post',
57
+ requestPathParamsSchema: fragmentIdParams,
58
+ // At the account scope the refresh needs a `viaWorkspaceId` (whose document-source
59
+ // connection to fetch through); ignored at the workspace scope.
60
+ requestQuerySchema: v.object({ viaWorkspaceId: v.optional(v.string()) }),
61
+ pathResolver: ({ fragmentId }) => `/prompt-fragments/${fragmentId}/refresh`,
62
+ requestBodySchema: ContractNoBody,
63
+ responsesByStatusCode: { 200: promptFragmentSchema, ...errorResponses },
64
+ });
65
+ // ---- repo sources ---------------------------------------------------------
66
+ export const listFragmentSourcesContract = defineApiContract({
67
+ method: 'get',
68
+ pathResolver: () => '/fragment-sources',
69
+ responsesByStatusCode: { 200: fragmentSourceListSchema, ...errorResponses },
70
+ });
71
+ export const linkFragmentSourceContract = defineApiContract({
72
+ method: 'post',
73
+ pathResolver: () => '/fragment-sources',
74
+ requestBodySchema: linkFragmentSourceSchema,
75
+ responsesByStatusCode: { 201: fragmentSourceSchema, ...errorResponses },
76
+ });
77
+ export const unlinkFragmentSourceContract = defineApiContract({
78
+ method: 'delete',
79
+ requestPathParamsSchema: sourceIdParams,
80
+ pathResolver: ({ id }) => `/fragment-sources/${id}`,
81
+ responsesByStatusCode: { 204: ContractNoBody, ...errorResponses },
82
+ });
83
+ export const fragmentSourceStatusContract = defineApiContract({
84
+ method: 'get',
85
+ requestPathParamsSchema: sourceIdParams,
86
+ pathResolver: ({ id }) => `/fragment-sources/${id}/status`,
87
+ responsesByStatusCode: { 200: fragmentSourceStatusSchema, ...errorResponses },
88
+ });
89
+ export const syncFragmentSourceContract = defineApiContract({
90
+ method: 'post',
91
+ requestPathParamsSchema: sourceIdParams,
92
+ pathResolver: ({ id }) => `/fragment-sources/${id}/sync`,
93
+ requestBodySchema: ContractNoBody,
94
+ responsesByStatusCode: { 200: fragmentSyncResultSchema, ...errorResponses },
95
+ });
96
+ // ---- resolved (workspace only) — the merged catalog an agent sees ---------
97
+ export const resolvedFragmentsContract = defineApiContract({
98
+ method: 'get',
99
+ pathResolver: () => '/prompt-fragments/resolved',
100
+ responsesByStatusCode: { 200: resolvedFragmentCatalogSchema, ...errorResponses },
101
+ });
102
+ //# sourceMappingURL=fragment-library.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fragment-library.js","sourceRoot":"","sources":["../../src/routes/fragment-library.ts"],"names":[],"mappings":"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"}