idea-manager 1.8.0 → 2.0.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 (172) hide show
  1. package/.next/build-manifest.json +2 -2
  2. package/.next/routes-manifest.json +28 -0
  3. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  4. package/.next/server/app/_global-error.html +2 -2
  5. package/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_not-found.html +2 -2
  14. package/.next/server/app/_not-found.rsc +2 -2
  15. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  16. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  18. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  21. package/.next/server/app/api/archive/route.js +21 -4
  22. package/.next/server/app/api/archive/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/filesystem/route_client-reference-manifest.js +1 -1
  24. package/.next/server/app/api/filesystem/tree/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/global-advisor/route.js +26 -0
  26. package/.next/server/app/api/global-advisor/route_client-reference-manifest.js +1 -0
  27. package/.next/server/app/api/global-memo/route.js +17 -0
  28. package/.next/server/app/api/global-memo/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/maintenance/route.js +130 -0
  31. package/.next/server/app/api/maintenance/route_client-reference-manifest.js +1 -0
  32. package/.next/server/app/api/projects/[id]/advisor/route.js +34 -0
  33. package/.next/server/app/api/projects/[id]/advisor/route_client-reference-manifest.js +1 -0
  34. package/.next/server/app/api/projects/[id]/apply-distribute/route.js +6 -6
  35. package/.next/server/app/api/projects/[id]/apply-distribute/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/projects/[id]/auto-distribute/route.js +3 -3
  37. package/.next/server/app/api/projects/[id]/auto-distribute/route_client-reference-manifest.js +1 -1
  38. package/.next/server/app/api/projects/[id]/brainstorm/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/projects/[id]/git-sync/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route.js +20 -3
  42. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route.js +4 -4
  44. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route.js +17 -0
  46. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route.js +4 -4
  48. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route.js +21 -4
  50. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route.js +21 -4
  52. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/projects/[id]/sub-projects/route.js +20 -3
  54. package/.next/server/app/api/projects/[id]/sub-projects/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  56. package/.next/server/app/api/search/route.js +17 -0
  57. package/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  58. package/.next/server/app/api/sync/route.js +17 -0
  59. package/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
  60. package/.next/server/app/api/tasks/[taskId]/move/route.js +144 -0
  61. package/.next/server/app/api/tasks/[taskId]/move/route_client-reference-manifest.js +1 -0
  62. package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/version/route_client-reference-manifest.js +1 -1
  64. package/.next/server/app/index.html +2 -2
  65. package/.next/server/app/index.rsc +3 -3
  66. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  67. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  68. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  69. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  70. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  71. package/.next/server/app/page.js +9 -9
  72. package/.next/server/app/page_client-reference-manifest.js +1 -1
  73. package/.next/server/app/projects/[id]/page_client-reference-manifest.js +1 -1
  74. package/.next/server/app-paths-manifest.json +15 -11
  75. package/.next/server/chunks/117.js +17 -0
  76. package/.next/server/pages/404.html +2 -2
  77. package/.next/server/pages/500.html +2 -2
  78. package/.next/static/5I00mUqwYdcGFbs7ETC9d/_buildManifest.js +1 -0
  79. package/.next/static/chunks/app/_global-error/page-92496bc87f5c29a9.js +1 -0
  80. package/.next/static/chunks/app/api/archive/route-92496bc87f5c29a9.js +1 -0
  81. package/.next/static/chunks/app/api/filesystem/route-92496bc87f5c29a9.js +1 -0
  82. package/.next/static/chunks/app/api/filesystem/tree/route-92496bc87f5c29a9.js +1 -0
  83. package/.next/static/chunks/app/api/global-advisor/route-92496bc87f5c29a9.js +1 -0
  84. package/.next/static/chunks/app/api/global-memo/route-92496bc87f5c29a9.js +1 -0
  85. package/.next/static/chunks/app/api/health/route-92496bc87f5c29a9.js +1 -0
  86. package/.next/static/chunks/app/api/maintenance/route-92496bc87f5c29a9.js +1 -0
  87. package/.next/static/chunks/app/api/projects/[id]/advisor/route-92496bc87f5c29a9.js +1 -0
  88. package/.next/static/chunks/app/api/projects/[id]/apply-distribute/route-92496bc87f5c29a9.js +1 -0
  89. package/.next/static/chunks/app/api/projects/[id]/auto-distribute/route-92496bc87f5c29a9.js +1 -0
  90. package/.next/static/chunks/app/api/projects/[id]/brainstorm/route-92496bc87f5c29a9.js +1 -0
  91. package/.next/static/chunks/app/api/projects/[id]/git-sync/route-92496bc87f5c29a9.js +1 -0
  92. package/.next/static/chunks/app/api/projects/[id]/route-92496bc87f5c29a9.js +1 -0
  93. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/route-92496bc87f5c29a9.js +1 -0
  94. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route-92496bc87f5c29a9.js +1 -0
  95. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route-92496bc87f5c29a9.js +1 -0
  96. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route-92496bc87f5c29a9.js +1 -0
  97. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route-92496bc87f5c29a9.js +1 -0
  98. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/route-92496bc87f5c29a9.js +1 -0
  99. package/.next/static/chunks/app/api/projects/[id]/sub-projects/route-92496bc87f5c29a9.js +1 -0
  100. package/.next/static/chunks/app/api/projects/route-92496bc87f5c29a9.js +1 -0
  101. package/.next/static/chunks/app/api/search/route-92496bc87f5c29a9.js +1 -0
  102. package/.next/static/chunks/app/api/sync/route-92496bc87f5c29a9.js +1 -0
  103. package/.next/static/chunks/app/api/tasks/[taskId]/move/route-92496bc87f5c29a9.js +1 -0
  104. package/.next/static/chunks/app/api/update/route-92496bc87f5c29a9.js +1 -0
  105. package/.next/static/chunks/app/api/version/route-92496bc87f5c29a9.js +1 -0
  106. package/.next/static/chunks/app/page-b6580e09a4af9dff.js +28 -0
  107. package/.next/static/chunks/next/dist/client/components/builtin/app-error-92496bc87f5c29a9.js +1 -0
  108. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-92496bc87f5c29a9.js +1 -0
  109. package/.next/static/chunks/next/dist/client/components/builtin/not-found-92496bc87f5c29a9.js +1 -0
  110. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-92496bc87f5c29a9.js +1 -0
  111. package/.next/static/css/a57b4564ec9082ab.css +3 -0
  112. package/README.ja.md +2 -0
  113. package/README.ko.md +3 -1
  114. package/README.md +3 -1
  115. package/README.zh.md +2 -0
  116. package/package.json +1 -1
  117. package/src/app/api/global-advisor/route.ts +50 -0
  118. package/src/app/api/maintenance/route.ts +36 -0
  119. package/src/app/api/projects/[id]/advisor/route.ts +71 -0
  120. package/src/app/api/tasks/[taskId]/move/route.ts +30 -0
  121. package/src/components/advisor/AdvisorChat.tsx +165 -0
  122. package/src/components/advisor/GlobalAdvisorLayer.tsx +38 -0
  123. package/src/components/dashboard/DashboardPanel.tsx +2 -0
  124. package/src/components/memo/GlobalMemoLayer.tsx +81 -0
  125. package/src/components/tabs/TabBar.tsx +2 -0
  126. package/src/components/tabs/TabShell.tsx +6 -0
  127. package/src/components/task/TaskChat.tsx +4 -0
  128. package/src/components/task/TaskDetail.tsx +89 -1
  129. package/src/components/ui/AiActivityIndicator.tsx +66 -0
  130. package/src/components/ui/ShortcutOverlay.tsx +104 -0
  131. package/src/components/workspace/ProjectAdvisor.tsx +30 -0
  132. package/src/components/workspace/WorkspacePanel.tsx +29 -0
  133. package/src/hooks/useAiActivity.ts +6 -0
  134. package/src/lib/ai/global-context.ts +94 -0
  135. package/src/lib/ai/project-context.ts +111 -0
  136. package/src/lib/ai-activity.ts +33 -0
  137. package/src/lib/db/queries/global-conversations.ts +31 -0
  138. package/src/lib/db/queries/project-conversations.ts +29 -0
  139. package/src/lib/db/queries/tasks.ts +3 -1
  140. package/src/lib/db/schema.ts +19 -0
  141. package/src/types/index.ts +8 -0
  142. package/.next/static/Fy-Z5gkec2a0fese1C5rW/_buildManifest.js +0 -1
  143. package/.next/static/chunks/app/_global-error/page-e6a77f238d2cdbb9.js +0 -1
  144. package/.next/static/chunks/app/api/archive/route-e6a77f238d2cdbb9.js +0 -1
  145. package/.next/static/chunks/app/api/filesystem/route-e6a77f238d2cdbb9.js +0 -1
  146. package/.next/static/chunks/app/api/filesystem/tree/route-e6a77f238d2cdbb9.js +0 -1
  147. package/.next/static/chunks/app/api/global-memo/route-e6a77f238d2cdbb9.js +0 -1
  148. package/.next/static/chunks/app/api/health/route-e6a77f238d2cdbb9.js +0 -1
  149. package/.next/static/chunks/app/api/projects/[id]/apply-distribute/route-e6a77f238d2cdbb9.js +0 -1
  150. package/.next/static/chunks/app/api/projects/[id]/auto-distribute/route-e6a77f238d2cdbb9.js +0 -1
  151. package/.next/static/chunks/app/api/projects/[id]/brainstorm/route-e6a77f238d2cdbb9.js +0 -1
  152. package/.next/static/chunks/app/api/projects/[id]/git-sync/route-e6a77f238d2cdbb9.js +0 -1
  153. package/.next/static/chunks/app/api/projects/[id]/route-e6a77f238d2cdbb9.js +0 -1
  154. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/route-e6a77f238d2cdbb9.js +0 -1
  155. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route-e6a77f238d2cdbb9.js +0 -1
  156. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route-e6a77f238d2cdbb9.js +0 -1
  157. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route-e6a77f238d2cdbb9.js +0 -1
  158. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route-e6a77f238d2cdbb9.js +0 -1
  159. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/route-e6a77f238d2cdbb9.js +0 -1
  160. package/.next/static/chunks/app/api/projects/[id]/sub-projects/route-e6a77f238d2cdbb9.js +0 -1
  161. package/.next/static/chunks/app/api/projects/route-e6a77f238d2cdbb9.js +0 -1
  162. package/.next/static/chunks/app/api/search/route-e6a77f238d2cdbb9.js +0 -1
  163. package/.next/static/chunks/app/api/sync/route-e6a77f238d2cdbb9.js +0 -1
  164. package/.next/static/chunks/app/api/update/route-e6a77f238d2cdbb9.js +0 -1
  165. package/.next/static/chunks/app/api/version/route-e6a77f238d2cdbb9.js +0 -1
  166. package/.next/static/chunks/app/page-9a1dc101e82c397c.js +0 -28
  167. package/.next/static/chunks/next/dist/client/components/builtin/app-error-e6a77f238d2cdbb9.js +0 -1
  168. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-e6a77f238d2cdbb9.js +0 -1
  169. package/.next/static/chunks/next/dist/client/components/builtin/not-found-e6a77f238d2cdbb9.js +0 -1
  170. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-e6a77f238d2cdbb9.js +0 -1
  171. package/.next/static/css/eab748b03f49c43a.css +0 -3
  172. /package/.next/static/{Fy-Z5gkec2a0fese1C5rW → 5I00mUqwYdcGFbs7ETC9d}/_ssgManifest.js +0 -0
