@ripla/godd-mcp 1.0.4-canary.8 → 1.0.4

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 (348) hide show
  1. package/README.md +89 -94
  2. package/dist/godd.cjs +349 -233
  3. package/dist/godd.js +2193 -838
  4. package/dist/index.js +152 -122
  5. package/{notes-api → notes/api}/.env.example +6 -1
  6. package/{notes-api → notes/api}/README.md +6 -5
  7. package/{notes-api → notes/api}/app/main.py +29 -2
  8. package/{notes-api → notes/api}/app/routers/auth.py +6 -1
  9. package/{notes-api → notes/api}/app/routers/issues.py +157 -1
  10. package/{notes-api → notes/api}/app/routers/pr.py +2 -2
  11. package/{notes-api → notes/api}/app/services/github_app_token.py +32 -1
  12. package/{notes-api → notes/api}/app/services/github_issues.py +101 -11
  13. package/{notes-api → notes/api}/app/services/github_pr.py +6 -1
  14. package/{notes-api → notes/api}/tests/test_github_app_token.py +49 -1
  15. package/{notes-api → notes/api}/tests/test_github_service.py +42 -0
  16. package/notes/api/tests/test_health.py +52 -0
  17. package/{notes-api → notes/api}/tests/test_issues.py +216 -0
  18. package/{notes-api → notes/api}/tests/test_pr.py +24 -0
  19. package/{notes-api → notes/api}/tests/test_pr_chain.py +19 -0
  20. package/{notes-api → notes/api}/uv.lock +178 -2
  21. package/notes/app/DESIGN.md +273 -0
  22. package/{notes-app → notes/app}/README.md +4 -1
  23. package/notes/app/docker/Dockerfile.e2e +19 -0
  24. package/notes/app/docker/Dockerfile.prod +15 -0
  25. package/notes/app/docker/Dockerfile.test +17 -0
  26. package/notes/app/e2e/file-tree.spec.ts +26 -0
  27. package/notes/app/e2e/file-view.spec.ts +25 -0
  28. package/notes/app/e2e/fixtures.ts +28 -0
  29. package/{notes-app → notes/app}/e2e/global-setup.ts +5 -7
  30. package/notes/app/e2e/login.spec.ts +25 -0
  31. package/notes/app/e2e/pages/login-page.ts +29 -0
  32. package/notes/app/e2e/pages/main-page.ts +29 -0
  33. package/notes/app/e2e/panel-resize-handle.spec.ts +213 -0
  34. package/{notes-app → notes/app}/eslint.config.js +9 -0
  35. package/{notes-app → notes/app}/package.json +0 -3
  36. package/{notes-app → notes/app}/pnpm-workspace.yaml +1 -0
  37. package/notes/app/src/components/CommentPanel.test.tsx +194 -0
  38. package/{notes-app → notes/app}/src/components/CommentPanel.tsx +119 -10
  39. package/notes/app/src/components/CommentSelectionPopover.tsx +26 -0
  40. package/notes/app/src/components/EditToolbar.test.tsx +102 -0
  41. package/{notes-app → notes/app}/src/components/EditToolbar.tsx +5 -54
  42. package/notes/app/src/components/FileInfoPanel.branch-tab.test.tsx +250 -0
  43. package/notes/app/src/components/FileInfoPanel.history-tab.test.tsx +146 -0
  44. package/notes/app/src/components/FileInfoPanel.test.tsx +101 -0
  45. package/{notes-app → notes/app}/src/components/FileInfoPanel.tsx +135 -20
  46. package/notes/app/src/components/IssueCommentThread.test.tsx +93 -0
  47. package/notes/app/src/components/IssueCommentThread.tsx +156 -0
  48. package/notes/app/src/components/IssueDetailView.test.tsx +1118 -0
  49. package/notes/app/src/components/IssueDetailView.tsx +476 -0
  50. package/notes/app/src/components/IssueList.test.tsx +545 -0
  51. package/notes/app/src/components/IssueList.tsx +374 -0
  52. package/{notes-app → notes/app}/src/components/LabelSelector.test.tsx +94 -8
  53. package/notes/app/src/components/LabelSelector.tsx +452 -0
  54. package/{notes-app → notes/app}/src/components/MarkdownEditor.tsx +140 -2
  55. package/notes/app/src/components/PanelResizeHandle.test.tsx +481 -0
  56. package/notes/app/src/components/PanelResizeHandle.tsx +96 -0
  57. package/{notes-app → notes/app}/src/hooks/useEditSession.test.ts +171 -23
  58. package/{notes-app → notes/app}/src/hooks/useEditSession.ts +49 -62
  59. package/notes/app/src/hooks/useMdUpLayout.test.ts +10 -0
  60. package/notes/app/src/hooks/useMdUpLayout.ts +27 -0
  61. package/notes/app/src/hooks/usePeriodicSync.test.ts +244 -0
  62. package/notes/app/src/hooks/usePeriodicSync.ts +83 -0
  63. package/notes/app/src/hooks/useResizablePanelWidth.test.ts +251 -0
  64. package/notes/app/src/hooks/useResizablePanelWidth.ts +167 -0
  65. package/{notes-app → notes/app}/src/lib/api.test.ts +81 -1
  66. package/{notes-app → notes/app}/src/lib/api.ts +98 -4
  67. package/notes/app/src/lib/commentAnchor.test.ts +22 -0
  68. package/notes/app/src/lib/commentAnchor.ts +28 -0
  69. package/notes/app/src/lib/commentHighlight.test.ts +110 -0
  70. package/notes/app/src/lib/commentHighlight.ts +44 -0
  71. package/notes/app/src/lib/github-sync.test.ts +126 -0
  72. package/notes/app/src/lib/github-sync.ts +89 -0
  73. package/notes/app/src/lib/issue-list-utils.test.ts +275 -0
  74. package/notes/app/src/lib/issue-list-utils.ts +135 -0
  75. package/notes/app/src/lib/issue-mobile-layout.test.ts +17 -0
  76. package/notes/app/src/lib/issue-mobile-layout.ts +20 -0
  77. package/notes/app/src/lib/issue-url-sync.test.ts +73 -0
  78. package/notes/app/src/lib/issue-url-sync.ts +43 -0
  79. package/notes/app/src/lib/main-page-default-view.test.ts +37 -0
  80. package/notes/app/src/lib/main-page-default-view.ts +15 -0
  81. package/notes/app/src/lib/resizable-panel.test.ts +199 -0
  82. package/notes/app/src/lib/resizable-panel.ts +136 -0
  83. package/notes/app/src/pages/LoginPage.test.tsx +17 -0
  84. package/notes/app/src/pages/MainPage.branch-modal.test.tsx +226 -0
  85. package/notes/app/src/pages/MainPage.issue-sync.test.tsx +145 -0
  86. package/notes/app/src/pages/MainPage.sidebar.test.tsx +361 -0
  87. package/{notes-app → notes/app}/src/pages/MainPage.tsx +406 -61
  88. package/{notes-app → notes/app}/src/pages/SettingsPage.test.tsx +32 -23
  89. package/{notes-app → notes/app}/src/pages/UserManagementPage.test.tsx +8 -18
  90. package/notes/app/src/test/mocks.ts +156 -0
  91. package/notes/app/src/test/render.tsx +27 -0
  92. package/package.json +3 -5
  93. package/notes-api/tests/test_health.py +0 -11
  94. package/notes-app/docker/Dockerfile.e2e +0 -14
  95. package/notes-app/docker/Dockerfile.prod +0 -12
  96. package/notes-app/docker/Dockerfile.test +0 -12
  97. package/notes-app/e2e/file-tree.spec.ts +0 -29
  98. package/notes-app/e2e/file-view.spec.ts +0 -24
  99. package/notes-app/e2e/login.spec.ts +0 -32
  100. package/notes-app/src/components/IssueDetailView.test.tsx +0 -201
  101. package/notes-app/src/components/IssueDetailView.tsx +0 -318
  102. package/notes-app/src/components/IssueList.test.tsx +0 -93
  103. package/notes-app/src/components/IssueList.tsx +0 -169
  104. package/notes-app/src/components/LabelSelector.tsx +0 -276
  105. package/notes-app/src/pages/LoginPage.test.tsx +0 -29
  106. package/stacks/django-vue.yaml +0 -33
  107. package/stacks/fastapi-react.yaml +0 -160
  108. package/stacks/flutter-firebase.yaml +0 -58
  109. package/stacks/nextjs-prisma.yaml +0 -33
  110. package/stacks/schema.json +0 -144
  111. package/templates/agents/architect.hbs +0 -183
  112. package/templates/agents/auto-documenter.hbs +0 -36
  113. package/templates/agents/backend-developer.hbs +0 -175
  114. package/templates/agents/code-reviewer.hbs +0 -29
  115. package/templates/agents/database-developer.hbs +0 -52
  116. package/templates/agents/debug-specialist.hbs +0 -39
  117. package/templates/agents/environment-setup.hbs +0 -41
  118. package/templates/agents/frontend-developer.hbs +0 -45
  119. package/templates/agents/integration-qa.hbs +0 -26
  120. package/templates/agents/performance-qa.hbs +0 -24
  121. package/templates/agents/pr-writer.hbs +0 -53
  122. package/templates/agents/quality-lead.hbs +0 -26
  123. package/templates/agents/requirements-analyst.hbs +0 -26
  124. package/templates/agents/security-analyst.hbs +0 -21
  125. package/templates/agents/security-reviewer.hbs +0 -20
  126. package/templates/agents/ssot-updater.hbs +0 -45
  127. package/templates/agents/technical-writer.hbs +0 -28
  128. package/templates/agents/unit-test-engineer.hbs +0 -19
  129. package/templates/agents/user-clone.hbs +0 -43
  130. package/templates/github-actions/aws/deploy-notes.yml.hbs +0 -117
  131. package/templates/github-actions/azure/deploy-notes.yml.hbs +0 -78
  132. package/templates/github-actions/gcp/deploy-notes.yml.hbs +0 -76
  133. package/templates/github-actions/vercel-railway/deploy-notes.yml.hbs +0 -49
  134. package/templates/mindsets/agent-stdio.hbs +0 -51
  135. package/templates/mindsets/dart.hbs +0 -39
  136. package/templates/mindsets/ddd-clean-architecture.hbs +0 -52
  137. package/templates/mindsets/electron.hbs +0 -41
  138. package/templates/mindsets/fastapi.hbs +0 -40
  139. package/templates/mindsets/flutter.hbs +0 -56
  140. package/templates/mindsets/kotlin.hbs +0 -46
  141. package/templates/mindsets/postgresql.hbs +0 -39
  142. package/templates/mindsets/python.hbs +0 -39
  143. package/templates/mindsets/react.hbs +0 -51
  144. package/templates/mindsets/swift.hbs +0 -46
  145. package/templates/mindsets/terraform.hbs +0 -53
  146. package/templates/mindsets/typescript.hbs +0 -34
  147. package/templates/mindsets/vite.hbs +0 -37
  148. package/templates/notes-compose.yml +0 -82
  149. package/templates/partials/cogito-geo.hbs +0 -84
  150. package/templates/partials/cogito-godd.hbs +0 -22
  151. package/templates/partials/cogito-grammar.hbs +0 -105
  152. package/templates/partials/cogito-particle.hbs +0 -76
  153. package/templates/partials/cogito-root-ai.hbs +0 -79
  154. package/templates/partials/cogito-root-arch.hbs +0 -75
  155. package/templates/partials/cogito-root-core.hbs +0 -75
  156. package/templates/partials/cogito-root-daily.hbs +0 -58
  157. package/templates/partials/cogito-root-dev.hbs +0 -71
  158. package/templates/partials/cogito-root-devops.hbs +0 -71
  159. package/templates/partials/cogito-root-framework.hbs +0 -80
  160. package/templates/partials/cogito-root-lang.hbs +0 -74
  161. package/templates/partials/godd-core.hbs +0 -50
  162. package/templates/partials/project-context.hbs +0 -52
  163. package/templates/partials/ssot-header.hbs +0 -40
  164. package/templates/partials/ssot-rules.hbs +0 -30
  165. package/templates/prompts/adr.hbs +0 -39
  166. package/templates/prompts/agent-dev-workflow.hbs +0 -34
  167. package/templates/prompts/analyze-report.hbs +0 -36
  168. package/templates/prompts/auto-documentation.hbs +0 -37
  169. package/templates/prompts/check.hbs +0 -52
  170. package/templates/prompts/commit.hbs +0 -96
  171. package/templates/prompts/dev.hbs +0 -127
  172. package/templates/prompts/docs-init.hbs +0 -101
  173. package/templates/prompts/docs-update.hbs +0 -51
  174. package/templates/prompts/git-workflow.hbs +0 -125
  175. package/templates/prompts/impact-analysis.hbs +0 -43
  176. package/templates/prompts/install.hbs +0 -40
  177. package/templates/prompts/new-branch.hbs +0 -61
  178. package/templates/prompts/notes-deploy.hbs +0 -138
  179. package/templates/prompts/pr-analyze.hbs +0 -44
  180. package/templates/prompts/pr-create.hbs +0 -125
  181. package/templates/prompts/push-execute.hbs +0 -83
  182. package/templates/prompts/push.hbs +0 -24
  183. package/templates/prompts/release-notes.hbs +0 -38
  184. package/templates/prompts/requirements-to-business-flow.hbs +0 -29
  185. package/templates/prompts/requirements-to-tickets.hbs +0 -26
  186. package/templates/prompts/review.hbs +0 -126
  187. package/templates/prompts/setup.hbs +0 -247
  188. package/templates/prompts/spec.hbs +0 -35
  189. package/templates/prompts/specification-to-tickets.hbs +0 -24
  190. package/templates/prompts/submit.hbs +0 -143
  191. package/templates/prompts/sync.hbs +0 -63
  192. package/templates/prompts/test-plan.hbs +0 -56
  193. package/templates/scripts/aws/terraform-backend-setup.sh.hbs +0 -149
  194. package/templates/terraform/aws/alb.tf.hbs +0 -58
  195. package/templates/terraform/aws/backend.tf.hbs +0 -10
  196. package/templates/terraform/aws/cloudfront.tf.hbs +0 -96
  197. package/templates/terraform/aws/ecr.tf.hbs +0 -30
  198. package/templates/terraform/aws/ecs.tf.hbs +0 -142
  199. package/templates/terraform/aws/iam.tf.hbs +0 -88
  200. package/templates/terraform/aws/local.tf.hbs +0 -34
  201. package/templates/terraform/aws/output.tf.hbs +0 -49
  202. package/templates/terraform/aws/provider.tf.hbs +0 -26
  203. package/templates/terraform/aws/rds.tf.hbs +0 -38
  204. package/templates/terraform/aws/s3.tf.hbs +0 -34
  205. package/templates/terraform/aws/secrets.tf.hbs +0 -53
  206. package/templates/terraform/aws/security_groups.tf.hbs +0 -81
  207. package/templates/terraform/aws/vpc.tf.hbs +0 -63
  208. package/templates/terraform/azure/backend.tf.hbs +0 -8
  209. package/templates/terraform/azure/iam.tf.hbs +0 -36
  210. package/templates/terraform/azure/main.tf.hbs +0 -203
  211. package/templates/terraform/azure/output.tf.hbs +0 -19
  212. package/templates/terraform/azure/provider.tf.hbs +0 -19
  213. package/templates/terraform/gcp/backend.tf.hbs +0 -6
  214. package/templates/terraform/gcp/iam.tf.hbs +0 -47
  215. package/templates/terraform/gcp/main.tf.hbs +0 -175
  216. package/templates/terraform/gcp/output.tf.hbs +0 -15
  217. package/templates/terraform/gcp/provider.tf.hbs +0 -19
  218. package/templates/terraform/vercel-railway/main.tf.hbs +0 -64
  219. package/templates/terraform/vercel-railway/output.tf.hbs +0 -11
  220. /package/{notes-api → notes/api}/.dockerignore +0 -0
  221. /package/{notes-api → notes/api}/alembic/README +0 -0
  222. /package/{notes-api → notes/api}/alembic/env.py +0 -0
  223. /package/{notes-api → notes/api}/alembic/script.py.mako +0 -0
  224. /package/{notes-api → notes/api}/alembic/versions/001_initial_notes_tables.py +0 -0
  225. /package/{notes-api → notes/api}/alembic/versions/002_add_performance_indexes.py +0 -0
  226. /package/{notes-api → notes/api}/alembic/versions/003_add_yjs_documents.py +0 -0
  227. /package/{notes-api → notes/api}/alembic/versions/004_add_comments.py +0 -0
  228. /package/{notes-api → notes/api}/alembic/versions/005_add_github_username.py +0 -0
  229. /package/{notes-api → notes/api}/alembic/versions/006_add_check_constraints.py +0 -0
  230. /package/{notes-api → notes/api}/alembic.ini +0 -0
  231. /package/{notes-api → notes/api}/app/__init__.py +0 -0
  232. /package/{notes-api → notes/api}/app/config.py +0 -0
  233. /package/{notes-api → notes/api}/app/database.py +0 -0
  234. /package/{notes-api → notes/api}/app/http_client.py +0 -0
  235. /package/{notes-api → notes/api}/app/models/__init__.py +0 -0
  236. /package/{notes-api → notes/api}/app/models/audit.py +0 -0
  237. /package/{notes-api → notes/api}/app/models/base.py +0 -0
  238. /package/{notes-api → notes/api}/app/models/collab.py +0 -0
  239. /package/{notes-api → notes/api}/app/models/comment.py +0 -0
  240. /package/{notes-api → notes/api}/app/models/session.py +0 -0
  241. /package/{notes-api → notes/api}/app/models/setting.py +0 -0
  242. /package/{notes-api → notes/api}/app/models/user.py +0 -0
  243. /package/{notes-api → notes/api}/app/path_validation.py +0 -0
  244. /package/{notes-api → notes/api}/app/routers/__init__.py +0 -0
  245. /package/{notes-api → notes/api}/app/routers/collab.py +0 -0
  246. /package/{notes-api → notes/api}/app/routers/comments.py +0 -0
  247. /package/{notes-api → notes/api}/app/routers/files.py +0 -0
  248. /package/{notes-api → notes/api}/app/routers/settings.py +0 -0
  249. /package/{notes-api → notes/api}/app/routers/tree.py +0 -0
  250. /package/{notes-api → notes/api}/app/routers/upload.py +0 -0
  251. /package/{notes-api → notes/api}/app/routers/users.py +0 -0
  252. /package/{notes-api → notes/api}/app/schemas/__init__.py +0 -0
  253. /package/{notes-api → notes/api}/app/schemas/auth.py +0 -0
  254. /package/{notes-api → notes/api}/app/schemas/user.py +0 -0
  255. /package/{notes-api → notes/api}/app/security.py +0 -0
  256. /package/{notes-api → notes/api}/app/services/__init__.py +0 -0
  257. /package/{notes-api → notes/api}/app/services/audit.py +0 -0
  258. /package/{notes-api → notes/api}/app/services/business_date.py +0 -0
  259. /package/{notes-api → notes/api}/app/services/collab.py +0 -0
  260. /package/{notes-api → notes/api}/app/services/github.py +0 -0
  261. /package/{notes-api → notes/api}/app/services/pr_chain.py +0 -0
  262. /package/{notes-api → notes/api}/app/startup.py +0 -0
  263. /package/{notes-api → notes/api}/docker/Dockerfile +0 -0
  264. /package/{notes-api → notes/api}/docker/Dockerfile.test +0 -0
  265. /package/{notes-api → notes/api}/pyproject.toml +0 -0
  266. /package/{notes-api → notes/api}/tests/conftest.py +0 -0
  267. /package/{notes-api → notes/api}/tests/test_audit.py +0 -0
  268. /package/{notes-api → notes/api}/tests/test_auth.py +0 -0
  269. /package/{notes-api → notes/api}/tests/test_business_date.py +0 -0
  270. /package/{notes-api → notes/api}/tests/test_collab.py +0 -0
  271. /package/{notes-api → notes/api}/tests/test_comments.py +0 -0
  272. /package/{notes-api → notes/api}/tests/test_config_ssl.py +0 -0
  273. /package/{notes-api → notes/api}/tests/test_config_warnings.py +0 -0
  274. /package/{notes-api → notes/api}/tests/test_files.py +0 -0
  275. /package/{notes-api → notes/api}/tests/test_path_validation.py +0 -0
  276. /package/{notes-api → notes/api}/tests/test_security.py +0 -0
  277. /package/{notes-api → notes/api}/tests/test_settings.py +0 -0
  278. /package/{notes-api → notes/api}/tests/test_tree.py +0 -0
  279. /package/{notes-api → notes/api}/tests/test_upload.py +0 -0
  280. /package/{notes-api → notes/api}/tests/test_users.py +0 -0
  281. /package/{notes-app → notes/app}/.dockerignore +0 -0
  282. /package/{notes-app → notes/app}/index.html +0 -0
  283. /package/{notes-app → notes/app}/nginx.conf +0 -0
  284. /package/{notes-app → notes/app}/package-lock.json +0 -0
  285. /package/{notes-app → notes/app}/playwright.config.ts +0 -0
  286. /package/{notes-app → notes/app}/pnpm-lock.yaml +0 -0
  287. /package/{notes-app → notes/app}/src/App.tsx +0 -0
  288. /package/{notes-app → notes/app}/src/components/BranchSelectorModal.tsx +0 -0
  289. /package/{notes-app → notes/app}/src/components/CodeBlockView.test.tsx +0 -0
  290. /package/{notes-app → notes/app}/src/components/CodeBlockView.tsx +0 -0
  291. /package/{notes-app → notes/app}/src/components/CollabStatus.tsx +0 -0
  292. /package/{notes-app → notes/app}/src/components/DiffPreview.tsx +0 -0
  293. /package/{notes-app → notes/app}/src/components/DrawioEditor.tsx +0 -0
  294. /package/{notes-app → notes/app}/src/components/DrawioViewer.tsx +0 -0
  295. /package/{notes-app → notes/app}/src/components/ErrorBoundary.test.tsx +0 -0
  296. /package/{notes-app → notes/app}/src/components/ErrorBoundary.tsx +0 -0
  297. /package/{notes-app → notes/app}/src/components/FileContentView.tsx +0 -0
  298. /package/{notes-app → notes/app}/src/components/FileContextMenu.test.tsx +0 -0
  299. /package/{notes-app → notes/app}/src/components/FileContextMenu.tsx +0 -0
  300. /package/{notes-app → notes/app}/src/components/FileDialogs.test.tsx +0 -0
  301. /package/{notes-app → notes/app}/src/components/FileDialogs.tsx +0 -0
  302. /package/{notes-app → notes/app}/src/components/SaveStatusIndicator.test.tsx +0 -0
  303. /package/{notes-app → notes/app}/src/components/SaveStatusIndicator.tsx +0 -0
  304. /package/{notes-app → notes/app}/src/components/Skeleton.tsx +0 -0
  305. /package/{notes-app → notes/app}/src/components/SpreadsheetEditor.test.tsx +0 -0
  306. /package/{notes-app → notes/app}/src/components/SpreadsheetEditor.tsx +0 -0
  307. /package/{notes-app → notes/app}/src/components/TextEditor.tsx +0 -0
  308. /package/{notes-app → notes/app}/src/components/ToastContainer.tsx +0 -0
  309. /package/{notes-app → notes/app}/src/components/TreeNode.tsx +0 -0
  310. /package/{notes-app → notes/app}/src/contexts/AuthContext.test.tsx +0 -0
  311. /package/{notes-app → notes/app}/src/contexts/AuthContext.tsx +0 -0
  312. /package/{notes-app → notes/app}/src/contexts/ToastContext.test.ts +0 -0
  313. /package/{notes-app → notes/app}/src/contexts/ToastContext.tsx +0 -0
  314. /package/{notes-app → notes/app}/src/hooks/useAutoSave.test.ts +0 -0
  315. /package/{notes-app → notes/app}/src/hooks/useAutoSave.ts +0 -0
  316. /package/{notes-app → notes/app}/src/hooks/useCollaboration.ts +0 -0
  317. /package/{notes-app → notes/app}/src/hooks/useComments.ts +0 -0
  318. /package/{notes-app → notes/app}/src/hooks/useYText.ts +0 -0
  319. /package/{notes-app → notes/app}/src/lib/branch-diff.test.ts +0 -0
  320. /package/{notes-app → notes/app}/src/lib/branch-diff.ts +0 -0
  321. /package/{notes-app → notes/app}/src/lib/created-file.test.ts +0 -0
  322. /package/{notes-app → notes/app}/src/lib/created-file.ts +0 -0
  323. /package/{notes-app → notes/app}/src/lib/csv-utils.test.ts +0 -0
  324. /package/{notes-app → notes/app}/src/lib/csv-utils.ts +0 -0
  325. /package/{notes-app → notes/app}/src/lib/deepLinkPathToSearch.test.ts +0 -0
  326. /package/{notes-app → notes/app}/src/lib/deepLinkPathToSearch.ts +0 -0
  327. /package/{notes-app → notes/app}/src/lib/draft-storage.test.ts +0 -0
  328. /package/{notes-app → notes/app}/src/lib/draft-storage.ts +0 -0
  329. /package/{notes-app → notes/app}/src/lib/mermaid-render.ts +0 -0
  330. /package/{notes-app → notes/app}/src/lib/postLoginRedirect.test.ts +0 -0
  331. /package/{notes-app → notes/app}/src/lib/postLoginRedirect.ts +0 -0
  332. /package/{notes-app → notes/app}/src/lib/tree-utils.ts +0 -0
  333. /package/{notes-app → notes/app}/src/lib/user-colors.ts +0 -0
  334. /package/{notes-app → notes/app}/src/lib/xlsx-utils.test.ts +0 -0
  335. /package/{notes-app → notes/app}/src/lib/xlsx-utils.ts +0 -0
  336. /package/{notes-app → notes/app}/src/main.tsx +0 -0
  337. /package/{notes-app → notes/app}/src/pages/LoginPage.tsx +0 -0
  338. /package/{notes-app → notes/app}/src/pages/MainPage.insertChildEntry.test.ts +0 -0
  339. /package/{notes-app → notes/app}/src/pages/SettingsPage.tsx +0 -0
  340. /package/{notes-app → notes/app}/src/pages/UserManagementPage.tsx +0 -0
  341. /package/{notes-app → notes/app}/src/styles/globals.css +0 -0
  342. /package/{notes-app → notes/app}/src/types.ts +0 -0
  343. /package/{notes-app → notes/app}/src/vite-env.d.ts +0 -0
  344. /package/{notes-app → notes/app}/tsconfig.json +0 -0
  345. /package/{notes-app → notes/app}/tsconfig.node.json +0 -0
  346. /package/{notes-app → notes/app}/vite.config.js +0 -0
  347. /package/{notes-app → notes/app}/vite.config.ts +0 -0
  348. /package/{notes-app → notes/app}/vitest.config.ts +0 -0
