@assistkick/create 1.6.0 → 1.8.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 (214) hide show
  1. package/package.json +2 -2
  2. package/templates/assistkick-product-system/.env.example +1 -0
  3. package/templates/assistkick-product-system/local.db +0 -0
  4. package/templates/assistkick-product-system/package.json +4 -2
  5. package/templates/assistkick-product-system/packages/backend/package.json +2 -0
  6. package/templates/assistkick-product-system/packages/backend/src/routes/agents.ts +165 -0
  7. package/templates/assistkick-product-system/packages/backend/src/routes/files.test.ts +358 -0
  8. package/templates/assistkick-product-system/packages/backend/src/routes/files.ts +356 -0
  9. package/templates/assistkick-product-system/packages/backend/src/routes/git.ts +96 -1
  10. package/templates/assistkick-product-system/packages/backend/src/routes/graph.ts +1 -0
  11. package/templates/assistkick-product-system/packages/backend/src/routes/kanban.ts +43 -4
  12. package/templates/assistkick-product-system/packages/backend/src/routes/pipeline.ts +200 -84
  13. package/templates/assistkick-product-system/packages/backend/src/routes/projects.ts +6 -3
  14. package/templates/assistkick-product-system/packages/backend/src/routes/terminal.ts +53 -17
  15. package/templates/assistkick-product-system/packages/backend/src/routes/video.ts +218 -0
  16. package/templates/assistkick-product-system/packages/backend/src/routes/workflow_groups.ts +119 -0
  17. package/templates/assistkick-product-system/packages/backend/src/routes/workflows.ts +154 -0
  18. package/templates/assistkick-product-system/packages/backend/src/server.ts +81 -9
  19. package/templates/assistkick-product-system/packages/backend/src/services/agent_service.test.ts +489 -0
  20. package/templates/assistkick-product-system/packages/backend/src/services/agent_service.ts +416 -0
  21. package/templates/assistkick-product-system/packages/backend/src/services/bundle_service.test.ts +189 -0
  22. package/templates/assistkick-product-system/packages/backend/src/services/bundle_service.ts +182 -0
  23. package/templates/assistkick-product-system/packages/backend/src/services/init.ts +28 -78
  24. package/templates/assistkick-product-system/packages/backend/src/services/project_service.test.ts +16 -0
  25. package/templates/assistkick-product-system/packages/backend/src/services/project_service.ts +73 -2
  26. package/templates/assistkick-product-system/packages/backend/src/services/project_workspace_service.test.ts +4 -4
  27. package/templates/assistkick-product-system/packages/backend/src/services/project_workspace_service.ts +87 -11
  28. package/templates/assistkick-product-system/packages/backend/src/services/pty_session_manager.test.ts +210 -69
  29. package/templates/assistkick-product-system/packages/backend/src/services/pty_session_manager.ts +210 -215
  30. package/templates/assistkick-product-system/packages/backend/src/services/ssh_key_service.test.ts +162 -0
  31. package/templates/assistkick-product-system/packages/backend/src/services/ssh_key_service.ts +148 -0
  32. package/templates/assistkick-product-system/packages/backend/src/services/terminal_ws_handler.ts +11 -5
  33. package/templates/assistkick-product-system/packages/backend/src/services/tts_service.test.ts +64 -0
  34. package/templates/assistkick-product-system/packages/backend/src/services/tts_service.ts +134 -0
  35. package/templates/assistkick-product-system/packages/backend/src/services/video_render_service.test.ts +256 -0
  36. package/templates/assistkick-product-system/packages/backend/src/services/video_render_service.ts +258 -0
  37. package/templates/assistkick-product-system/packages/backend/src/services/workflow_group_service.ts +106 -0
  38. package/templates/assistkick-product-system/packages/backend/src/services/workflow_service.test.ts +275 -0
  39. package/templates/assistkick-product-system/packages/backend/src/services/workflow_service.ts +222 -0
  40. package/templates/assistkick-product-system/packages/frontend/index.html +3 -0
  41. package/templates/assistkick-product-system/packages/frontend/package-lock.json +800 -11
  42. package/templates/assistkick-product-system/packages/frontend/package.json +11 -1
  43. package/templates/assistkick-product-system/packages/frontend/src/App.tsx +24 -7
  44. package/templates/assistkick-product-system/packages/frontend/src/api/client.ts +456 -16
  45. package/templates/assistkick-product-system/packages/frontend/src/api/client_files.test.ts +172 -0
  46. package/templates/assistkick-product-system/packages/frontend/src/api/client_video.test.ts +238 -0
  47. package/templates/assistkick-product-system/packages/frontend/src/components/AgentsView.tsx +307 -0
  48. package/templates/assistkick-product-system/packages/frontend/src/components/CoherenceView.tsx +82 -66
  49. package/templates/assistkick-product-system/packages/frontend/src/components/CompositionPlaceholder.tsx +97 -0
  50. package/templates/assistkick-product-system/packages/frontend/src/components/DesignSystemView.tsx +383 -0
  51. package/templates/assistkick-product-system/packages/frontend/src/components/EditorTabBar.tsx +57 -0
  52. package/templates/assistkick-product-system/packages/frontend/src/components/FileTree.tsx +313 -0
  53. package/templates/assistkick-product-system/packages/frontend/src/components/FileTreeContextMenu.tsx +61 -0
  54. package/templates/assistkick-product-system/packages/frontend/src/components/FileTreeInlineInput.tsx +73 -0
  55. package/templates/assistkick-product-system/packages/frontend/src/components/FilesView.tsx +404 -0
  56. package/templates/assistkick-product-system/packages/frontend/src/components/GitRepoModal.tsx +193 -64
  57. package/templates/assistkick-product-system/packages/frontend/src/components/GraphLegend.tsx +71 -73
  58. package/templates/assistkick-product-system/packages/frontend/src/components/GraphSettings.tsx +8 -8
  59. package/templates/assistkick-product-system/packages/frontend/src/components/GraphView.tsx +1 -1
  60. package/templates/assistkick-product-system/packages/frontend/src/components/InviteUserDialog.tsx +15 -11
  61. package/templates/assistkick-product-system/packages/frontend/src/components/KanbanView.tsx +226 -291
  62. package/templates/assistkick-product-system/packages/frontend/src/components/LoginPage.tsx +14 -14
  63. package/templates/assistkick-product-system/packages/frontend/src/components/ProjectSelector.tsx +54 -33
  64. package/templates/assistkick-product-system/packages/frontend/src/components/QaIssueSheet.tsx +40 -66
  65. package/templates/assistkick-product-system/packages/frontend/src/components/SidePanel.tsx +55 -115
  66. package/templates/assistkick-product-system/packages/frontend/src/components/TerminalView.tsx +121 -52
  67. package/templates/assistkick-product-system/packages/frontend/src/components/Toolbar.tsx +155 -77
  68. package/templates/assistkick-product-system/packages/frontend/src/components/UsersView.tsx +52 -52
  69. package/templates/assistkick-product-system/packages/frontend/src/components/VideoGallery.tsx +313 -0
  70. package/templates/assistkick-product-system/packages/frontend/src/components/VideographyView.tsx +250 -0
  71. package/templates/assistkick-product-system/packages/frontend/src/components/WorkflowsView.tsx +474 -0
  72. package/templates/assistkick-product-system/packages/frontend/src/components/ds/AccentBorderList.tsx +53 -0
  73. package/templates/assistkick-product-system/packages/frontend/src/components/ds/Button.tsx +87 -0
  74. package/templates/assistkick-product-system/packages/frontend/src/components/ds/ButtonGroup.tsx +29 -0
  75. package/templates/assistkick-product-system/packages/frontend/src/components/ds/ButtonShowcase.tsx +221 -0
  76. package/templates/assistkick-product-system/packages/frontend/src/components/ds/CardGlass.tsx +141 -0
  77. package/templates/assistkick-product-system/packages/frontend/src/components/ds/CompletionRing.tsx +30 -0
  78. package/templates/assistkick-product-system/packages/frontend/src/components/ds/ContentCard.tsx +34 -0
  79. package/templates/assistkick-product-system/packages/frontend/src/components/ds/IconButton.tsx +74 -0
  80. package/templates/assistkick-product-system/packages/frontend/src/components/ds/KanbanCard.tsx +270 -0
  81. package/templates/assistkick-product-system/packages/frontend/src/components/ds/KanbanCardShowcase.tsx +37 -0
  82. package/templates/assistkick-product-system/packages/frontend/src/components/ds/Kbd.tsx +11 -0
  83. package/templates/assistkick-product-system/packages/frontend/src/components/ds/KindBadge.tsx +21 -0
  84. package/templates/assistkick-product-system/packages/frontend/src/components/ds/NavBarSidekick.tsx +207 -0
  85. package/templates/assistkick-product-system/packages/frontend/src/components/ds/SidePanelShowcase.tsx +370 -0
  86. package/templates/assistkick-product-system/packages/frontend/src/components/ds/SideSheet.tsx +64 -0
  87. package/templates/assistkick-product-system/packages/frontend/src/components/ds/StatusDot.tsx +18 -0
  88. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/CheckCardPositionNode.tsx +36 -0
  89. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/CheckCycleCountNode.tsx +60 -0
  90. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/EndNode.tsx +42 -0
  91. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/GroupNode.tsx +189 -0
  92. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/NodePalette.tsx +123 -0
  93. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/RunAgentNode.tsx +51 -0
  94. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/SetCardMetadataNode.tsx +53 -0
  95. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/StartNode.tsx +18 -0
  96. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/TransitionCardNode.tsx +59 -0
  97. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/WorkflowCanvas.tsx +335 -0
  98. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/WorkflowMonitorModal.tsx +634 -0
  99. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/autoLayout.ts +103 -0
  100. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/edgeColors.ts +35 -0
  101. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/monitor_nodes.tsx +208 -0
  102. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/workflow_types.test.ts +119 -0
  103. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/workflow_types.ts +107 -0
  104. package/templates/assistkick-product-system/packages/frontend/src/constants/graph.ts +13 -11
  105. package/templates/assistkick-product-system/packages/frontend/src/hooks/useAutoSave.ts +75 -0
  106. package/templates/assistkick-product-system/packages/frontend/src/hooks/useGraph.ts +6 -21
  107. package/templates/assistkick-product-system/packages/frontend/src/hooks/useProjects.ts +15 -80
  108. package/templates/assistkick-product-system/packages/frontend/src/hooks/useToast.tsx +16 -3
  109. package/templates/assistkick-product-system/packages/frontend/src/pages/accept_invitation_page.tsx +30 -27
  110. package/templates/assistkick-product-system/packages/frontend/src/pages/forgot_password_page.tsx +18 -15
  111. package/templates/assistkick-product-system/packages/frontend/src/pages/register_page.tsx +21 -18
  112. package/templates/assistkick-product-system/packages/frontend/src/pages/reset_password_page.tsx +28 -25
  113. package/templates/assistkick-product-system/packages/frontend/src/routes/AgentsRoute.tsx +6 -0
  114. package/templates/assistkick-product-system/packages/frontend/src/routes/CoherenceRoute.tsx +19 -0
  115. package/templates/assistkick-product-system/packages/frontend/src/routes/DashboardLayout.tsx +54 -0
  116. package/templates/assistkick-product-system/packages/frontend/src/routes/DesignSystemRoute.tsx +6 -0
  117. package/templates/assistkick-product-system/packages/frontend/src/routes/FilesRoute.tsx +13 -0
  118. package/templates/assistkick-product-system/packages/frontend/src/routes/GraphRoute.tsx +93 -0
  119. package/templates/assistkick-product-system/packages/frontend/src/routes/KanbanRoute.tsx +30 -0
  120. package/templates/assistkick-product-system/packages/frontend/src/routes/TerminalRoute.tsx +9 -0
  121. package/templates/assistkick-product-system/packages/frontend/src/routes/UsersRoute.tsx +6 -0
  122. package/templates/assistkick-product-system/packages/frontend/src/routes/VideographyRoute.tsx +13 -0
  123. package/templates/assistkick-product-system/packages/frontend/src/routes/WorkflowsRoute.tsx +6 -0
  124. package/templates/assistkick-product-system/packages/frontend/src/stores/useGitModalStore.ts +14 -0
  125. package/templates/assistkick-product-system/packages/frontend/src/stores/useGraphStore.ts +36 -0
  126. package/templates/assistkick-product-system/packages/frontend/src/stores/useGraphUIStore.ts +25 -0
  127. package/templates/assistkick-product-system/packages/frontend/src/stores/useProjectStore.ts +90 -0
  128. package/templates/assistkick-product-system/packages/frontend/src/stores/useQaSheetStore.ts +27 -0
  129. package/templates/assistkick-product-system/packages/frontend/src/stores/useSidePanelStore.ts +76 -0
  130. package/templates/assistkick-product-system/packages/frontend/src/styles/index.css +336 -3632
  131. package/templates/assistkick-product-system/packages/frontend/src/utils/auto_save_service.test.ts +167 -0
  132. package/templates/assistkick-product-system/packages/frontend/src/utils/auto_save_service.ts +101 -0
  133. package/templates/assistkick-product-system/packages/frontend/src/utils/composition_matcher.test.ts +42 -0
  134. package/templates/assistkick-product-system/packages/frontend/src/utils/composition_matcher.ts +17 -0
  135. package/templates/assistkick-product-system/packages/frontend/src/utils/file_utils.test.ts +145 -0
  136. package/templates/assistkick-product-system/packages/frontend/src/utils/file_utils.ts +42 -0
  137. package/templates/assistkick-product-system/packages/frontend/src/utils/task_status.test.ts +4 -10
  138. package/templates/assistkick-product-system/packages/frontend/src/utils/task_status.ts +19 -1
  139. package/templates/assistkick-product-system/packages/frontend/vite.config.ts +7 -1
  140. package/templates/assistkick-product-system/packages/shared/db/local.db +0 -0
  141. package/templates/assistkick-product-system/packages/shared/db/migrations/0004_tidy_matthew_murdock.sql +9 -0
  142. package/templates/assistkick-product-system/packages/shared/db/migrations/0005_mysterious_falcon.sql +692 -0
  143. package/templates/assistkick-product-system/packages/shared/db/migrations/0006_next_venom.sql +9 -0
  144. package/templates/assistkick-product-system/packages/shared/db/migrations/0007_deep_barracuda.sql +39 -0
  145. package/templates/assistkick-product-system/packages/shared/db/migrations/0008_puzzling_hannibal_king.sql +1 -0
  146. package/templates/assistkick-product-system/packages/shared/db/migrations/0009_amused_beast.sql +8 -0
  147. package/templates/assistkick-product-system/packages/shared/db/migrations/0010_spotty_moira_mactaggert.sql +9 -0
  148. package/templates/assistkick-product-system/packages/shared/db/migrations/0011_goofy_snowbird.sql +3 -0
  149. package/templates/assistkick-product-system/packages/shared/db/migrations/0011_supreme_doctor_octopus.sql +3 -0
  150. package/templates/assistkick-product-system/packages/shared/db/migrations/0013_reflective_prowler.sql +15 -0
  151. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0004_snapshot.json +921 -0
  152. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0005_snapshot.json +1042 -0
  153. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0006_snapshot.json +1101 -0
  154. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0007_snapshot.json +1336 -0
  155. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0008_snapshot.json +1275 -0
  156. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0009_snapshot.json +1327 -0
  157. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0010_snapshot.json +1393 -0
  158. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0011_snapshot.json +1436 -0
  159. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0013_snapshot.json +1538 -0
  160. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/_journal.json +70 -0
  161. package/templates/assistkick-product-system/packages/shared/db/schema.ts +113 -0
  162. package/templates/assistkick-product-system/packages/shared/lib/claude-service.ts +32 -7
  163. package/templates/assistkick-product-system/packages/shared/lib/constants.ts +9 -0
  164. package/templates/assistkick-product-system/packages/shared/lib/git_workflow.ts +12 -4
  165. package/templates/assistkick-product-system/packages/shared/lib/graph.ts +16 -5
  166. package/templates/assistkick-product-system/packages/shared/lib/workflow_engine.test.ts +1753 -0
  167. package/templates/assistkick-product-system/packages/shared/lib/workflow_engine.ts +1281 -0
  168. package/templates/assistkick-product-system/packages/shared/lib/workflow_orchestrator.ts +211 -0
  169. package/templates/assistkick-product-system/packages/shared/tools/add_node.test.ts +43 -0
  170. package/templates/assistkick-product-system/packages/shared/tools/add_node.ts +13 -2
  171. package/templates/assistkick-product-system/packages/shared/tools/get_kanban.ts +1 -1
  172. package/templates/assistkick-product-system/packages/shared/tools/migrate_epics.test.ts +226 -0
  173. package/templates/assistkick-product-system/packages/shared/tools/migrate_epics.ts +251 -0
  174. package/templates/assistkick-product-system/packages/shared/tools/update_node.ts +2 -2
  175. package/templates/assistkick-product-system/packages/shared/utils/hello_workflow.test.ts +10 -0
  176. package/templates/assistkick-product-system/packages/shared/utils/hello_workflow.ts +6 -0
  177. package/templates/assistkick-product-system/packages/video/Root.tsx +85 -0
  178. package/templates/assistkick-product-system/packages/video/components/email_scene.tsx +231 -0
  179. package/templates/assistkick-product-system/packages/video/components/outro_scene.tsx +153 -0
  180. package/templates/assistkick-product-system/packages/video/components/part_divider.tsx +90 -0
  181. package/templates/assistkick-product-system/packages/video/components/scene.tsx +226 -0
  182. package/templates/assistkick-product-system/packages/video/components/theme.ts +22 -0
  183. package/templates/assistkick-product-system/packages/video/components/title_scene.tsx +169 -0
  184. package/templates/assistkick-product-system/packages/video/components/video_split_layout.tsx +84 -0
  185. package/templates/assistkick-product-system/packages/video/compositions/.gitkeep +0 -0
  186. package/templates/assistkick-product-system/packages/video/index.ts +4 -0
  187. package/templates/assistkick-product-system/packages/video/package.json +28 -0
  188. package/templates/assistkick-product-system/packages/video/remotion.config.ts +11 -0
  189. package/templates/assistkick-product-system/packages/video/scripts/process_script.test.ts +326 -0
  190. package/templates/assistkick-product-system/packages/video/scripts/process_script.ts +630 -0
  191. package/templates/assistkick-product-system/packages/video/style.css +1 -0
  192. package/templates/assistkick-product-system/packages/video/tsconfig.json +18 -0
  193. package/templates/assistkick-product-system/tests/graph_legend.test.ts +2 -1
  194. package/templates/assistkick-product-system/tests/video_render_service.test.ts +179 -0
  195. package/templates/assistkick-product-system/tests/web_terminal.test.ts +219 -455
  196. package/templates/assistkick-product-system/tests/workflow_integration.test.ts +341 -0
  197. package/templates/skills/assistkick-bootstrap/SKILL.md +3 -3
  198. package/templates/skills/assistkick-code-reviewer/SKILL.md +2 -2
  199. package/templates/skills/assistkick-debugger/SKILL.md +2 -2
  200. package/templates/skills/assistkick-developer/SKILL.md +6 -3
  201. package/templates/skills/assistkick-developer/references/react_development_guidelines.md +225 -0
  202. package/templates/skills/assistkick-interview/SKILL.md +2 -2
  203. package/templates/skills/product-system/graph.json +1890 -0
  204. package/templates/skills/product-system/kanban.json +304 -0
  205. package/templates/skills/product-system/nodes/comp_001.md +56 -0
  206. package/templates/skills/product-system/nodes/comp_002.md +57 -0
  207. package/templates/skills/product-system/nodes/data_001.md +51 -0
  208. package/templates/skills/product-system/nodes/data_002.md +40 -0
  209. package/templates/skills/product-system/nodes/data_004.md +38 -0
  210. package/templates/skills/product-system/nodes/dec_001.md +34 -0
  211. package/templates/skills/product-system/nodes/dec_016.md +32 -0
  212. package/templates/skills/product-system/nodes/feat_008.md +30 -0
  213. package/templates/skills/video-composition-agent/SKILL.md +232 -0
  214. package/templates/skills/video-script-writer/SKILL.md +136 -0