@@ -74,6 +74,23 @@
74
74
  created_at TEXT NOT NULL DEFAULT (datetime('now')),
75
75
  FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
76
76
  );
77
+ `),a.exec(`
78
+ CREATE TABLE IF NOT EXISTS global_conversations (
79
+ id TEXT PRIMARY KEY,
80
+ project_id TEXT NOT NULL DEFAULT '__global__',
81
+ role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
82
+ content TEXT NOT NULL,
83
+ created_at TEXT NOT NULL DEFAULT (datetime('now'))
84
+ );
85
+
86
+ CREATE TABLE IF NOT EXISTS project_conversations (
87
+ id TEXT PRIMARY KEY,
88
+ project_id TEXT NOT NULL,
89
+ role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
90
+ content TEXT NOT NULL,
91
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
92
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
93
+ );
77
94
  `);let c=a.prepare("PRAGMA table_info(tasks)").all();c.some(a=>"is_archived"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN is_archived INTEGER NOT NULL DEFAULT 0"),c.some(a=>"tags"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN tags TEXT NOT NULL DEFAULT '[]'");let d="\x3c!-- legacy-prompt --\x3e",e=a.prepare(`
78
95
  SELECT tp.task_id AS task_id, tp.content AS content, t.description AS description
79
96
  FROM task_prompts tp
@@ -104,10 +121,10 @@
104
121
  SELECT id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at, is_archived, tags FROM tasks;
105
122
  DROP TABLE tasks;
106
123
  ALTER TABLE tasks_new RENAME TO tasks;