@@ -1,30 +0,0 @@
1
- ## SSOT Update & Question Management Rules (MUST)
2
-
3
- ### Handling Spec Changes
4
- - When the user communicates a new spec, **update the SSOT**
5
- - If the SSOT update contradicts other specs, **ask the user for clarification**
6
-
7
- ### Question Management
8
- - When the user **does not clearly answer** a question (no answer / ambiguous answer), add the question to **`docs/003_requirements/questions.csv`** (path: `{{project.question_list_path}}`)
9
- - CSV columns: `id,category,question,context,answer,spec_file,status`
10
- - Status values:
11
- - `unanswered` — not yet answered
12
- - `answered` — user provided a clear answer
13
- - `spec_reflected` — answer has been reflected in the spec document (hidden in Notes view)
14
- - When a question is answered: update `answer` column → reflect in spec → set status to `spec_reflected`
15
- - Create the file with header row if it does not exist
16
-
17
- ### Implementation Decisions
18
- - When instructed to implement without answers to questions:
19
- - **Apply the "common sense" approach**
20
- - When clear answers or specs are available:
21
- - **Never guess** — implement exactly as specified
22
-
23
- ### Question Template (Use This Format When Asking Questions)
24
- When you need to ask the user a question, structure it as follows:
25
-
26
- 1. **Current understanding**: What you know so far
27
- 2. **Unclear point**: What specifically is ambiguous
28
- 3. **Options**: Available choices (if any)
29
- 4. **Recommendation**: Your suggested approach and why
30
- 5. **Additional info needed**: What would help you decide
@@ -1,39 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> godd-core }}
4
-
5
- {{> ssot-rules }}
6
-
7
- {{> project-context }}
8
-
9
- {{> cogito-grammar }}
10
- {{> cogito-root-core }}
11
- {{> cogito-particle }}
12
- {{> cogito-godd }}
13
- {{> cogito-root-daily }}
14
-
15
- ## Purpose
16
- Create an ADR (Architecture Decision Record) that records design decisions in a form where readers can later reach the same conclusion.
17
- An ADR must explain the **why** so thoroughly that a future reader can independently evaluate whether the decision still holds.
18
-
19
- ## Input
20
- - What to decide (Decision)
21
- - Background (Context)
22
- - Alternatives (Options)
23
-
24
- ## Output
25
- Markdown ADR with the following sections:
26
- - **Title**: Short, descriptive name for the decision
27
- - **Status**: Proposed / Accepted / Deprecated / Superseded
28
- - **Context**: What is the issue? What forces are at play? What constraints exist?
29
- - **Decision**: What was decided and why
30
- - **Alternatives Considered**: For each alternative:
31
- - Description
32
- - Pros and cons
33
- - Why it was not chosen
34
- - **Consequences**: What becomes easier or harder as a result of this decision
35
- - **Trade-offs**: What was sacrificed and what was gained (be explicit)
36
- - **Rollback Plan**: How to reverse this decision if it proves wrong
37
- - **Related Decisions**: Links to related ADRs or Spec documents
38
-
39
- Always include **trade-offs** and **rollback plan** — these are the most valuable parts of an ADR.
@@ -1,34 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> cogito-grammar }}
4
- {{> cogito-root-core }}
5
- {{> cogito-particle }}
6
- {{> cogito-godd }}
7
- {{> cogito-root-dev }}
8
-
9
- {{> ssot-rules }}
10
-
11
- {{> project-context }}
12
-
13
- ## Purpose (Terminal-free operation)
14
- Enable developers to complete the full cycle — from environment setup to implementation, testing, commit, push, and PR creation — simply by requesting in natural language, without ever touching a terminal.
15
-
16
- ## Absolute Rules (Important)
17
- - **Default branch protection**: Before making any code changes, check the current branch. If on the default branch (main/master), **always create a new feature branch first**
18
- - Branch naming: `feat/<slug-or-task-summary>-<YYYYMMDD>` (e.g. `feat/add-auth-20260212`)
19
- - Never commit directly to the default branch
20
- - When **UI implementation is involved**, always separate into **frontend** and **backend branches**
21
- - `feat/<slug>-frontend-<YYYYMMDD>` / `feat/<slug>-backend-<YYYYMMDD>`
22
- - **1 commit = 1 responsibility** (mixed Front/Back commits are prohibited)
23
- - **End-of-work commits**: When development is complete, group changes into logical commit units (by concern: schema, backend, frontend, tests, config, docs) — do NOT make a single monolithic commit
24
- - Humans review **only via GitHub PR diffs**
25
-
26
- ## Canonical References
27
- - Spec: `docs/003_requirements/spec/`
28
- {{#if frontend}}- Frontend quality gate: `{{frontend.build_command}}`
29
- {{/if}}{{#if backend}}- Backend quality gate: `{{quality_gate.backend}}`
30
- {{/if}}
31
-
32
- ## How to proceed (Important)
33
- - **The developer's (human) entry point is the `dev` prompt** (with @references + purpose + completion criteria)
34
- - The procedures and commands in this prompt are **Agent-internal execution methods** (reference only); humans do not need to memorize or execute them
@@ -1,36 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> cogito-grammar }}
4
- {{> cogito-root-core }}
5
- {{> cogito-particle }}
6
- {{> cogito-godd }}
7
- {{> cogito-root-daily }}
8
-
9
- {{> ssot-rules }}
10
-
11
- {{> project-context }}
12
-
13
- ## Purpose
14
- Produce a consistent report at task completion, following the template structure.
15
-
16
- ## Output
17
- Fill in the following headings concisely, leaving no blanks (keep code blocks minimal).
18
-
19
- ### Change Summary
20
- -
21
-
22
- ### Impact Scope
23
- {{#if frontend}}- Frontend(`{{frontend.root_dir}}`):
24
- {{/if}}{{#if backend}}- Backend(`{{backend.root_dir}}`):
25
- {{/if}}- Other:
26
-
27
- ### Verification Performed
28
- - Command/Result:
29
-
30
- ### Compatibility / Migration
31
- - Breaking changes: Yes/No
32
- - Migration steps:
33
- - Rollback:
34
-
35
- ### Remaining Risks / Open Items
36
- -
@@ -1,37 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> godd-core }}
4
-
5
- {{> ssot-rules }}
6
-
7
- {{> project-context }}
8
-
9
- {{> cogito-grammar }}
10
- {{> cogito-root-core }}
11
- {{> cogito-particle }}
12
- {{> cogito-godd }}
13
- {{> cogito-root-daily }}
14
-
15
- ## Purpose
16
- From the changes, comprehensively identify all documentation updates needed and draft the diffs.
17
- Documentation must stay in sync with implementation — stale docs are worse than no docs.
18
-
19
- ## Input
20
- - Change details (target files / behavior diff)
21
- - Reason for change (purpose / completion criteria)
22
-
23
- ## Document Types to Check
24
- Review whether each of these needs updating:
25
- - **Spec documents**: Feature specs, API specs, DB specs
26
- - **README files**: Project root and module-level READMEs
27
- - **Configuration docs**: Environment variables, setup instructions
28
- - **Tech stack docs**: Dependencies, versions, architecture decisions
29
- - **Operational docs**: Deployment, migration, rollback procedures
30
- - **SSOT documents**: Spec index, operational rules, question list
31
- - **ADR (Architecture Decision Records)**: If the change involves a design decision
32
-
33
- ## Output
34
- 1. **List of documents to update** (file paths, with priority)
35
- 2. **Addition/modification points** for each document (bullet list with specific changes)
36
- 3. **Broken-reference check** items (links / paths that may be invalidated by the change)
37
- 4. **New documents needed** (if the change introduces a new feature/module with no documentation)
@@ -1,52 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> godd-core }}
4
-
5
- {{> ssot-rules }}
6
-
7
- {{> project-context }}
8
-
9
- {{> cogito-grammar }}
10
- {{> cogito-root-core }}
11
- {{> cogito-particle }}
12
- {{> cogito-godd }}
13
- {{> cogito-root-dev }}
14
-
15
- ## Purpose
16
- Check the "minimum quality gate" before submitting changes and identify any missing perspectives.
17
- This is the **last line of defense** — be thorough and systematic.
18
-
19
- ## Checklist (Evaluate Every Item)
20
-
21
- - **Spec alignment**: Does the Spec need updates? If gaps exist, propose additions. If Spec is missing for the change, flag it.
22
- - **Impact scope**: Has the impact been analyzed? Are all affected modules identified?
23
- - **Test plan**: Is the test plan documented? Does it cover boundary values and error cases?
24
- - **Compatibility/Migration**: If breaking changes exist, is migration/rollback documented?
25
- - **Tests (highest priority)**: Continue improving until **API tests/E2E tests pass** within available test infrastructure
26
- - If unable to run tests: document the **reason**, **alternative verification**, and **remaining risks**
27
- - Test priority: unit → integration → e2e
28
- {{#if frontend}}
29
- - **Frontend (if changed)**: Run `{{frontend.build_command}}` — must pass
30
- {{/if}}
31
- {{#if backend}}
32
- - **Backend (if changed)**: Minimal backend verification (startup / main API endpoints respond)
33
- {{/if}}
34
- - **Security**: Ensure secrets are not exposed in logs, exceptions, or UI
35
- - **SSOT consistency**: Are all SSOT documents (Spec, operational rules) still consistent after this change?
36
- - **Commit hygiene**: 1 commit = 1 responsibility? No Front/Back mixed commits?
37
-
38
- ## Output
39
- For each checklist item, report:
40
- - **Status**: PASS / FAIL / N/A
41
- - **Details**: What was checked, what was found
42
- - **Action needed**: If FAIL, what needs to be fixed
43
-
44
- {{#if frontend.mindset}}
45
- ## Frontend Review Criteria
46
- {{{frontend.mindset}}}
47
- {{/if}}
48
-
49
- {{#if backend.mindset}}
50
- ## Backend Review Criteria
51
- {{{backend.mindset}}}
52
- {{/if}}
@@ -1,96 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> godd-core }}
4
-
5
- {{> ssot-rules }}
6
-
7
- {{> project-context }}
8
-
9
- {{> cogito-grammar }}
10
- {{> cogito-root-core }}
11
- {{> cogito-particle }}
12
- {{> cogito-godd }}
13
- {{> cogito-root-dev }}
14
-
15
- ## Purpose
16
- Split changes into **proper granularity (1 commit = 1 responsibility)** and commit them with **rule-compliant commit messages**. The Agent handles the full flow: propose → confirm → execute.
17
-
18
- ## Auto-confirm Mode
19
- {{#if auto_confirm}}
20
- **auto_confirm is ENABLED** — Skip user approval for the commit plan. Execute immediately after creating the plan and report results afterward.
21
- {{else}}
22
- **auto_confirm is DISABLED (default)** — Wait for user approval before executing the commit plan.
23
- {{/if}}
24
-
25
- ## Rules (1 commit = 1 responsibility)
26
-
27
- ### Hard Scope (mixing these in a single commit is NG)
28
- - `frontend`: `frontend/**`
29
- - `backend`: `backend/**`
30
- - `repo-root`: Everything else
31
-
32
- ### Soft Scope (can be included in the same commit)
33
- - `docs`: `docs/**`
34
- - `scripts`: `scripts/**`
35
-
36
- Example: `frontend + docs` is OK, `frontend + backend` is NG.
37
-
38
- ### Commit Message Rules
39
- - **Subject (line 1)**: Max 50 characters, start with lowercase English verb
40
- - Prefixes: `add` / `update` / `fix` / `refactor` / `remove` / `docs` / `chore` / `test`
41
- - Example: `add user authentication endpoint`
42
- - Example: `fix validation error on login form`
43
- - **Blank line**
44
- - **Body**: May be in the project's working language. Include:
45
- - **Why**: Why this change is needed (1-2 lines)
46
- - **What**: What was changed (bullet list)
47
- - **Impact**: Scope of impact (required for breaking changes)
48
-
49
- ## Agent Steps (MUST)
50
-
51
- ### Step 1: Review All Changes
52
- 1. Run `git status` to list changed files (staged / unstaged / untracked)
53
- 2. Run `git diff` for unstaged diffs
54
- 3. Run `git diff --cached` for staged diffs
55
- - **If no changes**: Report "No changes to commit" and exit
56
-
57
- ### Step 2: Create Commit Plan by Responsibility
58
- 1. Classify changed files by **hard scope**:
59
- - `frontend/**` → frontend group
60
- - `backend/**` → backend group
61
- - Other → repo-root group
62
- 2. Within each group, further split by **logical responsibility**:
63
- - Same feature/purpose → group into one commit
64
- - Different features → separate commits
65
- - `docs` / `scripts` may be included with their related hard scope commit
66
- 3. Create a **commit plan** (what goes into which commit, in what order)
67
-
68
- ### Step 3: Present Plan and Confirm
69
- 1. Present the commit plan to the user:
70
- ```
71
- Commit Plan:
72
- 1. [scope] <proposed commit message>
73
- - Files: file1, file2, ...
74
- 2. [scope] <proposed commit message>
75
- - Files: file3, file4, ...
76
- ```
77
- {{#if auto_confirm}}
78
- 2. **Auto-confirm enabled**: Skip approval and proceed directly to Step 4
79
- {{else}}
80
- 2. Wait for user approval
81
- - If modifications are requested, revise and re-present
82
- {{/if}}
83
-
84
- ### Step 4: Execute Commits
85
- 1. For each commit in the plan:
86
- - `git add <target files>` to stage
87
- - `git diff --cached --stat` to verify staged content
88
- - `git commit -m "<commit message>"` to commit
89
- 2. After each commit, verify with `git log --oneline -1`
90
- 3. After all commits, show `git log --oneline -<commit count>`
91
-
92
- ## Output
93
- - **Commit plan**: Responsibility split and message proposals (for user confirmation)
94
- - **Execution result**: Each commit hash and message
95
- - **Final state**: `git status` summary (any remaining uncommitted changes)
96
- - **Warnings** (if applicable): Hard scope mixing detected, oversized commits
@@ -1,127 +0,0 @@
1
- {{> ssot-header }}
2
-
3
- {{> godd-core }}
4
-
5
- {{> ssot-rules }}
6
-
7
- {{> project-context }}
8
-
9
- {{> cogito-grammar }}
10
- {{> cogito-root-core }}
11
- {{> cogito-particle }}
12
- {{> cogito-godd }}
13
- {{> cogito-root-dev }}
14
-
15
- ## Purpose
16
- This is the **canonical development entry prompt** that enables an Agent to automatically complete the following when a developer (human) simply **makes a request in natural language**.
17
-
18
- - Environment/prerequisite check (preflight)
19
- - Post-change quality gate (quality-gate)
20
- - PR body generation (template-compliant, fact-based)
21
-
22
- ## Input
23
- - **Request (what you want to do)**
24
- - **Completion criteria (measurable)**
25
-
26
- ### Optional (fill in what you can)
27
- - slug (ticket/short identifier)
28
- - Constraints
29
- - Integration test (DB): `yes` | `no` | `unknown`
30
- - Post-integration DB cleanup: `down-volumes` | `down` | `none`
31
-
32
- ## Output
33
- - **Execution log**: preflight/quality-gate results (pass/fail, log file path)
34
- - **Change summary**: What, why, where
35
- - **Test results**: Commands executed and results
36
- - **PR body (final)**: Markdown with all template fields filled
37
- - **PR creation metadata**: base/head/title/body (for GitHub MCP PR creation)
38
-
39
- ## Rules (SSOT)
40
- - Spec is the SSOT for specifications. If ambiguous, ask questions first to clarify
41
- {{#if backend}}- Backend dependency direction: {{backend.dependency_direction}}{{/if}}
42
- - Front separates UI and side effects (into hooks/services)
43
- {{#if frontend}}- At minimum for frontend changes, run `{{frontend.build_command}}`{{/if}}
44
- - Do not edit CI/CD configurations
45
- - **Tests run inside Docker containers** — use `docker compose --profile test run --rm <service>-test` for each project. Never run tests directly on the host
46
-
47
- ## Branch Management (Mandatory — execute BEFORE any code changes)
48
- 1. Run `git branch --show-current` to check the current branch
49
- 2. Run `git remote show origin | grep 'HEAD branch'` (or equivalent) to identify the default branch (e.g. `main`, `master`)
50
- 3. **If the current branch IS the default branch**:
51
- - Create a new feature branch and switch to it **before making any changes**
52
- - Branch naming convention: `feat/<slug-or-task-summary>-<YYYYMMDD>`
53
- - If `slug` is provided → use it (e.g. `feat/add-auth-20260212`)
54
- - If no slug → derive a short kebab-case summary from the task description (max 5 words, e.g. `feat/fix-login-validation-20260212`)
55
- - Date is the current date in `YYYYMMDD` format
56
- - Command: `git checkout -b feat/<branch-name>`
57
- - Inform the developer that a new branch was created and why
58
- 4. **If already on a feature branch** → continue on the current branch (no action needed)
59
-
60
- ## Agent Workflow (Required — Follow This Exact Sequence)
61
-
62
- ### Phase 0: Branch Check
63
- Execute "Branch Management" above — always first, before any code changes.
64
-
65
- ### Phase 1: Pre-work Analysis (MUST — Do Not Skip)
66
- Before writing any code, analyze and present to the user:
67
-
68
- 1. **Goal & completion criteria** — Restate the request in measurable terms
69
- 2. **Existing structure & constraints** — Review relevant code, patterns, and dependencies
70
- 3. **Impact scope & risks** — Which modules/layers are affected? What could break?
71
- 4. **Implementation approach** — Choose and justify your approach (standard / conservative / bold)
72
- 5. **Open questions** — If anything is unclear, ask NOW (do not proceed with assumptions)
73
-
74
- If open questions exist, **stop and present them to the user** using the Question Template before continuing.
75
-
76
- ### Phase 2: Spec & Test Design (ATDD — MUST for new features)
77
- 1. Verify/supplement Spec (create/update if needed)
78
- 2. **Define acceptance criteria** in Given-When-Then format for the requested change
79
- 3. **Write acceptance tests FIRST** (Red phase — tests should fail because the feature doesn't exist yet)
80
- - For bug fixes: write a reproduction test first
81
- - For refactoring: ensure existing tests cover the area, or add characterization tests first
82
-
83
- ### Phase 3: Implementation
84
- 1. Impact analysis → Split Front/Back branches/PRs if necessary
85
- 2. Run preflight (opt-in DB→API→migration→integration if needed, cleanup policy per SSOT)
86
- 3. Implement (Self-documenting code, minimal Why comments)
87
- - Implement failure paths first, then happy path
88
- - Apply early returns to keep nesting shallow
89
- - 1 commit = 1 responsibility — keep changes focused
90
- 4. **Make acceptance tests pass** (Green phase)
91
- 5. Refactor if needed — tests remain as regression suite
92
-
93
- ### Phase 4: Quality Assurance
94
- 1. Run quality-gate
95
- {{#if quality_gate}}{{#if quality_gate.frontend}} - Frontend: `{{quality_gate.frontend}}`
96
- {{/if}}{{#if quality_gate.backend}} - Backend: `{{quality_gate.backend}}`
97
- {{/if}}{{/if}}
98
- 2. **Continue fixing until all tests pass** — do not give up
99
- 3. If tests cannot run: document reason, alternative verification, and remaining risks
100
-
101
- ### Phase 5: Commit & PR
102
- 1. Follow "End-of-Work Commit Strategy" below
103
- 2. Generate PR body (fully template-compliant, fact-based)
104
- 3. Prepare PR creation metadata for GitHub MCP
105
-
106
- ## End-of-Work Commit Strategy (Mandatory — execute AFTER implementation is complete)
107
- When all implementation and quality-gate checks are done:
108
- 1. Run `git status` and `git diff` to review all changes
109
- 2. **Group changes into logical commit units** (1 commit = 1 responsibility):
110
- - Separate by concern: schema/migration, backend logic, frontend UI, tests, config, docs
111
- - Each commit should be independently reviewable and revertable
112
- - Do NOT create a single monolithic commit for all changes
113
- 3. For each logical unit:
114
- - Stage only the relevant files: `git add <specific-files>`
115
- - Write a clear commit message (short first line, body with reason/impact/verification)
116
- 4. Verify with `git log --oneline -n <N>` that the commit history is clean and readable
117
- 5. Inform the developer of the commits created and their scope
118
-
119
- {{#if frontend.mindset}}
120
- ## Frontend Mindset
121
- {{{frontend.mindset}}}
122
- {{/if}}
123
-
124
- {{#if backend.mindset}}
125
- ## Backend Mindset
126
- {{{backend.mindset}}}
127
- {{/if}}
@@ -1,101 +0,0 @@
1
- {{> ssot-header }}
2
- {{> godd-core }}
3
- {{> ssot-rules }}
4
- {{> project-context }}
5
-
6
- ## Purpose
7
-
8
- プロジェクトに `docs/` フォルダ構造をテンプレートから生成する。
9
- GoDD Notes(テキストノート / テーブルノート / drawio)で閲覧・編集可能なドキュメント初期構造を作成する。
10
-
11
- ## docs/ フォルダ構成(テンプレート)
12
-
13
- 以下の構造を生成すること:
14
-
15
- ```
16
- docs/
17
- ├── README.md # docs 全体の入口・構成説明
18
- ├── 001_project/
19
- │ ├── README.md # プロジェクト概要(背景・目的・プロダクト・システム構成・用語)
20
- │ ├── pages.csv # 各プロダクトの画面一覧(テーブルノート)と各画面の概要
21
- │ ├── features.csv # 画面ごとの機能一覧(テーブルノート)と各機能の概要
22
- │ └── tasks.csv # 開発チームからの質問リストと要件定義チームからの要望一覧
23
- ├── 002_business_flow/
24
- │ ├── README.md # ビジネスフロー概要、フォルダ内で整理するビジネスフロー一覧
25
- │ ├── business_flow_name.template.md # 特定業務のビジネスフローを解説
26
- │ └── business_flow_name.template.drawio # 特定業務のビジネスフローを図示
27
- ├── 003_requirements/
28
- │ ├── README.md # フォルダの説明、フォルダ内で整理するrequirements一覧
29
- │ ├── requirements.template.md # 概要、背景、ユーザーストーリー、画面要件、機能要件、機能詳細、非機能要件、備考
30
- │ ├── <Product Name>/ # 管理画面、ユーザー向け画面などプロダクトごとにフォルダ作成
31
- │ │ └── <feature_name>.md # 機能別の要件定義
32
- │ └── spec/ # 仕様 SSOT(API仕様、インフラ仕様、言語仕様等)
33
- ├── 004_pages/ # 画面設計
34
- │ ├── README.md # フォルダの説明
35
- │ └── app/ # 画面のURLパスを整理するため、Reactの app/ ディレクトリを配置
36
- │ ├── admin/
37
- │ │ └── corporations/
38
- │ │ └── requirements.md # 画面ごとの画面要件を記載
39
- │ └── users/
40
- ├── 005_architecture/ # 開発をするにあたっての実際の設計(インフラ、DB、API、各機能の設計)
41
- │ ├── README.md # フォルダの説明
42
- │ ├── stacks/ # 技術スタック
43
- │ ├── api/ # APIのSwaggerなど
44
- │ ├── db/ # DB設計(ER図など)
45
- │ ├── infra/ # インフラアーキテクチャの設計
46
- │ └── features/ # 各機能の設計
47
- │ └── feature.template.md # 機能設計書、データフロー、DB設計などを記載
48
- ├── 006_development_workflow/ # 開発のルールやワークフローなどについて
49
- │ ├── README.md # フォルダの説明
50
- │ ├── git.md # Gitルール
51
- │ └── workflow.md # 開発ワークフロー
52
- └── 007_guides/ # ガイド集
53
- ├── README.md # フォルダの説明
54
- ├── godd_notes_getting_started.md # GoDD Notes 使い始め方(初期セットアップ/ログイン/編集/Issue・PR作成)
55
- ├── godd_notes_usage.md # GoDD Notesの利用方法(編集操作リファレンス)
56
- ├── release-procedure.md # canary 自動リリース・production 手動リリースの手順
57
- ├── ci-cd-guide.md # CI/CDパイプライン全体像・主要ワークフロー・手動実行・失敗確認
58
- ├── godd_usage.md # GoDD のコマンド一覧、ツール一覧、利用方法
59
- ├── setup_godd.md # GoDD の始め方
60
- ├── setup_godd_notes.md # GoDD Notesの構築方法(ローカル構築〜デプロイ)
61
- ├── setup_infra.md # インフラのCI/CDの構築ガイド
62
- └── setup_local_environment.md # ローカル環境構築ガイド
63
- ```
64
-
65
- ## ルール
66
-
67
- 1. プロジェクトスキャン結果と入力パラメータ(プロジェクト名、ロール、画面ID)を使って各ファイルの内容を生成
68
- 2. CSV ファイルはヘッダー行 + サンプル行を含める
69
- 3. README.md は Mermaid ダイアグラムを含める(適切な場合)
70
- 4. 既に `docs/` が存在する場合は既存構造を尊重し、不足分のみ追加
71
- 5. 各ファイルの先頭にファイルの目的を1行コメントで記載
72
- 6. `007_guides/godd_notes_getting_started.md` は「初期セットアップ・ログイン・ファイル編集・Issue/PR 作成」の 4 ステップをカバーし、GoDD Notes を初めて使うユーザーが迷わず操作できる導線を提供する
73
- 7. `007_guides/release-procedure.md` は「canary 自動リリース(main マージ時)」と「production 手動リリース(Actions 手動実行)」の両フローを説明し、必要な Secrets・確認コマンド・トラブルシューティングを含める
74
- 8. `007_guides/ci-cd-guide.md` は「CI/CD 全体像・主要ワークフロー一覧・手動実行手順・失敗時の確認ポイント」を含め、PR から本番デプロイまでのフローを一覧できる
75
-
76
- ## CSV ヘッダー定義
77
-
78
- ### tasks.csv
79
- ```
80
- id,type,product,category,subject,detail,created_by,created_at,priority,deadline,status,issue,remarks
81
- ```
82
-
83
- ### features.csv
84
- ```
85
- 機能ID,機能名,概要,phase,優先度,ステータス
86
- ```
87
-
88
- ### pages.csv
89
- ```
90
- 画面ID,画面名,概要,提供フェーズ,関連機能ID,ステータス
91
- ```
92
-
93
- ### tables.csv
94
- ```
95
- テーブル名,カラム名,型,制約,説明
96
- ```
97
-
98
- ## 出力
99
-
100
- - 生成した全ファイルのパスと内容
101
- - 生成理由の簡潔な説明
@@ -1,51 +0,0 @@
1
- {{> ssot-header }}
2
- {{> godd-core }}
3
- {{> ssot-rules }}
4
- {{> project-context }}
5
-
6
- ## Purpose
7
-
8
- コード変更後に `docs/` 内の関連ドキュメント(MD/CSV)を同期・更新する。
9
- 変更内容から影響するドキュメントを特定し、更新差分を提案する。
10
-
11
- ## 対象ドキュメント構造
12
-
13
- ```
14
- docs/
15
- ├── 001_project/ # プロジェクト概要、機能要件、画面要件
16
- ├── 002_business_flow/ # ビジネスフロー
17
- ├── 003_requirements/ # 要件定義
18
- ├── 004_pages/ # 画面設計
19
- ├── 005_architecture/ # 詳細設計(インフラ/DB/API/機能別)
20
- ├── 006_development_workflow/ # 開発ルール・ワークフロー
21
- └── 007_guides/ # 利用・構築・運用ガイド
22
- ```
23
-
24
- ## ルール
25
-
26
- 1. 変更内容を分析し、影響を受ける docs/ セクション(001-007)を特定する
27
- 2. 各セクションの既存ドキュメントを確認し、更新が必要な箇所を特定する
28
- 3. MD ファイルの更新差分を提案する(追記/修正ポイントを明確に)
29
- 4. CSV ファイルに行の追加/更新が必要な場合は具体的な行内容を提示する
30
- 5. Mermaid ダイアグラムが古くなっている場合は更新版を提案する
31
- 6. **既存の内容を壊さない**ように差分のみ提案する
32
-
33
- ## 影響マッピング
34
-
35
- | コード変更種別 | 影響するセクション |
36
- |---|---|
37
- | 新機能追加 | 001 (features.csv), 003 (requirements), 006 (features/) |
38
- | API 変更 | 005 (api/), 003 (requirements) |
39
- | DB スキーマ変更 | 005 (db/) |
40
- | 画面追加/変更 | 001 (pages.csv), 004 (app/) |
41
- | インフラ変更 | 005 (infra/) |
42
- | アーキテクチャ変更 | 005 (architecture.md) |
43
- | 開発フロー変更 | 006 (workflow.md, git.md) |
44
- | ビジネスフロー変更 | 002 (business_flow/) |
45
-
46
- ## 出力
47
-
48
- 1. 影響を受けるドキュメント一覧(ファイルパス)
49
- 2. 各ドキュメントの追記/修正ポイント(箇条書き)
50
- 3. 具体的な更新内容(差分形式)
51
- 4. 参照切れチェック結果