@tailor-platform/sdk 2.0.0-next.1 → 2.0.0-next.11

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 (478) hide show
  1. package/CHANGELOG.md +1056 -24
  2. package/README.md +9 -9
  3. package/agent-skills/{tailor-sdk → tailor}/SKILL.md +3 -1
  4. package/dist/aigateway-DR4Kwuik.mjs +9 -0
  5. package/dist/aigateway-DR4Kwuik.mjs.map +1 -0
  6. package/dist/{application-DqS1yBg3.mjs → application-CM6hKnSK.mjs} +2155 -2008
  7. package/dist/application-CM6hKnSK.mjs.map +1 -0
  8. package/dist/application-CXNaUNhv.mjs +3 -0
  9. package/dist/authconnection-CZvi9ANm.mjs +9 -0
  10. package/dist/authconnection-CZvi9ANm.mjs.map +1 -0
  11. package/dist/brand-Eo4pLXPJ.mjs.map +1 -1
  12. package/dist/cli/cache/bundle-cache.d.mts +2 -0
  13. package/dist/cli/cache/store.d.mts +1 -0
  14. package/dist/cli/cache/types.d.mts +1 -0
  15. package/dist/cli/commands/api/api-call.d.mts +19 -0
  16. package/dist/cli/commands/api/index.d.mts +4 -0
  17. package/dist/cli/commands/deploy/aigateway.d.mts +5 -0
  18. package/dist/cli/commands/deploy/application.d.mts +7 -0
  19. package/dist/cli/commands/deploy/apply-phases.d.mts +14 -0
  20. package/dist/cli/commands/deploy/auth.d.mts +5 -0
  21. package/dist/cli/commands/deploy/deploy.d.mts +35 -0
  22. package/dist/cli/commands/deploy/executor.d.mts +7 -0
  23. package/dist/cli/commands/deploy/function-registry-types.d.mts +12 -0
  24. package/dist/cli/commands/deploy/function-registry.d.mts +6 -0
  25. package/dist/cli/commands/deploy/idp.d.mts +5 -0
  26. package/dist/cli/commands/deploy/label.d.mts +2 -0
  27. package/dist/cli/commands/deploy/resolver.d.mts +5 -0
  28. package/dist/cli/commands/deploy/secret-manager.d.mts +5 -0
  29. package/dist/cli/commands/deploy/staticwebsite.d.mts +5 -0
  30. package/dist/cli/commands/deploy/tailordb/index.d.mts +10 -0
  31. package/dist/cli/commands/deploy/types.d.mts +4 -0
  32. package/dist/cli/commands/deploy/workflow-execution-policy.d.mts +2 -0
  33. package/dist/cli/commands/deploy/workflow.d.mts +4 -0
  34. package/dist/cli/commands/executor/get.d.mts +19 -0
  35. package/dist/cli/commands/executor/jobs.d.mts +85 -0
  36. package/dist/cli/commands/executor/list.d.mts +18 -0
  37. package/dist/cli/commands/executor/transform.d.mts +42 -0
  38. package/dist/cli/commands/executor/trigger.d.mts +30 -0
  39. package/dist/cli/commands/executor/webhook.d.mts +21 -0
  40. package/dist/cli/commands/function/get.d.mts +17 -0
  41. package/dist/cli/commands/function/list.d.mts +21 -0
  42. package/dist/cli/commands/function/transform.d.mts +12 -0
  43. package/dist/cli/commands/generate/options.d.mts +6 -0
  44. package/dist/cli/commands/generate/seed/bundler.d.mts +27 -0
  45. package/dist/cli/commands/generate/service.d.mts +15 -0
  46. package/dist/cli/commands/machineuser/list.d.mts +26 -0
  47. package/dist/cli/commands/machineuser/token.d.mts +21 -0
  48. package/dist/cli/commands/oauth2client/get.d.mts +17 -0
  49. package/dist/cli/commands/oauth2client/list.d.mts +19 -0
  50. package/dist/cli/commands/oauth2client/transform.d.mts +21 -0
  51. package/dist/cli/commands/organization/folder/create.d.mts +17 -0
  52. package/dist/cli/commands/organization/folder/delete.d.mts +15 -0
  53. package/dist/cli/commands/organization/folder/get.d.mts +16 -0
  54. package/dist/cli/commands/organization/folder/list.d.mts +21 -0
  55. package/dist/cli/commands/organization/folder/update.d.mts +17 -0
  56. package/dist/cli/commands/organization/get.d.mts +15 -0
  57. package/dist/cli/commands/organization/list.d.mts +14 -0
  58. package/dist/cli/commands/organization/transform.d.mts +29 -0
  59. package/dist/cli/commands/organization/tree.d.mts +24 -0
  60. package/dist/cli/commands/organization/update.d.mts +16 -0
  61. package/dist/cli/commands/remove.d.mts +15 -0
  62. package/dist/cli/commands/show.d.mts +39 -0
  63. package/dist/cli/commands/staticwebsite/deploy.d.mts +19 -0
  64. package/dist/cli/commands/tailordb/migrate/bundler.d.mts +29 -0
  65. package/dist/cli/commands/tailordb/migrate/config.d.mts +18 -0
  66. package/dist/cli/commands/tailordb/migrate/diff-calculator.d.mts +246 -0
  67. package/dist/cli/commands/tailordb/migrate/generate.d.mts +16 -0
  68. package/dist/cli/commands/tailordb/migrate/schema-checks.d.mts +5 -0
  69. package/dist/cli/commands/tailordb/migrate/snapshot-types.d.mts +208 -0
  70. package/dist/cli/commands/tailordb/migrate/snapshot.d.mts +98 -0
  71. package/dist/cli/commands/tailordb/migrate/types.d.mts +7 -0
  72. package/dist/cli/commands/tailordb/truncate.d.mts +18 -0
  73. package/dist/cli/commands/workflow/executions.d.mts +62 -0
  74. package/dist/cli/commands/workflow/get.d.mts +21 -0
  75. package/dist/cli/commands/workflow/list.d.mts +18 -0
  76. package/dist/cli/commands/workflow/resume.d.mts +22 -0
  77. package/dist/cli/commands/workflow/start.d.mts +48 -0
  78. package/dist/cli/commands/workflow/status.d.mts +6 -0
  79. package/dist/cli/commands/workflow/transform.d.mts +34 -0
  80. package/dist/cli/commands/workflow/wait.d.mts +15 -0
  81. package/dist/cli/commands/workflow/waiter.d.mts +23 -0
  82. package/dist/cli/commands/workspace/app/health.d.mts +17 -0
  83. package/dist/cli/commands/workspace/app/list.d.mts +21 -0
  84. package/dist/cli/commands/workspace/app/transform.d.mts +20 -0
  85. package/dist/cli/commands/workspace/create.d.mts +27 -0
  86. package/dist/cli/commands/workspace/delete.d.mts +14 -0
  87. package/dist/cli/commands/workspace/get.d.mts +16 -0
  88. package/dist/cli/commands/workspace/list.d.mts +17 -0
  89. package/dist/cli/commands/workspace/restore.d.mts +14 -0
  90. package/dist/cli/commands/workspace/transform.d.mts +20 -0
  91. package/dist/cli/commands/workspace/user/invite.d.mts +21 -0
  92. package/dist/cli/commands/workspace/user/list.d.mts +21 -0
  93. package/dist/cli/commands/workspace/user/remove.d.mts +16 -0
  94. package/dist/cli/commands/workspace/user/transform.d.mts +9 -0
  95. package/dist/cli/commands/workspace/user/update.d.mts +21 -0
  96. package/dist/cli/index.mjs +12 -5481
  97. package/dist/cli/lib.d.mts +86 -21048
  98. package/dist/cli/lib.mjs +245 -46
  99. package/dist/cli/lib.mjs.map +1 -1
  100. package/dist/cli/main.d.mts +23 -0
  101. package/dist/cli/main.mjs +6777 -0
  102. package/dist/cli/main.mjs.map +1 -0
  103. package/dist/cli/query/index.d.mts +38 -0
  104. package/dist/cli/services/application.d.mts +12 -0
  105. package/dist/cli/services/auth/service.d.mts +3 -0
  106. package/dist/cli/services/executor/service.d.mts +1 -0
  107. package/dist/cli/services/http-adapter/bundler.d.mts +4 -0
  108. package/dist/cli/services/http-adapter/service.d.mts +2 -0
  109. package/dist/cli/services/resolver/service.d.mts +1 -0
  110. package/dist/cli/services/tailordb/service.d.mts +3 -0
  111. package/dist/cli/services/workflow/bundler.d.mts +3 -0
  112. package/dist/cli/services/workflow/service.d.mts +1 -0
  113. package/dist/cli/shared/args.d.mts +13 -0
  114. package/dist/cli/shared/client.d.mts +1298 -0
  115. package/dist/cli/shared/config-loader.d.mts +32 -0
  116. package/dist/cli/shared/context.d.mts +29 -0
  117. package/dist/cli/shared/error-json.d.mts +23 -0
  118. package/dist/cli/shared/readonly-guard.d.mts +25 -0
  119. package/dist/cli/shared/script-executor.d.mts +77 -0
  120. package/dist/cli/shared/seed-chunker.d.mts +45 -0
  121. package/dist/cli/shared/seed-context.d.mts +49 -0
  122. package/dist/cli/shared/tailordb-namespaces.d.mts +40 -0
  123. package/dist/cli/shared/tsconfig-paths-plugin.d.mts +2 -0
  124. package/dist/cli/shared/type-generator.d.mts +20 -0
  125. package/dist/cli/shared/workspace-name.d.mts +1 -0
  126. package/dist/cli/ts-hook.d.mts +4 -0
  127. package/dist/cli/ts-hook.mjs +333 -0
  128. package/dist/completion/zsh-worker.zsh +1471 -1217
  129. package/dist/configure/config/index.d.mts +20 -0
  130. package/dist/configure/config/types.d.mts +134 -0
  131. package/dist/configure/index.d.mts +135 -8
  132. package/dist/configure/index.mjs +558 -36
  133. package/dist/configure/index.mjs.map +1 -1
  134. package/dist/configure/services/aigateway/index.d.mts +16 -0
  135. package/dist/configure/services/aigateway/types.d.mts +10 -0
  136. package/dist/configure/services/auth/index.d.mts +33 -0
  137. package/dist/configure/services/auth/types.d.mts +168 -0
  138. package/dist/configure/services/executor/executor.d.mts +70 -0
  139. package/dist/configure/services/executor/index.d.mts +9 -0
  140. package/dist/configure/services/executor/operation.d.mts +50 -0
  141. package/dist/configure/services/executor/trigger/event.d.mts +514 -0
  142. package/dist/configure/services/executor/trigger/index.d.mts +7 -0
  143. package/dist/configure/services/executor/trigger/schedule.d.mts +24 -0
  144. package/dist/configure/services/executor/trigger/webhook.d.mts +43 -0
  145. package/dist/configure/services/executor/types.d.mts +2 -0
  146. package/dist/configure/services/http-adapter/http-adapter.d.mts +124 -0
  147. package/dist/configure/services/http-adapter/index.d.mts +2 -0
  148. package/dist/configure/services/idp/index.d.mts +60 -0
  149. package/dist/configure/services/idp/permission.d.mts +64 -0
  150. package/dist/configure/services/idp/types.d.mts +23 -0
  151. package/dist/configure/services/index.d.mts +40 -0
  152. package/dist/configure/services/resolver/index.d.mts +6 -0
  153. package/dist/configure/services/resolver/permission.d.mts +64 -0
  154. package/dist/configure/services/resolver/resolver.d.mts +88 -0
  155. package/dist/configure/services/resolver/types.d.mts +5 -0
  156. package/dist/configure/services/secrets/index.d.mts +37 -0
  157. package/dist/configure/services/secrets/types.d.mts +10 -0
  158. package/dist/configure/services/staticwebsite/index.d.mts +18 -0
  159. package/dist/configure/services/staticwebsite/types.d.mts +10 -0
  160. package/dist/configure/services/tailordb/index.d.mts +3 -0
  161. package/dist/configure/services/tailordb/permission.d.mts +103 -0
  162. package/dist/configure/services/tailordb/schema.d.mts +486 -0
  163. package/dist/configure/services/tailordb/types.d.mts +198 -0
  164. package/dist/configure/services/workflow/execution-policy.d.mts +70 -0
  165. package/dist/configure/services/workflow/execution-policy.types.d.mts +103 -0
  166. package/dist/configure/services/workflow/index.d.mts +9 -0
  167. package/dist/configure/services/workflow/job.d.mts +92 -0
  168. package/dist/configure/services/workflow/types.d.mts +2 -0
  169. package/dist/configure/services/workflow/wait-point.d.mts +72 -0
  170. package/dist/configure/services/workflow/workflow.d.mts +66 -0
  171. package/dist/configure/types/aigateway-name.d.mts +12 -0
  172. package/dist/configure/types/connection-name.d.mts +12 -0
  173. package/dist/configure/types/field.d.mts +8 -0
  174. package/dist/configure/types/field.types.d.mts +70 -0
  175. package/dist/configure/types/idp-name.d.mts +12 -0
  176. package/dist/configure/types/index.d.mts +5 -0
  177. package/dist/configure/types/machine-user.d.mts +2 -0
  178. package/dist/configure/types/permission-operand.types.d.mts +20 -0
  179. package/dist/configure/types/type.d.mts +73 -0
  180. package/dist/{context-Bd266-ru.mjs → context-DYQVYWqZ.mjs} +4 -5
  181. package/dist/context-DYQVYWqZ.mjs.map +1 -0
  182. package/dist/{crashreport-BsjAkFWw.mjs → crashreport-B5LqCTfF.mjs} +10 -11
  183. package/dist/{crashreport-BsjAkFWw.mjs.map → crashreport-B5LqCTfF.mjs.map} +1 -1
  184. package/dist/{crashreport-pr6Rhvza.mjs → crashreport-eI7ty7ok.mjs} +1 -1
  185. package/dist/{errors-Dtf2WPaW.mjs → errors-D7583Zz7.mjs} +18 -2
  186. package/dist/errors-D7583Zz7.mjs.map +1 -0
  187. package/dist/{file-_oUZo76X.mjs → file-BUcmVIH2.mjs} +12 -22
  188. package/dist/file-BUcmVIH2.mjs.map +1 -0
  189. package/dist/{globals-Crz8o65k.mjs → globals-TfAVItuK.mjs} +32 -55
  190. package/dist/globals-TfAVItuK.mjs.map +1 -0
  191. package/dist/iconv-QWaZh0TT.mjs +38 -0
  192. package/dist/iconv-QWaZh0TT.mjs.map +1 -0
  193. package/dist/{idp-BDbK5gjm.mjs → idp-RA_swu-h.mjs} +12 -5
  194. package/dist/idp-RA_swu-h.mjs.map +1 -0
  195. package/dist/{interceptor-D-q1rvRl.mjs → interceptor-e33JtsC-.mjs} +2 -2
  196. package/dist/interceptor-e33JtsC-.mjs.map +1 -0
  197. package/dist/kysely/index.d.mts +5 -7
  198. package/dist/logger-BtX0suGY.mjs +48 -0
  199. package/dist/logger-BtX0suGY.mjs.map +1 -0
  200. package/dist/logger-CXQq9YIp.mjs +317 -0
  201. package/dist/logger-CXQq9YIp.mjs.map +1 -0
  202. package/dist/node-builtins-CmaL2Cbq.mjs +36 -0
  203. package/dist/node-builtins-CmaL2Cbq.mjs.map +1 -0
  204. package/dist/parser/service/auth/index.d.mts +1 -0
  205. package/dist/parser/service/auth/schema.d.mts +3 -0
  206. package/dist/parser/service/http-adapter/index.d.mts +1 -0
  207. package/dist/parser/service/http-adapter/schema.d.mts +1 -0
  208. package/dist/parser/service/idp/types.d.mts +5 -0
  209. package/dist/parser/service/tailordb/type-source.d.mts +10 -0
  210. package/dist/parser/service/tailordb/types.d.mts +131 -0
  211. package/dist/platform-serialize-RoRtBS0v.mjs +46 -0
  212. package/dist/platform-serialize-RoRtBS0v.mjs.map +1 -0
  213. package/dist/plugin/builtin/enum-constants/index.d.mts +15 -1
  214. package/dist/plugin/builtin/enum-constants/index.mjs +115 -2
  215. package/dist/plugin/builtin/enum-constants/index.mjs.map +1 -0
  216. package/dist/plugin/builtin/file-utils/index.d.mts +15 -1
  217. package/dist/plugin/builtin/file-utils/index.mjs +149 -2
  218. package/dist/plugin/builtin/file-utils/index.mjs.map +1 -0
  219. package/dist/plugin/builtin/kysely-type/index.d.mts +15 -1
  220. package/dist/plugin/builtin/kysely-type/index.mjs +274 -2
  221. package/dist/plugin/builtin/kysely-type/index.mjs.map +1 -0
  222. package/dist/plugin/builtin/seed/index.d.mts +46 -2
  223. package/dist/plugin/builtin/seed/index.mjs +1 -1
  224. package/dist/plugin/builtin/seed/seed-type-processor.d.mts +21 -0
  225. package/dist/plugin/builtin/seed/types.d.mts +2 -0
  226. package/dist/plugin/get-generated-type.d.mts +16 -0
  227. package/dist/plugin/index.d.mts +3 -117
  228. package/dist/plugin/index.mjs +1 -1
  229. package/dist/plugin/index.mjs.map +1 -1
  230. package/dist/plugin/manager.d.mts +2 -0
  231. package/dist/plugin/types.d.mts +242 -0
  232. package/dist/plugin/with-context.d.mts +101 -0
  233. package/dist/{runtime-n9NCkjee.mjs → register-ts-hook-LYV7zH-e.mjs} +9652 -4479
  234. package/dist/register-ts-hook-LYV7zH-e.mjs.map +1 -0
  235. package/dist/{registry-DdsYlL_P.mjs → registry-BIGVUrMB.mjs} +12 -9
  236. package/dist/registry-BIGVUrMB.mjs.map +1 -0
  237. package/dist/{repl-editor-DmGr9zMw.mjs → repl-editor-BCozyiNq.mjs} +6 -5
  238. package/dist/{repl-editor-DmGr9zMw.mjs.map → repl-editor-BCozyiNq.mjs.map} +1 -1
  239. package/dist/runtime/aigateway.d.mts +25 -0
  240. package/dist/runtime/aigateway.mjs +3 -0
  241. package/dist/runtime/authconnection.d.mts +21 -2
  242. package/dist/runtime/authconnection.mjs +2 -2
  243. package/dist/runtime/context.d.mts +54 -2
  244. package/dist/runtime/context.mjs +2 -2
  245. package/dist/runtime/field-parse.d.mts +10 -0
  246. package/dist/runtime/file.d.mts +170 -2
  247. package/dist/runtime/file.mjs +2 -2
  248. package/dist/runtime/globals.d.mts +38 -20
  249. package/dist/runtime/iconv.d.mts +73 -2
  250. package/dist/runtime/iconv.mjs +2 -2
  251. package/dist/runtime/idp.d.mts +129 -2
  252. package/dist/runtime/idp.mjs +2 -2
  253. package/dist/runtime/index.d.mts +48 -9
  254. package/dist/runtime/index.mjs +10 -8
  255. package/dist/runtime/logger.d.mts +98 -0
  256. package/dist/runtime/logger.mjs +3 -0
  257. package/dist/runtime/secretmanager.d.mts +41 -2
  258. package/dist/runtime/secretmanager.mjs +2 -2
  259. package/dist/runtime/types.d.mts +25 -0
  260. package/dist/runtime/workflow.d.mts +106 -2
  261. package/dist/runtime/workflow.mjs +2 -2
  262. package/dist/{schema-BhkpP5Hw.mjs → schema--xYWRGfe.mjs} +288 -229
  263. package/dist/schema--xYWRGfe.mjs.map +1 -0
  264. package/dist/{secret-file-DBqZhjFQ.mjs → secret-file-C3J4Gy8r.mjs} +2 -2
  265. package/dist/{secret-file-DBqZhjFQ.mjs.map → secret-file-C3J4Gy8r.mjs.map} +1 -1
  266. package/dist/secretmanager-CYlpffsz.mjs +13 -0
  267. package/dist/secretmanager-CYlpffsz.mjs.map +1 -0
  268. package/dist/secretmanager-IY4UvinW.mjs +131 -0
  269. package/dist/secretmanager-IY4UvinW.mjs.map +1 -0
  270. package/dist/seed/index.d.mts +4 -4
  271. package/dist/seed-B-yckgQY.mjs +483 -0
  272. package/dist/seed-B-yckgQY.mjs.map +1 -0
  273. package/dist/{service-DU1mVzri.mjs → service-B5WynBHQ.mjs} +3 -3
  274. package/dist/{service-DU1mVzri.mjs.map → service-B5WynBHQ.mjs.map} +1 -1
  275. package/dist/service-M7OYziQP.mjs +3 -0
  276. package/dist/service-k1xy_A5G.mjs +864 -0
  277. package/dist/service-k1xy_A5G.mjs.map +1 -0
  278. package/dist/service_pb-D5--My_M.mjs +167 -0
  279. package/dist/service_pb-D5--My_M.mjs.map +1 -0
  280. package/dist/service_pb-i8CmnQP4.mjs +3 -0
  281. package/dist/tailor-proto/src/tailor/v1/aigateway_pb.d.mts +203 -0
  282. package/dist/tailor-proto/src/tailor/v1/aigateway_resource_pb.d.mts +57 -0
  283. package/dist/tailor-proto/src/tailor/v1/application_pb.d.mts +420 -0
  284. package/dist/tailor-proto/src/tailor/v1/application_resource_pb.d.mts +160 -0
  285. package/dist/tailor-proto/src/tailor/v1/auth_pb.d.mts +2069 -0
  286. package/dist/tailor-proto/src/tailor/v1/auth_resource_pb.d.mts +865 -0
  287. package/dist/tailor-proto/src/tailor/v1/events_pb.d.mts +111 -0
  288. package/dist/tailor-proto/src/tailor/v1/events_resource_pb.d.mts +68 -0
  289. package/dist/tailor-proto/src/tailor/v1/executor_pb.d.mts +438 -0
  290. package/dist/tailor-proto/src/tailor/v1/executor_resource_pb.d.mts +586 -0
  291. package/dist/tailor-proto/src/tailor/v1/function_pb.d.mts +192 -0
  292. package/dist/tailor-proto/src/tailor/v1/function_registry_pb.d.mts +450 -0
  293. package/dist/tailor-proto/src/tailor/v1/function_resource_pb.d.mts +191 -0
  294. package/dist/tailor-proto/src/tailor/v1/http_adapter_resource_pb.d.mts +49 -0
  295. package/dist/tailor-proto/src/tailor/v1/idp_pb.d.mts +406 -0
  296. package/dist/tailor-proto/src/tailor/v1/idp_resource_pb.d.mts +429 -0
  297. package/dist/tailor-proto/src/tailor/v1/metadata_pb.d.mts +72 -0
  298. package/dist/tailor-proto/src/tailor/v1/metadata_resource_pb.d.mts +16 -0
  299. package/dist/tailor-proto/src/tailor/v1/meter_pb.d.mts +308 -0
  300. package/dist/tailor-proto/src/tailor/v1/pipeline_pb.d.mts +590 -0
  301. package/dist/tailor-proto/src/tailor/v1/pipeline_resource_pb.d.mts +329 -0
  302. package/dist/tailor-proto/src/tailor/v1/resource_pb.d.mts +112 -0
  303. package/dist/tailor-proto/src/tailor/v1/secret_manager_pb.d.mts +345 -0
  304. package/dist/tailor-proto/src/tailor/v1/secret_manager_resource_pb.d.mts +53 -0
  305. package/dist/tailor-proto/src/tailor/v1/service_pb.d.mts +3658 -0
  306. package/dist/tailor-proto/src/tailor/v1/stateflow_pb.d.mts +186 -0
  307. package/dist/tailor-proto/src/tailor/v1/stateflow_resource_pb.d.mts +28 -0
  308. package/dist/tailor-proto/src/tailor/v1/staticwebsite_pb.d.mts +428 -0
  309. package/dist/tailor-proto/src/tailor/v1/staticwebsite_resource_pb.d.mts +89 -0
  310. package/dist/tailor-proto/src/tailor/v1/tailordb_pb.d.mts +683 -0
  311. package/dist/tailor-proto/src/tailor/v1/tailordb_resource_pb.d.mts +796 -0
  312. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_pb.d.mts +329 -0
  313. package/dist/tailor-proto/src/tailor/v1/telemetryrouter_resource_pb.d.mts +207 -0
  314. package/dist/tailor-proto/src/tailor/v1/workflow_pb.d.mts +961 -0
  315. package/dist/tailor-proto/src/tailor/v1/workflow_resource_pb.d.mts +330 -0
  316. package/dist/tailor-proto/src/tailor/v1/workspace_pb.d.mts +2014 -0
  317. package/dist/tailor-proto/src/tailor/v1/workspace_resource_pb.d.mts +482 -0
  318. package/dist/{telemetry-CdqJEzkj.mjs → telemetry-BRVdwh14.mjs} +3 -3
  319. package/dist/telemetry-BRVdwh14.mjs.map +1 -0
  320. package/dist/telemetry-CkbkeJxl.mjs +3 -0
  321. package/dist/test-env-key-D7UkZp99.mjs +75 -0
  322. package/dist/test-env-key-D7UkZp99.mjs.map +1 -0
  323. package/dist/types/aigateway.generated.d.mts +12 -0
  324. package/dist/types/app-config.generated.d.mts +4 -0
  325. package/dist/types/auth-connection.generated.d.mts +33 -0
  326. package/dist/types/auth.generated.d.mts +188 -0
  327. package/dist/types/executor.generated.d.mts +229 -0
  328. package/dist/types/helpers.d.mts +40 -0
  329. package/dist/types/http-adapter.generated.d.mts +28 -0
  330. package/dist/types/idp.generated.d.mts +626 -0
  331. package/dist/types/resolver.generated.d.mts +82 -0
  332. package/dist/types/secrets.generated.d.mts +14 -0
  333. package/dist/types/staticwebsite.generated.d.mts +14 -0
  334. package/dist/types/tailordb.generated.d.mts +468 -0
  335. package/dist/types/workflow.generated.d.mts +17 -0
  336. package/dist/user-agent-Bgsszb5I.mjs +28 -0
  337. package/dist/user-agent-Bgsszb5I.mjs.map +1 -0
  338. package/dist/utils/test/index.d.mts +5 -100
  339. package/dist/utils/test/index.mjs +38 -189
  340. package/dist/utils/test/index.mjs.map +1 -1
  341. package/dist/vitest/environment.d.mts +1 -2
  342. package/dist/vitest/environment.mjs +2 -2
  343. package/dist/vitest/environment.mjs.map +1 -1
  344. package/dist/vitest/index.d.mts +17 -431
  345. package/dist/vitest/index.mjs +1234 -67
  346. package/dist/vitest/index.mjs.map +1 -1
  347. package/dist/vitest/mock-kysely.d.mts +61 -0
  348. package/dist/vitest/mock.d.mts +10 -0
  349. package/dist/vitest/mocks/aigateway.d.mts +40 -0
  350. package/dist/vitest/mocks/authconnection.d.mts +38 -0
  351. package/dist/vitest/mocks/file.d.mts +58 -0
  352. package/dist/vitest/mocks/iconv.d.mts +51 -0
  353. package/dist/vitest/mocks/idp.d.mts +60 -0
  354. package/dist/vitest/mocks/logger.d.mts +45 -0
  355. package/dist/vitest/mocks/secretmanager.d.mts +44 -0
  356. package/dist/vitest/mocks/tailordb.d.mts +115 -0
  357. package/dist/vitest/mocks/workflow.d.mts +148 -0
  358. package/dist/vitest/setup.d.mts +1 -2
  359. package/dist/vitest/setup.mjs +2 -2
  360. package/dist/vitest/workflow-local.d.mts +41 -0
  361. package/dist/workflow-Bamae_Yc.mjs +34 -0
  362. package/dist/workflow-Bamae_Yc.mjs.map +1 -0
  363. package/dist/{client-z_oHGVNy.mjs → workspace_resource_pb-DXnO2AT-.mjs} +57 -621
  364. package/dist/workspace_resource_pb-DXnO2AT-.mjs.map +1 -0
  365. package/docs/cli/application.md +150 -250
  366. package/docs/cli/auth.md +51 -295
  367. package/docs/cli/completion.md +1 -25
  368. package/docs/cli/crashreport.md +3 -61
  369. package/docs/cli/executor.md +72 -183
  370. package/docs/cli/function.md +16 -132
  371. package/docs/cli/organization.md +11 -221
  372. package/docs/cli/plugin.md +29 -0
  373. package/docs/cli/query.md +2 -22
  374. package/docs/cli/secret.md +71 -251
  375. package/docs/cli/setup.md +138 -40
  376. package/docs/cli/skills.md +50 -39
  377. package/docs/cli/staticwebsite.md +32 -180
  378. package/docs/cli/tailordb.md +89 -413
  379. package/docs/cli/upgrade.md +2 -22
  380. package/docs/cli/user.md +78 -247
  381. package/docs/cli/workflow.md +150 -172
  382. package/docs/cli/workspace.md +167 -538
  383. package/docs/cli-reference.md +214 -96
  384. package/docs/configuration.md +90 -6
  385. package/docs/github-actions.md +72 -24
  386. package/docs/migration/v2.md +1613 -0
  387. package/docs/multi-environment.md +29 -7
  388. package/docs/plugin/custom.md +4 -4
  389. package/docs/plugin/index.md +8 -8
  390. package/docs/quickstart.md +8 -7
  391. package/docs/runtime.md +18 -9
  392. package/docs/services/aigateway.md +20 -2
  393. package/docs/services/auth.md +51 -59
  394. package/docs/services/executor.md +91 -6
  395. package/docs/services/http-adapter.md +16 -1
  396. package/docs/services/idp.md +62 -7
  397. package/docs/services/resolver.md +67 -11
  398. package/docs/services/secret.md +11 -11
  399. package/docs/services/staticwebsite.md +8 -2
  400. package/docs/services/tailordb-migration.md +55 -29
  401. package/docs/services/tailordb.md +205 -102
  402. package/docs/services/workflow.md +163 -55
  403. package/docs/testing.md +244 -143
  404. package/package.json +61 -46
  405. package/postinstall.mjs +4 -6
  406. package/dist/application-DB2r36Et.mjs +0 -3
  407. package/dist/application-DqS1yBg3.mjs.map +0 -1
  408. package/dist/authconnection-D2MhtTN5.mjs +0 -15
  409. package/dist/authconnection-D2MhtTN5.mjs.map +0 -1
  410. package/dist/authconnection-DvUQAjQS.d.mts +0 -39
  411. package/dist/cli/erd-viewer-assets/app.js +0 -1181
  412. package/dist/cli/erd-viewer-assets/index.html +0 -73
  413. package/dist/cli/erd-viewer-assets/serve.json +0 -13
  414. package/dist/cli/erd-viewer-assets/styles.css +0 -789
  415. package/dist/cli/index.d.mts +0 -5
  416. package/dist/cli/index.mjs.map +0 -1
  417. package/dist/client-Dbohmtkv.mjs +0 -3
  418. package/dist/client-z_oHGVNy.mjs.map +0 -1
  419. package/dist/context-Bd266-ru.mjs.map +0 -1
  420. package/dist/context-BuuIb8CC.d.mts +0 -68
  421. package/dist/enum-constants-j9QBF0cB.mjs +0 -116
  422. package/dist/enum-constants-j9QBF0cB.mjs.map +0 -1
  423. package/dist/errors-Dtf2WPaW.mjs.map +0 -1
  424. package/dist/field-DOsJCPFa.mjs +0 -22
  425. package/dist/field-DOsJCPFa.mjs.map +0 -1
  426. package/dist/file-BB8Vs9O_.d.mts +0 -250
  427. package/dist/file-_oUZo76X.mjs.map +0 -1
  428. package/dist/file-utils-DcyIPFQh.mjs +0 -150
  429. package/dist/file-utils-DcyIPFQh.mjs.map +0 -1
  430. package/dist/globals-Crz8o65k.mjs.map +0 -1
  431. package/dist/http-adapter.generated-WgMnb7Sb.d.mts +0 -580
  432. package/dist/iconv-Co-TOPuH.d.mts +0 -122
  433. package/dist/iconv-D2vi8G36.mjs +0 -63
  434. package/dist/iconv-D2vi8G36.mjs.map +0 -1
  435. package/dist/idp-BDbK5gjm.mjs.map +0 -1
  436. package/dist/idp-DrhVrLmV.d.mts +0 -160
  437. package/dist/index-5vPyRu1y.d.mts +0 -18
  438. package/dist/index-B7AKc18V.d.mts +0 -47
  439. package/dist/index-BlpzXncY.d.mts +0 -1016
  440. package/dist/index-CK7u9isy.d.mts +0 -46
  441. package/dist/index-CNYe5lnW.d.mts +0 -18
  442. package/dist/index-DjUdWlzf.d.mts +0 -18
  443. package/dist/index-ZePLwxw7.d.mts +0 -208
  444. package/dist/interceptor-D-q1rvRl.mjs.map +0 -1
  445. package/dist/job-fuc3j1Ma.mjs +0 -53
  446. package/dist/job-fuc3j1Ma.mjs.map +0 -1
  447. package/dist/kysely-type-DR8uzZTA.mjs +0 -274
  448. package/dist/kysely-type-DR8uzZTA.mjs.map +0 -1
  449. package/dist/logger-CxF-Ex5d.mjs +0 -220
  450. package/dist/logger-CxF-Ex5d.mjs.map +0 -1
  451. package/dist/mock-BjFj5o1I.mjs +0 -804
  452. package/dist/mock-BjFj5o1I.mjs.map +0 -1
  453. package/dist/registry-DdsYlL_P.mjs.map +0 -1
  454. package/dist/rolldown-runtime-DXywRVcq.mjs +0 -20
  455. package/dist/runtime-n9NCkjee.mjs.map +0 -1
  456. package/dist/schema-BhkpP5Hw.mjs.map +0 -1
  457. package/dist/secretmanager-B3n4KHfm.d.mts +0 -55
  458. package/dist/secretmanager-BVxw3ih_.mjs +0 -24
  459. package/dist/secretmanager-BVxw3ih_.mjs.map +0 -1
  460. package/dist/seed-jf3008-h.mjs +0 -1160
  461. package/dist/seed-jf3008-h.mjs.map +0 -1
  462. package/dist/service-CCL8ruDf.mjs +0 -459
  463. package/dist/service-CCL8ruDf.mjs.map +0 -1
  464. package/dist/service-D6yonf2I.mjs +0 -3
  465. package/dist/telemetry-CdqJEzkj.mjs.map +0 -1
  466. package/dist/telemetry-ClwW5ohF.mjs +0 -3
  467. package/dist/test-env-key-D9kM6ETE.mjs +0 -49
  468. package/dist/test-env-key-D9kM6ETE.mjs.map +0 -1
  469. package/dist/types-B2RpYyA_.mjs +0 -371
  470. package/dist/types-B2RpYyA_.mjs.map +0 -1
  471. package/dist/types-ClhIrW_C.mjs +0 -4
  472. package/dist/types-DCUhgpyI.d.mts +0 -784
  473. package/dist/types-DhO_VEZd.d.mts +0 -574
  474. package/dist/types-DwDgacni.d.mts +0 -338
  475. package/dist/workflow-BbKvGLQg.d.mts +0 -96
  476. package/dist/workflow-DgemCAz3.mjs +0 -38
  477. package/dist/workflow-DgemCAz3.mjs.map +0 -1
  478. package/dist/workflow.generated-DtQwEo-x.d.mts +0 -671
