@alvax-ai/db 0.1.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 (304) hide show
  1. package/dist/check-migration-numbering.d.ts +2 -0
  2. package/dist/check-migration-numbering.d.ts.map +1 -0
  3. package/dist/check-migration-numbering.js +64 -0
  4. package/dist/check-migration-numbering.js.map +1 -0
  5. package/dist/client.d.ts +33 -0
  6. package/dist/client.d.ts.map +1 -0
  7. package/dist/client.js +382 -0
  8. package/dist/client.js.map +1 -0
  9. package/dist/embedded-postgres-error.d.ts +9 -0
  10. package/dist/embedded-postgres-error.d.ts.map +1 -0
  11. package/dist/embedded-postgres-error.js +73 -0
  12. package/dist/embedded-postgres-error.js.map +1 -0
  13. package/dist/index.d.ts +6 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +6 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/migrate.d.ts +2 -0
  18. package/dist/migrate.d.ts.map +1 -0
  19. package/dist/migrate.js +25 -0
  20. package/dist/migrate.js.map +1 -0
  21. package/dist/migration-runtime.d.ts +7 -0
  22. package/dist/migration-runtime.d.ts.map +1 -0
  23. package/dist/migration-runtime.js +164 -0
  24. package/dist/migration-runtime.js.map +1 -0
  25. package/dist/migrations/0000_solid_sir_ram.sql +21 -0
  26. package/dist/migrations/0001_goofy_reavers.sql +185 -0
  27. package/dist/migrations/0002_majestic_vanisher.sql +188 -0
  28. package/dist/migrations/0003_narrow_kabuki.sql +58 -0
  29. package/dist/migrations/0004_stormy_vapor.sql +65 -0
  30. package/dist/migrations/0005_public_blade.sql +59 -0
  31. package/dist/migrations/0006_clean_firestar.sql +52 -0
  32. package/dist/migrations/0007_modern_wilson_fisk.sql +22 -0
  33. package/dist/migrations/0008_slim_beyonder.sql +20 -0
  34. package/dist/migrations/0009_minor_charles_xavier.sql +108 -0
  35. package/dist/migrations/0010_glamorous_tusk.sql +37 -0
  36. package/dist/migrations/0011_neat_mystique.sql +120 -0
  37. package/dist/migrations/0012_clumsy_dazzler.sql +36 -0
  38. package/dist/migrations/0013_perfect_ares.sql +96 -0
  39. package/dist/migrations/0014_overjoyed_hitman.sql +1 -0
  40. package/dist/migrations/0015_graceful_ultimo.sql +43 -0
  41. package/dist/migrations/0016_far_reavers.sql +68 -0
  42. package/dist/migrations/0017_lame_sauron.sql +34 -0
  43. package/dist/migrations/0018_ambiguous_master_mold.sql +51 -0
  44. package/dist/migrations/0019_material_joshua_kane.sql +15 -0
  45. package/dist/migrations/0020_mature_jack_murdock.sql +3 -0
  46. package/dist/migrations/0021_safe_vulture.sql +2 -0
  47. package/dist/migrations/0022_bumpy_wrecker.sql +73 -0
  48. package/dist/migrations/0023_tan_bruce_banner.sql +1 -0
  49. package/dist/migrations/0024_moaning_guardsmen.sql +44 -0
  50. package/dist/migrations/meta/0000_snapshot.json +162 -0
  51. package/dist/migrations/meta/0001_snapshot.json +1761 -0
  52. package/dist/migrations/meta/0002_snapshot.json +3466 -0
  53. package/dist/migrations/meta/0003_snapshot.json +4003 -0
  54. package/dist/migrations/meta/0004_snapshot.json +4628 -0
  55. package/dist/migrations/meta/0005_snapshot.json +5156 -0
  56. package/dist/migrations/meta/0006_snapshot.json +5613 -0
  57. package/dist/migrations/meta/0007_snapshot.json +5786 -0
  58. package/dist/migrations/meta/0008_snapshot.json +5966 -0
  59. package/dist/migrations/meta/0009_snapshot.json +6944 -0
  60. package/dist/migrations/meta/0010_snapshot.json +7243 -0
  61. package/dist/migrations/meta/0011_snapshot.json +8324 -0
  62. package/dist/migrations/meta/0012_snapshot.json +8647 -0
  63. package/dist/migrations/meta/0013_snapshot.json +9448 -0
  64. package/dist/migrations/meta/0014_snapshot.json +9455 -0
  65. package/dist/migrations/meta/0015_snapshot.json +9845 -0
  66. package/dist/migrations/meta/0016_snapshot.json +10457 -0
  67. package/dist/migrations/meta/0017_snapshot.json +10802 -0
  68. package/dist/migrations/meta/0018_snapshot.json +11289 -0
  69. package/dist/migrations/meta/0019_snapshot.json +11425 -0
  70. package/dist/migrations/meta/0020_snapshot.json +11445 -0
  71. package/dist/migrations/meta/0021_snapshot.json +11459 -0
  72. package/dist/migrations/meta/0022_snapshot.json +12063 -0
  73. package/dist/migrations/meta/0023_snapshot.json +12069 -0
  74. package/dist/migrations/meta/0024_snapshot.json +12524 -0
  75. package/dist/migrations/meta/_journal.json +181 -0
  76. package/dist/runtime-config.d.ts +11 -0
  77. package/dist/runtime-config.d.ts.map +1 -0
  78. package/dist/runtime-config.js +56 -0
  79. package/dist/runtime-config.js.map +1 -0
  80. package/dist/schema/activity_log.d.ts +197 -0
  81. package/dist/schema/activity_log.d.ts.map +1 -0
  82. package/dist/schema/activity_log.js +24 -0
  83. package/dist/schema/activity_log.js.map +1 -0
  84. package/dist/schema/agent_runtime_state.d.ts +248 -0
  85. package/dist/schema/agent_runtime_state.d.ts.map +1 -0
  86. package/dist/schema/agent_runtime_state.js +23 -0
  87. package/dist/schema/agent_runtime_state.js.map +1 -0
  88. package/dist/schema/agent_task_sessions.d.ts +197 -0
  89. package/dist/schema/agent_task_sessions.d.ts.map +1 -0
  90. package/dist/schema/agent_task_sessions.js +22 -0
  91. package/dist/schema/agent_task_sessions.js.map +1 -0
  92. package/dist/schema/agent_wakeup_requests.d.ts +333 -0
  93. package/dist/schema/agent_wakeup_requests.d.ts.map +1 -0
  94. package/dist/schema/agent_wakeup_requests.js +29 -0
  95. package/dist/schema/agent_wakeup_requests.js.map +1 -0
  96. package/dist/schema/agents.d.ts +390 -0
  97. package/dist/schema/agents.d.ts.map +1 -0
  98. package/dist/schema/agents.js +32 -0
  99. package/dist/schema/agents.js.map +1 -0
  100. package/dist/schema/approval_comments.d.ts +144 -0
  101. package/dist/schema/approval_comments.d.ts.map +1 -0
  102. package/dist/schema/approval_comments.js +19 -0
  103. package/dist/schema/approval_comments.js.map +1 -0
  104. package/dist/schema/approvals.d.ts +214 -0
  105. package/dist/schema/approvals.d.ts.map +1 -0
  106. package/dist/schema/approvals.js +20 -0
  107. package/dist/schema/approvals.js.map +1 -0
  108. package/dist/schema/assets.d.ts +212 -0
  109. package/dist/schema/assets.d.ts.map +1 -0
  110. package/dist/schema/assets.js +23 -0
  111. package/dist/schema/assets.js.map +1 -0
  112. package/dist/schema/budget_incidents.d.ts +297 -0
  113. package/dist/schema/budget_incidents.d.ts.map +1 -0
  114. package/dist/schema/budget_incidents.js +29 -0
  115. package/dist/schema/budget_incidents.js.map +1 -0
  116. package/dist/schema/budget_policies.d.ts +263 -0
  117. package/dist/schema/budget_policies.d.ts.map +1 -0
  118. package/dist/schema/budget_policies.js +24 -0
  119. package/dist/schema/budget_policies.js.map +1 -0
  120. package/dist/schema/command_context_summaries.d.ts +127 -0
  121. package/dist/schema/command_context_summaries.d.ts.map +1 -0
  122. package/dist/schema/command_context_summaries.js +16 -0
  123. package/dist/schema/command_context_summaries.js.map +1 -0
  124. package/dist/schema/command_messages.d.ts +163 -0
  125. package/dist/schema/command_messages.d.ts.map +1 -0
  126. package/dist/schema/command_messages.js +20 -0
  127. package/dist/schema/command_messages.js.map +1 -0
  128. package/dist/schema/command_threads.d.ts +127 -0
  129. package/dist/schema/command_threads.d.ts.map +1 -0
  130. package/dist/schema/command_threads.js +14 -0
  131. package/dist/schema/command_threads.js.map +1 -0
  132. package/dist/schema/companies.d.ts +301 -0
  133. package/dist/schema/companies.d.ts.map +1 -0
  134. package/dist/schema/companies.js +27 -0
  135. package/dist/schema/companies.js.map +1 -0
  136. package/dist/schema/company_profile_setup_messages.d.ts +171 -0
  137. package/dist/schema/company_profile_setup_messages.d.ts.map +1 -0
  138. package/dist/schema/company_profile_setup_messages.js +18 -0
  139. package/dist/schema/company_profile_setup_messages.js.map +1 -0
  140. package/dist/schema/company_profile_setup_runs.d.ts +234 -0
  141. package/dist/schema/company_profile_setup_runs.d.ts.map +1 -0
  142. package/dist/schema/company_profile_setup_runs.js +22 -0
  143. package/dist/schema/company_profile_setup_runs.js.map +1 -0
  144. package/dist/schema/company_profile_setup_sessions.d.ts +179 -0
  145. package/dist/schema/company_profile_setup_sessions.d.ts.map +1 -0
  146. package/dist/schema/company_profile_setup_sessions.js +18 -0
  147. package/dist/schema/company_profile_setup_sessions.js.map +1 -0
  148. package/dist/schema/company_profiles.d.ts +291 -0
  149. package/dist/schema/company_profiles.d.ts.map +1 -0
  150. package/dist/schema/company_profiles.js +24 -0
  151. package/dist/schema/company_profiles.js.map +1 -0
  152. package/dist/schema/company_runtime_adapter_checks.d.ts +206 -0
  153. package/dist/schema/company_runtime_adapter_checks.d.ts.map +1 -0
  154. package/dist/schema/company_runtime_adapter_checks.js +19 -0
  155. package/dist/schema/company_runtime_adapter_checks.js.map +1 -0
  156. package/dist/schema/company_runtime_profiles.d.ts +165 -0
  157. package/dist/schema/company_runtime_profiles.d.ts.map +1 -0
  158. package/dist/schema/company_runtime_profiles.js +18 -0
  159. package/dist/schema/company_runtime_profiles.js.map +1 -0
  160. package/dist/schema/company_secret_versions.d.ts +163 -0
  161. package/dist/schema/company_secret_versions.d.ts.map +1 -0
  162. package/dist/schema/company_secret_versions.js +19 -0
  163. package/dist/schema/company_secret_versions.js.map +1 -0
  164. package/dist/schema/company_secrets.d.ts +195 -0
  165. package/dist/schema/company_secrets.d.ts.map +1 -0
  166. package/dist/schema/company_secrets.js +21 -0
  167. package/dist/schema/company_secrets.js.map +1 -0
  168. package/dist/schema/company_skills.d.ts +284 -0
  169. package/dist/schema/company_skills.d.ts.map +1 -0
  170. package/dist/schema/company_skills.js +24 -0
  171. package/dist/schema/company_skills.js.map +1 -0
  172. package/dist/schema/cost_events.d.ts +314 -0
  173. package/dist/schema/cost_events.d.ts.map +1 -0
  174. package/dist/schema/cost_events.js +34 -0
  175. package/dist/schema/cost_events.js.map +1 -0
  176. package/dist/schema/document_revisions.d.ts +212 -0
  177. package/dist/schema/document_revisions.d.ts.map +1 -0
  178. package/dist/schema/document_revisions.js +23 -0
  179. package/dist/schema/document_revisions.js.map +1 -0
  180. package/dist/schema/documents.d.ts +229 -0
  181. package/dist/schema/documents.d.ts.map +1 -0
  182. package/dist/schema/documents.js +22 -0
  183. package/dist/schema/documents.js.map +1 -0
  184. package/dist/schema/environments.d.ts +182 -0
  185. package/dist/schema/environments.d.ts.map +1 -0
  186. package/dist/schema/environments.js +22 -0
  187. package/dist/schema/environments.js.map +1 -0
  188. package/dist/schema/execution_workspaces.d.ts +418 -0
  189. package/dist/schema/execution_workspaces.d.ts.map +1 -0
  190. package/dist/schema/execution_workspaces.js +38 -0
  191. package/dist/schema/execution_workspaces.js.map +1 -0
  192. package/dist/schema/goals.d.ts +178 -0
  193. package/dist/schema/goals.d.ts.map +1 -0
  194. package/dist/schema/goals.js +18 -0
  195. package/dist/schema/goals.js.map +1 -0
  196. package/dist/schema/heartbeat_run_events.d.ts +214 -0
  197. package/dist/schema/heartbeat_run_events.d.ts.map +1 -0
  198. package/dist/schema/heartbeat_run_events.js +23 -0
  199. package/dist/schema/heartbeat_run_events.js.map +1 -0
  200. package/dist/schema/heartbeat_runs.d.ts +830 -0
  201. package/dist/schema/heartbeat_runs.d.ts.map +1 -0
  202. package/dist/schema/heartbeat_runs.js +62 -0
  203. package/dist/schema/heartbeat_runs.js.map +1 -0
  204. package/dist/schema/inbox_dismissals.d.ts +127 -0
  205. package/dist/schema/inbox_dismissals.d.ts.map +1 -0
  206. package/dist/schema/inbox_dismissals.js +16 -0
  207. package/dist/schema/inbox_dismissals.js.map +1 -0
  208. package/dist/schema/index.d.ts +56 -0
  209. package/dist/schema/index.d.ts.map +1 -0
  210. package/dist/schema/index.js +56 -0
  211. package/dist/schema/index.js.map +1 -0
  212. package/dist/schema/issue_approvals.d.ts +110 -0
  213. package/dist/schema/issue_approvals.d.ts.map +1 -0
  214. package/dist/schema/issue_approvals.js +19 -0
  215. package/dist/schema/issue_approvals.js.map +1 -0
  216. package/dist/schema/issue_comments.d.ts +216 -0
  217. package/dist/schema/issue_comments.d.ts.map +1 -0
  218. package/dist/schema/issue_comments.js +25 -0
  219. package/dist/schema/issue_comments.js.map +1 -0
  220. package/dist/schema/issue_documents.d.ts +127 -0
  221. package/dist/schema/issue_documents.d.ts.map +1 -0
  222. package/dist/schema/issue_documents.js +18 -0
  223. package/dist/schema/issue_documents.js.map +1 -0
  224. package/dist/schema/issue_inbox_archives.d.ts +127 -0
  225. package/dist/schema/issue_inbox_archives.d.ts.map +1 -0
  226. package/dist/schema/issue_inbox_archives.js +17 -0
  227. package/dist/schema/issue_inbox_archives.js.map +1 -0
  228. package/dist/schema/issue_read_states.d.ts +127 -0
  229. package/dist/schema/issue_read_states.d.ts.map +1 -0
  230. package/dist/schema/issue_read_states.js +17 -0
  231. package/dist/schema/issue_read_states.js.map +1 -0
  232. package/dist/schema/issue_relations.d.ts +163 -0
  233. package/dist/schema/issue_relations.d.ts.map +1 -0
  234. package/dist/schema/issue_relations.js +21 -0
  235. package/dist/schema/issue_relations.js.map +1 -0
  236. package/dist/schema/issue_thread_interactions.d.ts +352 -0
  237. package/dist/schema/issue_thread_interactions.d.ts.map +1 -0
  238. package/dist/schema/issue_thread_interactions.js +38 -0
  239. package/dist/schema/issue_thread_interactions.js.map +1 -0
  240. package/dist/schema/issue_tree_hold_members.d.ts +280 -0
  241. package/dist/schema/issue_tree_hold_members.d.ts.map +1 -0
  242. package/dist/schema/issue_tree_hold_members.js +29 -0
  243. package/dist/schema/issue_tree_hold_members.js.map +1 -0
  244. package/dist/schema/issue_tree_holds.d.ts +352 -0
  245. package/dist/schema/issue_tree_holds.d.ts.map +1 -0
  246. package/dist/schema/issue_tree_holds.js +31 -0
  247. package/dist/schema/issue_tree_holds.js.map +1 -0
  248. package/dist/schema/issue_work_products.d.ts +350 -0
  249. package/dist/schema/issue_work_products.d.ts.map +1 -0
  250. package/dist/schema/issue_work_products.js +33 -0
  251. package/dist/schema/issue_work_products.js.map +1 -0
  252. package/dist/schema/issues.d.ts +781 -0
  253. package/dist/schema/issues.d.ts.map +1 -0
  254. package/dist/schema/issues.js +104 -0
  255. package/dist/schema/issues.js.map +1 -0
  256. package/dist/schema/knowledge_data_table_columns.d.ts +280 -0
  257. package/dist/schema/knowledge_data_table_columns.d.ts.map +1 -0
  258. package/dist/schema/knowledge_data_table_columns.js +37 -0
  259. package/dist/schema/knowledge_data_table_columns.js.map +1 -0
  260. package/dist/schema/knowledge_data_table_rows.d.ts +214 -0
  261. package/dist/schema/knowledge_data_table_rows.d.ts.map +1 -0
  262. package/dist/schema/knowledge_data_table_rows.js +27 -0
  263. package/dist/schema/knowledge_data_table_rows.js.map +1 -0
  264. package/dist/schema/knowledge_data_tables.d.ts +212 -0
  265. package/dist/schema/knowledge_data_tables.d.ts.map +1 -0
  266. package/dist/schema/knowledge_data_tables.js +25 -0
  267. package/dist/schema/knowledge_data_tables.js.map +1 -0
  268. package/dist/schema/knowledge_documents.d.ts +231 -0
  269. package/dist/schema/knowledge_documents.d.ts.map +1 -0
  270. package/dist/schema/knowledge_documents.js +29 -0
  271. package/dist/schema/knowledge_documents.js.map +1 -0
  272. package/dist/schema/project_goals.d.ts +93 -0
  273. package/dist/schema/project_goals.d.ts.map +1 -0
  274. package/dist/schema/project_goals.js +17 -0
  275. package/dist/schema/project_goals.js.map +1 -0
  276. package/dist/schema/project_workspaces.d.ts +333 -0
  277. package/dist/schema/project_workspaces.d.ts.map +1 -0
  278. package/dist/schema/project_workspaces.js +31 -0
  279. package/dist/schema/project_workspaces.js.map +1 -0
  280. package/dist/schema/projects.d.ts +284 -0
  281. package/dist/schema/projects.d.ts.map +1 -0
  282. package/dist/schema/projects.js +25 -0
  283. package/dist/schema/projects.js.map +1 -0
  284. package/dist/schema/routines.d.ts +1277 -0
  285. package/dist/schema/routines.d.ts.map +1 -0
  286. package/dist/schema/routines.js +108 -0
  287. package/dist/schema/routines.js.map +1 -0
  288. package/dist/schema/system_assistant_run_events.d.ts +180 -0
  289. package/dist/schema/system_assistant_run_events.d.ts.map +1 -0
  290. package/dist/schema/system_assistant_run_events.js +19 -0
  291. package/dist/schema/system_assistant_run_events.js.map +1 -0
  292. package/dist/schema/system_assistant_runs.d.ts +195 -0
  293. package/dist/schema/system_assistant_runs.d.ts.map +1 -0
  294. package/dist/schema/system_assistant_runs.js +23 -0
  295. package/dist/schema/system_assistant_runs.js.map +1 -0
  296. package/dist/schema/workspace_operations.d.ts +367 -0
  297. package/dist/schema/workspace_operations.d.ts.map +1 -0
  298. package/dist/schema/workspace_operations.js +35 -0
  299. package/dist/schema/workspace_operations.js.map +1 -0
  300. package/dist/schema/workspace_runtime_services.d.ts +469 -0
  301. package/dist/schema/workspace_runtime_services.d.ts.map +1 -0
  302. package/dist/schema/workspace_runtime_services.js +46 -0
  303. package/dist/schema/workspace_runtime_services.js.map +1 -0
  304. package/package.json +56 -0