107
- `)}(l=new k(a,g)),process.on("exit",()=>l?.close()),h||(h=!0,setInterval(j,6e4),j(),console.log("[Scheduler] Morning notification scheduler started")),l}async function o(){return l||(m||(m=n()),m)}function p(){if(!l)throw Error("Database not initialized. Call await ensureDb() first.");return l}},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6487:()=>{},7598:a=>{"use strict";a.exports=require("node:crypto")},8335:()=>{},9021:a=>{"use strict";a.exports=require("fs")},9294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{"use strict";a.exports=require("sql.js/dist/sql-wasm.js")},9933:(a,b,c)=>{"use strict";c.d(b,{Q$:()=>j,UT:()=>l,ec:()=>k,fn:()=>i,gg:()=>h,lC:()=>m,vq:()=>n,x1:()=>g});var d=c(5440),e=c(5359);function f(a){let b=[];try{b=JSON.parse(a.tags||"[]")}catch{}return{...a,is_today:1===a.is_today,is_archived:(a.is_archived??0)===1,tags:b}}function g(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE sub_project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function h(a){let b=(0,d.L)().prepare("SELECT * FROM tasks WHERE id = ?").get(a);return b?f(b):void 0}function i(a){let b=(0,d.L)();return(a?b.prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 1 ORDER BY updated_at DESC").all(a):b.prepare("SELECT * FROM tasks WHERE is_archived = 1 ORDER BY updated_at DESC").all()).map(f)}function j(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 1, is_today = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function k(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function l(a){let b=(0,d.L)(),c=(0,e.$)(),f=new Date().toISOString(),g=b.prepare("SELECT MAX(sort_order) as max_order FROM tasks WHERE sub_project_id = ?").get(a.sub_project_id),i=(g?.max_order??-1)+1;return b.prepare(`INSERT INTO tasks (id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at)
108
- VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?, ?)`).run(c,a.project_id,a.sub_project_id,a.title,a.description??"",a.status??"idea",a.priority??"medium",i,f,f),h(c)}function m(a,b){let c=(0,d.L)(),e=c.prepare("SELECT * FROM tasks WHERE id = ?").get(a);if(!e)return;let f=new Date().toISOString();return c.prepare(`
124
+ `)}(l=new k(a,g)),process.on("exit",()=>l?.close()),h||(h=!0,setInterval(j,6e4),j(),console.log("[Scheduler] Morning notification scheduler started")),l}async function o(){return l||(m||(m=n()),m)}function p(){if(!l)throw Error("Database not initialized. Call await ensureDb() first.");return l}},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6487:()=>{},7598:a=>{"use strict";a.exports=require("node:crypto")},8335:()=>{},9021:a=>{"use strict";a.exports=require("fs")},9294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{"use strict";a.exports=require("sql.js/dist/sql-wasm.js")},9933:(a,b,c)=>{"use strict";c.d(b,{Lw:()=>i,Q$:()=>k,UT:()=>m,ec:()=>l,fn:()=>j,gg:()=>h,lC:()=>n,vq:()=>o,x1:()=>g});var d=c(5440),e=c(5359);function f(a){let b=[];try{b=JSON.parse(a.tags||"[]")}catch{}return{...a,is_today:1===a.is_today,is_archived:(a.is_archived??0)===1,tags:b}}function g(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE sub_project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function h(a){let b=(0,d.L)().prepare("SELECT * FROM tasks WHERE id = ?").get(a);return b?f(b):void 0}function i(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function j(a){let b=(0,d.L)();return(a?b.prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 1 ORDER BY updated_at DESC").all(a):b.prepare("SELECT * FROM tasks WHERE is_archived = 1 ORDER BY updated_at DESC").all()).map(f)}function k(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 1, is_today = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function l(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function m(a){let b=(0,d.L)(),c=(0,e.$)(),f=new Date().toISOString(),g=b.prepare("SELECT MAX(sort_order) as max_order FROM tasks WHERE sub_project_id = ?").get(a.sub_project_id),i=(g?.max_order??-1)+1;return b.prepare(`INSERT INTO tasks (id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at)
125
+ VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?, ?)`).run(c,a.project_id,a.sub_project_id,a.title,a.description??"",a.status??"idea",a.priority??"medium",i,f,f),h(c)}function n(a,b){let c=(0,d.L)(),e=c.prepare("SELECT * FROM tasks WHERE id = ?").get(a);if(!e)return;let f=new Date().toISOString();return c.prepare(`
109
126
  UPDATE tasks SET
110
127
  title = ?, description = ?, status = ?, priority = ?,
111
- is_today = ?, sort_order = ?, sub_project_id = ?, tags = ?, updated_at = ?
128
+ is_today = ?, sort_order = ?, project_id = ?, sub_project_id = ?, tags = ?, updated_at = ?
112
129
  WHERE id = ?
