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