@assistkick/create 1.9.0 → 1.11.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 (206) hide show
  1. package/dist/src/scaffolder.d.ts +12 -1
  2. package/dist/src/scaffolder.js +40 -3
  3. package/dist/src/scaffolder.js.map +1 -1
  4. package/package.json +1 -1
  5. package/templates/assistkick-product-system/package.json +1 -1
  6. package/templates/assistkick-product-system/packages/backend/package.json +1 -0
  7. package/templates/assistkick-product-system/packages/backend/src/mcp/permission_mcp_server.ts +196 -0
  8. package/templates/assistkick-product-system/packages/backend/src/routes/agents.ts +31 -7
  9. package/templates/assistkick-product-system/packages/backend/src/routes/auth.ts +15 -12
  10. package/templates/assistkick-product-system/packages/backend/src/routes/chat_files.test.ts +95 -0
  11. package/templates/assistkick-product-system/packages/backend/src/routes/chat_files.ts +97 -0
  12. package/templates/assistkick-product-system/packages/backend/src/routes/chat_permission.ts +94 -0
  13. package/templates/assistkick-product-system/packages/backend/src/routes/chat_sessions.ts +189 -0
  14. package/templates/assistkick-product-system/packages/backend/src/routes/chat_upload.test.ts +131 -0
  15. package/templates/assistkick-product-system/packages/backend/src/routes/chat_upload.ts +94 -0
  16. package/templates/assistkick-product-system/packages/backend/src/routes/files.test.ts +12 -3
  17. package/templates/assistkick-product-system/packages/backend/src/routes/files.ts +2 -2
  18. package/templates/assistkick-product-system/packages/backend/src/routes/git.ts +391 -23
  19. package/templates/assistkick-product-system/packages/backend/src/routes/git_branches.test.ts +306 -0
  20. package/templates/assistkick-product-system/packages/backend/src/routes/git_connect.test.ts +133 -0
  21. package/templates/assistkick-product-system/packages/backend/src/routes/pipeline.ts +66 -9
  22. package/templates/assistkick-product-system/packages/backend/src/routes/preview.ts +204 -0
  23. package/templates/assistkick-product-system/packages/backend/src/routes/projects.test.ts +205 -0
  24. package/templates/assistkick-product-system/packages/backend/src/routes/projects.ts +37 -9
  25. package/templates/assistkick-product-system/packages/backend/src/routes/skills.test.ts +139 -0
  26. package/templates/assistkick-product-system/packages/backend/src/routes/skills.ts +95 -0
  27. package/templates/assistkick-product-system/packages/backend/src/routes/terminal.ts +5 -4
  28. package/templates/assistkick-product-system/packages/backend/src/routes/users.ts +4 -4
  29. package/templates/assistkick-product-system/packages/backend/src/routes/video.ts +8 -8
  30. package/templates/assistkick-product-system/packages/backend/src/routes/workflow_groups.ts +5 -5
  31. package/templates/assistkick-product-system/packages/backend/src/routes/workflows.ts +6 -6
  32. package/templates/assistkick-product-system/packages/backend/src/server.ts +107 -27
  33. package/templates/assistkick-product-system/packages/backend/src/services/agent_service.test.ts +105 -203
  34. package/templates/assistkick-product-system/packages/backend/src/services/agent_service.ts +76 -266
  35. package/templates/assistkick-product-system/packages/backend/src/services/chat_cli_bridge.test.ts +427 -0
  36. package/templates/assistkick-product-system/packages/backend/src/services/chat_cli_bridge.ts +345 -0
  37. package/templates/assistkick-product-system/packages/backend/src/services/chat_message_repository.test.ts +170 -0
  38. package/templates/assistkick-product-system/packages/backend/src/services/chat_message_repository.ts +106 -0
  39. package/templates/assistkick-product-system/packages/backend/src/services/chat_session_service.test.ts +217 -0
  40. package/templates/assistkick-product-system/packages/backend/src/services/chat_session_service.ts +188 -0
  41. package/templates/assistkick-product-system/packages/backend/src/services/chat_ws_handler.test.ts +1243 -0
  42. package/templates/assistkick-product-system/packages/backend/src/services/chat_ws_handler.ts +894 -0
  43. package/templates/assistkick-product-system/packages/backend/src/services/coherence-review.ts +3 -3
  44. package/templates/assistkick-product-system/packages/backend/src/services/dev_command_detector.test.ts +85 -0
  45. package/templates/assistkick-product-system/packages/backend/src/services/dev_command_detector.ts +54 -0
  46. package/templates/assistkick-product-system/packages/backend/src/services/email_service.ts +13 -10
  47. package/templates/assistkick-product-system/packages/backend/src/services/init.ts +11 -3
  48. package/templates/assistkick-product-system/packages/backend/src/services/invitation_service.ts +1 -1
  49. package/templates/assistkick-product-system/packages/backend/src/services/password_reset_service.ts +1 -1
  50. package/templates/assistkick-product-system/packages/backend/src/services/permission_service.test.ts +243 -0
  51. package/templates/assistkick-product-system/packages/backend/src/services/permission_service.ts +259 -0
  52. package/templates/assistkick-product-system/packages/backend/src/services/preview_server_manager.test.ts +172 -0
  53. package/templates/assistkick-product-system/packages/backend/src/services/preview_server_manager.ts +225 -0
  54. package/templates/assistkick-product-system/packages/backend/src/services/project_service.test.ts +29 -0
  55. package/templates/assistkick-product-system/packages/backend/src/services/project_service.ts +17 -0
  56. package/templates/assistkick-product-system/packages/backend/src/services/project_workspace_service.test.ts +255 -0
  57. package/templates/assistkick-product-system/packages/backend/src/services/project_workspace_service.ts +300 -25
  58. package/templates/assistkick-product-system/packages/backend/src/services/pty_session_manager.test.ts +44 -0
  59. package/templates/assistkick-product-system/packages/backend/src/services/pty_session_manager.ts +62 -7
  60. package/templates/assistkick-product-system/packages/backend/src/services/ssh_key_service.test.ts +77 -6
  61. package/templates/assistkick-product-system/packages/backend/src/services/ssh_key_service.ts +149 -14
  62. package/templates/assistkick-product-system/packages/backend/src/services/terminal_ws_handler.ts +2 -1
  63. package/templates/assistkick-product-system/packages/backend/src/services/title_generator_service.test.ts +45 -0
  64. package/templates/assistkick-product-system/packages/backend/src/services/title_generator_service.ts +157 -0
  65. package/templates/assistkick-product-system/packages/backend/src/services/tts_service.ts +4 -3
  66. package/templates/assistkick-product-system/packages/backend/src/services/video_render_service.ts +3 -3
  67. package/templates/assistkick-product-system/packages/frontend/package.json +5 -0
  68. package/templates/assistkick-product-system/packages/frontend/src/App.tsx +2 -0
  69. package/templates/assistkick-product-system/packages/frontend/src/api/client.ts +336 -5
  70. package/templates/assistkick-product-system/packages/frontend/src/components/AgentsView.tsx +192 -12
  71. package/templates/assistkick-product-system/packages/frontend/src/components/AttachmentPreviewList.tsx +98 -0
  72. package/templates/assistkick-product-system/packages/frontend/src/components/AutocompleteDropdown.tsx +65 -0
  73. package/templates/assistkick-product-system/packages/frontend/src/components/ChatAttachButton.tsx +56 -0
  74. package/templates/assistkick-product-system/packages/frontend/src/components/ChatDropZone.tsx +80 -0
  75. package/templates/assistkick-product-system/packages/frontend/src/components/ChatMessageBubble.tsx +155 -0
  76. package/templates/assistkick-product-system/packages/frontend/src/components/ChatMessageContent.tsx +182 -0
  77. package/templates/assistkick-product-system/packages/frontend/src/components/ChatMessageInput.tsx +233 -0
  78. package/templates/assistkick-product-system/packages/frontend/src/components/ChatSessionSidebar.tsx +218 -0
  79. package/templates/assistkick-product-system/packages/frontend/src/components/ChatStopButton.tsx +32 -0
  80. package/templates/assistkick-product-system/packages/frontend/src/components/ChatTodoSidebar.tsx +113 -0
  81. package/templates/assistkick-product-system/packages/frontend/src/components/ChatView.tsx +842 -0
  82. package/templates/assistkick-product-system/packages/frontend/src/components/CommitMessageModal.tsx +82 -0
  83. package/templates/assistkick-product-system/packages/frontend/src/components/DiagramOverlay.tsx +160 -0
  84. package/templates/assistkick-product-system/packages/frontend/src/components/EditorTabBar.tsx +5 -5
  85. package/templates/assistkick-product-system/packages/frontend/src/components/FileTree.tsx +9 -10
  86. package/templates/assistkick-product-system/packages/frontend/src/components/FileTreeInlineInput.tsx +5 -5
  87. package/templates/assistkick-product-system/packages/frontend/src/components/FilesView.tsx +112 -41
  88. package/templates/assistkick-product-system/packages/frontend/src/components/GraphLegend.tsx +2 -2
  89. package/templates/assistkick-product-system/packages/frontend/src/components/HighlightedText.tsx +87 -0
  90. package/templates/assistkick-product-system/packages/frontend/src/components/ImageLightbox.tsx +192 -0
  91. package/templates/assistkick-product-system/packages/frontend/src/components/KanbanView.tsx +2 -2
  92. package/templates/assistkick-product-system/packages/frontend/src/components/MentionPill.tsx +33 -0
  93. package/templates/assistkick-product-system/packages/frontend/src/components/MermaidBlock.tsx +148 -0
  94. package/templates/assistkick-product-system/packages/frontend/src/components/PermissionDialog.tsx +91 -0
  95. package/templates/assistkick-product-system/packages/frontend/src/components/PermissionModeSelector.tsx +229 -0
  96. package/templates/assistkick-product-system/packages/frontend/src/components/ProjectSelector.tsx +249 -83
  97. package/templates/assistkick-product-system/packages/frontend/src/components/QueuedMessageBubble.tsx +38 -0
  98. package/templates/assistkick-product-system/packages/frontend/src/components/SidePanel.tsx +212 -117
  99. package/templates/assistkick-product-system/packages/frontend/src/components/SystemPromptAccordion.tsx +48 -0
  100. package/templates/assistkick-product-system/packages/frontend/src/components/TaskIcon.tsx +11 -0
  101. package/templates/assistkick-product-system/packages/frontend/src/components/TerminalView.tsx +25 -9
  102. package/templates/assistkick-product-system/packages/frontend/src/components/ToolDiffView.tsx +114 -0
  103. package/templates/assistkick-product-system/packages/frontend/src/components/ToolResultCard.tsx +87 -0
  104. package/templates/assistkick-product-system/packages/frontend/src/components/ToolUseCard.tsx +149 -0
  105. package/templates/assistkick-product-system/packages/frontend/src/components/Toolbar.tsx +25 -8
  106. package/templates/assistkick-product-system/packages/frontend/src/components/UnifiedGitWidget.tsx +722 -0
  107. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/GroupNode.tsx +2 -0
  108. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/NodePalette.tsx +2 -1
  109. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/ProgrammableNode.tsx +178 -0
  110. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/WorkflowCanvas.tsx +3 -0
  111. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/WorkflowMonitorModal.tsx +103 -9
  112. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/monitor_nodes.tsx +26 -2
  113. package/templates/assistkick-product-system/packages/frontend/src/components/workflow/workflow_types.ts +42 -1
  114. package/templates/assistkick-product-system/packages/frontend/src/hooks/useDocumentTitle.ts +11 -0
  115. package/templates/assistkick-product-system/packages/frontend/src/hooks/useProjects.ts +1 -0
  116. package/templates/assistkick-product-system/packages/frontend/src/hooks/use_chat_stream.ts +826 -0
  117. package/templates/assistkick-product-system/packages/frontend/src/hooks/use_file_tree_cache.ts +69 -0
  118. package/templates/assistkick-product-system/packages/frontend/src/hooks/use_mention_autocomplete.ts +284 -0
  119. package/templates/assistkick-product-system/packages/frontend/src/lib/attachment_manager.test.ts +183 -0
  120. package/templates/assistkick-product-system/packages/frontend/src/lib/attachment_manager.ts +150 -0
  121. package/templates/assistkick-product-system/packages/frontend/src/lib/chat_message_helpers.test.ts +305 -0
  122. package/templates/assistkick-product-system/packages/frontend/src/lib/chat_message_helpers.ts +113 -0
  123. package/templates/assistkick-product-system/packages/frontend/src/lib/context_usage_helpers.test.ts +157 -0
  124. package/templates/assistkick-product-system/packages/frontend/src/lib/context_usage_helpers.ts +95 -0
  125. package/templates/assistkick-product-system/packages/frontend/src/lib/mermaid_helpers.test.ts +65 -0
  126. package/templates/assistkick-product-system/packages/frontend/src/lib/mermaid_helpers.ts +110 -0
  127. package/templates/assistkick-product-system/packages/frontend/src/lib/message_queue.ts +66 -0
  128. package/templates/assistkick-product-system/packages/frontend/src/lib/tool_use_summary.test.ts +124 -0
  129. package/templates/assistkick-product-system/packages/frontend/src/lib/tool_use_summary.ts +112 -0
  130. package/templates/assistkick-product-system/packages/frontend/src/routes/AgentsRoute.tsx +2 -0
  131. package/templates/assistkick-product-system/packages/frontend/src/routes/ChatRoute.tsx +8 -0
  132. package/templates/assistkick-product-system/packages/frontend/src/routes/CoherenceRoute.tsx +2 -0
  133. package/templates/assistkick-product-system/packages/frontend/src/routes/DashboardLayout.tsx +0 -4
  134. package/templates/assistkick-product-system/packages/frontend/src/routes/DesignSystemRoute.tsx +2 -0
  135. package/templates/assistkick-product-system/packages/frontend/src/routes/FilesRoute.tsx +2 -0
  136. package/templates/assistkick-product-system/packages/frontend/src/routes/GraphRoute.tsx +2 -0
  137. package/templates/assistkick-product-system/packages/frontend/src/routes/KanbanRoute.tsx +2 -0
  138. package/templates/assistkick-product-system/packages/frontend/src/routes/TerminalRoute.tsx +2 -0
  139. package/templates/assistkick-product-system/packages/frontend/src/routes/UsersRoute.tsx +2 -0
  140. package/templates/assistkick-product-system/packages/frontend/src/routes/VideographyRoute.tsx +2 -0
  141. package/templates/assistkick-product-system/packages/frontend/src/routes/WorkflowsRoute.tsx +2 -0
  142. package/templates/assistkick-product-system/packages/frontend/src/routes/accept_invitation.tsx +2 -0
  143. package/templates/assistkick-product-system/packages/frontend/src/routes/forgot_password.tsx +2 -0
  144. package/templates/assistkick-product-system/packages/frontend/src/routes/login.tsx +2 -0
  145. package/templates/assistkick-product-system/packages/frontend/src/routes/register.tsx +2 -0
  146. package/templates/assistkick-product-system/packages/frontend/src/routes/reset_password.tsx +2 -0
  147. package/templates/assistkick-product-system/packages/frontend/src/stores/useAttachmentStore.ts +66 -0
  148. package/templates/assistkick-product-system/packages/frontend/src/stores/useChatSessionStore.ts +107 -0
  149. package/templates/assistkick-product-system/packages/frontend/src/stores/useMessageQueueStore.ts +110 -0
  150. package/templates/assistkick-product-system/packages/frontend/src/stores/usePreviewStore.ts +78 -0
  151. package/templates/assistkick-product-system/packages/frontend/src/stores/useProjectStore.ts +7 -0
  152. package/templates/assistkick-product-system/packages/frontend/src/stores/useSidePanelStore.ts +6 -1
  153. package/templates/assistkick-product-system/packages/frontend/src/styles/index.css +30 -357
  154. package/templates/assistkick-product-system/packages/frontend/src/utils/parse_node_markdown.test.ts +115 -0
  155. package/templates/assistkick-product-system/packages/frontend/src/utils/parse_node_markdown.ts +91 -0
  156. package/templates/assistkick-product-system/packages/frontend/src/utils/preview_utils.test.ts +30 -0
  157. package/templates/assistkick-product-system/packages/frontend/src/utils/preview_utils.ts +3 -0
  158. package/templates/assistkick-product-system/packages/shared/db/migrations/0015_magenta_jazinda.sql +1 -0
  159. package/templates/assistkick-product-system/packages/shared/db/migrations/0016_giant_xorn.sql +1 -0
  160. package/templates/assistkick-product-system/packages/shared/db/migrations/0017_sloppy_mentor.sql +6 -0
  161. package/templates/assistkick-product-system/packages/shared/db/migrations/0018_vengeful_kabuki.sql +9 -0
  162. package/templates/assistkick-product-system/packages/shared/db/migrations/0019_careful_sentinels.sql +8 -0
  163. package/templates/assistkick-product-system/packages/shared/db/migrations/0020_clever_spot.sql +27 -0
  164. package/templates/assistkick-product-system/packages/shared/db/migrations/0021_graceful_hex.sql +1 -0
  165. package/templates/assistkick-product-system/packages/shared/db/migrations/0022_short_kingpin.sql +1 -0
  166. package/templates/assistkick-product-system/packages/shared/db/migrations/0023_ambiguous_sharon_carter.sql +1 -0
  167. package/templates/assistkick-product-system/packages/shared/db/migrations/0024_fat_unus.sql +1 -0
  168. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0015_snapshot.json +1552 -0
  169. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0016_snapshot.json +1560 -0
  170. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0017_snapshot.json +1598 -0
  171. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0018_snapshot.json +1657 -0
  172. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0019_snapshot.json +1709 -0
  173. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0020_snapshot.json +1733 -0
  174. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0021_snapshot.json +1740 -0
  175. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0022_snapshot.json +1755 -0
  176. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0023_snapshot.json +1762 -0
  177. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/0024_snapshot.json +1769 -0
  178. package/templates/assistkick-product-system/packages/shared/db/migrations/meta/_journal.json +70 -0
  179. package/templates/assistkick-product-system/packages/shared/db/schema.ts +40 -1
  180. package/templates/assistkick-product-system/packages/shared/lib/claude-service.test.ts +236 -0
  181. package/templates/assistkick-product-system/packages/shared/lib/claude-service.ts +46 -5
  182. package/templates/assistkick-product-system/packages/shared/lib/git_workflow.ts +65 -39
  183. package/templates/assistkick-product-system/packages/shared/lib/programmable_node_executor.test.ts +173 -0
  184. package/templates/assistkick-product-system/packages/shared/lib/programmable_node_executor.ts +213 -0
  185. package/templates/assistkick-product-system/packages/shared/lib/validator.test.ts +70 -0
  186. package/templates/assistkick-product-system/packages/shared/lib/validator.ts +17 -1
  187. package/templates/assistkick-product-system/packages/shared/lib/workflow_engine.test.ts +803 -27
  188. package/templates/assistkick-product-system/packages/shared/lib/workflow_engine.ts +502 -68
  189. package/templates/assistkick-product-system/packages/shared/lib/workflow_orchestrator.ts +4 -4
  190. package/templates/assistkick-product-system/packages/shared/package.json +2 -1
  191. package/templates/assistkick-product-system/packages/shared/test_fixtures/hanging_stream.mjs +46 -0
  192. package/templates/assistkick-product-system/packages/shared/tools/add_node.test.ts +44 -0
  193. package/templates/assistkick-product-system/packages/shared/tools/add_node.ts +7 -0
  194. package/templates/assistkick-product-system/packages/shared/tools/remove_node.ts +2 -1
  195. package/templates/assistkick-product-system/packages/shared/tools/resolve_question.ts +2 -1
  196. package/templates/assistkick-product-system/packages/shared/tools/update_node.ts +2 -1
  197. package/templates/assistkick-product-system/tests/message_queue.test.ts +178 -0
  198. package/templates/assistkick-product-system/tests/message_queue_per_session.test.ts +143 -0
  199. package/templates/skills/assistkick-bootstrap/SKILL.md +26 -26
  200. package/templates/skills/assistkick-code-reviewer/SKILL.md +45 -46
  201. package/templates/skills/assistkick-db-explorer/SKILL.md +13 -13
  202. package/templates/skills/assistkick-debugger/SKILL.md +23 -23
  203. package/templates/skills/assistkick-developer/SKILL.md +59 -63
  204. package/templates/skills/assistkick-interview/SKILL.md +26 -26
  205. package/templates/skills/assistkick-video-composition-agent/SKILL.md +231 -0
  206. package/templates/skills/assistkick-video-script-writer/SKILL.md +136 -0