113
- `).run(b.title??e.title,b.description??e.description,b.status??e.status,b.priority??e.priority,void 0!==b.is_today?+!!b.is_today:e.is_today,b.sort_order??e.sort_order,b.sub_project_id??e.sub_project_id,b.tags?JSON.stringify(b.tags):e.tags,f,a),h(a)}function n(a){return(0,d.L)().prepare("DELETE FROM tasks WHERE id = ?").run(a).changes>0}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813],()=>b(b.s=3680));module.exports=c})();
130
+ `).run(b.title??e.title,b.description??e.description,b.status??e.status,b.priority??e.priority,void 0!==b.is_today?+!!b.is_today:e.is_today,b.sort_order??e.sort_order,b.project_id??e.project_id,b.sub_project_id??e.sub_project_id,b.tags?JSON.stringify(b.tags):e.tags,f,a),h(a)}function o(a){return(0,d.L)().prepare("DELETE FROM tasks WHERE id = ?").run(a).changes>0}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813],()=>b(b.s=3680));module.exports=c})();
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/archive/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"8138","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":7928,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-9a1dc101e82c397c.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/eab748b03f49c43a.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/archive/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/archive/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"9387","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":1836,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-b6580e09a4af9dff.js"],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/a57b4564ec9082ab.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/archive/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"8138","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":7928,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-9a1dc101e82c397c.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/eab748b03f49c43a.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"9387","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":1836,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-b6580e09a4af9dff.js"],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/a57b4564ec9082ab.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/tree/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"8138","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":7928,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-9a1dc101e82c397c.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/eab748b03f49c43a.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/route":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/tree/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/tree/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"9387","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":1836,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-b6580e09a4af9dff.js"],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/a57b4564ec9082ab.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/route":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/tree/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -0,0 +1,26 @@
1
+ "use strict";(()=>{var a={};a.id=424,a.ids=[424],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1421:a=>{a.exports=require("node:child_process")},1820:a=>{a.exports=require("os")},3033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3052:(a,b,c)=>{c.d(b,{J:()=>f});var d=c(1421);let e={claude:{name:"Claude",binary:"claude",buildArgs:({streaming:a,model:b})=>["--dangerously-skip-permissions","--model",b||"opus",...a?["--output-format","stream-json","--verbose"]:["--output-format","text"],"--max-turns","80","-p","-"],buildEnv:()=>{let a={...process.env};for(let b of(delete a.CLAUDECODE,delete a.CLAUDE_CODE_ENTRYPOINT,delete a.CLAUDE_CODE_MAX_OUTPUT_TOKENS,Object.keys(a)))(b.startsWith("CLAUDE_CODE_")||"ANTHROPIC_PARENT_SESSION"===b)&&delete a[b];return{...a,FORCE_COLOR:"0"}},parseStreamEvent:a=>{if("content_block_delta"===a.type&&a.delta?.text)return{text:a.delta.text};if("assistant"===a.type&&a.message?.content){let b="";for(let c of a.message.content)"text"===c.type&&(b+=c.text);return{final:b}}return"result"===a.type&&a.result?{final:a.result}:null},cleanOutput:a=>a.replace(/Error: Reached max turns \(\d+\)\s*/g,"").trim()},gemini:{name:"Gemini",binary:"gemini",buildArgs:({streaming:a})=>["--yolo","-m","gemini-2.5-flash",...a?["--output-format","stream-json"]:["--output-format","json"],"-p","-"],buildEnv:()=>({...process.env,FORCE_COLOR:"0"}),parseStreamEvent:a=>"content_block_delta"===a.type&&a.delta?.text?{text:a.delta.text}:"result"===a.type?{final:a.response||a.text||a.result}:null,cleanOutput:a=>{let b=a.trim();if(!b.startsWith("{"))return b;try{let a=JSON.parse(b);return a.response||a.text||a.result||b}catch{return b}}},codex:{name:"Codex",binary:"codex",buildArgs:({streaming:a})=>["exec","--full-auto",...a?["--json"]:[],"-"],buildEnv:()=>({...process.env,FORCE_COLOR:"0"}),parseStreamEvent:a=>"item.completed"===a.type&&a.item?.type==="agent_message"?{final:a.item.text}:"item.updated"===a.type&&a.item?.type==="agent_message"?{text:a.item.text}:null}};function f(a,b,c,f,g){let h=e[a];return h?new Promise((a,e)=>{let i=!!(c||f),j=h.buildArgs({streaming:i,model:g?.model}),k=h.buildEnv(),l=(0,d.spawn)(h.binary,j,{cwd:g?.cwd||process.cwd(),stdio:["pipe","pipe","pipe"],shell:"win32"===process.platform,env:k}),m=null,n=!1;g?.timeoutMs&&(m=setTimeout(()=>{n=!0,l.kill("SIGTERM")},g.timeoutMs)),l.stdin?.write(b),l.stdin?.end();let o="",p="",q="",r=0;i?l.stdout?.on("data",a=>{let b=(o+=a.toString()).split("\n");for(let a of(o=b.pop()??"",b)){let b=a.trim();if(b)try{let a=JSON.parse(b);f?.(a);let d=h.parseStreamEvent(a);if(d)if(d.final){if(d.final.length>r){let a=d.final.slice(r);c?.(a),r=d.final.length}p=d.final}else d.text&&(p+=d.text,r=p.length,c?.(d.text))}catch{}}}):l.stdout?.on("data",a=>{p+=a.toString()}),l.stderr?.on("data",a=>{q+=a.toString()}),l.on("error",a=>{e(Error(`${h.name} CLI error: ${a.message}`))}),l.on("exit",(b,c)=>{if(m&&clearTimeout(m),!i&&h.cleanOutput&&(p=h.cleanOutput(p)),n)return void e(Error(`${h.name} CLI timed out after ${Math.round((g?.timeoutMs||0)/1e3)}s`));if(0!==b&&!p){let a=q.slice(0,500)||(c?`killed by signal ${c}`:"no output");e(Error(`${h.name} CLI exited with code ${b}: ${a}`));return}a(p)})}):Promise.reject(Error(`Unknown agent type: ${a}`))}},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3873:a=>{a.exports=require("path")},4181:(a,b,c)=>{c.d(b,{T:()=>f,a:()=>e});var d=c(5440);function e(a){return(0,d.L)().prepare("SELECT * FROM brainstorms WHERE project_id = ? ORDER BY version DESC LIMIT 1").get(a)}function f(a,b){let c=(0,d.L)(),f=new Date().toISOString(),g=e(a);if(g)return c.prepare("UPDATE brainstorms SET content = ?, version = version + 1, updated_at = ? WHERE id = ?").run(b,f,g.id),c.prepare("UPDATE projects SET updated_at = ? WHERE id = ?").run(f,a),e(a)}},4870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},5821:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>P,patchFetch:()=>O,routeModule:()=>K,serverHooks:()=>N,workAsyncStorage:()=>L,workUnitAsyncStorage:()=>M});var d={};c.r(d),c.d(d,{DELETE:()=>J,GET:()=>H,POST:()=>I});var e=c(9225),f=c(4006),g=c(8317),h=c(9373),i=c(4775),j=c(4235),k=c(261),l=c(4365),m=c(771),n=c(3461),o=c(7798),p=c(2280),q=c(2018),r=c(5696),s=c(7929),t=c(6439),u=c(7527),v=c(5592),w=c(5440),x=c(5359);function y(a=50){return(0,w.L)().prepare("SELECT * FROM global_conversations ORDER BY created_at DESC LIMIT ?").all(a).reverse()}function z(a,b){let c=(0,w.L)(),d=(0,x.$)(),e=new Date().toISOString();return c.prepare("INSERT INTO global_conversations (id, project_id, role, content, created_at) VALUES (?, ?, ?, ?, ?)").run(d,"__global__",a,b,e),c.prepare("SELECT * FROM global_conversations WHERE id = ?").get(d)}var A=c(6241),B=c(7228),C=c(9933),D=c(4181);function E(a,b){return a?a.length<=b?a:a.slice(0,b)+"…":""}let F={idea:"idea",doing:"DOING",writing:"writing",submitted:"submitted",testing:"testing",done:"done",problem:"PROBLEM"};var G=c(3052);async function H(){await (0,w.t)();let a=y();return v.NextResponse.json(a)}async function I(a){var b;await (0,w.t)();let c=await a.json();if(!c.message||"string"!=typeof c.message)return v.NextResponse.json({error:"message is required"},{status:400});let d=z("user",c.message),e=function(){let a=(0,A.hF)(),b=[];b.push("당신은 사용자의 전체 워크스페이스를 조망하는 AI 어드바이저입니다."),b.push("여러 프로젝트의 현황을 파악하고, 우선순위\xb7방향\xb7빠진 부분\xb7크로스-프로젝트 이슈 등을 논의합니다."),b.push("한국어로 간결하게 답하세요. 긴 설교 금지.\n"),b.push("=== ALL WORKSPACES ===\n");let c=0,d=0,e=0;for(let f of a){let a=(0,B.VU)(f.id),g=(0,C.Lw)(f.id),h=(0,D.a)(f.id);c+=g.length,d+=g.filter(a=>"done"===a.status).length,e+=g.filter(a=>"problem"===a.status).length;let i={},j=[],k=[];for(let a of g)i[a.status]=(i[a.status]??0)+1,a.is_today&&j.push(a.title),"problem"===a.status&&k.push(a.title);let l=[];l.push(`## ${f.name}`),f.description&&l.push(f.description);let m=Object.entries(i).map(([a,b])=>`${a}:${b}`).join(" / ");for(let b of(l.push(`태스크 ${g.length}개 (${m})`),j.length&&l.push(`Today: ${j.join(", ")}`),k.length&&l.push(`문제: ${k.join(", ")}`),h?.content&&l.push(`
2
+ 브레인스토밍 요약: ${E(h.content,1500)}`),a)){let a=g.filter(a=>a.sub_project_id===b.id&&"done"!==a.status);if(a.length)for(let c of(l.push(`
3
+ ### ${b.name}`),a)){let a=E(c.description,120),b=["high"===c.priority?"HIGH":null,c.is_today?"today":null].filter(Boolean).join(", "),d=b?` (${b})`:"";l.push(`- [${F[c.status]??c.status}] **${c.title}**${d}${a?" — "+a:""}`)}}b.push(l.join("\n")),b.push("")}return b.push("---"),b.push(`전체: ${a.length}개 워크스페이스, ${c}개 태스크 (완료 ${d}, 문제 ${e})`),b.join("\n")}(),f=((b=y().map(a=>({role:a.role,content:a.content}))).length<=20?b:b.slice(-20)).map(a=>`${"user"===a.role?"User":"system"===a.role?"System":"Assistant"}: ${a.content}`).join("\n"),g=`${e}
4
+
5
+ === CONVERSATION ===
6
+ ${f}`;try{let a=(await (0,G.J)("claude",g,void 0,void 0,{timeoutMs:12e4})).trim();if(!a){let a=z("assistant","(AI 응답을 생성하지 못했습니다.)");return v.NextResponse.json({userMessage:d,aiMessage:a})}let b=z("assistant",a);return v.NextResponse.json({userMessage:d,aiMessage:b})}catch{let a=z("assistant","(AI 호출에 실패했습니다.)");return v.NextResponse.json({userMessage:d,aiMessage:a})}}async function J(){return await (0,w.t)(),(0,w.L)().prepare("DELETE FROM global_conversations").run(),v.NextResponse.json({ok:!0})}let K=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/global-advisor/route",pathname:"/api/global-advisor",filename:"route",bundlePath:"app/api/global-advisor/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/young/Toy/idea-manager/src/app/api/global-advisor/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:L,workUnitAsyncStorage:M,serverHooks:N}=K;function O(){return(0,g.patchFetch)({workAsyncStorage:L,workUnitAsyncStorage:M})}async function P(a,b,c){K.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/global-advisor/route";"/index"===d&&(d="/");let e=await K.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:A,isOnDemandRevalidate:B,revalidateOnlyGenerated:C,resolvedPathname:D,clientReferenceManifest:E,serverActionsManifest:F}=e,G=(0,k.normalizeAppPath)(d),H=!!(z.dynamicRoutes[G]||z.routes[D]),I=async()=>((null==A?void 0:A.render404)?await A.render404(a,b,x,!1):b.end("This page could not be found"),null);if(H&&!y){let a=!!z.routes[D],b=z.dynamicRoutes[G];if(b&&!1===b.fallback&&!a){if(w.experimental.adapterPath)return await I();throw new t.NoFallbackError}}let J=null;!H||K.isDev||y||(J="/index"===(J=D)?"/":J);let L=!0===K.isDev||!H,M=H&&!L;F&&E&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:E,serverActionsManifest:F});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q={params:v,prerenderManifest:z,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>K.onRequestError(a,b,d,e,A)},sharedContext:{buildId:g}},R=new l.NodeNextRequest(a),S=new l.NodeNextResponse(b),T=m.NextRequestAdapter.fromNodeNextRequest(R,(0,m.signalFromNodeResponse)(b));try{let e=async a=>K.handle(T,Q).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route");if(e){let b=`${N} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b)}else a.updateName(`${N} ${d}`)}),g=!!(0,h.getRequestMeta)(a,"minimalMode"),j=async h=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!g&&B&&C&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await e(h);a.fetchMetrics=Q.renderOpts.fetchMetrics;let i=Q.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=Q.renderOpts.collectedTags;if(!H)return await (0,p.I)(R,S,d,Q.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);j&&(b[s.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,e=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:Q.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await K.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:B})},!1,A),b}},l=await K.handleResponse({req:a,nextConfig:w,cacheKey:J,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,isRoutePPREnabled:!1,isOnDemandRevalidate:B,revalidateOnlyGenerated:C,responseGenerator:k,waitUntil:c.waitUntil,isMinimalMode:g});if(!H)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});g||b.setHeader("x-nextjs-cache",B?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,q.fromNodeOutgoingHttpHeaders)(l.value.headers);return g&&H||m.delete(s.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,r.getCacheControlHeader)(l.cacheControl)),await (0,p.I)(R,S,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};P?await j(P):await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},j))}catch(b){if(b instanceof t.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:B})},!1,A),H)throw b;return await (0,p.I)(R,S,new Response(null,{status:500})),null}}},6439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},7228:(a,b,c)=>{c.d(b,{G8:()=>g,NG:()=>k,VU:()=>f,bU:()=>j,en:()=>i,kh:()=>h,y4:()=>l});var d=c(5440),e=c(5359);function f(a){return(0,d.L)().prepare("SELECT * FROM sub_projects WHERE project_id = ? ORDER BY sort_order ASC").all(a)}function g(a){return(0,d.L)().prepare("SELECT * FROM sub_projects WHERE id = ?").get(a)}function h(a){let b=(0,d.L)();return b.prepare("SELECT * FROM sub_projects WHERE project_id = ? ORDER BY sort_order ASC").all(a).map(a=>{let c=b.prepare(`
7
+ SELECT
8
+ COUNT(*) as task_count,
9
+ SUM(CASE WHEN status IN ('doing','submitted','testing') THEN 1 ELSE 0 END) as active_count,
10
+ SUM(CASE WHEN status IN ('idea','writing') THEN 1 ELSE 0 END) as pending_count,
11
+ SUM(CASE WHEN status = 'done' THEN 1 ELSE 0 END) as done_count,
12
+ SUM(CASE WHEN status = 'problem' THEN 1 ELSE 0 END) as problem_count,
13
+ MAX(updated_at) as last_activity
14
+ FROM tasks WHERE sub_project_id = ? AND is_archived = 0
15
+ `).get(a.id),d=b.prepare(`SELECT title, status FROM tasks WHERE sub_project_id = ? AND is_archived = 0
16
+ ORDER BY CASE status
17
+ WHEN 'doing' THEN 0 WHEN 'submitted' THEN 1 WHEN 'testing' THEN 2 WHEN 'writing' THEN 3
18
+ WHEN 'idea' THEN 4 WHEN 'problem' THEN 5 WHEN 'done' THEN 6
19
+ END, sort_order ASC LIMIT 5`).all(a.id);return{...a,task_count:c.task_count??0,active_count:c.active_count??0,pending_count:c.pending_count??0,done_count:c.done_count??0,problem_count:c.problem_count??0,last_activity:c.last_activity,preview_tasks:d}})}function i(a){let b=(0,d.L)(),c=(0,e.$)(),f=new Date().toISOString(),h=b.prepare("SELECT MAX(sort_order) as max_order FROM sub_projects WHERE project_id = ?").get(a.project_id),i=(h?.max_order??-1)+1;return b.prepare(`INSERT INTO sub_projects (id, project_id, name, description, folder_path, sort_order, created_at, updated_at)
20
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?)`).run(c,a.project_id,a.name,a.description??"",a.folder_path??null,i,f,f),g(c)}function j(a,b){let c=(0,d.L)(),e=g(a);if(!e)return;let f=new Date().toISOString();return c.prepare("UPDATE sub_projects SET name = ?, description = ?, folder_path = ?, updated_at = ? WHERE id = ?").run(b.name??e.name,b.description??e.description,void 0!==b.folder_path?b.folder_path:e.folder_path,f,a),g(a)}function k(a){return(0,d.L)().prepare("DELETE FROM sub_projects WHERE id = ?").run(a).changes>0}function l(a,b){let c=(0,d.L)(),e=c.prepare("UPDATE sub_projects SET sort_order = ? WHERE id = ? AND project_id = ?");c.transaction(()=>{b.forEach((b,c)=>e.run(c,b,a))})()}},7598:a=>{a.exports=require("node:crypto")},9021:a=>{a.exports=require("fs")},9294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{a.exports=require("sql.js/dist/sql-wasm.js")},9933:(a,b,c)=>{c.d(b,{Lw:()=>i,Q$:()=>k,UT:()=>m,ec:()=>l,fn:()=>j,gg:()=>h,lC:()=>n,vq:()=>o,x1:()=>g});var d=c(5440),e=c(5359);function f(a){let b=[];try{b=JSON.parse(a.tags||"[]")}catch{}return{...a,is_today:1===a.is_today,is_archived:(a.is_archived??0)===1,tags:b}}function g(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE sub_project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function h(a){let b=(0,d.L)().prepare("SELECT * FROM tasks WHERE id = ?").get(a);return b?f(b):void 0}function i(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function j(a){let b=(0,d.L)();return(a?b.prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 1 ORDER BY updated_at DESC").all(a):b.prepare("SELECT * FROM tasks WHERE is_archived = 1 ORDER BY updated_at DESC").all()).map(f)}function k(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 1, is_today = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function l(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function m(a){let b=(0,d.L)(),c=(0,e.$)(),f=new Date().toISOString(),g=b.prepare("SELECT MAX(sort_order) as max_order FROM tasks WHERE sub_project_id = ?").get(a.sub_project_id),i=(g?.max_order??-1)+1;return b.prepare(`INSERT INTO tasks (id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at)
21
+ VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?, ?)`).run(c,a.project_id,a.sub_project_id,a.title,a.description??"",a.status??"idea",a.priority??"medium",i,f,f),h(c)}function n(a,b){let c=(0,d.L)(),e=c.prepare("SELECT * FROM tasks WHERE id = ?").get(a);if(!e)return;let f=new Date().toISOString();return c.prepare(`
22
+ UPDATE tasks SET
23
+ title = ?, description = ?, status = ?, priority = ?,
24
+ is_today = ?, sort_order = ?, project_id = ?, sub_project_id = ?, tags = ?, updated_at = ?
25
+ WHERE id = ?
26
+ `).run(b.title??e.title,b.description??e.description,b.status??e.status,b.priority??e.priority,void 0!==b.is_today?+!!b.is_today:e.is_today,b.sort_order??e.sort_order,b.project_id??e.project_id,b.sub_project_id??e.sub_project_id,b.tags?JSON.stringify(b.tags):e.tags,f,a),h(a)}function o(a){return(0,d.L)().prepare("DELETE FROM tasks WHERE id = ?").run(a).changes>0}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813,117],()=>b(b.s=5821));module.exports=c})();
@@ -0,0 +1 @@
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-advisor/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"9387","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":1836,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-b6580e09a4af9dff.js"],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/a57b4564ec9082ab.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/global-advisor/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -74,6 +74,23 @@
74
74
  created_at TEXT NOT NULL DEFAULT (datetime('now')),
75
75
  FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
76
76
  );
77
+ `),a.exec(`
78
+ CREATE TABLE IF NOT EXISTS global_conversations (
79
+ id TEXT PRIMARY KEY,
80
+ project_id TEXT NOT NULL DEFAULT '__global__',
81
+ role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
82
+ content TEXT NOT NULL,
83
+ created_at TEXT NOT NULL DEFAULT (datetime('now'))
84
+ );
85
+
86
+ CREATE TABLE IF NOT EXISTS project_conversations (
87
+ id TEXT PRIMARY KEY,
88
+ project_id TEXT NOT NULL,
89
+ role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
90
+ content TEXT NOT NULL,
91
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
92
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
93
+ );
77
94
  `);let c=a.prepare("PRAGMA table_info(tasks)").all();c.some(a=>"is_archived"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN is_archived INTEGER NOT NULL DEFAULT 0"),c.some(a=>"tags"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN tags TEXT NOT NULL DEFAULT '[]'");let d="\x3c!-- legacy-prompt --\x3e",e=a.prepare(`
78
95
  SELECT tp.task_id AS task_id, tp.content AS content, t.description AS description
79
96
  FROM task_prompts tp
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-memo/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"8138","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":7928,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-9a1dc101e82c397c.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/eab748b03f49c43a.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/global-memo/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-memo/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"9387","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":1836,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-b6580e09a4af9dff.js"],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/a57b4564ec9082ab.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/global-memo/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/health/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"8138","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":7928,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-9a1dc101e82c397c.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/eab748b03f49c43a.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/health/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"7928":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/health/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"9387","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":1836,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-b6580e09a4af9dff.js"],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/a57b4564ec9082ab.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/health/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"1836":{"*":{"id":"4494","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -0,0 +1,130 @@
1
+ (()=>{var a={};a.id=755,a.ids=[755],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1421:a=>{"use strict";a.exports=require("node:child_process")},1799:(a,b,c)=>{"use strict";c.d(b,{bE:()=>m,sA:()=>k});var d=c(3873),e=c.n(d),f=c(1820),g=c.n(f),h=c(9021),i=c.n(h);let j=e().join(g().homedir(),".idea-manager","data");function k(){return e().join((i().existsSync(j)||i().mkdirSync(j,{recursive:!0}),j),"im.db")}let l=e().join(g().homedir(),".idea-manager","sync");function m(){return i().existsSync(l)||i().mkdirSync(l,{recursive:!0}),l}},1820:a=>{"use strict";a.exports=require("os")},2873:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>E,patchFetch:()=>D,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var d={};c.r(d),c.d(d,{POST:()=>y,dynamic:()=>x});var e=c(9225),f=c(4006),g=c(8317),h=c(9373),i=c(4775),j=c(4235),k=c(261),l=c(4365),m=c(771),n=c(3461),o=c(7798),p=c(2280),q=c(2018),r=c(5696),s=c(7929),t=c(6439),u=c(7527),v=c(5592),w=c(5440);let x="force-dynamic";async function y(){await (0,w.t)();let a=(0,w.L)(),b=new Date().toISOString(),c=a.prepare(`
2
+ UPDATE tasks SET is_today = 0, updated_at = ?
3
+ WHERE is_today = 1 AND (status = 'done' OR is_archived = 1)
4
+ `).run(b),d=new Date(Date.now()-12096e5).toISOString(),e=a.prepare(`
5
+ UPDATE tasks SET is_archived = 1, is_today = 0, updated_at = ?
6
+ WHERE status = 'done' AND is_archived = 0 AND updated_at < ?
7
+ `).run(b,d);return v.NextResponse.json({todayCleared:c.changes??0,autoArchived:e.changes??0})}let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/maintenance/route",pathname:"/api/maintenance",filename:"route",bundlePath:"app/api/maintenance/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/young/Toy/idea-manager/src/app/api/maintenance/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function D(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function E(a,b,c){z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/maintenance/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.experimental.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q={params:v,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},R=new l.NodeNextRequest(a),S=new l.NodeNextResponse(b),T=m.NextRequestAdapter.fromNodeNextRequest(R,(0,m.signalFromNodeResponse)(b));try{let e=async a=>z.handle(T,Q).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route");if(e){let b=`${N} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b)}else a.updateName(`${N} ${d}`)}),g=!!(0,h.getRequestMeta)(a,"minimalMode"),j=async h=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!g&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await e(h);a.fetchMetrics=Q.renderOpts.fetchMetrics;let i=Q.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=Q.renderOpts.collectedTags;if(!I)return await (0,p.I)(R,S,d,Q.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);j&&(b[s.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,e=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:Q.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},l=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:k,waitUntil:c.waitUntil,isMinimalMode:g});if(!I)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});g||b.setHeader("x-nextjs-cache",C?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,q.fromNodeOutgoingHttpHeaders)(l.value.headers);return g&&I||m.delete(s.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,r.getCacheControlHeader)(l.cacheControl)),await (0,p.I)(R,S,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};P?await j(P):await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},j))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(R,S,new Response(null,{status:500})),null}}},3033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3873:a=>{"use strict";a.exports=require("path")},4870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},5440:(a,b,c)=>{"use strict";c.d(b,{t:()=>o,L:()=>p});var d=c(9021),e=c.n(d),f=c(1799),g=c(1421);let h=!1,i="";async function j(){let a=new Date,b=a.getHours(),c=`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")}`;if(9===b&&i!==c)try{let a,b;await o();let d=p(),e=d.prepare("SELECT t.title, t.status, p.name as project_name FROM tasks t JOIN projects p ON t.project_id = p.id WHERE t.is_today = 1 AND t.status != 'done'").all(),f=d.prepare("SELECT COUNT(*) as count FROM tasks WHERE status IN ('submitted', 'testing')").get(),h=d.prepare("SELECT COUNT(*) as count FROM tasks WHERE status = 'problem'").get(),j=[];if(e.length>0){for(let a of(j.push(`Today: ${e.length}개`),e.slice(0,5)))j.push(` - ${a.title}`);e.length>5&&j.push(` ... +${e.length-5}개`)}else j.push("Today 태스크가 없습니다.");f.count>0&&j.push(`진행 중: ${f.count}개`),h.count>0&&j.push(`문제: ${h.count}개`),a=j.join("\n").replace(/"/g,'\\"').replace(/\n/g,"\\n"),b=`display notification "${a}" with title "IM - 오늘의 할 일"`,(0,g.exec)(`osascript -e '${b}'`,a=>{a&&console.error("[Scheduler] notification error:",a.message)}),i=c}catch(a){console.error("[Scheduler] error:",a)}}class k{constructor(a,b){this.dirty=!1,this.inTransaction=!1,this.db=a,this.dbPath=b}save(){if(!this.dirty)return;let a=this.db.export();e().writeFileSync(this.dbPath,Buffer.from(a)),this.dirty=!1}immediatelySave(){this.dirty=!0,this.inTransaction||this.save()}rowsToObjects(a,b){return b.map(b=>{let c={};return a.forEach((a,d)=>{c[a]=b[d]}),c})}prepare(a){let b=this,c=/^\s*(INSERT|UPDATE|DELETE|CREATE|ALTER|DROP)/i.test(a);return{all(...c){let d=b.db.prepare(a);c.length>0&&d.bind(c);let e=d.getColumnNames(),f=[];for(;d.step();)f.push(d.get());return d.free(),b.rowsToObjects(e,f)},get(...c){let d,e=b.db.prepare(a);if(c.length>0&&e.bind(c),e.step()){let a=e.getColumnNames(),b=e.get(),c={};a.forEach((a,d)=>{c[a]=b[d]}),d=c}return e.free(),d},run:(...d)=>(b.db.run(a,d),c&&b.immediatelySave(),{changes:b.db.getRowsModified()})}}exec(a){this.db.exec(a),/^\s*(INSERT|UPDATE|DELETE|CREATE|ALTER|DROP)/im.test(a)&&this.immediatelySave()}pragma(a){if(a.startsWith("table_info(")){let b=a.match(/table_info\((\w+)\)/)?.[1];if(!b)return[];let c=this.db.exec(`PRAGMA table_info(${b})`);return c.length?this.rowsToObjects(c[0].columns,c[0].values):[]}if(a.includes("journal_mode")||a.includes("wal_checkpoint"))return this.immediatelySave(),"memory";if(a.includes("foreign_keys")){try{this.db.run(`PRAGMA ${a}`)}catch{}return}try{let b=this.db.exec(`PRAGMA ${a}`);if(b.length>0&&b[0].values.length>0)return b[0].values[0][0]}catch{}}transaction(a){let b=this;return()=>{b.inTransaction=!0,b.db.run("BEGIN");try{let c=a();return b.db.run("COMMIT"),b.inTransaction=!1,b.immediatelySave(),c}catch(a){b.inTransaction=!1;try{b.db.run("ROLLBACK")}catch{}throw a}}}close(){this.immediatelySave(),this.db.close()}}let l=null,m=null;async function n(){let a;if(l)return l;let b=c(9661),d=await b(),g=(0,f.sA)();if(e().existsSync(g)){let b=e().readFileSync(g);a=new d.Database(b)}else a=new d.Database;return!function(a){a.exec(`
8
+ CREATE TABLE IF NOT EXISTS projects (
9
+ id TEXT PRIMARY KEY,
10
+ name TEXT NOT NULL,
11
+ description TEXT NOT NULL DEFAULT '',
12
+ project_path TEXT,
13
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
14
+ updated_at TEXT NOT NULL DEFAULT (datetime('now'))
15
+ );
16
+
17
+ CREATE TABLE IF NOT EXISTS brainstorms (
18
+ id TEXT PRIMARY KEY,
19
+ project_id TEXT NOT NULL,
20
+ content TEXT NOT NULL DEFAULT '',
21
+ version INTEGER NOT NULL DEFAULT 1,
22
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
23
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
24
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
25
+ );
26
+
27
+ `);let b=a.prepare("PRAGMA table_info(projects)").all();b.some(a=>"project_path"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN project_path TEXT"),b.some(a=>"ai_context"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN ai_context TEXT NOT NULL DEFAULT ''"),b.some(a=>"watch_enabled"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN watch_enabled INTEGER NOT NULL DEFAULT 0"),b.some(a=>"agent_type"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN agent_type TEXT NOT NULL DEFAULT 'claude'"),a.exec(`
28
+ CREATE TABLE IF NOT EXISTS sub_projects (
29
+ id TEXT PRIMARY KEY,
30
+ project_id TEXT NOT NULL,
31
+ name TEXT NOT NULL,
32
+ description TEXT NOT NULL DEFAULT '',
33
+ folder_path TEXT,
34
+ sort_order INTEGER NOT NULL DEFAULT 0,
35
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
36
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
37
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
38
+ );
39
+
40
+ CREATE TABLE IF NOT EXISTS tasks (
41
+ id TEXT PRIMARY KEY,
42
+ project_id TEXT NOT NULL,
43
+ sub_project_id TEXT NOT NULL,
44
+ title TEXT NOT NULL,
45
+ description TEXT NOT NULL DEFAULT '',
46
+ status TEXT NOT NULL DEFAULT 'idea'
47
+ CHECK(status IN ('idea','doing','writing','submitted','testing','done','problem')),
48
+ priority TEXT NOT NULL DEFAULT 'medium'
49
+ CHECK(priority IN ('high','medium','low')),
50
+ is_today INTEGER NOT NULL DEFAULT 0,
51
+ sort_order INTEGER NOT NULL DEFAULT 0,
52
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
53
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
54
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE,
55
+ FOREIGN KEY (sub_project_id) REFERENCES sub_projects(id) ON DELETE CASCADE
56
+ );
57
+
58
+ CREATE TABLE IF NOT EXISTS task_prompts (
59
+ id TEXT PRIMARY KEY,
60
+ task_id TEXT NOT NULL UNIQUE,
61
+ content TEXT NOT NULL DEFAULT '',
62
+ prompt_type TEXT NOT NULL DEFAULT 'manual'
63
+ CHECK(prompt_type IN ('manual','ai_assisted')),
64
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
65
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
66
+ FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
67
+ );
68
+
69
+ CREATE TABLE IF NOT EXISTS global_memos (
70
+ id TEXT PRIMARY KEY,
71
+ content TEXT NOT NULL DEFAULT '',
72
+ updated_at TEXT NOT NULL DEFAULT (datetime('now'))
73
+ );
74
+
75
+ CREATE TABLE IF NOT EXISTS task_conversations (
76
+ id TEXT PRIMARY KEY,
77
+ task_id TEXT NOT NULL,
78
+ role TEXT NOT NULL CHECK(role IN ('assistant','user')),
79
+ content TEXT NOT NULL,
80
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
81
+ FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
82
+ );
83
+ `),a.exec(`
84
+ CREATE TABLE IF NOT EXISTS global_conversations (
85
+ id TEXT PRIMARY KEY,
86
+ project_id TEXT NOT NULL DEFAULT '__global__',
87
+ role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
88
+ content TEXT NOT NULL,
89
+ created_at TEXT NOT NULL DEFAULT (datetime('now'))
90
+ );
91
+
92
+ CREATE TABLE IF NOT EXISTS project_conversations (
93
+ id TEXT PRIMARY KEY,
94
+ project_id TEXT NOT NULL,
95
+ role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
96
+ content TEXT NOT NULL,
97
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
98
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
99
+ );
100
+ `);let c=a.prepare("PRAGMA table_info(tasks)").all();c.some(a=>"is_archived"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN is_archived INTEGER NOT NULL DEFAULT 0"),c.some(a=>"tags"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN tags TEXT NOT NULL DEFAULT '[]'");let d="\x3c!-- legacy-prompt --\x3e",e=a.prepare(`
101
+ SELECT tp.task_id AS task_id, tp.content AS content, t.description AS description
102
+ FROM task_prompts tp
103
+ JOIN tasks t ON t.id = tp.task_id
104
+ WHERE tp.content IS NOT NULL AND TRIM(tp.content) <> ''
105
+ AND (t.description IS NULL OR t.description NOT LIKE '%${d}%')
106
+ `).all();if(e.length>0){let b=a.prepare("UPDATE tasks SET description = ? WHERE id = ?");for(let a of e){let c=(a.description??"").trimEnd(),e=[c,c?"":null,c?"---":null,`${d}`,"**Legacy Prompt**","",a.content.trim()].filter(a=>null!==a).join("\n");b.run(e,a.task_id)}}let f=a.prepare("SELECT sql FROM sqlite_master WHERE type='table' AND name='tasks'").get();f&&!f.sql.includes("'doing'")&&a.exec(`
107
+ CREATE TABLE tasks_new (
108
+ id TEXT PRIMARY KEY,
109
+ project_id TEXT NOT NULL,
110
+ sub_project_id TEXT NOT NULL,
111
+ title TEXT NOT NULL,
112
+ description TEXT NOT NULL DEFAULT '',
113
+ status TEXT NOT NULL DEFAULT 'idea'
114
+ CHECK(status IN ('idea','doing','writing','submitted','testing','done','problem')),
115
+ priority TEXT NOT NULL DEFAULT 'medium'
116
+ CHECK(priority IN ('high','medium','low')),
117
+ is_today INTEGER NOT NULL DEFAULT 0,
118
+ sort_order INTEGER NOT NULL DEFAULT 0,
119
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
120
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
121
+ is_archived INTEGER NOT NULL DEFAULT 0,
122
+ tags TEXT NOT NULL DEFAULT '[]',
123
+ FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE,
124
+ FOREIGN KEY (sub_project_id) REFERENCES sub_projects(id) ON DELETE CASCADE
125
+ );
126
+ INSERT INTO tasks_new (id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at, is_archived, tags)
127
+ SELECT id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at, is_archived, tags FROM tasks;
128
+ DROP TABLE tasks;
129
+ ALTER TABLE tasks_new RENAME TO tasks;
130
+ `)}(l=new k(a,g)),process.on("exit",()=>l?.close()),h||(h=!0,setInterval(j,6e4),j(),console.log("[Scheduler] Morning notification scheduler started")),l}async function o(){return l||(m||(m=n()),m)}function p(){if(!l)throw Error("Database not initialized. Call await ensureDb() first.");return l}},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6487:()=>{},8335:()=>{},9021:a=>{"use strict";a.exports=require("fs")},9294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{"use strict";a.exports=require("sql.js/dist/sql-wasm.js")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813],()=>b(b.s=2873));module.exports=c})();