@@ -0,0 +1,1436 @@
1
+ {
2
+ "version": "6",
3
+ "dialect": "sqlite",
4
+ "id": "2b82aea3-61c6-4b07-a5ab-e9c57e64ca90",
5
+ "prevId": "306f082a-b160-4f1b-a4be-6ead7532b4c5",
6
+ "tables": {
7
+ "agents": {
8
+ "name": "agents",
9
+ "columns": {
10
+ "id": {
11
+ "name": "id",
12
+ "type": "text",
13
+ "primaryKey": true,
14
+ "notNull": true,
15
+ "autoincrement": false
16
+ },
17
+ "name": {
18
+ "name": "name",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true,
22
+ "autoincrement": false
23
+ },
24
+ "prompt_template": {
25
+ "name": "prompt_template",
26
+ "type": "text",
27
+ "primaryKey": false,
28
+ "notNull": true,
29
+ "autoincrement": false
30
+ },
31
+ "project_id": {
32
+ "name": "project_id",
33
+ "type": "text",
34
+ "primaryKey": false,
35
+ "notNull": false,
36
+ "autoincrement": false
37
+ },
38
+ "is_default": {
39
+ "name": "is_default",
40
+ "type": "integer",
41
+ "primaryKey": false,
42
+ "notNull": true,
43
+ "autoincrement": false,
44
+ "default": 0
45
+ },
46
+ "created_at": {
47
+ "name": "created_at",
48
+ "type": "text",
49
+ "primaryKey": false,
50
+ "notNull": true,
51
+ "autoincrement": false
52
+ },
53
+ "updated_at": {
54
+ "name": "updated_at",
55
+ "type": "text",
56
+ "primaryKey": false,
57
+ "notNull": true,
58
+ "autoincrement": false
59
+ }
60
+ },
61
+ "indexes": {},
62
+ "foreignKeys": {},
63
+ "compositePrimaryKeys": {},
64
+ "uniqueConstraints": {},
65
+ "checkConstraints": {}
66
+ },
67
+ "coherence_reviews": {
68
+ "name": "coherence_reviews",
69
+ "columns": {
70
+ "id": {
71
+ "name": "id",
72
+ "type": "text",
73
+ "primaryKey": true,
74
+ "notNull": true,
75
+ "autoincrement": false
76
+ },
77
+ "type": {
78
+ "name": "type",
79
+ "type": "text",
80
+ "primaryKey": false,
81
+ "notNull": true,
82
+ "autoincrement": false
83
+ },
84
+ "from_id": {
85
+ "name": "from_id",
86
+ "type": "text",
87
+ "primaryKey": false,
88
+ "notNull": false,
89
+ "autoincrement": false
90
+ },
91
+ "to_id": {
92
+ "name": "to_id",
93
+ "type": "text",
94
+ "primaryKey": false,
95
+ "notNull": false,
96
+ "autoincrement": false
97
+ },
98
+ "relation": {
99
+ "name": "relation",
100
+ "type": "text",
101
+ "primaryKey": false,
102
+ "notNull": false,
103
+ "autoincrement": false
104
+ },
105
+ "proposed_node_type": {
106
+ "name": "proposed_node_type",
107
+ "type": "text",
108
+ "primaryKey": false,
109
+ "notNull": false,
110
+ "autoincrement": false
111
+ },
112
+ "proposed_node_name": {
113
+ "name": "proposed_node_name",
114
+ "type": "text",
115
+ "primaryKey": false,
116
+ "notNull": false,
117
+ "autoincrement": false
118
+ },
119
+ "target_node_id": {
120
+ "name": "target_node_id",
121
+ "type": "text",
122
+ "primaryKey": false,
123
+ "notNull": false,
124
+ "autoincrement": false
125
+ },
126
+ "proposed_description": {
127
+ "name": "proposed_description",
128
+ "type": "text",
129
+ "primaryKey": false,
130
+ "notNull": false,
131
+ "autoincrement": false
132
+ },
133
+ "confidence": {
134
+ "name": "confidence",
135
+ "type": "text",
136
+ "primaryKey": false,
137
+ "notNull": false,
138
+ "autoincrement": false
139
+ },
140
+ "batch_id": {
141
+ "name": "batch_id",
142
+ "type": "text",
143
+ "primaryKey": false,
144
+ "notNull": false,
145
+ "autoincrement": false
146
+ },
147
+ "reasoning": {
148
+ "name": "reasoning",
149
+ "type": "text",
150
+ "primaryKey": false,
151
+ "notNull": true,
152
+ "autoincrement": false
153
+ },
154
+ "status": {
155
+ "name": "status",
156
+ "type": "text",
157
+ "primaryKey": false,
158
+ "notNull": true,
159
+ "autoincrement": false
160
+ },
161
+ "created_at": {
162
+ "name": "created_at",
163
+ "type": "text",
164
+ "primaryKey": false,
165
+ "notNull": true,
166
+ "autoincrement": false
167
+ },
168
+ "resolved_at": {
169
+ "name": "resolved_at",
170
+ "type": "text",
171
+ "primaryKey": false,
172
+ "notNull": false,
173
+ "autoincrement": false
174
+ },
175
+ "project_id": {
176
+ "name": "project_id",
177
+ "type": "text",
178
+ "primaryKey": false,
179
+ "notNull": false,
180
+ "autoincrement": false
181
+ }
182
+ },
183
+ "indexes": {},
184
+ "foreignKeys": {},
185
+ "compositePrimaryKeys": {},
186
+ "uniqueConstraints": {},
187
+ "checkConstraints": {}
188
+ },
189
+ "edges": {
190
+ "name": "edges",
191
+ "columns": {
192
+ "from_id": {
193
+ "name": "from_id",
194
+ "type": "text",
195
+ "primaryKey": false,
196
+ "notNull": true,
197
+ "autoincrement": false
198
+ },
199
+ "relation": {
200
+ "name": "relation",
201
+ "type": "text",
202
+ "primaryKey": false,
203
+ "notNull": true,
204
+ "autoincrement": false
205
+ },
206
+ "to_id": {
207
+ "name": "to_id",
208
+ "type": "text",
209
+ "primaryKey": false,
210
+ "notNull": true,
211
+ "autoincrement": false
212
+ },
213
+ "project_id": {
214
+ "name": "project_id",
215
+ "type": "text",
216
+ "primaryKey": false,
217
+ "notNull": false,
218
+ "autoincrement": false
219
+ }
220
+ },
221
+ "indexes": {},
222
+ "foreignKeys": {},
223
+ "compositePrimaryKeys": {
224
+ "edges_from_id_relation_to_id_pk": {
225
+ "columns": [
226
+ "from_id",
227
+ "relation",
228
+ "to_id"
229
+ ],
230
+ "name": "edges_from_id_relation_to_id_pk"
231
+ }
232
+ },
233
+ "uniqueConstraints": {},
234
+ "checkConstraints": {}
235
+ },
236
+ "invitations": {
237
+ "name": "invitations",
238
+ "columns": {
239
+ "id": {
240
+ "name": "id",
241
+ "type": "text",
242
+ "primaryKey": true,
243
+ "notNull": true,
244
+ "autoincrement": false
245
+ },
246
+ "email": {
247
+ "name": "email",
248
+ "type": "text",
249
+ "primaryKey": false,
250
+ "notNull": true,
251
+ "autoincrement": false
252
+ },
253
+ "token_hash": {
254
+ "name": "token_hash",
255
+ "type": "text",
256
+ "primaryKey": false,
257
+ "notNull": true,
258
+ "autoincrement": false
259
+ },
260
+ "invited_by": {
261
+ "name": "invited_by",
262
+ "type": "text",
263
+ "primaryKey": false,
264
+ "notNull": true,
265
+ "autoincrement": false
266
+ },
267
+ "expires_at": {
268
+ "name": "expires_at",
269
+ "type": "text",
270
+ "primaryKey": false,
271
+ "notNull": true,
272
+ "autoincrement": false
273
+ },
274
+ "accepted_at": {
275
+ "name": "accepted_at",
276
+ "type": "text",
277
+ "primaryKey": false,
278
+ "notNull": false,
279
+ "autoincrement": false
280
+ },
281
+ "created_at": {
282
+ "name": "created_at",
283
+ "type": "text",
284
+ "primaryKey": false,
285
+ "notNull": true,
286
+ "autoincrement": false
287
+ }
288
+ },
289
+ "indexes": {},
290
+ "foreignKeys": {
291
+ "invitations_invited_by_users_id_fk": {
292
+ "name": "invitations_invited_by_users_id_fk",
293
+ "tableFrom": "invitations",
294
+ "tableTo": "users",
295
+ "columnsFrom": [
296
+ "invited_by"
297
+ ],
298
+ "columnsTo": [
299
+ "id"
300
+ ],
301
+ "onDelete": "no action",
302
+ "onUpdate": "no action"
303
+ }
304
+ },
305
+ "compositePrimaryKeys": {},
306
+ "uniqueConstraints": {},
307
+ "checkConstraints": {}
308
+ },
309
+ "kanban": {
310
+ "name": "kanban",
311
+ "columns": {
312
+ "node_id": {
313
+ "name": "node_id",
314
+ "type": "text",
315
+ "primaryKey": true,
316
+ "notNull": true,
317
+ "autoincrement": false
318
+ },
319
+ "column_name": {
320
+ "name": "column_name",
321
+ "type": "text",
322
+ "primaryKey": false,
323
+ "notNull": true,
324
+ "autoincrement": false
325
+ },
326
+ "position": {
327
+ "name": "position",
328
+ "type": "integer",
329
+ "primaryKey": false,
330
+ "notNull": true,
331
+ "autoincrement": false
332
+ },
333
+ "project_id": {
334
+ "name": "project_id",
335
+ "type": "text",
336
+ "primaryKey": false,
337
+ "notNull": false,
338
+ "autoincrement": false
339
+ }
340
+ },
341
+ "indexes": {},
342
+ "foreignKeys": {
343
+ "kanban_node_id_nodes_id_fk": {
344
+ "name": "kanban_node_id_nodes_id_fk",
345
+ "tableFrom": "kanban",
346
+ "tableTo": "nodes",
347
+ "columnsFrom": [
348
+ "node_id"
349
+ ],
350
+ "columnsTo": [
351
+ "id"
352
+ ],
353
+ "onDelete": "no action",
354
+ "onUpdate": "no action"
355
+ }
356
+ },
357
+ "compositePrimaryKeys": {},
358
+ "uniqueConstraints": {},
359
+ "checkConstraints": {}
360
+ },
361
+ "nodes": {
362
+ "name": "nodes",
363
+ "columns": {
364
+ "id": {
365
+ "name": "id",
366
+ "type": "text",
367
+ "primaryKey": true,
368
+ "notNull": true,
369
+ "autoincrement": false
370
+ },
371
+ "type": {
372
+ "name": "type",
373
+ "type": "text",
374
+ "primaryKey": false,
375
+ "notNull": true,
376
+ "autoincrement": false
377
+ },
378
+ "name": {
379
+ "name": "name",
380
+ "type": "text",
381
+ "primaryKey": false,
382
+ "notNull": true,
383
+ "autoincrement": false
384
+ },
385
+ "status": {
386
+ "name": "status",
387
+ "type": "text",
388
+ "primaryKey": false,
389
+ "notNull": true,
390
+ "autoincrement": false
391
+ },
392
+ "priority": {
393
+ "name": "priority",
394
+ "type": "text",
395
+ "primaryKey": false,
396
+ "notNull": true,
397
+ "autoincrement": false
398
+ },
399
+ "completeness": {
400
+ "name": "completeness",
401
+ "type": "real",
402
+ "primaryKey": false,
403
+ "notNull": true,
404
+ "autoincrement": false,
405
+ "default": 0
406
+ },
407
+ "open_questions_count": {
408
+ "name": "open_questions_count",
409
+ "type": "integer",
410
+ "primaryKey": false,
411
+ "notNull": true,
412
+ "autoincrement": false,
413
+ "default": 0
414
+ },
415
+ "kind": {
416
+ "name": "kind",
417
+ "type": "text",
418
+ "primaryKey": false,
419
+ "notNull": false,
420
+ "autoincrement": false
421
+ },
422
+ "feature_type": {
423
+ "name": "feature_type",
424
+ "type": "text",
425
+ "primaryKey": false,
426
+ "notNull": false,
427
+ "autoincrement": false
428
+ },
429
+ "created_at": {
430
+ "name": "created_at",
431
+ "type": "text",
432
+ "primaryKey": false,
433
+ "notNull": true,
434
+ "autoincrement": false
435
+ },
436
+ "updated_at": {
437
+ "name": "updated_at",
438
+ "type": "text",
439
+ "primaryKey": false,
440
+ "notNull": true,
441
+ "autoincrement": false
442
+ },
443
+ "body": {
444
+ "name": "body",
445
+ "type": "text",
446
+ "primaryKey": false,
447
+ "notNull": false,
448
+ "autoincrement": false
449
+ },
450
+ "project_id": {
451
+ "name": "project_id",
452
+ "type": "text",
453
+ "primaryKey": false,
454
+ "notNull": false,
455
+ "autoincrement": false
456
+ }
457
+ },
458
+ "indexes": {},
459
+ "foreignKeys": {},
460
+ "compositePrimaryKeys": {},
461
+ "uniqueConstraints": {},
462
+ "checkConstraints": {}
463
+ },
464
+ "password_reset_tokens": {
465
+ "name": "password_reset_tokens",
466
+ "columns": {
467
+ "id": {
468
+ "name": "id",
469
+ "type": "text",
470
+ "primaryKey": true,
471
+ "notNull": true,
472
+ "autoincrement": false
473
+ },
474
+ "user_id": {
475
+ "name": "user_id",
476
+ "type": "text",
477
+ "primaryKey": false,
478
+ "notNull": true,
479
+ "autoincrement": false
480
+ },
481
+ "token_hash": {
482
+ "name": "token_hash",
483
+ "type": "text",
484
+ "primaryKey": false,
485
+ "notNull": true,
486
+ "autoincrement": false
487
+ },
488
+ "expires_at": {
489
+ "name": "expires_at",
490
+ "type": "text",
491
+ "primaryKey": false,
492
+ "notNull": true,
493
+ "autoincrement": false
494
+ },
495
+ "created_at": {
496
+ "name": "created_at",
497
+ "type": "text",
498
+ "primaryKey": false,
499
+ "notNull": true,
500
+ "autoincrement": false
501
+ },
502
+ "used_at": {
503
+ "name": "used_at",
504
+ "type": "text",
505
+ "primaryKey": false,
506
+ "notNull": false,
507
+ "autoincrement": false
508
+ }
509
+ },
510
+ "indexes": {},
511
+ "foreignKeys": {
512
+ "password_reset_tokens_user_id_users_id_fk": {
513
+ "name": "password_reset_tokens_user_id_users_id_fk",
514
+ "tableFrom": "password_reset_tokens",
515
+ "tableTo": "users",
516
+ "columnsFrom": [
517
+ "user_id"
518
+ ],
519
+ "columnsTo": [
520
+ "id"
521
+ ],
522
+ "onDelete": "no action",
523
+ "onUpdate": "no action"
524
+ }
525
+ },
526
+ "compositePrimaryKeys": {},
527
+ "uniqueConstraints": {},
528
+ "checkConstraints": {}
529
+ },
530
+ "pipeline_outputs": {
531
+ "name": "pipeline_outputs",
532
+ "columns": {
533
+ "id": {
534
+ "name": "id",
535
+ "type": "text",
536
+ "primaryKey": true,
537
+ "notNull": true,
538
+ "autoincrement": false
539
+ },
540
+ "feature_id": {
541
+ "name": "feature_id",
542
+ "type": "text",
543
+ "primaryKey": false,
544
+ "notNull": true,
545
+ "autoincrement": false
546
+ },
547
+ "stage": {
548
+ "name": "stage",
549
+ "type": "text",
550
+ "primaryKey": false,
551
+ "notNull": true,
552
+ "autoincrement": false
553
+ },
554
+ "cycle": {
555
+ "name": "cycle",
556
+ "type": "integer",
557
+ "primaryKey": false,
558
+ "notNull": true,
559
+ "autoincrement": false
560
+ },
561
+ "output": {
562
+ "name": "output",
563
+ "type": "text",
564
+ "primaryKey": false,
565
+ "notNull": true,
566
+ "autoincrement": false
567
+ },
568
+ "created_at": {
569
+ "name": "created_at",
570
+ "type": "text",
571
+ "primaryKey": false,
572
+ "notNull": true,
573
+ "autoincrement": false
574
+ },
575
+ "project_id": {
576
+ "name": "project_id",
577
+ "type": "text",
578
+ "primaryKey": false,
579
+ "notNull": false,
580
+ "autoincrement": false
581
+ }
582
+ },
583
+ "indexes": {},
584
+ "foreignKeys": {},
585
+ "compositePrimaryKeys": {},
586
+ "uniqueConstraints": {},
587
+ "checkConstraints": {}
588
+ },
589
+ "pipeline_state": {
590
+ "name": "pipeline_state",
591
+ "columns": {
592
+ "feature_id": {
593
+ "name": "feature_id",
594
+ "type": "text",
595
+ "primaryKey": true,
596
+ "notNull": true,
597
+ "autoincrement": false
598
+ },
599
+ "status": {
600
+ "name": "status",
601
+ "type": "text",
602
+ "primaryKey": false,
603
+ "notNull": true,
604
+ "autoincrement": false
605
+ },
606
+ "cycle": {
607
+ "name": "cycle",
608
+ "type": "integer",
609
+ "primaryKey": false,
610
+ "notNull": true,
611
+ "autoincrement": false,
612
+ "default": 1
613
+ },
614
+ "tasks_json": {
615
+ "name": "tasks_json",
616
+ "type": "text",
617
+ "primaryKey": false,
618
+ "notNull": false,
619
+ "autoincrement": false
620
+ },
621
+ "tool_calls_json": {
622
+ "name": "tool_calls_json",
623
+ "type": "text",
624
+ "primaryKey": false,
625
+ "notNull": false,
626
+ "autoincrement": false
627
+ },
628
+ "work_summaries_json": {
629
+ "name": "work_summaries_json",
630
+ "type": "text",
631
+ "primaryKey": false,
632
+ "notNull": false,
633
+ "autoincrement": false
634
+ },
635
+ "stage_stats_json": {
636
+ "name": "stage_stats_json",
637
+ "type": "text",
638
+ "primaryKey": false,
639
+ "notNull": false,
640
+ "autoincrement": false
641
+ },
642
+ "error": {
643
+ "name": "error",
644
+ "type": "text",
645
+ "primaryKey": false,
646
+ "notNull": false,
647
+ "autoincrement": false
648
+ },
649
+ "updated_at": {
650
+ "name": "updated_at",
651
+ "type": "text",
652
+ "primaryKey": false,
653
+ "notNull": true,
654
+ "autoincrement": false
655
+ },
656
+ "project_id": {
657
+ "name": "project_id",
658
+ "type": "text",
659
+ "primaryKey": false,
660
+ "notNull": false,
661
+ "autoincrement": false
662
+ }
663
+ },
664
+ "indexes": {},
665
+ "foreignKeys": {},
666
+ "compositePrimaryKeys": {},
667
+ "uniqueConstraints": {},
668
+ "checkConstraints": {}
669
+ },
670
+ "projects": {
671
+ "name": "projects",
672
+ "columns": {
673
+ "id": {
674
+ "name": "id",
675
+ "type": "text",
676
+ "primaryKey": true,
677
+ "notNull": true,
678
+ "autoincrement": false
679
+ },
680
+ "name": {
681
+ "name": "name",
682
+ "type": "text",
683
+ "primaryKey": false,
684
+ "notNull": true,
685
+ "autoincrement": false
686
+ },
687
+ "type": {
688
+ "name": "type",
689
+ "type": "text",
690
+ "primaryKey": false,
691
+ "notNull": true,
692
+ "autoincrement": false,
693
+ "default": "'software'"
694
+ },
695
+ "is_default": {
696
+ "name": "is_default",
697
+ "type": "integer",
698
+ "primaryKey": false,
699
+ "notNull": true,
700
+ "autoincrement": false,
701
+ "default": 0
702
+ },
703
+ "archived_at": {
704
+ "name": "archived_at",
705
+ "type": "text",
706
+ "primaryKey": false,
707
+ "notNull": false,
708
+ "autoincrement": false
709
+ },
710
+ "repo_url": {
711
+ "name": "repo_url",
712
+ "type": "text",
713
+ "primaryKey": false,
714
+ "notNull": false,
715
+ "autoincrement": false
716
+ },
717
+ "github_installation_id": {
718
+ "name": "github_installation_id",
719
+ "type": "text",
720
+ "primaryKey": false,
721
+ "notNull": false,
722
+ "autoincrement": false
723
+ },
724
+ "github_repo_full_name": {
725
+ "name": "github_repo_full_name",
726
+ "type": "text",
727
+ "primaryKey": false,
728
+ "notNull": false,
729
+ "autoincrement": false
730
+ },
731
+ "base_branch": {
732
+ "name": "base_branch",
733
+ "type": "text",
734
+ "primaryKey": false,
735
+ "notNull": false,
736
+ "autoincrement": false
737
+ },
738
+ "git_auth_method": {
739
+ "name": "git_auth_method",
740
+ "type": "text",
741
+ "primaryKey": false,
742
+ "notNull": false,
743
+ "autoincrement": false
744
+ },
745
+ "ssh_private_key_encrypted": {
746
+ "name": "ssh_private_key_encrypted",
747
+ "type": "text",
748
+ "primaryKey": false,
749
+ "notNull": false,
750
+ "autoincrement": false
751
+ },
752
+ "ssh_public_key": {
753
+ "name": "ssh_public_key",
754
+ "type": "text",
755
+ "primaryKey": false,
756
+ "notNull": false,
757
+ "autoincrement": false
758
+ },
759
+ "created_at": {
760
+ "name": "created_at",
761
+ "type": "text",
762
+ "primaryKey": false,
763
+ "notNull": true,
764
+ "autoincrement": false
765
+ },
766
+ "updated_at": {
767
+ "name": "updated_at",
768
+ "type": "text",
769
+ "primaryKey": false,
770
+ "notNull": true,
771
+ "autoincrement": false
772
+ }
773
+ },
774
+ "indexes": {},
775
+ "foreignKeys": {},
776
+ "compositePrimaryKeys": {},
777
+ "uniqueConstraints": {},
778
+ "checkConstraints": {}
779
+ },
780
+ "refresh_tokens": {
781
+ "name": "refresh_tokens",
782
+ "columns": {
783
+ "id": {
784
+ "name": "id",
785
+ "type": "text",
786
+ "primaryKey": true,
787
+ "notNull": true,
788
+ "autoincrement": false
789
+ },
790
+ "user_id": {
791
+ "name": "user_id",
792
+ "type": "text",
793
+ "primaryKey": false,
794
+ "notNull": true,
795
+ "autoincrement": false
796
+ },
797
+ "token_hash": {
798
+ "name": "token_hash",
799
+ "type": "text",
800
+ "primaryKey": false,
801
+ "notNull": true,
802
+ "autoincrement": false
803
+ },
804
+ "expires_at": {
805
+ "name": "expires_at",
806
+ "type": "text",
807
+ "primaryKey": false,
808
+ "notNull": true,
809
+ "autoincrement": false
810
+ },
811
+ "created_at": {
812
+ "name": "created_at",
813
+ "type": "text",
814
+ "primaryKey": false,
815
+ "notNull": true,
816
+ "autoincrement": false
817
+ }
818
+ },
819
+ "indexes": {},
820
+ "foreignKeys": {
821
+ "refresh_tokens_user_id_users_id_fk": {
822
+ "name": "refresh_tokens_user_id_users_id_fk",
823
+ "tableFrom": "refresh_tokens",
824
+ "tableTo": "users",
825
+ "columnsFrom": [
826
+ "user_id"
827
+ ],
828
+ "columnsTo": [
829
+ "id"
830
+ ],
831
+ "onDelete": "no action",
832
+ "onUpdate": "no action"
833
+ }
834
+ },
835
+ "compositePrimaryKeys": {},
836
+ "uniqueConstraints": {},
837
+ "checkConstraints": {}
838
+ },
839
+ "review_meta": {
840
+ "name": "review_meta",
841
+ "columns": {
842
+ "key": {
843
+ "name": "key",
844
+ "type": "text",
845
+ "primaryKey": true,
846
+ "notNull": true,
847
+ "autoincrement": false
848
+ },
849
+ "value": {
850
+ "name": "value",
851
+ "type": "text",
852
+ "primaryKey": false,
853
+ "notNull": true,
854
+ "autoincrement": false
855
+ },
856
+ "project_id": {
857
+ "name": "project_id",
858
+ "type": "text",
859
+ "primaryKey": false,
860
+ "notNull": false,
861
+ "autoincrement": false
862
+ }
863
+ },
864
+ "indexes": {},
865
+ "foreignKeys": {},
866
+ "compositePrimaryKeys": {},
867
+ "uniqueConstraints": {},
868
+ "checkConstraints": {}
869
+ },
870
+ "sessions": {
871
+ "name": "sessions",
872
+ "columns": {
873
+ "session_number": {
874
+ "name": "session_number",
875
+ "type": "integer",
876
+ "primaryKey": false,
877
+ "notNull": true,
878
+ "autoincrement": false
879
+ },
880
+ "started_at": {
881
+ "name": "started_at",
882
+ "type": "text",
883
+ "primaryKey": false,
884
+ "notNull": true,
885
+ "autoincrement": false
886
+ },
887
+ "ended_at": {
888
+ "name": "ended_at",
889
+ "type": "text",
890
+ "primaryKey": false,
891
+ "notNull": false,
892
+ "autoincrement": false
893
+ },
894
+ "summary": {
895
+ "name": "summary",
896
+ "type": "text",
897
+ "primaryKey": false,
898
+ "notNull": false,
899
+ "autoincrement": false
900
+ },
901
+ "nodes_touched": {
902
+ "name": "nodes_touched",
903
+ "type": "text",
904
+ "primaryKey": false,
905
+ "notNull": false,
906
+ "autoincrement": false
907
+ },
908
+ "questions_resolved": {
909
+ "name": "questions_resolved",
910
+ "type": "integer",
911
+ "primaryKey": false,
912
+ "notNull": true,
913
+ "autoincrement": false,
914
+ "default": 0
915
+ },
916
+ "body": {
917
+ "name": "body",
918
+ "type": "text",
919
+ "primaryKey": false,
920
+ "notNull": false,
921
+ "autoincrement": false
922
+ },
923
+ "project_id": {
924
+ "name": "project_id",
925
+ "type": "text",
926
+ "primaryKey": false,
927
+ "notNull": true,
928
+ "autoincrement": false
929
+ }
930
+ },
931
+ "indexes": {},
932
+ "foreignKeys": {},
933
+ "compositePrimaryKeys": {
934
+ "sessions_session_number_project_id_pk": {
935
+ "columns": [
936
+ "session_number",
937
+ "project_id"
938
+ ],
939
+ "name": "sessions_session_number_project_id_pk"
940
+ }
941
+ },
942
+ "uniqueConstraints": {},
943
+ "checkConstraints": {}
944
+ },
945
+ "terminal_sessions": {
946
+ "name": "terminal_sessions",
947
+ "columns": {
948
+ "id": {
949
+ "name": "id",
950
+ "type": "text",
951
+ "primaryKey": true,
952
+ "notNull": true,
953
+ "autoincrement": false
954
+ },
955
+ "claude_session_id": {
956
+ "name": "claude_session_id",
957
+ "type": "text",
958
+ "primaryKey": false,
959
+ "notNull": true,
960
+ "autoincrement": false
961
+ },
962
+ "project_id": {
963
+ "name": "project_id",
964
+ "type": "text",
965
+ "primaryKey": false,
966
+ "notNull": true,
967
+ "autoincrement": false
968
+ },
969
+ "project_name": {
970
+ "name": "project_name",
971
+ "type": "text",
972
+ "primaryKey": false,
973
+ "notNull": true,
974
+ "autoincrement": false
975
+ },
976
+ "name": {
977
+ "name": "name",
978
+ "type": "text",
979
+ "primaryKey": false,
980
+ "notNull": true,
981
+ "autoincrement": false
982
+ },
983
+ "created_at": {
984
+ "name": "created_at",
985
+ "type": "text",
986
+ "primaryKey": false,
987
+ "notNull": true,
988
+ "autoincrement": false
989
+ },
990
+ "last_used_at": {
991
+ "name": "last_used_at",
992
+ "type": "text",
993
+ "primaryKey": false,
994
+ "notNull": true,
995
+ "autoincrement": false
996
+ }
997
+ },
998
+ "indexes": {},
999
+ "foreignKeys": {},
1000
+ "compositePrimaryKeys": {},
1001
+ "uniqueConstraints": {},
1002
+ "checkConstraints": {}
1003
+ },
1004
+ "users": {
1005
+ "name": "users",
1006
+ "columns": {
1007
+ "id": {
1008
+ "name": "id",
1009
+ "type": "text",
1010
+ "primaryKey": true,
1011
+ "notNull": true,
1012
+ "autoincrement": false
1013
+ },
1014
+ "email": {
1015
+ "name": "email",
1016
+ "type": "text",
1017
+ "primaryKey": false,
1018
+ "notNull": true,
1019
+ "autoincrement": false
1020
+ },
1021
+ "password_hash": {
1022
+ "name": "password_hash",
1023
+ "type": "text",
1024
+ "primaryKey": false,
1025
+ "notNull": true,
1026
+ "autoincrement": false
1027
+ },
1028
+ "role": {
1029
+ "name": "role",
1030
+ "type": "text",
1031
+ "primaryKey": false,
1032
+ "notNull": true,
1033
+ "autoincrement": false,
1034
+ "default": "'user'"
1035
+ },
1036
+ "created_at": {
1037
+ "name": "created_at",
1038
+ "type": "text",
1039
+ "primaryKey": false,
1040
+ "notNull": true,
1041
+ "autoincrement": false
1042
+ },
1043
+ "updated_at": {
1044
+ "name": "updated_at",
1045
+ "type": "text",
1046
+ "primaryKey": false,
1047
+ "notNull": true,
1048
+ "autoincrement": false
1049
+ }
1050
+ },
1051
+ "indexes": {
1052
+ "users_email_unique": {
1053
+ "name": "users_email_unique",
1054
+ "columns": [
1055
+ "email"
1056
+ ],
1057
+ "isUnique": true
1058
+ }
1059
+ },
1060
+ "foreignKeys": {},
1061
+ "compositePrimaryKeys": {},
1062
+ "uniqueConstraints": {},
1063
+ "checkConstraints": {}
1064
+ },
1065
+ "workflow_executions": {
1066
+ "name": "workflow_executions",
1067
+ "columns": {
1068
+ "id": {
1069
+ "name": "id",
1070
+ "type": "text",
1071
+ "primaryKey": true,
1072
+ "notNull": true,
1073
+ "autoincrement": false
1074
+ },
1075
+ "workflow_id": {
1076
+ "name": "workflow_id",
1077
+ "type": "text",
1078
+ "primaryKey": false,
1079
+ "notNull": true,
1080
+ "autoincrement": false
1081
+ },
1082
+ "feature_id": {
1083
+ "name": "feature_id",
1084
+ "type": "text",
1085
+ "primaryKey": false,
1086
+ "notNull": true,
1087
+ "autoincrement": false
1088
+ },
1089
+ "status": {
1090
+ "name": "status",
1091
+ "type": "text",
1092
+ "primaryKey": false,
1093
+ "notNull": true,
1094
+ "autoincrement": false
1095
+ },
1096
+ "current_node_id": {
1097
+ "name": "current_node_id",
1098
+ "type": "text",
1099
+ "primaryKey": false,
1100
+ "notNull": false,
1101
+ "autoincrement": false
1102
+ },
1103
+ "context": {
1104
+ "name": "context",
1105
+ "type": "text",
1106
+ "primaryKey": false,
1107
+ "notNull": true,
1108
+ "autoincrement": false
1109
+ },
1110
+ "started_at": {
1111
+ "name": "started_at",
1112
+ "type": "text",
1113
+ "primaryKey": false,
1114
+ "notNull": true,
1115
+ "autoincrement": false
1116
+ },
1117
+ "updated_at": {
1118
+ "name": "updated_at",
1119
+ "type": "text",
1120
+ "primaryKey": false,
1121
+ "notNull": true,
1122
+ "autoincrement": false
1123
+ }
1124
+ },
1125
+ "indexes": {},
1126
+ "foreignKeys": {
1127
+ "workflow_executions_workflow_id_workflows_id_fk": {
1128
+ "name": "workflow_executions_workflow_id_workflows_id_fk",
1129
+ "tableFrom": "workflow_executions",
1130
+ "tableTo": "workflows",
1131
+ "columnsFrom": [
1132
+ "workflow_id"
1133
+ ],
1134
+ "columnsTo": [
1135
+ "id"
1136
+ ],
1137
+ "onDelete": "no action",
1138
+ "onUpdate": "no action"
1139
+ }
1140
+ },
1141
+ "compositePrimaryKeys": {},
1142
+ "uniqueConstraints": {},
1143
+ "checkConstraints": {}
1144
+ },
1145
+ "workflow_groups": {
1146
+ "name": "workflow_groups",
1147
+ "columns": {
1148
+ "id": {
1149
+ "name": "id",
1150
+ "type": "text",
1151
+ "primaryKey": true,
1152
+ "notNull": true,
1153
+ "autoincrement": false
1154
+ },
1155
+ "name": {
1156
+ "name": "name",
1157
+ "type": "text",
1158
+ "primaryKey": false,
1159
+ "notNull": true,
1160
+ "autoincrement": false
1161
+ },
1162
+ "project_id": {
1163
+ "name": "project_id",
1164
+ "type": "text",
1165
+ "primaryKey": false,
1166
+ "notNull": false,
1167
+ "autoincrement": false
1168
+ },
1169
+ "graph_data": {
1170
+ "name": "graph_data",
1171
+ "type": "text",
1172
+ "primaryKey": false,
1173
+ "notNull": true,
1174
+ "autoincrement": false
1175
+ },
1176
+ "created_at": {
1177
+ "name": "created_at",
1178
+ "type": "text",
1179
+ "primaryKey": false,
1180
+ "notNull": true,
1181
+ "autoincrement": false
1182
+ },
1183
+ "updated_at": {
1184
+ "name": "updated_at",
1185
+ "type": "text",
1186
+ "primaryKey": false,
1187
+ "notNull": true,
1188
+ "autoincrement": false
1189
+ }
1190
+ },
1191
+ "indexes": {},
1192
+ "foreignKeys": {},
1193
+ "compositePrimaryKeys": {},
1194
+ "uniqueConstraints": {},
1195
+ "checkConstraints": {}
1196
+ },
1197
+ "workflow_node_executions": {
1198
+ "name": "workflow_node_executions",
1199
+ "columns": {
1200
+ "id": {
1201
+ "name": "id",
1202
+ "type": "text",
1203
+ "primaryKey": true,
1204
+ "notNull": true,
1205
+ "autoincrement": false
1206
+ },
1207
+ "execution_id": {
1208
+ "name": "execution_id",
1209
+ "type": "text",
1210
+ "primaryKey": false,
1211
+ "notNull": true,
1212
+ "autoincrement": false
1213
+ },
1214
+ "node_id": {
1215
+ "name": "node_id",
1216
+ "type": "text",
1217
+ "primaryKey": false,
1218
+ "notNull": true,
1219
+ "autoincrement": false
1220
+ },
1221
+ "status": {
1222
+ "name": "status",
1223
+ "type": "text",
1224
+ "primaryKey": false,
1225
+ "notNull": true,
1226
+ "autoincrement": false
1227
+ },
1228
+ "started_at": {
1229
+ "name": "started_at",
1230
+ "type": "text",
1231
+ "primaryKey": false,
1232
+ "notNull": false,
1233
+ "autoincrement": false
1234
+ },
1235
+ "completed_at": {
1236
+ "name": "completed_at",
1237
+ "type": "text",
1238
+ "primaryKey": false,
1239
+ "notNull": false,
1240
+ "autoincrement": false
1241
+ },
1242
+ "output_data": {
1243
+ "name": "output_data",
1244
+ "type": "text",
1245
+ "primaryKey": false,
1246
+ "notNull": false,
1247
+ "autoincrement": false
1248
+ },
1249
+ "error": {
1250
+ "name": "error",
1251
+ "type": "text",
1252
+ "primaryKey": false,
1253
+ "notNull": false,
1254
+ "autoincrement": false
1255
+ },
1256
+ "attempt": {
1257
+ "name": "attempt",
1258
+ "type": "integer",
1259
+ "primaryKey": false,
1260
+ "notNull": true,
1261
+ "autoincrement": false,
1262
+ "default": 1
1263
+ }
1264
+ },
1265
+ "indexes": {},
1266
+ "foreignKeys": {
1267
+ "workflow_node_executions_execution_id_workflow_executions_id_fk": {
1268
+ "name": "workflow_node_executions_execution_id_workflow_executions_id_fk",
1269
+ "tableFrom": "workflow_node_executions",
1270
+ "tableTo": "workflow_executions",
1271
+ "columnsFrom": [
1272
+ "execution_id"
1273
+ ],
1274
+ "columnsTo": [
1275
+ "id"
1276
+ ],
1277
+ "onDelete": "no action",
1278
+ "onUpdate": "no action"
1279
+ }
1280
+ },
1281
+ "compositePrimaryKeys": {},
1282
+ "uniqueConstraints": {},
1283
+ "checkConstraints": {}
1284
+ },
1285
+ "workflow_tool_calls": {
1286
+ "name": "workflow_tool_calls",
1287
+ "columns": {
1288
+ "id": {
1289
+ "name": "id",
1290
+ "type": "text",
1291
+ "primaryKey": true,
1292
+ "notNull": true,
1293
+ "autoincrement": false
1294
+ },
1295
+ "node_execution_id": {
1296
+ "name": "node_execution_id",
1297
+ "type": "text",
1298
+ "primaryKey": false,
1299
+ "notNull": true,
1300
+ "autoincrement": false
1301
+ },
1302
+ "timestamp": {
1303
+ "name": "timestamp",
1304
+ "type": "text",
1305
+ "primaryKey": false,
1306
+ "notNull": true,
1307
+ "autoincrement": false
1308
+ },
1309
+ "tool_name": {
1310
+ "name": "tool_name",
1311
+ "type": "text",
1312
+ "primaryKey": false,
1313
+ "notNull": true,
1314
+ "autoincrement": false
1315
+ },
1316
+ "target": {
1317
+ "name": "target",
1318
+ "type": "text",
1319
+ "primaryKey": false,
1320
+ "notNull": true,
1321
+ "autoincrement": false
1322
+ },
1323
+ "created_at": {
1324
+ "name": "created_at",
1325
+ "type": "text",
1326
+ "primaryKey": false,
1327
+ "notNull": true,
1328
+ "autoincrement": false
1329
+ }
1330
+ },
1331
+ "indexes": {},
1332
+ "foreignKeys": {
1333
+ "workflow_tool_calls_node_execution_id_workflow_node_executions_id_fk": {
1334
+ "name": "workflow_tool_calls_node_execution_id_workflow_node_executions_id_fk",
1335
+ "tableFrom": "workflow_tool_calls",
1336
+ "tableTo": "workflow_node_executions",
1337
+ "columnsFrom": [
1338
+ "node_execution_id"
1339
+ ],
1340
+ "columnsTo": [
1341
+ "id"
1342
+ ],
1343
+ "onDelete": "no action",
1344
+ "onUpdate": "no action"
1345
+ }
1346
+ },
1347
+ "compositePrimaryKeys": {},
1348
+ "uniqueConstraints": {},
1349
+ "checkConstraints": {}
1350
+ },
1351
+ "workflows": {
1352
+ "name": "workflows",
1353
+ "columns": {
1354
+ "id": {
1355
+ "name": "id",
1356
+ "type": "text",
1357
+ "primaryKey": true,
1358
+ "notNull": true,
1359
+ "autoincrement": false
1360
+ },
1361
+ "name": {
1362
+ "name": "name",
1363
+ "type": "text",
1364
+ "primaryKey": false,
1365
+ "notNull": true,
1366
+ "autoincrement": false
1367
+ },
1368
+ "description": {
1369
+ "name": "description",
1370
+ "type": "text",
1371
+ "primaryKey": false,
1372
+ "notNull": false,
1373
+ "autoincrement": false
1374
+ },
1375
+ "project_id": {
1376
+ "name": "project_id",
1377
+ "type": "text",
1378
+ "primaryKey": false,
1379
+ "notNull": false,
1380
+ "autoincrement": false
1381
+ },
1382
+ "feature_type": {
1383
+ "name": "feature_type",
1384
+ "type": "text",
1385
+ "primaryKey": false,
1386
+ "notNull": false,
1387
+ "autoincrement": false
1388
+ },
1389
+ "is_default": {
1390
+ "name": "is_default",
1391
+ "type": "integer",
1392
+ "primaryKey": false,
1393
+ "notNull": true,
1394
+ "autoincrement": false,
1395
+ "default": 0
1396
+ },
1397
+ "graph_data": {
1398
+ "name": "graph_data",
1399
+ "type": "text",
1400
+ "primaryKey": false,
1401
+ "notNull": true,
1402
+ "autoincrement": false
1403
+ },
1404
+ "created_at": {
1405
+ "name": "created_at",
1406
+ "type": "text",
1407
+ "primaryKey": false,
1408
+ "notNull": true,
1409
+ "autoincrement": false
1410
+ },
1411
+ "updated_at": {
1412
+ "name": "updated_at",
1413
+ "type": "text",
1414
+ "primaryKey": false,
1415
+ "notNull": true,
1416
+ "autoincrement": false
1417
+ }
1418
+ },
1419
+ "indexes": {},
1420
+ "foreignKeys": {},
1421
+ "compositePrimaryKeys": {},
1422
+ "uniqueConstraints": {},
1423
+ "checkConstraints": {}
1424
+ }
1425
+ },
1426
+ "views": {},
1427
+ "enums": {},
1428
+ "_meta": {
1429
+ "schemas": {},
1430
+ "tables": {},
1431
+ "columns": {}
1432
+ },
1433
+ "internal": {
1434
+ "indexes": {}
1435
+ }
1436
+ }