@@ -0,0 +1,1657 @@
1
+ {
2
+ "version": "6",
3
+ "dialect": "sqlite",
4
+ "id": "f1648874-a02e-4384-89ae-137ce69f7a5a",
5
+ "prevId": "09b1d48f-ae75-4d75-935c-885391d5757d",
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
+ "chat_permission_rules": {
68
+ "name": "chat_permission_rules",
69
+ "columns": {
70
+ "id": {
71
+ "name": "id",
72
+ "type": "text",
73
+ "primaryKey": true,
74
+ "notNull": true,
75
+ "autoincrement": false
76
+ },
77
+ "project_id": {
78
+ "name": "project_id",
79
+ "type": "text",
80
+ "primaryKey": false,
81
+ "notNull": true,
82
+ "autoincrement": false
83
+ },
84
+ "tool_name": {
85
+ "name": "tool_name",
86
+ "type": "text",
87
+ "primaryKey": false,
88
+ "notNull": true,
89
+ "autoincrement": false
90
+ },
91
+ "created_at": {
92
+ "name": "created_at",
93
+ "type": "text",
94
+ "primaryKey": false,
95
+ "notNull": true,
96
+ "autoincrement": false
97
+ }
98
+ },
99
+ "indexes": {},
100
+ "foreignKeys": {},
101
+ "compositePrimaryKeys": {},
102
+ "uniqueConstraints": {},
103
+ "checkConstraints": {}
104
+ },
105
+ "chat_sessions": {
106
+ "name": "chat_sessions",
107
+ "columns": {
108
+ "id": {
109
+ "name": "id",
110
+ "type": "text",
111
+ "primaryKey": true,
112
+ "notNull": true,
113
+ "autoincrement": false
114
+ },
115
+ "claude_session_id": {
116
+ "name": "claude_session_id",
117
+ "type": "text",
118
+ "primaryKey": false,
119
+ "notNull": true,
120
+ "autoincrement": false
121
+ },
122
+ "project_id": {
123
+ "name": "project_id",
124
+ "type": "text",
125
+ "primaryKey": false,
126
+ "notNull": true,
127
+ "autoincrement": false
128
+ },
129
+ "name": {
130
+ "name": "name",
131
+ "type": "text",
132
+ "primaryKey": false,
133
+ "notNull": true,
134
+ "autoincrement": false
135
+ },
136
+ "permission_mode": {
137
+ "name": "permission_mode",
138
+ "type": "text",
139
+ "primaryKey": false,
140
+ "notNull": false,
141
+ "autoincrement": false
142
+ },
143
+ "created_at": {
144
+ "name": "created_at",
145
+ "type": "text",
146
+ "primaryKey": false,
147
+ "notNull": true,
148
+ "autoincrement": false
149
+ },
150
+ "updated_at": {
151
+ "name": "updated_at",
152
+ "type": "text",
153
+ "primaryKey": false,
154
+ "notNull": true,
155
+ "autoincrement": false
156
+ }
157
+ },
158
+ "indexes": {},
159
+ "foreignKeys": {},
160
+ "compositePrimaryKeys": {},
161
+ "uniqueConstraints": {},
162
+ "checkConstraints": {}
163
+ },
164
+ "coherence_reviews": {
165
+ "name": "coherence_reviews",
166
+ "columns": {
167
+ "id": {
168
+ "name": "id",
169
+ "type": "text",
170
+ "primaryKey": true,
171
+ "notNull": true,
172
+ "autoincrement": false
173
+ },
174
+ "type": {
175
+ "name": "type",
176
+ "type": "text",
177
+ "primaryKey": false,
178
+ "notNull": true,
179
+ "autoincrement": false
180
+ },
181
+ "from_id": {
182
+ "name": "from_id",
183
+ "type": "text",
184
+ "primaryKey": false,
185
+ "notNull": false,
186
+ "autoincrement": false
187
+ },
188
+ "to_id": {
189
+ "name": "to_id",
190
+ "type": "text",
191
+ "primaryKey": false,
192
+ "notNull": false,
193
+ "autoincrement": false
194
+ },
195
+ "relation": {
196
+ "name": "relation",
197
+ "type": "text",
198
+ "primaryKey": false,
199
+ "notNull": false,
200
+ "autoincrement": false
201
+ },
202
+ "proposed_node_type": {
203
+ "name": "proposed_node_type",
204
+ "type": "text",
205
+ "primaryKey": false,
206
+ "notNull": false,
207
+ "autoincrement": false
208
+ },
209
+ "proposed_node_name": {
210
+ "name": "proposed_node_name",
211
+ "type": "text",
212
+ "primaryKey": false,
213
+ "notNull": false,
214
+ "autoincrement": false
215
+ },
216
+ "target_node_id": {
217
+ "name": "target_node_id",
218
+ "type": "text",
219
+ "primaryKey": false,
220
+ "notNull": false,
221
+ "autoincrement": false
222
+ },
223
+ "proposed_description": {
224
+ "name": "proposed_description",
225
+ "type": "text",
226
+ "primaryKey": false,
227
+ "notNull": false,
228
+ "autoincrement": false
229
+ },
230
+ "confidence": {
231
+ "name": "confidence",
232
+ "type": "text",
233
+ "primaryKey": false,
234
+ "notNull": false,
235
+ "autoincrement": false
236
+ },
237
+ "batch_id": {
238
+ "name": "batch_id",
239
+ "type": "text",
240
+ "primaryKey": false,
241
+ "notNull": false,
242
+ "autoincrement": false
243
+ },
244
+ "reasoning": {
245
+ "name": "reasoning",
246
+ "type": "text",
247
+ "primaryKey": false,
248
+ "notNull": true,
249
+ "autoincrement": false
250
+ },
251
+ "status": {
252
+ "name": "status",
253
+ "type": "text",
254
+ "primaryKey": false,
255
+ "notNull": true,
256
+ "autoincrement": false
257
+ },
258
+ "created_at": {
259
+ "name": "created_at",
260
+ "type": "text",
261
+ "primaryKey": false,
262
+ "notNull": true,
263
+ "autoincrement": false
264
+ },
265
+ "resolved_at": {
266
+ "name": "resolved_at",
267
+ "type": "text",
268
+ "primaryKey": false,
269
+ "notNull": false,
270
+ "autoincrement": false
271
+ },
272
+ "project_id": {
273
+ "name": "project_id",
274
+ "type": "text",
275
+ "primaryKey": false,
276
+ "notNull": false,
277
+ "autoincrement": false
278
+ }
279
+ },
280
+ "indexes": {},
281
+ "foreignKeys": {},
282
+ "compositePrimaryKeys": {},
283
+ "uniqueConstraints": {},
284
+ "checkConstraints": {}
285
+ },
286
+ "edges": {
287
+ "name": "edges",
288
+ "columns": {
289
+ "from_id": {
290
+ "name": "from_id",
291
+ "type": "text",
292
+ "primaryKey": false,
293
+ "notNull": true,
294
+ "autoincrement": false
295
+ },
296
+ "relation": {
297
+ "name": "relation",
298
+ "type": "text",
299
+ "primaryKey": false,
300
+ "notNull": true,
301
+ "autoincrement": false
302
+ },
303
+ "to_id": {
304
+ "name": "to_id",
305
+ "type": "text",
306
+ "primaryKey": false,
307
+ "notNull": true,
308
+ "autoincrement": false
309
+ },
310
+ "project_id": {
311
+ "name": "project_id",
312
+ "type": "text",
313
+ "primaryKey": false,
314
+ "notNull": false,
315
+ "autoincrement": false
316
+ }
317
+ },
318
+ "indexes": {},
319
+ "foreignKeys": {},
320
+ "compositePrimaryKeys": {
321
+ "edges_from_id_relation_to_id_pk": {
322
+ "columns": [
323
+ "from_id",
324
+ "relation",
325
+ "to_id"
326
+ ],
327
+ "name": "edges_from_id_relation_to_id_pk"
328
+ }
329
+ },
330
+ "uniqueConstraints": {},
331
+ "checkConstraints": {}
332
+ },
333
+ "invitations": {
334
+ "name": "invitations",
335
+ "columns": {
336
+ "id": {
337
+ "name": "id",
338
+ "type": "text",
339
+ "primaryKey": true,
340
+ "notNull": true,
341
+ "autoincrement": false
342
+ },
343
+ "email": {
344
+ "name": "email",
345
+ "type": "text",
346
+ "primaryKey": false,
347
+ "notNull": true,
348
+ "autoincrement": false
349
+ },
350
+ "token_hash": {
351
+ "name": "token_hash",
352
+ "type": "text",
353
+ "primaryKey": false,
354
+ "notNull": true,
355
+ "autoincrement": false
356
+ },
357
+ "invited_by": {
358
+ "name": "invited_by",
359
+ "type": "text",
360
+ "primaryKey": false,
361
+ "notNull": true,
362
+ "autoincrement": false
363
+ },
364
+ "expires_at": {
365
+ "name": "expires_at",
366
+ "type": "text",
367
+ "primaryKey": false,
368
+ "notNull": true,
369
+ "autoincrement": false
370
+ },
371
+ "accepted_at": {
372
+ "name": "accepted_at",
373
+ "type": "text",
374
+ "primaryKey": false,
375
+ "notNull": false,
376
+ "autoincrement": false
377
+ },
378
+ "created_at": {
379
+ "name": "created_at",
380
+ "type": "text",
381
+ "primaryKey": false,
382
+ "notNull": true,
383
+ "autoincrement": false
384
+ }
385
+ },
386
+ "indexes": {},
387
+ "foreignKeys": {
388
+ "invitations_invited_by_users_id_fk": {
389
+ "name": "invitations_invited_by_users_id_fk",
390
+ "tableFrom": "invitations",
391
+ "tableTo": "users",
392
+ "columnsFrom": [
393
+ "invited_by"
394
+ ],
395
+ "columnsTo": [
396
+ "id"
397
+ ],
398
+ "onDelete": "no action",
399
+ "onUpdate": "no action"
400
+ }
401
+ },
402
+ "compositePrimaryKeys": {},
403
+ "uniqueConstraints": {},
404
+ "checkConstraints": {}
405
+ },
406
+ "kanban": {
407
+ "name": "kanban",
408
+ "columns": {
409
+ "node_id": {
410
+ "name": "node_id",
411
+ "type": "text",
412
+ "primaryKey": true,
413
+ "notNull": true,
414
+ "autoincrement": false
415
+ },
416
+ "column_name": {
417
+ "name": "column_name",
418
+ "type": "text",
419
+ "primaryKey": false,
420
+ "notNull": true,
421
+ "autoincrement": false
422
+ },
423
+ "position": {
424
+ "name": "position",
425
+ "type": "integer",
426
+ "primaryKey": false,
427
+ "notNull": true,
428
+ "autoincrement": false
429
+ },
430
+ "project_id": {
431
+ "name": "project_id",
432
+ "type": "text",
433
+ "primaryKey": false,
434
+ "notNull": false,
435
+ "autoincrement": false
436
+ }
437
+ },
438
+ "indexes": {},
439
+ "foreignKeys": {
440
+ "kanban_node_id_nodes_id_fk": {
441
+ "name": "kanban_node_id_nodes_id_fk",
442
+ "tableFrom": "kanban",
443
+ "tableTo": "nodes",
444
+ "columnsFrom": [
445
+ "node_id"
446
+ ],
447
+ "columnsTo": [
448
+ "id"
449
+ ],
450
+ "onDelete": "no action",
451
+ "onUpdate": "no action"
452
+ }
453
+ },
454
+ "compositePrimaryKeys": {},
455
+ "uniqueConstraints": {},
456
+ "checkConstraints": {}
457
+ },
458
+ "nodes": {
459
+ "name": "nodes",
460
+ "columns": {
461
+ "id": {
462
+ "name": "id",
463
+ "type": "text",
464
+ "primaryKey": true,
465
+ "notNull": true,
466
+ "autoincrement": false
467
+ },
468
+ "type": {
469
+ "name": "type",
470
+ "type": "text",
471
+ "primaryKey": false,
472
+ "notNull": true,
473
+ "autoincrement": false
474
+ },
475
+ "name": {
476
+ "name": "name",
477
+ "type": "text",
478
+ "primaryKey": false,
479
+ "notNull": true,
480
+ "autoincrement": false
481
+ },
482
+ "status": {
483
+ "name": "status",
484
+ "type": "text",
485
+ "primaryKey": false,
486
+ "notNull": true,
487
+ "autoincrement": false
488
+ },
489
+ "priority": {
490
+ "name": "priority",
491
+ "type": "text",
492
+ "primaryKey": false,
493
+ "notNull": true,
494
+ "autoincrement": false
495
+ },
496
+ "completeness": {
497
+ "name": "completeness",
498
+ "type": "real",
499
+ "primaryKey": false,
500
+ "notNull": true,
501
+ "autoincrement": false,
502
+ "default": 0
503
+ },
504
+ "open_questions_count": {
505
+ "name": "open_questions_count",
506
+ "type": "integer",
507
+ "primaryKey": false,
508
+ "notNull": true,
509
+ "autoincrement": false,
510
+ "default": 0
511
+ },
512
+ "kind": {
513
+ "name": "kind",
514
+ "type": "text",
515
+ "primaryKey": false,
516
+ "notNull": false,
517
+ "autoincrement": false
518
+ },
519
+ "feature_type": {
520
+ "name": "feature_type",
521
+ "type": "text",
522
+ "primaryKey": false,
523
+ "notNull": false,
524
+ "autoincrement": false
525
+ },
526
+ "created_at": {
527
+ "name": "created_at",
528
+ "type": "text",
529
+ "primaryKey": false,
530
+ "notNull": true,
531
+ "autoincrement": false
532
+ },
533
+ "updated_at": {
534
+ "name": "updated_at",
535
+ "type": "text",
536
+ "primaryKey": false,
537
+ "notNull": true,
538
+ "autoincrement": false
539
+ },
540
+ "body": {
541
+ "name": "body",
542
+ "type": "text",
543
+ "primaryKey": false,
544
+ "notNull": false,
545
+ "autoincrement": false
546
+ },
547
+ "project_id": {
548
+ "name": "project_id",
549
+ "type": "text",
550
+ "primaryKey": false,
551
+ "notNull": false,
552
+ "autoincrement": false
553
+ }
554
+ },
555
+ "indexes": {},
556
+ "foreignKeys": {},
557
+ "compositePrimaryKeys": {},
558
+ "uniqueConstraints": {},
559
+ "checkConstraints": {}
560
+ },
561
+ "password_reset_tokens": {
562
+ "name": "password_reset_tokens",
563
+ "columns": {
564
+ "id": {
565
+ "name": "id",
566
+ "type": "text",
567
+ "primaryKey": true,
568
+ "notNull": true,
569
+ "autoincrement": false
570
+ },
571
+ "user_id": {
572
+ "name": "user_id",
573
+ "type": "text",
574
+ "primaryKey": false,
575
+ "notNull": true,
576
+ "autoincrement": false
577
+ },
578
+ "token_hash": {
579
+ "name": "token_hash",
580
+ "type": "text",
581
+ "primaryKey": false,
582
+ "notNull": true,
583
+ "autoincrement": false
584
+ },
585
+ "expires_at": {
586
+ "name": "expires_at",
587
+ "type": "text",
588
+ "primaryKey": false,
589
+ "notNull": true,
590
+ "autoincrement": false
591
+ },
592
+ "created_at": {
593
+ "name": "created_at",
594
+ "type": "text",
595
+ "primaryKey": false,
596
+ "notNull": true,
597
+ "autoincrement": false
598
+ },
599
+ "used_at": {
600
+ "name": "used_at",
601
+ "type": "text",
602
+ "primaryKey": false,
603
+ "notNull": false,
604
+ "autoincrement": false
605
+ }
606
+ },
607
+ "indexes": {},
608
+ "foreignKeys": {
609
+ "password_reset_tokens_user_id_users_id_fk": {
610
+ "name": "password_reset_tokens_user_id_users_id_fk",
611
+ "tableFrom": "password_reset_tokens",
612
+ "tableTo": "users",
613
+ "columnsFrom": [
614
+ "user_id"
615
+ ],
616
+ "columnsTo": [
617
+ "id"
618
+ ],
619
+ "onDelete": "no action",
620
+ "onUpdate": "no action"
621
+ }
622
+ },
623
+ "compositePrimaryKeys": {},
624
+ "uniqueConstraints": {},
625
+ "checkConstraints": {}
626
+ },
627
+ "pipeline_outputs": {
628
+ "name": "pipeline_outputs",
629
+ "columns": {
630
+ "id": {
631
+ "name": "id",
632
+ "type": "text",
633
+ "primaryKey": true,
634
+ "notNull": true,
635
+ "autoincrement": false
636
+ },
637
+ "feature_id": {
638
+ "name": "feature_id",
639
+ "type": "text",
640
+ "primaryKey": false,
641
+ "notNull": true,
642
+ "autoincrement": false
643
+ },
644
+ "stage": {
645
+ "name": "stage",
646
+ "type": "text",
647
+ "primaryKey": false,
648
+ "notNull": true,
649
+ "autoincrement": false
650
+ },
651
+ "cycle": {
652
+ "name": "cycle",
653
+ "type": "integer",
654
+ "primaryKey": false,
655
+ "notNull": true,
656
+ "autoincrement": false
657
+ },
658
+ "output": {
659
+ "name": "output",
660
+ "type": "text",
661
+ "primaryKey": false,
662
+ "notNull": true,
663
+ "autoincrement": false
664
+ },
665
+ "created_at": {
666
+ "name": "created_at",
667
+ "type": "text",
668
+ "primaryKey": false,
669
+ "notNull": true,
670
+ "autoincrement": false
671
+ },
672
+ "project_id": {
673
+ "name": "project_id",
674
+ "type": "text",
675
+ "primaryKey": false,
676
+ "notNull": false,
677
+ "autoincrement": false
678
+ }
679
+ },
680
+ "indexes": {},
681
+ "foreignKeys": {},
682
+ "compositePrimaryKeys": {},
683
+ "uniqueConstraints": {},
684
+ "checkConstraints": {}
685
+ },
686
+ "pipeline_state": {
687
+ "name": "pipeline_state",
688
+ "columns": {
689
+ "feature_id": {
690
+ "name": "feature_id",
691
+ "type": "text",
692
+ "primaryKey": true,
693
+ "notNull": true,
694
+ "autoincrement": false
695
+ },
696
+ "status": {
697
+ "name": "status",
698
+ "type": "text",
699
+ "primaryKey": false,
700
+ "notNull": true,
701
+ "autoincrement": false
702
+ },
703
+ "cycle": {
704
+ "name": "cycle",
705
+ "type": "integer",
706
+ "primaryKey": false,
707
+ "notNull": true,
708
+ "autoincrement": false,
709
+ "default": 1
710
+ },
711
+ "tasks_json": {
712
+ "name": "tasks_json",
713
+ "type": "text",
714
+ "primaryKey": false,
715
+ "notNull": false,
716
+ "autoincrement": false
717
+ },
718
+ "tool_calls_json": {
719
+ "name": "tool_calls_json",
720
+ "type": "text",
721
+ "primaryKey": false,
722
+ "notNull": false,
723
+ "autoincrement": false
724
+ },
725
+ "work_summaries_json": {
726
+ "name": "work_summaries_json",
727
+ "type": "text",
728
+ "primaryKey": false,
729
+ "notNull": false,
730
+ "autoincrement": false
731
+ },
732
+ "stage_stats_json": {
733
+ "name": "stage_stats_json",
734
+ "type": "text",
735
+ "primaryKey": false,
736
+ "notNull": false,
737
+ "autoincrement": false
738
+ },
739
+ "error": {
740
+ "name": "error",
741
+ "type": "text",
742
+ "primaryKey": false,
743
+ "notNull": false,
744
+ "autoincrement": false
745
+ },
746
+ "updated_at": {
747
+ "name": "updated_at",
748
+ "type": "text",
749
+ "primaryKey": false,
750
+ "notNull": true,
751
+ "autoincrement": false
752
+ },
753
+ "project_id": {
754
+ "name": "project_id",
755
+ "type": "text",
756
+ "primaryKey": false,
757
+ "notNull": false,
758
+ "autoincrement": false
759
+ }
760
+ },
761
+ "indexes": {},
762
+ "foreignKeys": {},
763
+ "compositePrimaryKeys": {},
764
+ "uniqueConstraints": {},
765
+ "checkConstraints": {}
766
+ },
767
+ "projects": {
768
+ "name": "projects",
769
+ "columns": {
770
+ "id": {
771
+ "name": "id",
772
+ "type": "text",
773
+ "primaryKey": true,
774
+ "notNull": true,
775
+ "autoincrement": false
776
+ },
777
+ "name": {
778
+ "name": "name",
779
+ "type": "text",
780
+ "primaryKey": false,
781
+ "notNull": true,
782
+ "autoincrement": false
783
+ },
784
+ "type": {
785
+ "name": "type",
786
+ "type": "text",
787
+ "primaryKey": false,
788
+ "notNull": true,
789
+ "autoincrement": false,
790
+ "default": "'software'"
791
+ },
792
+ "is_default": {
793
+ "name": "is_default",
794
+ "type": "integer",
795
+ "primaryKey": false,
796
+ "notNull": true,
797
+ "autoincrement": false,
798
+ "default": 0
799
+ },
800
+ "archived_at": {
801
+ "name": "archived_at",
802
+ "type": "text",
803
+ "primaryKey": false,
804
+ "notNull": false,
805
+ "autoincrement": false
806
+ },
807
+ "repo_url": {
808
+ "name": "repo_url",
809
+ "type": "text",
810
+ "primaryKey": false,
811
+ "notNull": false,
812
+ "autoincrement": false
813
+ },
814
+ "github_installation_id": {
815
+ "name": "github_installation_id",
816
+ "type": "text",
817
+ "primaryKey": false,
818
+ "notNull": false,
819
+ "autoincrement": false
820
+ },
821
+ "github_repo_full_name": {
822
+ "name": "github_repo_full_name",
823
+ "type": "text",
824
+ "primaryKey": false,
825
+ "notNull": false,
826
+ "autoincrement": false
827
+ },
828
+ "base_branch": {
829
+ "name": "base_branch",
830
+ "type": "text",
831
+ "primaryKey": false,
832
+ "notNull": false,
833
+ "autoincrement": false
834
+ },
835
+ "git_auth_method": {
836
+ "name": "git_auth_method",
837
+ "type": "text",
838
+ "primaryKey": false,
839
+ "notNull": false,
840
+ "autoincrement": false
841
+ },
842
+ "ssh_private_key_encrypted": {
843
+ "name": "ssh_private_key_encrypted",
844
+ "type": "text",
845
+ "primaryKey": false,
846
+ "notNull": false,
847
+ "autoincrement": false
848
+ },
849
+ "ssh_public_key": {
850
+ "name": "ssh_public_key",
851
+ "type": "text",
852
+ "primaryKey": false,
853
+ "notNull": false,
854
+ "autoincrement": false
855
+ },
856
+ "created_at": {
857
+ "name": "created_at",
858
+ "type": "text",
859
+ "primaryKey": false,
860
+ "notNull": true,
861
+ "autoincrement": false
862
+ },
863
+ "updated_at": {
864
+ "name": "updated_at",
865
+ "type": "text",
866
+ "primaryKey": false,
867
+ "notNull": true,
868
+ "autoincrement": false
869
+ }
870
+ },
871
+ "indexes": {},
872
+ "foreignKeys": {},
873
+ "compositePrimaryKeys": {},
874
+ "uniqueConstraints": {},
875
+ "checkConstraints": {}
876
+ },
877
+ "refresh_tokens": {
878
+ "name": "refresh_tokens",
879
+ "columns": {
880
+ "id": {
881
+ "name": "id",
882
+ "type": "text",
883
+ "primaryKey": true,
884
+ "notNull": true,
885
+ "autoincrement": false
886
+ },
887
+ "user_id": {
888
+ "name": "user_id",
889
+ "type": "text",
890
+ "primaryKey": false,
891
+ "notNull": true,
892
+ "autoincrement": false
893
+ },
894
+ "token_hash": {
895
+ "name": "token_hash",
896
+ "type": "text",
897
+ "primaryKey": false,
898
+ "notNull": true,
899
+ "autoincrement": false
900
+ },
901
+ "expires_at": {
902
+ "name": "expires_at",
903
+ "type": "text",
904
+ "primaryKey": false,
905
+ "notNull": true,
906
+ "autoincrement": false
907
+ },
908
+ "created_at": {
909
+ "name": "created_at",
910
+ "type": "text",
911
+ "primaryKey": false,
912
+ "notNull": true,
913
+ "autoincrement": false
914
+ }
915
+ },
916
+ "indexes": {},
917
+ "foreignKeys": {
918
+ "refresh_tokens_user_id_users_id_fk": {
919
+ "name": "refresh_tokens_user_id_users_id_fk",
920
+ "tableFrom": "refresh_tokens",
921
+ "tableTo": "users",
922
+ "columnsFrom": [
923
+ "user_id"
924
+ ],
925
+ "columnsTo": [
926
+ "id"
927
+ ],
928
+ "onDelete": "no action",
929
+ "onUpdate": "no action"
930
+ }
931
+ },
932
+ "compositePrimaryKeys": {},
933
+ "uniqueConstraints": {},
934
+ "checkConstraints": {}
935
+ },
936
+ "review_meta": {
937
+ "name": "review_meta",
938
+ "columns": {
939
+ "key": {
940
+ "name": "key",
941
+ "type": "text",
942
+ "primaryKey": true,
943
+ "notNull": true,
944
+ "autoincrement": false
945
+ },
946
+ "value": {
947
+ "name": "value",
948
+ "type": "text",
949
+ "primaryKey": false,
950
+ "notNull": true,
951
+ "autoincrement": false
952
+ },
953
+ "project_id": {
954
+ "name": "project_id",
955
+ "type": "text",
956
+ "primaryKey": false,
957
+ "notNull": false,
958
+ "autoincrement": false
959
+ }
960
+ },
961
+ "indexes": {},
962
+ "foreignKeys": {},
963
+ "compositePrimaryKeys": {},
964
+ "uniqueConstraints": {},
965
+ "checkConstraints": {}
966
+ },
967
+ "sessions": {
968
+ "name": "sessions",
969
+ "columns": {
970
+ "session_number": {
971
+ "name": "session_number",
972
+ "type": "integer",
973
+ "primaryKey": false,
974
+ "notNull": true,
975
+ "autoincrement": false
976
+ },
977
+ "started_at": {
978
+ "name": "started_at",
979
+ "type": "text",
980
+ "primaryKey": false,
981
+ "notNull": true,
982
+ "autoincrement": false
983
+ },
984
+ "ended_at": {
985
+ "name": "ended_at",
986
+ "type": "text",
987
+ "primaryKey": false,
988
+ "notNull": false,
989
+ "autoincrement": false
990
+ },
991
+ "summary": {
992
+ "name": "summary",
993
+ "type": "text",
994
+ "primaryKey": false,
995
+ "notNull": false,
996
+ "autoincrement": false
997
+ },
998
+ "nodes_touched": {
999
+ "name": "nodes_touched",
1000
+ "type": "text",
1001
+ "primaryKey": false,
1002
+ "notNull": false,
1003
+ "autoincrement": false
1004
+ },
1005
+ "questions_resolved": {
1006
+ "name": "questions_resolved",
1007
+ "type": "integer",
1008
+ "primaryKey": false,
1009
+ "notNull": true,
1010
+ "autoincrement": false,
1011
+ "default": 0
1012
+ },
1013
+ "body": {
1014
+ "name": "body",
1015
+ "type": "text",
1016
+ "primaryKey": false,
1017
+ "notNull": false,
1018
+ "autoincrement": false
1019
+ },
1020
+ "project_id": {
1021
+ "name": "project_id",
1022
+ "type": "text",
1023
+ "primaryKey": false,
1024
+ "notNull": true,
1025
+ "autoincrement": false
1026
+ }
1027
+ },
1028
+ "indexes": {},
1029
+ "foreignKeys": {},
1030
+ "compositePrimaryKeys": {
1031
+ "sessions_session_number_project_id_pk": {
1032
+ "columns": [
1033
+ "session_number",
1034
+ "project_id"
1035
+ ],
1036
+ "name": "sessions_session_number_project_id_pk"
1037
+ }
1038
+ },
1039
+ "uniqueConstraints": {},
1040
+ "checkConstraints": {}
1041
+ },
1042
+ "terminal_sessions": {
1043
+ "name": "terminal_sessions",
1044
+ "columns": {
1045
+ "id": {
1046
+ "name": "id",
1047
+ "type": "text",
1048
+ "primaryKey": true,
1049
+ "notNull": true,
1050
+ "autoincrement": false
1051
+ },
1052
+ "claude_session_id": {
1053
+ "name": "claude_session_id",
1054
+ "type": "text",
1055
+ "primaryKey": false,
1056
+ "notNull": true,
1057
+ "autoincrement": false
1058
+ },
1059
+ "project_id": {
1060
+ "name": "project_id",
1061
+ "type": "text",
1062
+ "primaryKey": false,
1063
+ "notNull": true,
1064
+ "autoincrement": false
1065
+ },
1066
+ "project_name": {
1067
+ "name": "project_name",
1068
+ "type": "text",
1069
+ "primaryKey": false,
1070
+ "notNull": true,
1071
+ "autoincrement": false
1072
+ },
1073
+ "name": {
1074
+ "name": "name",
1075
+ "type": "text",
1076
+ "primaryKey": false,
1077
+ "notNull": true,
1078
+ "autoincrement": false
1079
+ },
1080
+ "created_at": {
1081
+ "name": "created_at",
1082
+ "type": "text",
1083
+ "primaryKey": false,
1084
+ "notNull": true,
1085
+ "autoincrement": false
1086
+ },
1087
+ "last_used_at": {
1088
+ "name": "last_used_at",
1089
+ "type": "text",
1090
+ "primaryKey": false,
1091
+ "notNull": true,
1092
+ "autoincrement": false
1093
+ }
1094
+ },
1095
+ "indexes": {},
1096
+ "foreignKeys": {},
1097
+ "compositePrimaryKeys": {},
1098
+ "uniqueConstraints": {},
1099
+ "checkConstraints": {}
1100
+ },
1101
+ "users": {
1102
+ "name": "users",
1103
+ "columns": {
1104
+ "id": {
1105
+ "name": "id",
1106
+ "type": "text",
1107
+ "primaryKey": true,
1108
+ "notNull": true,
1109
+ "autoincrement": false
1110
+ },
1111
+ "email": {
1112
+ "name": "email",
1113
+ "type": "text",
1114
+ "primaryKey": false,
1115
+ "notNull": true,
1116
+ "autoincrement": false
1117
+ },
1118
+ "password_hash": {
1119
+ "name": "password_hash",
1120
+ "type": "text",
1121
+ "primaryKey": false,
1122
+ "notNull": true,
1123
+ "autoincrement": false
1124
+ },
1125
+ "role": {
1126
+ "name": "role",
1127
+ "type": "text",
1128
+ "primaryKey": false,
1129
+ "notNull": true,
1130
+ "autoincrement": false,
1131
+ "default": "'user'"
1132
+ },
1133
+ "created_at": {
1134
+ "name": "created_at",
1135
+ "type": "text",
1136
+ "primaryKey": false,
1137
+ "notNull": true,
1138
+ "autoincrement": false
1139
+ },
1140
+ "updated_at": {
1141
+ "name": "updated_at",
1142
+ "type": "text",
1143
+ "primaryKey": false,
1144
+ "notNull": true,
1145
+ "autoincrement": false
1146
+ }
1147
+ },
1148
+ "indexes": {
1149
+ "users_email_unique": {
1150
+ "name": "users_email_unique",
1151
+ "columns": [
1152
+ "email"
1153
+ ],
1154
+ "isUnique": true
1155
+ }
1156
+ },
1157
+ "foreignKeys": {},
1158
+ "compositePrimaryKeys": {},
1159
+ "uniqueConstraints": {},
1160
+ "checkConstraints": {}
1161
+ },
1162
+ "video_renders": {
1163
+ "name": "video_renders",
1164
+ "columns": {
1165
+ "id": {
1166
+ "name": "id",
1167
+ "type": "text",
1168
+ "primaryKey": true,
1169
+ "notNull": true,
1170
+ "autoincrement": false
1171
+ },
1172
+ "project_id": {
1173
+ "name": "project_id",
1174
+ "type": "text",
1175
+ "primaryKey": false,
1176
+ "notNull": true,
1177
+ "autoincrement": false
1178
+ },
1179
+ "feature_id": {
1180
+ "name": "feature_id",
1181
+ "type": "text",
1182
+ "primaryKey": false,
1183
+ "notNull": false,
1184
+ "autoincrement": false
1185
+ },
1186
+ "composition_id": {
1187
+ "name": "composition_id",
1188
+ "type": "text",
1189
+ "primaryKey": false,
1190
+ "notNull": true,
1191
+ "autoincrement": false
1192
+ },
1193
+ "status": {
1194
+ "name": "status",
1195
+ "type": "text",
1196
+ "primaryKey": false,
1197
+ "notNull": true,
1198
+ "autoincrement": false
1199
+ },
1200
+ "progress": {
1201
+ "name": "progress",
1202
+ "type": "real",
1203
+ "primaryKey": false,
1204
+ "notNull": true,
1205
+ "autoincrement": false,
1206
+ "default": 0
1207
+ },
1208
+ "file_path": {
1209
+ "name": "file_path",
1210
+ "type": "text",
1211
+ "primaryKey": false,
1212
+ "notNull": false,
1213
+ "autoincrement": false
1214
+ },
1215
+ "file_size": {
1216
+ "name": "file_size",
1217
+ "type": "integer",
1218
+ "primaryKey": false,
1219
+ "notNull": false,
1220
+ "autoincrement": false
1221
+ },
1222
+ "duration_seconds": {
1223
+ "name": "duration_seconds",
1224
+ "type": "real",
1225
+ "primaryKey": false,
1226
+ "notNull": false,
1227
+ "autoincrement": false
1228
+ },
1229
+ "error": {
1230
+ "name": "error",
1231
+ "type": "text",
1232
+ "primaryKey": false,
1233
+ "notNull": false,
1234
+ "autoincrement": false
1235
+ },
1236
+ "resolution": {
1237
+ "name": "resolution",
1238
+ "type": "text",
1239
+ "primaryKey": false,
1240
+ "notNull": false,
1241
+ "autoincrement": false
1242
+ },
1243
+ "created_at": {
1244
+ "name": "created_at",
1245
+ "type": "text",
1246
+ "primaryKey": false,
1247
+ "notNull": true,
1248
+ "autoincrement": false
1249
+ },
1250
+ "completed_at": {
1251
+ "name": "completed_at",
1252
+ "type": "text",
1253
+ "primaryKey": false,
1254
+ "notNull": false,
1255
+ "autoincrement": false
1256
+ }
1257
+ },
1258
+ "indexes": {},
1259
+ "foreignKeys": {},
1260
+ "compositePrimaryKeys": {},
1261
+ "uniqueConstraints": {},
1262
+ "checkConstraints": {}
1263
+ },
1264
+ "workflow_executions": {
1265
+ "name": "workflow_executions",
1266
+ "columns": {
1267
+ "id": {
1268
+ "name": "id",
1269
+ "type": "text",
1270
+ "primaryKey": true,
1271
+ "notNull": true,
1272
+ "autoincrement": false
1273
+ },
1274
+ "workflow_id": {
1275
+ "name": "workflow_id",
1276
+ "type": "text",
1277
+ "primaryKey": false,
1278
+ "notNull": true,
1279
+ "autoincrement": false
1280
+ },
1281
+ "feature_id": {
1282
+ "name": "feature_id",
1283
+ "type": "text",
1284
+ "primaryKey": false,
1285
+ "notNull": true,
1286
+ "autoincrement": false
1287
+ },
1288
+ "status": {
1289
+ "name": "status",
1290
+ "type": "text",
1291
+ "primaryKey": false,
1292
+ "notNull": true,
1293
+ "autoincrement": false
1294
+ },
1295
+ "current_node_id": {
1296
+ "name": "current_node_id",
1297
+ "type": "text",
1298
+ "primaryKey": false,
1299
+ "notNull": false,
1300
+ "autoincrement": false
1301
+ },
1302
+ "context": {
1303
+ "name": "context",
1304
+ "type": "text",
1305
+ "primaryKey": false,
1306
+ "notNull": true,
1307
+ "autoincrement": false
1308
+ },
1309
+ "started_at": {
1310
+ "name": "started_at",
1311
+ "type": "text",
1312
+ "primaryKey": false,
1313
+ "notNull": true,
1314
+ "autoincrement": false
1315
+ },
1316
+ "updated_at": {
1317
+ "name": "updated_at",
1318
+ "type": "text",
1319
+ "primaryKey": false,
1320
+ "notNull": true,
1321
+ "autoincrement": false
1322
+ }
1323
+ },
1324
+ "indexes": {},
1325
+ "foreignKeys": {
1326
+ "workflow_executions_workflow_id_workflows_id_fk": {
1327
+ "name": "workflow_executions_workflow_id_workflows_id_fk",
1328
+ "tableFrom": "workflow_executions",
1329
+ "tableTo": "workflows",
1330
+ "columnsFrom": [
1331
+ "workflow_id"
1332
+ ],
1333
+ "columnsTo": [
1334
+ "id"
1335
+ ],
1336
+ "onDelete": "no action",
1337
+ "onUpdate": "no action"
1338
+ }
1339
+ },
1340
+ "compositePrimaryKeys": {},
1341
+ "uniqueConstraints": {},
1342
+ "checkConstraints": {}
1343
+ },
1344
+ "workflow_groups": {
1345
+ "name": "workflow_groups",
1346
+ "columns": {
1347
+ "id": {
1348
+ "name": "id",
1349
+ "type": "text",
1350
+ "primaryKey": true,
1351
+ "notNull": true,
1352
+ "autoincrement": false
1353
+ },
1354
+ "name": {
1355
+ "name": "name",
1356
+ "type": "text",
1357
+ "primaryKey": false,
1358
+ "notNull": true,
1359
+ "autoincrement": false
1360
+ },
1361
+ "project_id": {
1362
+ "name": "project_id",
1363
+ "type": "text",
1364
+ "primaryKey": false,
1365
+ "notNull": false,
1366
+ "autoincrement": false
1367
+ },
1368
+ "graph_data": {
1369
+ "name": "graph_data",
1370
+ "type": "text",
1371
+ "primaryKey": false,
1372
+ "notNull": true,
1373
+ "autoincrement": false
1374
+ },
1375
+ "created_at": {
1376
+ "name": "created_at",
1377
+ "type": "text",
1378
+ "primaryKey": false,
1379
+ "notNull": true,
1380
+ "autoincrement": false
1381
+ },
1382
+ "updated_at": {
1383
+ "name": "updated_at",
1384
+ "type": "text",
1385
+ "primaryKey": false,
1386
+ "notNull": true,
1387
+ "autoincrement": false
1388
+ }
1389
+ },
1390
+ "indexes": {},
1391
+ "foreignKeys": {},
1392
+ "compositePrimaryKeys": {},
1393
+ "uniqueConstraints": {},
1394
+ "checkConstraints": {}
1395
+ },
1396
+ "workflow_node_executions": {
1397
+ "name": "workflow_node_executions",
1398
+ "columns": {
1399
+ "id": {
1400
+ "name": "id",
1401
+ "type": "text",
1402
+ "primaryKey": true,
1403
+ "notNull": true,
1404
+ "autoincrement": false
1405
+ },
1406
+ "execution_id": {
1407
+ "name": "execution_id",
1408
+ "type": "text",
1409
+ "primaryKey": false,
1410
+ "notNull": true,
1411
+ "autoincrement": false
1412
+ },
1413
+ "node_id": {
1414
+ "name": "node_id",
1415
+ "type": "text",
1416
+ "primaryKey": false,
1417
+ "notNull": true,
1418
+ "autoincrement": false
1419
+ },
1420
+ "status": {
1421
+ "name": "status",
1422
+ "type": "text",
1423
+ "primaryKey": false,
1424
+ "notNull": true,
1425
+ "autoincrement": false
1426
+ },
1427
+ "started_at": {
1428
+ "name": "started_at",
1429
+ "type": "text",
1430
+ "primaryKey": false,
1431
+ "notNull": false,
1432
+ "autoincrement": false
1433
+ },
1434
+ "completed_at": {
1435
+ "name": "completed_at",
1436
+ "type": "text",
1437
+ "primaryKey": false,
1438
+ "notNull": false,
1439
+ "autoincrement": false
1440
+ },
1441
+ "output_data": {
1442
+ "name": "output_data",
1443
+ "type": "text",
1444
+ "primaryKey": false,
1445
+ "notNull": false,
1446
+ "autoincrement": false
1447
+ },
1448
+ "error": {
1449
+ "name": "error",
1450
+ "type": "text",
1451
+ "primaryKey": false,
1452
+ "notNull": false,
1453
+ "autoincrement": false
1454
+ },
1455
+ "attempt": {
1456
+ "name": "attempt",
1457
+ "type": "integer",
1458
+ "primaryKey": false,
1459
+ "notNull": true,
1460
+ "autoincrement": false,
1461
+ "default": 1
1462
+ },
1463
+ "cycle": {
1464
+ "name": "cycle",
1465
+ "type": "integer",
1466
+ "primaryKey": false,
1467
+ "notNull": true,
1468
+ "autoincrement": false,
1469
+ "default": 1
1470
+ },
1471
+ "claude_session_id": {
1472
+ "name": "claude_session_id",
1473
+ "type": "text",
1474
+ "primaryKey": false,
1475
+ "notNull": false,
1476
+ "autoincrement": false
1477
+ }
1478
+ },
1479
+ "indexes": {},
1480
+ "foreignKeys": {
1481
+ "workflow_node_executions_execution_id_workflow_executions_id_fk": {
1482
+ "name": "workflow_node_executions_execution_id_workflow_executions_id_fk",
1483
+ "tableFrom": "workflow_node_executions",
1484
+ "tableTo": "workflow_executions",
1485
+ "columnsFrom": [
1486
+ "execution_id"
1487
+ ],
1488
+ "columnsTo": [
1489
+ "id"
1490
+ ],
1491
+ "onDelete": "no action",
1492
+ "onUpdate": "no action"
1493
+ }
1494
+ },
1495
+ "compositePrimaryKeys": {},
1496
+ "uniqueConstraints": {},
1497
+ "checkConstraints": {}
1498
+ },
1499
+ "workflow_tool_calls": {
1500
+ "name": "workflow_tool_calls",
1501
+ "columns": {
1502
+ "id": {
1503
+ "name": "id",
1504
+ "type": "text",
1505
+ "primaryKey": true,
1506
+ "notNull": true,
1507
+ "autoincrement": false
1508
+ },
1509
+ "node_execution_id": {
1510
+ "name": "node_execution_id",
1511
+ "type": "text",
1512
+ "primaryKey": false,
1513
+ "notNull": true,
1514
+ "autoincrement": false
1515
+ },
1516
+ "timestamp": {
1517
+ "name": "timestamp",
1518
+ "type": "text",
1519
+ "primaryKey": false,
1520
+ "notNull": true,
1521
+ "autoincrement": false
1522
+ },
1523
+ "tool_name": {
1524
+ "name": "tool_name",
1525
+ "type": "text",
1526
+ "primaryKey": false,
1527
+ "notNull": true,
1528
+ "autoincrement": false
1529
+ },
1530
+ "target": {
1531
+ "name": "target",
1532
+ "type": "text",
1533
+ "primaryKey": false,
1534
+ "notNull": true,
1535
+ "autoincrement": false
1536
+ },
1537
+ "created_at": {
1538
+ "name": "created_at",
1539
+ "type": "text",
1540
+ "primaryKey": false,
1541
+ "notNull": true,
1542
+ "autoincrement": false
1543
+ }
1544
+ },
1545
+ "indexes": {},
1546
+ "foreignKeys": {
1547
+ "workflow_tool_calls_node_execution_id_workflow_node_executions_id_fk": {
1548
+ "name": "workflow_tool_calls_node_execution_id_workflow_node_executions_id_fk",
1549
+ "tableFrom": "workflow_tool_calls",
1550
+ "tableTo": "workflow_node_executions",
1551
+ "columnsFrom": [
1552
+ "node_execution_id"
1553
+ ],
1554
+ "columnsTo": [
1555
+ "id"
1556
+ ],
1557
+ "onDelete": "no action",
1558
+ "onUpdate": "no action"
1559
+ }
1560
+ },
1561
+ "compositePrimaryKeys": {},
1562
+ "uniqueConstraints": {},
1563
+ "checkConstraints": {}
1564
+ },
1565
+ "workflows": {
1566
+ "name": "workflows",
1567
+ "columns": {
1568
+ "id": {
1569
+ "name": "id",
1570
+ "type": "text",
1571
+ "primaryKey": true,
1572
+ "notNull": true,
1573
+ "autoincrement": false
1574
+ },
1575
+ "name": {
1576
+ "name": "name",
1577
+ "type": "text",
1578
+ "primaryKey": false,
1579
+ "notNull": true,
1580
+ "autoincrement": false
1581
+ },
1582
+ "description": {
1583
+ "name": "description",
1584
+ "type": "text",
1585
+ "primaryKey": false,
1586
+ "notNull": false,
1587
+ "autoincrement": false
1588
+ },
1589
+ "project_id": {
1590
+ "name": "project_id",
1591
+ "type": "text",
1592
+ "primaryKey": false,
1593
+ "notNull": false,
1594
+ "autoincrement": false
1595
+ },
1596
+ "feature_type": {
1597
+ "name": "feature_type",
1598
+ "type": "text",
1599
+ "primaryKey": false,
1600
+ "notNull": false,
1601
+ "autoincrement": false
1602
+ },
1603
+ "trigger_column": {
1604
+ "name": "trigger_column",
1605
+ "type": "text",
1606
+ "primaryKey": false,
1607
+ "notNull": false,
1608
+ "autoincrement": false
1609
+ },
1610
+ "is_default": {
1611
+ "name": "is_default",
1612
+ "type": "integer",
1613
+ "primaryKey": false,
1614
+ "notNull": true,
1615
+ "autoincrement": false,
1616
+ "default": 0
1617
+ },
1618
+ "graph_data": {
1619
+ "name": "graph_data",
1620
+ "type": "text",
1621
+ "primaryKey": false,
1622
+ "notNull": true,
1623
+ "autoincrement": false
1624
+ },
1625
+ "created_at": {
1626
+ "name": "created_at",
1627
+ "type": "text",
1628
+ "primaryKey": false,
1629
+ "notNull": true,
1630
+ "autoincrement": false
1631
+ },
1632
+ "updated_at": {
1633
+ "name": "updated_at",
1634
+ "type": "text",
1635
+ "primaryKey": false,
1636
+ "notNull": true,
1637
+ "autoincrement": false
1638
+ }
1639
+ },
1640
+ "indexes": {},
1641
+ "foreignKeys": {},
1642
+ "compositePrimaryKeys": {},
1643
+ "uniqueConstraints": {},
1644
+ "checkConstraints": {}
1645
+ }
1646
+ },
1647
+ "views": {},
1648
+ "enums": {},
1649
+ "_meta": {
1650
+ "schemas": {},
1651
+ "tables": {},
1652
+ "columns": {}
1653
+ },
1654
+ "internal": {
1655
+ "indexes": {}
1656
+ }
1657
+ }