@@ -0,0 +1,96 @@
1
+ CREATE TABLE "command_context_summaries" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "thread_id" uuid NOT NULL,
5
+ "summary" text DEFAULT '' NOT NULL,
6
+ "covered_message_id" uuid,
7
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
8
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
9
+ );
10
+ --> statement-breakpoint
11
+ CREATE TABLE "command_messages" (
12
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
13
+ "company_id" uuid NOT NULL,
14
+ "thread_id" uuid NOT NULL,
15
+ "author_type" text NOT NULL,
16
+ "body" text,
17
+ "message_type" text DEFAULT 'text' NOT NULL,
18
+ "metadata" jsonb,
19
+ "source_run_id" uuid,
20
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL
21
+ );
22
+ --> statement-breakpoint
23
+ CREATE TABLE "command_threads" (
24
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
25
+ "company_id" uuid NOT NULL,
26
+ "kind" text DEFAULT 'primary' NOT NULL,
27
+ "title" text,
28
+ "status" text DEFAULT 'active' NOT NULL,
29
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
30
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
31
+ );
32
+ --> statement-breakpoint
33
+ CREATE TABLE "company_runtime_profiles" (
34
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
35
+ "company_id" uuid NOT NULL,
36
+ "key" text DEFAULT 'default' NOT NULL,
37
+ "adapter_type" text NOT NULL,
38
+ "adapter_config" jsonb DEFAULT '{}'::jsonb NOT NULL,
39
+ "runtime_config" jsonb DEFAULT '{}'::jsonb NOT NULL,
40
+ "default_environment_id" uuid,
41
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
42
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
43
+ );
44
+ --> statement-breakpoint
45
+ CREATE TABLE "system_assistant_run_events" (
46
+ "id" bigserial PRIMARY KEY NOT NULL,
47
+ "company_id" uuid NOT NULL,
48
+ "run_id" uuid NOT NULL,
49
+ "seq" integer NOT NULL,
50
+ "event_type" text NOT NULL,
51
+ "stream" text,
52
+ "level" text,
53
+ "message" text,
54
+ "payload" jsonb,
55
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL
56
+ );
57
+ --> statement-breakpoint
58
+ CREATE TABLE "system_assistant_runs" (
59
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
60
+ "company_id" uuid NOT NULL,
61
+ "thread_id" uuid NOT NULL,
62
+ "trigger_message_id" uuid,
63
+ "runtime_profile_id" uuid,
64
+ "status" text DEFAULT 'queued' NOT NULL,
65
+ "started_at" timestamp with time zone,
66
+ "completed_at" timestamp with time zone,
67
+ "error_code" text,
68
+ "error_message" text,
69
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL
70
+ );
71
+ --> statement-breakpoint
72
+ ALTER TABLE "companies" ADD COLUMN "ceo_agent_id" uuid;--> statement-breakpoint
73
+ ALTER TABLE "command_context_summaries" ADD CONSTRAINT "command_context_summaries_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
74
+ ALTER TABLE "command_context_summaries" ADD CONSTRAINT "command_context_summaries_thread_id_command_threads_id_fk" FOREIGN KEY ("thread_id") REFERENCES "public"."command_threads"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
75
+ ALTER TABLE "command_context_summaries" ADD CONSTRAINT "command_context_summaries_covered_message_id_command_messages_id_fk" FOREIGN KEY ("covered_message_id") REFERENCES "public"."command_messages"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
76
+ ALTER TABLE "command_messages" ADD CONSTRAINT "command_messages_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
77
+ ALTER TABLE "command_messages" ADD CONSTRAINT "command_messages_thread_id_command_threads_id_fk" FOREIGN KEY ("thread_id") REFERENCES "public"."command_threads"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
78
+ ALTER TABLE "command_messages" ADD CONSTRAINT "command_messages_source_run_id_system_assistant_runs_id_fk" FOREIGN KEY ("source_run_id") REFERENCES "public"."system_assistant_runs"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
79
+ ALTER TABLE "command_threads" ADD CONSTRAINT "command_threads_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
80
+ ALTER TABLE "company_runtime_profiles" ADD CONSTRAINT "company_runtime_profiles_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
81
+ ALTER TABLE "company_runtime_profiles" ADD CONSTRAINT "company_runtime_profiles_default_environment_id_environments_id_fk" FOREIGN KEY ("default_environment_id") REFERENCES "public"."environments"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
82
+ ALTER TABLE "system_assistant_run_events" ADD CONSTRAINT "system_assistant_run_events_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
83
+ ALTER TABLE "system_assistant_run_events" ADD CONSTRAINT "system_assistant_run_events_run_id_system_assistant_runs_id_fk" FOREIGN KEY ("run_id") REFERENCES "public"."system_assistant_runs"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
84
+ ALTER TABLE "system_assistant_runs" ADD CONSTRAINT "system_assistant_runs_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
85
+ ALTER TABLE "system_assistant_runs" ADD CONSTRAINT "system_assistant_runs_thread_id_command_threads_id_fk" FOREIGN KEY ("thread_id") REFERENCES "public"."command_threads"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
86
+ ALTER TABLE "system_assistant_runs" ADD CONSTRAINT "system_assistant_runs_trigger_message_id_command_messages_id_fk" FOREIGN KEY ("trigger_message_id") REFERENCES "public"."command_messages"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
87
+ ALTER TABLE "system_assistant_runs" ADD CONSTRAINT "system_assistant_runs_runtime_profile_id_company_runtime_profiles_id_fk" FOREIGN KEY ("runtime_profile_id") REFERENCES "public"."company_runtime_profiles"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
88
+ CREATE UNIQUE INDEX "command_context_summaries_thread_idx" ON "command_context_summaries" USING btree ("thread_id");--> statement-breakpoint
89
+ CREATE INDEX "command_messages_thread_created_idx" ON "command_messages" USING btree ("thread_id","created_at");--> statement-breakpoint
90
+ CREATE UNIQUE INDEX "command_threads_company_kind_idx" ON "command_threads" USING btree ("company_id","kind");--> statement-breakpoint
91
+ CREATE UNIQUE INDEX "company_runtime_profiles_company_key_idx" ON "company_runtime_profiles" USING btree ("company_id","key");--> statement-breakpoint
92
+ CREATE INDEX "company_runtime_profiles_company_idx" ON "company_runtime_profiles" USING btree ("company_id");--> statement-breakpoint
93
+ CREATE INDEX "system_assistant_run_events_run_seq_idx" ON "system_assistant_run_events" USING btree ("run_id","seq");--> statement-breakpoint
94
+ CREATE INDEX "system_assistant_run_events_company_run_idx" ON "system_assistant_run_events" USING btree ("company_id","run_id");--> statement-breakpoint
95
+ CREATE INDEX "system_assistant_runs_company_status_idx" ON "system_assistant_runs" USING btree ("company_id","status");--> statement-breakpoint
96
+ ALTER TABLE "companies" ADD CONSTRAINT "companies_ceo_agent_id_agents_id_fk" FOREIGN KEY ("ceo_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;
@@ -0,0 +1 @@
1
+ ALTER TABLE "companies" ADD COLUMN "require_board_approval_for_new_agents" boolean DEFAULT true NOT NULL;
@@ -0,0 +1,43 @@
1
+ CREATE TABLE "assets" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "provider" text NOT NULL,
5
+ "object_key" text NOT NULL,
6
+ "content_type" text NOT NULL,
7
+ "byte_size" integer NOT NULL,
8
+ "sha256" text NOT NULL,
9
+ "original_filename" text,
10
+ "created_by_agent_id" uuid,
11
+ "created_by_user_id" text,
12
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
13
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL,
14
+ CONSTRAINT "assets_company_id_id_uq" UNIQUE("company_id","id")
15
+ );
16
+ --> statement-breakpoint
17
+ CREATE TABLE "knowledge_documents" (
18
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
19
+ "company_id" uuid NOT NULL,
20
+ "asset_id" uuid NOT NULL,
21
+ "title" text NOT NULL,
22
+ "description" text,
23
+ "status" text DEFAULT 'available' NOT NULL,
24
+ "source_type" text DEFAULT 'upload' NOT NULL,
25
+ "metadata" jsonb,
26
+ "created_by_agent_id" uuid,
27
+ "created_by_user_id" text,
28
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
29
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL,
30
+ "deleted_at" timestamp with time zone
31
+ );
32
+ --> statement-breakpoint
33
+ ALTER TABLE "assets" ADD CONSTRAINT "assets_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
34
+ ALTER TABLE "assets" ADD CONSTRAINT "assets_created_by_agent_id_agents_id_fk" FOREIGN KEY ("created_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
35
+ ALTER TABLE "knowledge_documents" ADD CONSTRAINT "knowledge_documents_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
36
+ ALTER TABLE "knowledge_documents" ADD CONSTRAINT "knowledge_documents_created_by_agent_id_agents_id_fk" FOREIGN KEY ("created_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
37
+ ALTER TABLE "knowledge_documents" ADD CONSTRAINT "knowledge_documents_company_asset_fk" FOREIGN KEY ("company_id","asset_id") REFERENCES "public"."assets"("company_id","id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
38
+ CREATE INDEX "assets_company_created_idx" ON "assets" USING btree ("company_id","created_at");--> statement-breakpoint
39
+ CREATE INDEX "assets_company_provider_idx" ON "assets" USING btree ("company_id","provider");--> statement-breakpoint
40
+ CREATE UNIQUE INDEX "assets_company_object_key_uq" ON "assets" USING btree ("company_id","object_key");--> statement-breakpoint
41
+ CREATE INDEX "knowledge_documents_company_status_created_idx" ON "knowledge_documents" USING btree ("company_id","status","created_at");--> statement-breakpoint
42
+ CREATE INDEX "knowledge_documents_company_updated_idx" ON "knowledge_documents" USING btree ("company_id","updated_at");--> statement-breakpoint
43
+ CREATE UNIQUE INDEX "knowledge_documents_asset_uq" ON "knowledge_documents" USING btree ("asset_id");
@@ -0,0 +1,68 @@
1
+ CREATE TABLE "knowledge_data_table_columns" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "table_id" uuid NOT NULL,
5
+ "key" text NOT NULL,
6
+ "name" text NOT NULL,
7
+ "type" text DEFAULT 'text' NOT NULL,
8
+ "position" integer DEFAULT 0 NOT NULL,
9
+ "description" text,
10
+ "required" boolean DEFAULT false NOT NULL,
11
+ "created_by_agent_id" uuid,
12
+ "created_by_user_id" text,
13
+ "updated_by_agent_id" uuid,
14
+ "updated_by_user_id" text,
15
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
16
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL,
17
+ "deleted_at" timestamp with time zone
18
+ );
19
+ --> statement-breakpoint
20
+ CREATE TABLE "knowledge_data_table_rows" (
21
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
22
+ "company_id" uuid NOT NULL,
23
+ "table_id" uuid NOT NULL,
24
+ "values" jsonb DEFAULT '{}'::jsonb NOT NULL,
25
+ "position" integer DEFAULT 0 NOT NULL,
26
+ "created_by_agent_id" uuid,
27
+ "created_by_user_id" text,
28
+ "updated_by_agent_id" uuid,
29
+ "updated_by_user_id" text,
30
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
31
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL,
32
+ "deleted_at" timestamp with time zone
33
+ );
34
+ --> statement-breakpoint
35
+ CREATE TABLE "knowledge_data_tables" (
36
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
37
+ "company_id" uuid NOT NULL,
38
+ "name" text NOT NULL,
39
+ "description" text,
40
+ "status" text DEFAULT 'active' NOT NULL,
41
+ "created_by_agent_id" uuid,
42
+ "created_by_user_id" text,
43
+ "updated_by_agent_id" uuid,
44
+ "updated_by_user_id" text,
45
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
46
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL,
47
+ "deleted_at" timestamp with time zone,
48
+ CONSTRAINT "knowledge_data_tables_company_id_id_uq" UNIQUE("company_id","id")
49
+ );
50
+ --> statement-breakpoint
51
+ ALTER TABLE "knowledge_data_table_columns" ADD CONSTRAINT "knowledge_data_table_columns_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
52
+ ALTER TABLE "knowledge_data_table_columns" ADD CONSTRAINT "knowledge_data_table_columns_created_by_agent_id_agents_id_fk" FOREIGN KEY ("created_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
53
+ ALTER TABLE "knowledge_data_table_columns" ADD CONSTRAINT "knowledge_data_table_columns_updated_by_agent_id_agents_id_fk" FOREIGN KEY ("updated_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
54
+ ALTER TABLE "knowledge_data_table_columns" ADD CONSTRAINT "knowledge_data_table_columns_company_table_fk" FOREIGN KEY ("company_id","table_id") REFERENCES "public"."knowledge_data_tables"("company_id","id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
55
+ ALTER TABLE "knowledge_data_table_rows" ADD CONSTRAINT "knowledge_data_table_rows_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
56
+ ALTER TABLE "knowledge_data_table_rows" ADD CONSTRAINT "knowledge_data_table_rows_created_by_agent_id_agents_id_fk" FOREIGN KEY ("created_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
57
+ ALTER TABLE "knowledge_data_table_rows" ADD CONSTRAINT "knowledge_data_table_rows_updated_by_agent_id_agents_id_fk" FOREIGN KEY ("updated_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
58
+ ALTER TABLE "knowledge_data_table_rows" ADD CONSTRAINT "knowledge_data_table_rows_company_table_fk" FOREIGN KEY ("company_id","table_id") REFERENCES "public"."knowledge_data_tables"("company_id","id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
59
+ ALTER TABLE "knowledge_data_tables" ADD CONSTRAINT "knowledge_data_tables_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
60
+ ALTER TABLE "knowledge_data_tables" ADD CONSTRAINT "knowledge_data_tables_created_by_agent_id_agents_id_fk" FOREIGN KEY ("created_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
61
+ ALTER TABLE "knowledge_data_tables" ADD CONSTRAINT "knowledge_data_tables_updated_by_agent_id_agents_id_fk" FOREIGN KEY ("updated_by_agent_id") REFERENCES "public"."agents"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
62
+ CREATE INDEX "knowledge_data_table_columns_table_position_idx" ON "knowledge_data_table_columns" USING btree ("table_id","position");--> statement-breakpoint
63
+ CREATE UNIQUE INDEX "knowledge_data_table_columns_active_key_uq" ON "knowledge_data_table_columns" USING btree ("table_id","key") WHERE "knowledge_data_table_columns"."deleted_at" is null;--> statement-breakpoint
64
+ CREATE UNIQUE INDEX "knowledge_data_table_columns_active_name_uq" ON "knowledge_data_table_columns" USING btree ("table_id","name") WHERE "knowledge_data_table_columns"."deleted_at" is null;--> statement-breakpoint
65
+ CREATE INDEX "knowledge_data_table_rows_table_position_idx" ON "knowledge_data_table_rows" USING btree ("table_id","position");--> statement-breakpoint
66
+ CREATE INDEX "knowledge_data_table_rows_company_updated_idx" ON "knowledge_data_table_rows" USING btree ("company_id","updated_at");--> statement-breakpoint
67
+ CREATE INDEX "knowledge_data_tables_company_status_updated_idx" ON "knowledge_data_tables" USING btree ("company_id","status","updated_at");--> statement-breakpoint
68
+ CREATE UNIQUE INDEX "knowledge_data_tables_company_active_name_uq" ON "knowledge_data_tables" USING btree ("company_id","name") WHERE "knowledge_data_tables"."deleted_at" is null;
@@ -0,0 +1,34 @@
1
+ CREATE TABLE "cost_events" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "agent_id" uuid NOT NULL,
5
+ "issue_id" uuid,
6
+ "project_id" uuid,
7
+ "goal_id" uuid,
8
+ "heartbeat_run_id" uuid,
9
+ "billing_code" text,
10
+ "provider" text NOT NULL,
11
+ "biller" text DEFAULT 'unknown' NOT NULL,
12
+ "billing_type" text DEFAULT 'unknown' NOT NULL,
13
+ "model" text NOT NULL,
14
+ "input_tokens" integer DEFAULT 0 NOT NULL,
15
+ "cached_input_tokens" integer DEFAULT 0 NOT NULL,
16
+ "output_tokens" integer DEFAULT 0 NOT NULL,
17
+ "cost_cents" integer NOT NULL,
18
+ "occurred_at" timestamp with time zone NOT NULL,
19
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL
20
+ );
21
+ --> statement-breakpoint
22
+ ALTER TABLE "companies" ADD COLUMN "budget_monthly_cents" integer DEFAULT 0 NOT NULL;--> statement-breakpoint
23
+ ALTER TABLE "companies" ADD COLUMN "spent_monthly_cents" integer DEFAULT 0 NOT NULL;--> statement-breakpoint
24
+ ALTER TABLE "cost_events" ADD CONSTRAINT "cost_events_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
25
+ ALTER TABLE "cost_events" ADD CONSTRAINT "cost_events_agent_id_agents_id_fk" FOREIGN KEY ("agent_id") REFERENCES "public"."agents"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
26
+ ALTER TABLE "cost_events" ADD CONSTRAINT "cost_events_issue_id_issues_id_fk" FOREIGN KEY ("issue_id") REFERENCES "public"."issues"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
27
+ ALTER TABLE "cost_events" ADD CONSTRAINT "cost_events_project_id_projects_id_fk" FOREIGN KEY ("project_id") REFERENCES "public"."projects"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
28
+ ALTER TABLE "cost_events" ADD CONSTRAINT "cost_events_goal_id_goals_id_fk" FOREIGN KEY ("goal_id") REFERENCES "public"."goals"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
29
+ ALTER TABLE "cost_events" ADD CONSTRAINT "cost_events_heartbeat_run_id_heartbeat_runs_id_fk" FOREIGN KEY ("heartbeat_run_id") REFERENCES "public"."heartbeat_runs"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
30
+ CREATE INDEX "cost_events_company_occurred_idx" ON "cost_events" USING btree ("company_id","occurred_at");--> statement-breakpoint
31
+ CREATE INDEX "cost_events_company_agent_occurred_idx" ON "cost_events" USING btree ("company_id","agent_id","occurred_at");--> statement-breakpoint
32
+ CREATE INDEX "cost_events_company_provider_occurred_idx" ON "cost_events" USING btree ("company_id","provider","occurred_at");--> statement-breakpoint
33
+ CREATE INDEX "cost_events_company_biller_occurred_idx" ON "cost_events" USING btree ("company_id","biller","occurred_at");--> statement-breakpoint
34
+ CREATE INDEX "cost_events_company_heartbeat_run_idx" ON "cost_events" USING btree ("company_id","heartbeat_run_id");
@@ -0,0 +1,51 @@
1
+ CREATE TABLE "budget_incidents" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "policy_id" uuid NOT NULL,
5
+ "scope_type" text NOT NULL,
6
+ "scope_id" uuid NOT NULL,
7
+ "metric" text NOT NULL,
8
+ "window_kind" text NOT NULL,
9
+ "window_start" timestamp with time zone NOT NULL,
10
+ "window_end" timestamp with time zone NOT NULL,
11
+ "threshold_type" text NOT NULL,
12
+ "amount_limit" integer NOT NULL,
13
+ "amount_observed" integer NOT NULL,
14
+ "status" text DEFAULT 'open' NOT NULL,
15
+ "approval_id" uuid,
16
+ "resolved_at" timestamp with time zone,
17
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
18
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
19
+ );
20
+ --> statement-breakpoint
21
+ CREATE TABLE "budget_policies" (
22
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
23
+ "company_id" uuid NOT NULL,
24
+ "scope_type" text NOT NULL,
25
+ "scope_id" uuid NOT NULL,
26
+ "metric" text DEFAULT 'billed_cents' NOT NULL,
27
+ "window_kind" text NOT NULL,
28
+ "amount" integer DEFAULT 0 NOT NULL,
29
+ "warn_percent" integer DEFAULT 80 NOT NULL,
30
+ "hard_stop_enabled" boolean DEFAULT true NOT NULL,
31
+ "notify_enabled" boolean DEFAULT true NOT NULL,
32
+ "is_active" boolean DEFAULT true NOT NULL,
33
+ "created_by_user_id" text,
34
+ "updated_by_user_id" text,
35
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
36
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
37
+ );
38
+ --> statement-breakpoint
39
+ ALTER TABLE "companies" ADD COLUMN "status" text DEFAULT 'active' NOT NULL;--> statement-breakpoint
40
+ ALTER TABLE "companies" ADD COLUMN "pause_reason" text;--> statement-breakpoint
41
+ ALTER TABLE "companies" ADD COLUMN "paused_at" timestamp with time zone;--> statement-breakpoint
42
+ ALTER TABLE "budget_incidents" ADD CONSTRAINT "budget_incidents_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
43
+ ALTER TABLE "budget_incidents" ADD CONSTRAINT "budget_incidents_policy_id_budget_policies_id_fk" FOREIGN KEY ("policy_id") REFERENCES "public"."budget_policies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
44
+ ALTER TABLE "budget_incidents" ADD CONSTRAINT "budget_incidents_approval_id_approvals_id_fk" FOREIGN KEY ("approval_id") REFERENCES "public"."approvals"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
45
+ ALTER TABLE "budget_policies" ADD CONSTRAINT "budget_policies_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
46
+ CREATE INDEX "budget_incidents_company_status_idx" ON "budget_incidents" USING btree ("company_id","status");--> statement-breakpoint
47
+ CREATE INDEX "budget_incidents_company_scope_idx" ON "budget_incidents" USING btree ("company_id","scope_type","scope_id","status");--> statement-breakpoint
48
+ CREATE UNIQUE INDEX "budget_incidents_policy_window_threshold_idx" ON "budget_incidents" USING btree ("policy_id","window_start","threshold_type") WHERE "budget_incidents"."status" <> 'dismissed';--> statement-breakpoint
49
+ CREATE INDEX "budget_policies_company_scope_active_idx" ON "budget_policies" USING btree ("company_id","scope_type","scope_id","is_active");--> statement-breakpoint
50
+ CREATE INDEX "budget_policies_company_window_idx" ON "budget_policies" USING btree ("company_id","window_kind","metric");--> statement-breakpoint
51
+ CREATE UNIQUE INDEX "budget_policies_company_scope_metric_unique_idx" ON "budget_policies" USING btree ("company_id","scope_type","scope_id","metric","window_kind");
@@ -0,0 +1,15 @@
1
+ CREATE TABLE "company_runtime_adapter_checks" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "runtime_type" text DEFAULT 'local' NOT NULL,
5
+ "adapter_type" text NOT NULL,
6
+ "status" text DEFAULT 'unknown' NOT NULL,
7
+ "checks" jsonb DEFAULT '[]'::jsonb NOT NULL,
8
+ "tested_at" timestamp with time zone,
9
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
10
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
11
+ );
12
+ --> statement-breakpoint
13
+ ALTER TABLE "company_runtime_adapter_checks" ADD CONSTRAINT "company_runtime_adapter_checks_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
14
+ CREATE UNIQUE INDEX "company_runtime_adapter_checks_company_runtime_adapter_idx" ON "company_runtime_adapter_checks" USING btree ("company_id","runtime_type","adapter_type");--> statement-breakpoint
15
+ CREATE INDEX "company_runtime_adapter_checks_company_runtime_idx" ON "company_runtime_adapter_checks" USING btree ("company_id","runtime_type");
@@ -0,0 +1,3 @@
1
+ ALTER TABLE "companies" ADD COLUMN "setup_status" text DEFAULT 'completed' NOT NULL;--> statement-breakpoint
2
+ ALTER TABLE "companies" ADD COLUMN "setup_step" text;--> statement-breakpoint
3
+ ALTER TABLE "companies" ADD COLUMN "setup_completed_at" timestamp with time zone DEFAULT now();
@@ -0,0 +1,2 @@
1
+ ALTER TABLE "company_runtime_adapter_checks" ADD COLUMN "adapter_config" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
2
+ ALTER TABLE "company_runtime_adapter_checks" ADD COLUMN "runtime_config" jsonb DEFAULT '{}'::jsonb NOT NULL;
@@ -0,0 +1,73 @@
1
+ CREATE TABLE "company_profile_setup_messages" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "session_id" uuid NOT NULL,
5
+ "author_type" text NOT NULL,
6
+ "message_type" text DEFAULT 'text' NOT NULL,
7
+ "body" text DEFAULT '' NOT NULL,
8
+ "profile_patch" jsonb,
9
+ "metadata" jsonb,
10
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL
11
+ );
12
+ --> statement-breakpoint
13
+ CREATE TABLE "company_profile_setup_runs" (
14
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
15
+ "company_id" uuid NOT NULL,
16
+ "session_id" uuid NOT NULL,
17
+ "trigger_message_id" uuid,
18
+ "runtime_profile_id" uuid,
19
+ "status" text DEFAULT 'queued' NOT NULL,
20
+ "started_at" timestamp with time zone,
21
+ "completed_at" timestamp with time zone,
22
+ "error_code" text,
23
+ "error_message" text,
24
+ "usage" jsonb,
25
+ "cost_usd" text,
26
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL
27
+ );
28
+ --> statement-breakpoint
29
+ CREATE TABLE "company_profile_setup_sessions" (
30
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
31
+ "company_id" uuid NOT NULL,
32
+ "status" text DEFAULT 'active' NOT NULL,
33
+ "readiness_status" text DEFAULT 'incomplete' NOT NULL,
34
+ "missing_fields" jsonb DEFAULT '[]'::jsonb NOT NULL,
35
+ "last_assistant_run_id" uuid,
36
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
37
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
38
+ );
39
+ --> statement-breakpoint
40
+ CREATE TABLE "company_profiles" (
41
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
42
+ "company_id" uuid NOT NULL,
43
+ "mission" text,
44
+ "target_audience" text,
45
+ "offer" text,
46
+ "initial_horizon" text,
47
+ "ceo_style" text,
48
+ "operating_principles" jsonb DEFAULT '[]'::jsonb NOT NULL,
49
+ "risks" jsonb DEFAULT '[]'::jsonb NOT NULL,
50
+ "budget_posture" text,
51
+ "business_model" text,
52
+ "first_sprint_ideas" jsonb DEFAULT '[]'::jsonb NOT NULL,
53
+ "success_metrics" jsonb DEFAULT '[]'::jsonb NOT NULL,
54
+ "source" text DEFAULT 'setup_onboarding' NOT NULL,
55
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
56
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
57
+ );
58
+ --> statement-breakpoint
59
+ ALTER TABLE "company_profile_setup_messages" ADD CONSTRAINT "company_profile_setup_messages_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
60
+ ALTER TABLE "company_profile_setup_messages" ADD CONSTRAINT "company_profile_setup_messages_session_id_company_profile_setup_sessions_id_fk" FOREIGN KEY ("session_id") REFERENCES "public"."company_profile_setup_sessions"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
61
+ ALTER TABLE "company_profile_setup_runs" ADD CONSTRAINT "company_profile_setup_runs_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
62
+ ALTER TABLE "company_profile_setup_runs" ADD CONSTRAINT "company_profile_setup_runs_runtime_profile_id_company_runtime_profiles_id_fk" FOREIGN KEY ("runtime_profile_id") REFERENCES "public"."company_runtime_profiles"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
63
+ ALTER TABLE "company_profile_setup_sessions" ADD CONSTRAINT "company_profile_setup_sessions_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
64
+ ALTER TABLE "company_profile_setup_sessions" ADD CONSTRAINT "company_profile_setup_sessions_last_assistant_run_id_company_profile_setup_runs_id_fk" FOREIGN KEY ("last_assistant_run_id") REFERENCES "public"."company_profile_setup_runs"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
65
+ ALTER TABLE "company_profiles" ADD CONSTRAINT "company_profiles_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
66
+ CREATE INDEX "company_profile_setup_messages_session_created_idx" ON "company_profile_setup_messages" USING btree ("session_id","created_at");--> statement-breakpoint
67
+ CREATE INDEX "company_profile_setup_messages_company_created_idx" ON "company_profile_setup_messages" USING btree ("company_id","created_at");--> statement-breakpoint
68
+ CREATE INDEX "company_profile_setup_runs_company_status_idx" ON "company_profile_setup_runs" USING btree ("company_id","status");--> statement-breakpoint
69
+ CREATE INDEX "company_profile_setup_runs_session_created_idx" ON "company_profile_setup_runs" USING btree ("session_id","created_at");--> statement-breakpoint
70
+ CREATE UNIQUE INDEX "company_profile_setup_sessions_company_idx" ON "company_profile_setup_sessions" USING btree ("company_id");--> statement-breakpoint
71
+ CREATE INDEX "company_profile_setup_sessions_company_status_idx" ON "company_profile_setup_sessions" USING btree ("company_id","status");--> statement-breakpoint
72
+ CREATE UNIQUE INDEX "company_profiles_company_idx" ON "company_profiles" USING btree ("company_id");--> statement-breakpoint
73
+ CREATE INDEX "company_profiles_company_updated_idx" ON "company_profiles" USING btree ("company_id","updated_at");
@@ -0,0 +1 @@
1
+ ALTER TABLE "company_profile_setup_sessions" ADD COLUMN "ceo_draft" jsonb;
@@ -0,0 +1,44 @@
1
+ CREATE TABLE "inbox_dismissals" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "company_id" uuid NOT NULL,
4
+ "user_id" text NOT NULL,
5
+ "item_key" text NOT NULL,
6
+ "dismissed_at" timestamp with time zone DEFAULT now() NOT NULL,
7
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
8
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
9
+ );
10
+ --> statement-breakpoint
11
+ CREATE TABLE "issue_inbox_archives" (
12
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
13
+ "company_id" uuid NOT NULL,
14
+ "issue_id" uuid NOT NULL,
15
+ "user_id" text NOT NULL,
16
+ "archived_at" timestamp with time zone DEFAULT now() NOT NULL,
17
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
18
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
19
+ );
20
+ --> statement-breakpoint
21
+ CREATE TABLE "issue_read_states" (
22
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
23
+ "company_id" uuid NOT NULL,
24
+ "issue_id" uuid NOT NULL,
25
+ "user_id" text NOT NULL,
26
+ "last_read_at" timestamp with time zone DEFAULT now() NOT NULL,
27
+ "created_at" timestamp with time zone DEFAULT now() NOT NULL,
28
+ "updated_at" timestamp with time zone DEFAULT now() NOT NULL
29
+ );
30
+ --> statement-breakpoint
31
+ ALTER TABLE "inbox_dismissals" ADD CONSTRAINT "inbox_dismissals_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
32
+ ALTER TABLE "issue_inbox_archives" ADD CONSTRAINT "issue_inbox_archives_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
33
+ ALTER TABLE "issue_inbox_archives" ADD CONSTRAINT "issue_inbox_archives_issue_id_issues_id_fk" FOREIGN KEY ("issue_id") REFERENCES "public"."issues"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
34
+ ALTER TABLE "issue_read_states" ADD CONSTRAINT "issue_read_states_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
35
+ ALTER TABLE "issue_read_states" ADD CONSTRAINT "issue_read_states_issue_id_issues_id_fk" FOREIGN KEY ("issue_id") REFERENCES "public"."issues"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
36
+ CREATE INDEX "inbox_dismissals_company_user_idx" ON "inbox_dismissals" USING btree ("company_id","user_id");--> statement-breakpoint
37
+ CREATE INDEX "inbox_dismissals_company_item_idx" ON "inbox_dismissals" USING btree ("company_id","item_key");--> statement-breakpoint
38
+ CREATE UNIQUE INDEX "inbox_dismissals_company_user_item_idx" ON "inbox_dismissals" USING btree ("company_id","user_id","item_key");--> statement-breakpoint
39
+ CREATE INDEX "issue_inbox_archives_company_issue_idx" ON "issue_inbox_archives" USING btree ("company_id","issue_id");--> statement-breakpoint
40
+ CREATE INDEX "issue_inbox_archives_company_user_idx" ON "issue_inbox_archives" USING btree ("company_id","user_id");--> statement-breakpoint
41
+ CREATE UNIQUE INDEX "issue_inbox_archives_company_issue_user_idx" ON "issue_inbox_archives" USING btree ("company_id","issue_id","user_id");--> statement-breakpoint
42
+ CREATE INDEX "issue_read_states_company_issue_idx" ON "issue_read_states" USING btree ("company_id","issue_id");--> statement-breakpoint
43
+ CREATE INDEX "issue_read_states_company_user_idx" ON "issue_read_states" USING btree ("company_id","user_id");--> statement-breakpoint
44
+ CREATE UNIQUE INDEX "issue_read_states_company_issue_user_idx" ON "issue_read_states" USING btree ("company_id","issue_id","user_id");
@@ -0,0 +1,162 @@
1
+ {
2
+ "id": "903033a2-6edf-4c42-8615-9116ac6dd624",
3
+ "prevId": "00000000-0000-0000-0000-000000000000",
4
+ "version": "7",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "public.agents": {
8
+ "name": "agents",
9
+ "schema": "",
10
+ "columns": {
11
+ "id": {
12
+ "name": "id",
13
+ "type": "uuid",
14
+ "primaryKey": true,
15
+ "notNull": true,
16
+ "default": "gen_random_uuid()"
17
+ },
18
+ "company_id": {
19
+ "name": "company_id",
20
+ "type": "uuid",
21
+ "primaryKey": false,
22
+ "notNull": true
23
+ },
24
+ "name": {
25
+ "name": "name",
26
+ "type": "text",
27
+ "primaryKey": false,
28
+ "notNull": true
29
+ },
30
+ "role": {
31
+ "name": "role",
32
+ "type": "text",
33
+ "primaryKey": false,
34
+ "notNull": true,
35
+ "default": "'general'"
36
+ },
37
+ "adapter_type": {
38
+ "name": "adapter_type",
39
+ "type": "text",
40
+ "primaryKey": false,
41
+ "notNull": true,
42
+ "default": "'process'"
43
+ },
44
+ "adapter_config": {
45
+ "name": "adapter_config",
46
+ "type": "jsonb",
47
+ "primaryKey": false,
48
+ "notNull": true,
49
+ "default": "'{}'::jsonb"
50
+ },
51
+ "created_at": {
52
+ "name": "created_at",
53
+ "type": "timestamp with time zone",
54
+ "primaryKey": false,
55
+ "notNull": true,
56
+ "default": "now()"
57
+ },
58
+ "updated_at": {
59
+ "name": "updated_at",
60
+ "type": "timestamp with time zone",
61
+ "primaryKey": false,
62
+ "notNull": true,
63
+ "default": "now()"
64
+ }
65
+ },
66
+ "indexes": {
67
+ "agents_company_idx": {
68
+ "name": "agents_company_idx",
69
+ "columns": [
70
+ {
71
+ "expression": "company_id",
72
+ "isExpression": false,
73
+ "asc": true,
74
+ "nulls": "last"
75
+ }
76
+ ],
77
+ "isUnique": false,
78
+ "concurrently": false,
79
+ "method": "btree",
80
+ "with": {}
81
+ }
82
+ },
83
+ "foreignKeys": {
84
+ "agents_company_id_companies_id_fk": {
85
+ "name": "agents_company_id_companies_id_fk",
86
+ "tableFrom": "agents",
87
+ "tableTo": "companies",
88
+ "columnsFrom": [
89
+ "company_id"
90
+ ],
91
+ "columnsTo": [
92
+ "id"
93
+ ],
94
+ "onDelete": "no action",
95
+ "onUpdate": "no action"
96
+ }
97
+ },
98
+ "compositePrimaryKeys": {},
99
+ "uniqueConstraints": {},
100
+ "policies": {},
101
+ "checkConstraints": {},
102
+ "isRLSEnabled": false
103
+ },
104
+ "public.companies": {
105
+ "name": "companies",
106
+ "schema": "",
107
+ "columns": {
108
+ "id": {
109
+ "name": "id",
110
+ "type": "uuid",
111
+ "primaryKey": true,
112
+ "notNull": true,
113
+ "default": "gen_random_uuid()"
114
+ },
115
+ "name": {
116
+ "name": "name",
117
+ "type": "text",
118
+ "primaryKey": false,
119
+ "notNull": true
120
+ },
121
+ "description": {
122
+ "name": "description",
123
+ "type": "text",
124
+ "primaryKey": false,
125
+ "notNull": false
126
+ },
127
+ "created_at": {
128
+ "name": "created_at",
129
+ "type": "timestamp with time zone",
130
+ "primaryKey": false,
131
+ "notNull": true,
132
+ "default": "now()"
133
+ },
134
+ "updated_at": {
135
+ "name": "updated_at",
136
+ "type": "timestamp with time zone",
137
+ "primaryKey": false,
138
+ "notNull": true,
139
+ "default": "now()"
140
+ }
141
+ },
142
+ "indexes": {},
143
+ "foreignKeys": {},
144
+ "compositePrimaryKeys": {},
145
+ "uniqueConstraints": {},
146
+ "policies": {},
147
+ "checkConstraints": {},
148
+ "isRLSEnabled": false
149
+ }
150
+ },
151
+ "enums": {},
152
+ "schemas": {},
153
+ "sequences": {},
154
+ "roles": {},
155
+ "policies": {},
156
+ "views": {},
157
+ "_meta": {
158
+ "columns": {},
159
+ "schemas": {},
160
+ "tables": {}
161
+ }
162
+ }