@@ -12,7 +12,7 @@ For the CLI command reference, see [`tailordb migration`](../cli/tailordb.md#tai
12
12
 
13
13
  - **Local snapshot–based diff detection** — each migration is generated by diffing your current type definitions against the previous snapshot stored in `migrations/<NNNN>/`.
14
14
  - **Transaction-wrapped data migrations** — each `migrate.ts` script runs inside a database transaction on the platform; if the script throws, all changes in that migration roll back.
15
- - **Automatic execution during `apply`** — `tailor-sdk deploy` detects pending migrations, runs the two-stage type update (pre-migration → script → post-migration), and updates the migration checkpoint label.
15
+ - **Automatic execution during `apply`** — `tailor deploy` detects pending migrations, runs the two-stage type update (pre-migration → script → post-migration), and updates the migration checkpoint label.
16
16
  - **Type-safe scripts** — the generated `db.ts` provides Kysely types that reflect the schema state **before** the migration runs, so transformations are written against the actual data shape.
17
17
 
18
18
  **Files in `migrations/`**
@@ -42,24 +42,24 @@ When you start with no `migrations/` directory:
42
42
  2. Define your initial types in `tailordb/`.
43
43
  3. Generate the initial migration:
44
44
  ```bash
45
- tailor-sdk tailordb migration generate
45
+ tailor tailordb migration generate
46
46
  ```
47
47
  This creates `migrations/0000/schema.json` from your current types.
48
- 4. Run `tailor-sdk deploy`. The migration label is set to `0000` on the deployed namespace.
48
+ 4. Run `tailor deploy`. The migration label is set to `0000` on the deployed namespace.
49
49
 
50
50
  ### Adding migrations to an existing project
51
51
 
52
52
  If you already have a deployed workspace whose schema matches your local type definitions:
53
53
 
54
54
  1. Add the `migration` block to `tailor.config.ts`.
55
- 2. Run `tailor-sdk tailordb migration generate` to create `0000/schema.json` from current local types.
56
- 3. Run `tailor-sdk deploy`. Because remote schema already matches, no script runs; only the migration label is set.
55
+ 2. Run `tailor tailordb migration generate` to create `0000/schema.json` from current local types.
56
+ 3. Run `tailor deploy`. Because remote schema already matches, no script runs; only the migration label is set.
57
57
 
58
58
  If your local types and remote schema have **diverged**, reconcile them before introducing migrations — either update local types to match remote, or accept that the first non-`0000` migration will reflect that gap.
59
59
 
60
60
  ### Resetting
61
61
 
62
- `tailor-sdk tailordb migration generate --init` deletes the existing `migrations/` directory and starts over from `0000`. Use this only on projects that are not yet deployed, or when you have decided to re-baseline (the next `apply` will see all migrations as new and require coordination — see [Resetting a deployed project](#resetting-a-deployed-project)).
62
+ `tailor tailordb migration generate --init` deletes the existing `migrations/` directory and starts over from `0000`. Use this only on projects that are not yet deployed, or when you have decided to re-baseline (the next `apply` will see all migrations as new and require coordination — see [Resetting a deployed project](#resetting-a-deployed-project)).
63
63
 
64
64
  ## Migration Workflow
65
65
 
@@ -69,7 +69,7 @@ A typical change cycle:
69
69
 
70
70
  ```typescript
71
71
  // tailordb/user.ts
72
- export const user = db.type("User", {
72
+ export const user = db.table("User", {
73
73
  name: db.string(),
74
74
  email: db.string(), // ← new required field
75
75
  ...db.fields.timestamps(),
@@ -79,7 +79,7 @@ A typical change cycle:
79
79
  2. **Generate the migration.**
80
80
 
81
81
  ```bash
82
- tailor-sdk tailordb migration generate --name "add email to user"
82
+ tailor tailordb migration generate --name "add email to user"
83
83
  ```
84
84
 
85
85
  Output:
@@ -109,7 +109,7 @@ A typical change cycle:
109
109
 
110
110
  4. **Apply.**
111
111
  ```bash
112
- tailor-sdk deploy
112
+ tailor deploy
113
113
  ```
114
114
  The pre-migration phase relaxes the new field to optional, the script runs and populates values, then the post-migration phase enforces `required: true`.
115
115
 
@@ -126,10 +126,20 @@ Warning: data loss possible:
126
126
  No `migrate.ts` is generated automatically because the schema change itself is non-breaking, but the existing data is dropped during the post-migration phase. If you need to preserve or transform that data first (for example, copy a column into another table before it disappears), add a script with:
127
127
 
128
128
  ```bash
129
- tailor-sdk tailordb migration script 0002
129
+ tailor tailordb migration script 0002
130
130
  ```
131
131
 
132
- This writes `migrations/0002/migrate.ts` and `migrations/0002/db.ts` next to the existing `diff.json`. The removed field stays readable inside `migrate.ts` because the pre-migration phase keeps it on the type until the script finishes (see [Per-migration phases](#per-migration-phases)). The next `tailor-sdk deploy` runs the script automatically — `migrate.ts` is executed whenever the file exists on disk, regardless of whether the diff itself required it.
132
+ This writes `migrations/0002/migrate.ts` and `migrations/0002/db.ts` next to the existing `diff.json`. The removed field stays readable inside `migrate.ts` because the pre-migration phase keeps it on the type until the script finishes (see [Per-migration phases](#per-migration-phases)). The next `tailor deploy` runs the script automatically — `migrate.ts` is executed whenever the file exists on disk, regardless of whether the diff itself required it.
133
+
134
+ ### Breaking changes without a script
135
+
136
+ Breaking changes require `migrate.ts`. If it is missing at deploy time (for example, the generated script was deleted), `tailor deploy` fails before applying the migration or anything after it. When there is genuinely nothing to migrate — say, the affected type holds no data yet — record an explicit acknowledgment instead of keeping an empty script:
137
+
138
+ ```bash
139
+ tailor tailordb migration script 0002 --no-script --reason "no data yet, safe to skip"
140
+ ```
141
+
142
+ This stores the reason in `migrations/0002/diff.json` (commit the change). The next `tailor deploy` applies the schema change as usual, skips only the script step, and logs the recorded reason. The command refuses to record a skip while `migrate.ts` exists — delete the script first. If `migrate.ts` is added back later, the script takes precedence over the acknowledgment and runs.
133
143
 
134
144
  ## Configuration
135
145
 
@@ -220,10 +230,13 @@ The `env` values are injected at bundle time (the same mechanism as resolvers/ex
220
230
  | Remove field | No | Optional | Warning tier — no script is auto-generated, but you can add one with `tailordb migration script` to preserve data before the field is dropped. The field stays readable from `migrate.ts` during Pre-migration and is dropped in Post-migration. |
221
231
  | Change optional → required | Yes | Yes | Script sets defaults for null values |
222
232
  | Change required → optional | No | No | Schema change only |
223
- | Add index | No | No | Schema change only |
224
- | Remove index | No | No | Schema change only |
233
+ | Add index (non-unique) | No | No | Schema change only |
234
+ | Add unique index | Yes | Yes | Script must resolve duplicate value combinations across the index fields |
235
+ | Change unique index fields | Yes | Yes | Treated like adding a new unique constraint over the new field set |
236
+ | Remove index | No | No | Schema change only (removing the unique constraint from an index is also non-breaking) |
225
237
  | Add unique constraint | Yes | Yes | Script must resolve duplicate values |
226
238
  | Remove unique constraint | No | No | Schema change only |
239
+ | Change decimal scale | Yes | Yes | Auto-generated script re-saves existing rows under the new scale. Decreasing scale rounds values half-up and can lose precision. If the same change adds a unique constraint, duplicate handling runs after re-saving. |
227
240
  | Add enum value | No | No | Schema change only |
228
241
  | Remove enum value | Yes | Yes | Script migrates records with removed values |
229
242
  | Add type | No | No | Schema change only |
@@ -245,14 +258,14 @@ The same pattern works for switching between scalar and array.
245
258
 
246
259
  ## Automatic Migration Execution
247
260
 
248
- When you run `tailor-sdk deploy`, the SDK detects pending migrations (anything past the current `sdk-migration` label on the deployed namespace) and runs them in order before continuing with the rest of the apply.
261
+ When you run `tailor deploy`, the SDK detects pending migrations (anything past the current `sdk-migration` label on the deployed namespace) and runs them in order before continuing with the rest of the apply.
249
262
 
250
263
  ### Per-migration phases
251
264
 
252
265
  For each pending migration:
253
266
 
254
- 1. **Pre-migration**: Type changes that would be breaking are applied in a relaxed form first. Newly-required fields are added as optional; fields whose `optional → required` transition is breaking are temporarily kept optional. Fields that are being removed in this migration are temporarily kept on the type so that `migrate.ts` can still read them (for example, to `innerJoin` through a foreign key that is about to be dropped). Non-breaking changes that are part of the same migration are also applied here.
255
- 2. **Script execution**: If `migrate.ts` exists on disk for this migration, it is bundled and sent to the platform via the script execution API and runs as the configured machine user inside a transaction. The script is hard-required for breaking changes (`diff.requiresMigrationScript`) but is also executed when present for warning-tier diffs — see [Warnings and optional migration scripts](#warnings-and-optional-migration-scripts).
267
+ 1. **Pre-migration**: Type changes that would be breaking are applied in a relaxed form first. Newly-required fields are added as optional; fields whose `optional → required` transition is breaking are temporarily kept optional. Fields that are being removed in this migration are temporarily kept on the type so that `migrate.ts` can still read them (for example, to `innerJoin` through a foreign key that is about to be dropped). Breaking type-level index changes are relaxed the same way: a newly-added unique index is withheld, and an index gaining a unique constraint (or a unique index changing its field set) keeps its previous definition, so `migrate.ts` can resolve duplicates first. Non-breaking changes that are part of the same migration are also applied here.
268
+ 2. **Script execution**: If `migrate.ts` exists on disk for this migration, it is bundled and sent to the platform via the script execution API and runs as the configured machine user inside a transaction. The script is hard-required for breaking changes (`diff.requiresMigrationScript`) deploy fails if the file is missing, unless a `--no-script` acknowledgment was recorded (see [Breaking changes without a script](#breaking-changes-without-a-script)). It is also executed when present for warning-tier diffs — see [Warnings and optional migration scripts](#warnings-and-optional-migration-scripts).
256
269
  3. **Post-migration**: Required constraints are enforced; field and type deletions are applied (the columns/tables are physically dropped here); the `sdk-migration` label is bumped to this migration's number.
257
270
 
258
271
  This split is what allows existing rows to be backfilled before the database starts rejecting nulls, and what lets `migrate.ts` traverse foreign-key fields that the same migration removes.
@@ -275,10 +288,20 @@ Namespace: tailordb
275
288
  - Field 'email': required: remote=false, expected=true
276
289
  ```
277
290
 
278
- To bypass both checks (not recommended outside of recovery scenarios):
291
+ The error also points you at `migration status`, `migration generate`, `migration sync`, and `migration set` — see [Remote schema drift detected](#remote-schema-drift-detected) for which one applies.
292
+
293
+ To run the same checks without deploying — plus migration file integrity (numbering, parseable contents, and a `migrate.ts` or a recorded `--no-script` acknowledgment for every migration that requires a script):
279
294
 
280
295
  ```bash
281
- tailor-sdk deploy --no-schema-check
296
+ tailor tailordb migration validate
297
+ ```
298
+
299
+ It reports issues per namespace, exits with a non-zero code when any check fails, and supports `--json` for machine-readable output.
300
+
301
+ To bypass both checks during deploy (not recommended outside of recovery scenarios):
302
+
303
+ ```bash
304
+ tailor deploy --no-schema-check
282
305
  ```
283
306
 
284
307
  ### Example output
@@ -297,7 +320,9 @@ tailor-sdk deploy --no-schema-check
297
320
 
298
321
  ## `migration set` Semantics
299
322
 
300
- `tailor-sdk tailordb migration set <N>` updates the `sdk-migration` label on the deployed namespace's metadata. **It does not modify any data or schema.** It only changes which migrations the next `apply` will consider pending.
323
+ `tailor tailordb migration set <N>` updates the `sdk-migration` label on the deployed namespace's metadata. **It does not modify any data or schema.** It only changes which migrations the next `apply` will consider pending.
324
+
325
+ The migration number is validated before anything is sent to the remote: it must be a 4-digit value (e.g. `0001`) or a bare integer (e.g. `1`) within 0–9999, and must exist in the working tree's migration history, which is itself validated (a gapped history is rejected). `0` is always accepted as the baseline (even when no migrations directory exists yet), provided the history passes validation.
301
326
 
302
327
  | Movement | Effect on next `apply` | Effect on data |
303
328
  | -------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------- |
@@ -314,7 +339,7 @@ Use cases:
314
339
 
315
340
  ## `migration sync` Semantics
316
341
 
317
- `tailor-sdk tailordb migration sync <N>` reconstructs the schema snapshot at migration `N` from the working tree's migration history and **overwrites the remote schema to match it**, then sets the `sdk-migration` label to `N`. Unlike `migration set`, it changes the remote schema as well as the bookkeeping. Like `set`, it never runs `migrate.ts` scripts itself — it only changes what the next `apply` considers pending:
342
+ `tailor tailordb migration sync <N>` reconstructs the schema snapshot at migration `N` from the working tree's migration history and **overwrites the remote schema to match it**, then sets the `sdk-migration` label to `N`. Unlike `migration set`, it changes the remote schema as well as the bookkeeping. Like `set`, it never runs `migrate.ts` scripts itself — it only changes what the next `apply` considers pending:
318
343
 
319
344
  | Movement | Effect on next `apply` | Effect on data |
320
345
  | -------------------------------- | ----------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
@@ -325,7 +350,7 @@ Before anything is sent to the remote, `sync` verifies that replaying the full m
325
350
 
326
351
  Because syncing backward causes already-applied scripts to re-execute on the next deploy, **write `migrate.ts` scripts to be idempotent** (see [Performance and Large Tables](#performance-and-large-tables) for resumable `where` clauses).
327
352
 
328
- The main use case is recovering from drift after a `deploy --no-schema-check` from an older revision: instead of checking out that revision, run `migration sync <N>` to restore the remote to a known snapshot, then `tailor-sdk deploy` to apply the remaining migrations from the working tree.
353
+ The main use case is recovering from drift after a `deploy --no-schema-check` from an older revision: instead of checking out that revision, run `migration sync <N>` to restore the remote to a known snapshot, then `tailor deploy` to apply the remaining migrations from the working tree.
329
354
 
330
355
  ## Team Workflow and CI/CD
331
356
 
@@ -340,7 +365,8 @@ Migration numbers are assigned sequentially, so two developers branching off the
340
365
  ### CI / CD
341
366
 
342
367
  - For non-interactive environments, pass `--yes` to `migration generate` and `--yes` to `apply`. `apply` runs migrations automatically when the `migrations/` directory is configured.
343
- - Run `tailor-sdk tailordb migration status` in CI to detect "developer forgot to commit a migration" situations early. The exit code is non-zero only on errors, so check the output.
368
+ - Run `tailor tailordb migration validate` in CI to catch uncommitted migrations, broken migration files, and remote schema drift before deploying. It exits with a non-zero code when validation fails and supports `--json`.
369
+ - `tailor tailordb migration status` shows applied and pending migrations for a human-readable comparison. Its exit code is non-zero only on errors, so check the output.
344
370
  - Avoid running migrations in parallel against the same workspace — there is no locking. Serialize deploys per environment.
345
371
 
346
372
  ### Resetting a deployed project
@@ -348,8 +374,8 @@ Migration numbers are assigned sequentially, so two developers branching off the
348
374
  `migration generate --init` is destructive locally but does not touch the deployed workspace. Re-baselining a deployed project requires:
349
375
 
350
376
  1. Run `migration generate --init` to start over from `0000`.
351
- 2. Run `tailor-sdk tailordb migration set 0` against the deployed namespace.
352
- 3. Run `tailor-sdk deploy` — the new `0000` becomes the baseline.
377
+ 2. Run `tailor tailordb migration set 0` against the deployed namespace.
378
+ 3. Run `tailor deploy` — the new `0000` becomes the baseline.
353
379
 
354
380
  Coordinate this with your team because everyone else's local migrations will be invalidated.
355
381
 
@@ -367,7 +393,7 @@ After a failure:
367
393
 
368
394
  1. Read the `Logs:` block in the apply output to find the cause.
369
395
  2. Fix `migrate.ts` (or the data it depends on).
370
- 3. Re-run `tailor-sdk deploy`. The same migration runs again because its label was never bumped, and the prior-checkpoint schema is a clean baseline to retry against.
396
+ 3. Re-run `tailor deploy`. The same migration runs again because its label was never bumped, and the prior-checkpoint schema is a clean baseline to retry against.
371
397
 
372
398
  If a migration **succeeds in script** but the **post-migration phase** fails (rare; usually a constraint violation the script should have prevented), the pre-migration changes are **not** rolled back: the script's data changes are already committed and the post-migration phase may have dropped removed columns or types, which cannot be reverted without data loss. Investigate, fix, and re-run.
373
399
 
@@ -396,7 +422,7 @@ The machine user needs read/write access to every type the migration script touc
396
422
 
397
423
  If you see `No machine user available for migration execution`, either:
398
424
 
399
- - Add `machineUsers: { ... }` to your auth config and `tailor-sdk deploy` it, or
425
+ - Add `machineUsers: { ... }` to your auth config and `tailor deploy` it, or
400
426
  - Set `migration.machineUser` to an existing machine user name in the db config.
401
427
 
402
428
  ## Multi-Namespace Coordination
@@ -439,7 +465,7 @@ For genuinely different schemas across environments, prefer separate workspaces
439
465
 
440
466
  **Resolution:**
441
467
 
442
- 1. `tailor-sdk tailordb migration status` to see local vs remote.
468
+ 1. `tailor tailordb migration status` to see local vs remote.
443
469
  2. Compare with teammates — has someone applied different migrations?
444
470
  3. If remote was changed manually, decide whether to update local migrations to match or to use `migration set <N>` to align bookkeeping.
445
471
  4. To force the remote schema back to a known snapshot, use `migration sync <N>` (see [`migration sync` Semantics](#migration-sync-semantics)).
@@ -471,10 +497,10 @@ For genuinely different schemas across environments, prefer separate workspaces
471
497
 
472
498
  **Cause:** Runtime error in your `migrate.ts`, a permission error from the machine user, or a constraint violation when post-migration tightens types.
473
499
 
474
- **Resolution:** Read the `Logs:` block. Fix the script or the data assumption it relies on, and re-run `tailor-sdk deploy`. The label is not bumped on failure, so the same migration retries.
500
+ **Resolution:** Read the `Logs:` block. Fix the script or the data assumption it relies on, and re-run `tailor deploy`. The label is not bumped on failure, so the same migration retries.
475
501
 
476
502
  ### `migrate.ts` not found for a migration that needs one
477
503
 
478
504
  **Cause:** `diff.requiresMigrationScript` is true but `migrate.ts` is missing from the migration directory.
479
505
 
480
- **Resolution:** Either re-run `migration generate` (it skips already-generated diffs but will fill in a missing script), or restore the file from version control.
506
+ **Resolution:** Restore the file from version control, or create it with `tailor tailordb migration script <N> --namespace <namespace>`. If the migration intentionally needs no data transformation, record that decision with `tailor tailordb migration script <N> --namespace <namespace> --no-script --reason "<why no data migration is needed>"` instead.