sinapse-ai 1.16.0 → 1.19.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 (354) hide show
  1. package/.claude/hooks/doc-first-gate.cjs +156 -0
  2. package/.claude/hooks/enforce-story-gate.cjs +6 -2
  3. package/.claude/rules/documentation-first.md +6 -0
  4. package/.claude/rules/hook-governance.md +1 -0
  5. package/.sinapse-ai/constitution.md +3 -3
  6. package/.sinapse-ai/core/atlas/atlas-data.js +278 -0
  7. package/.sinapse-ai/core/atlas/flows-pt.js +253 -0
  8. package/.sinapse-ai/core/atlas/flows.js +266 -0
  9. package/.sinapse-ai/core/atlas/index.js +62 -0
  10. package/.sinapse-ai/core/atlas/render-html.js +216 -0
  11. package/.sinapse-ai/core/atlas/render-markdown.js +313 -0
  12. package/.sinapse-ai/core/atlas/render-research-card.js +164 -0
  13. package/.sinapse-ai/core/code-intel/registry-syncer.js +5 -3
  14. package/.sinapse-ai/core/doctor/checks/agent-memory.js +7 -5
  15. package/.sinapse-ai/core/doctor/checks/claude-md.js +13 -0
  16. package/.sinapse-ai/core/doctor/checks/constitution-consistency.js +1 -0
  17. package/.sinapse-ai/core/doctor/checks/hooks-claude-count.js +11 -0
  18. package/.sinapse-ai/core/doctor/checks/settings-json.js +16 -2
  19. package/.sinapse-ai/core/doctor/index.js +27 -0
  20. package/.sinapse-ai/core/execution/build-orchestrator.js +192 -8
  21. package/.sinapse-ai/core/external-executors/delegate-cli.js +6 -2
  22. package/.sinapse-ai/core/health-check/checks/project/constitution-consistency.js +2 -1
  23. package/.sinapse-ai/core/ideation/ideation-engine.js +10 -8
  24. package/.sinapse-ai/core/mcp/config-migrator.js +8 -5
  25. package/.sinapse-ai/core/mcp/global-config-manager.js +4 -1
  26. package/.sinapse-ai/core/mcp/symlink-manager.js +6 -3
  27. package/.sinapse-ai/core/orchestration/brownfield-handler.js +5 -4
  28. package/.sinapse-ai/core/orchestration/build-command.js +136 -0
  29. package/.sinapse-ai/core/orchestration/doc-first-resolver.js +322 -0
  30. package/.sinapse-ai/core/orchestration/executors/epic-4-executor.js +3 -0
  31. package/.sinapse-ai/core/orchestration/gate-evaluator.js +58 -9
  32. package/.sinapse-ai/core/orchestration/route-command.js +97 -0
  33. package/.sinapse-ai/core/orchestration/session-state.js +19 -2
  34. package/.sinapse-ai/core/orchestration/terminal-spawner.js +24 -1
  35. package/.sinapse-ai/core/orchestration/workflow-executor.js +102 -3
  36. package/.sinapse-ai/core/quality-gates/focus-area-recommender.js +15 -11
  37. package/.sinapse-ai/core/registry/build-registry.js +3 -2
  38. package/.sinapse-ai/core/synapse/scripts/generate-constitution.js +1 -0
  39. package/.sinapse-ai/core/synapse/utils/atomic-write.js +34 -9
  40. package/.sinapse-ai/core-config.yaml +5 -1
  41. package/.sinapse-ai/data/capability-detection.js +3 -3
  42. package/.sinapse-ai/data/entity-registry.yaml +288 -90
  43. package/.sinapse-ai/data/mcp-discipline.js +1 -1
  44. package/.sinapse-ai/data/mcp-tool-examples.yaml +8 -8
  45. package/.sinapse-ai/data/tok2-validation.js +1 -1
  46. package/.sinapse-ai/data/tool-registry.yaml +4 -3
  47. package/.sinapse-ai/development/agents/snps-orqx.md +14 -5
  48. package/.sinapse-ai/development/scripts/migrate-task-to-v2.js +1 -1
  49. package/.sinapse-ai/development/scripts/validate-task-v2.js +67 -4
  50. package/.sinapse-ai/development/tasks/advanced-elicitation.md +3 -3
  51. package/.sinapse-ai/development/tasks/analyst-facilitate-brainstorming.md +3 -3
  52. package/.sinapse-ai/development/tasks/analyze-framework.md +1 -8
  53. package/.sinapse-ai/development/tasks/analyze-performance.md +1 -8
  54. package/.sinapse-ai/development/tasks/apply-qa-fixes.md +3 -3
  55. package/.sinapse-ai/development/tasks/architect-analyze-impact.md +3 -3
  56. package/.sinapse-ai/development/tasks/audit-codebase.md +1 -8
  57. package/.sinapse-ai/development/tasks/audit-tailwind-config.md +1 -4
  58. package/.sinapse-ai/development/tasks/audit-utilities.md +1 -8
  59. package/.sinapse-ai/development/tasks/bootstrap-shadcn-library.md +3 -3
  60. package/.sinapse-ai/development/tasks/brownfield-create-epic.md +3 -3
  61. package/.sinapse-ai/development/tasks/brownfield-create-story.md +3 -3
  62. package/.sinapse-ai/development/tasks/build-component.md +2 -5
  63. package/.sinapse-ai/development/tasks/calculate-roi.md +3 -3
  64. package/.sinapse-ai/development/tasks/ci-cd-configuration.md +1 -1
  65. package/.sinapse-ai/development/tasks/cleanup-utilities.md +3 -3
  66. package/.sinapse-ai/development/tasks/collaborative-edit.md +3 -3
  67. package/.sinapse-ai/development/tasks/compose-molecule.md +2 -5
  68. package/.sinapse-ai/development/tasks/consolidate-patterns.md +3 -3
  69. package/.sinapse-ai/development/tasks/correct-course.md +3 -3
  70. package/.sinapse-ai/development/tasks/create-brownfield-story.md +2 -5
  71. package/.sinapse-ai/development/tasks/create-deep-research-prompt.md +2 -5
  72. package/.sinapse-ai/development/tasks/create-doc.md +3 -6
  73. package/.sinapse-ai/development/tasks/create-next-story.md +4 -8
  74. package/.sinapse-ai/development/tasks/create-suite.md +2 -5
  75. package/.sinapse-ai/development/tasks/create-task.md +2 -5
  76. package/.sinapse-ai/development/tasks/create-workflow.md +2 -5
  77. package/.sinapse-ai/development/tasks/db-analyze-hotpaths.md +1 -8
  78. package/.sinapse-ai/development/tasks/db-apply-migration.md +1 -8
  79. package/.sinapse-ai/development/tasks/db-bootstrap.md +1 -8
  80. package/.sinapse-ai/development/tasks/db-domain-modeling.md +1 -8
  81. package/.sinapse-ai/development/tasks/db-dry-run.md +1 -8
  82. package/.sinapse-ai/development/tasks/db-env-check.md +1 -8
  83. package/.sinapse-ai/development/tasks/db-explain.md +1 -8
  84. package/.sinapse-ai/development/tasks/db-impersonate.md +1 -8
  85. package/.sinapse-ai/development/tasks/db-load-csv.md +1 -8
  86. package/.sinapse-ai/development/tasks/db-policy-apply.md +1 -8
  87. package/.sinapse-ai/development/tasks/db-rls-audit.md +1 -8
  88. package/.sinapse-ai/development/tasks/db-rollback.md +1 -8
  89. package/.sinapse-ai/development/tasks/db-run-sql.md +1 -8
  90. package/.sinapse-ai/development/tasks/db-schema-audit.md +1 -8
  91. package/.sinapse-ai/development/tasks/db-seed.md +1 -8
  92. package/.sinapse-ai/development/tasks/db-smoke-test.md +1 -8
  93. package/.sinapse-ai/development/tasks/db-snapshot.md +1 -8
  94. package/.sinapse-ai/development/tasks/db-squad-integration.md +1 -8
  95. package/.sinapse-ai/development/tasks/db-supabase-setup.md +1 -8
  96. package/.sinapse-ai/development/tasks/db-verify-order.md +1 -8
  97. package/.sinapse-ai/development/tasks/deprecate-component.md +3 -3
  98. package/.sinapse-ai/development/tasks/dev-apply-qa-fixes.md +3 -3
  99. package/.sinapse-ai/development/tasks/dev-backlog-debt.md +3 -3
  100. package/.sinapse-ai/development/tasks/dev-develop-story.md +1 -1
  101. package/.sinapse-ai/development/tasks/dev-improve-code-quality.md +3 -3
  102. package/.sinapse-ai/development/tasks/dev-optimize-performance.md +3 -3
  103. package/.sinapse-ai/development/tasks/dev-suggest-refactoring.md +3 -3
  104. package/.sinapse-ai/development/tasks/dev-validate-next-story.md +3 -3
  105. package/.sinapse-ai/development/tasks/document-project.md +3 -3
  106. package/.sinapse-ai/development/tasks/environment-bootstrap.md +0 -4
  107. package/.sinapse-ai/development/tasks/execute-checklist.md +3 -3
  108. package/.sinapse-ai/development/tasks/export-design-tokens-dtcg.md +3 -3
  109. package/.sinapse-ai/development/tasks/extend-pattern.md +1 -8
  110. package/.sinapse-ai/development/tasks/extract-tokens.md +3 -3
  111. package/.sinapse-ai/development/tasks/facilitate-brainstorming-session.md +1 -1
  112. package/.sinapse-ai/development/tasks/generate-ai-frontend-prompt.md +2 -5
  113. package/.sinapse-ai/development/tasks/generate-documentation.md +2 -5
  114. package/.sinapse-ai/development/tasks/generate-migration-strategy.md +2 -5
  115. package/.sinapse-ai/development/tasks/generate-shock-report.md +2 -5
  116. package/.sinapse-ai/development/tasks/github-devops-github-pr-automation.md +3 -3
  117. package/.sinapse-ai/development/tasks/github-devops-repository-cleanup.md +3 -3
  118. package/.sinapse-ai/development/tasks/github-devops-version-management.md +3 -3
  119. package/.sinapse-ai/development/tasks/improve-self.md +1 -16
  120. package/.sinapse-ai/development/tasks/index-docs.md +1 -4
  121. package/.sinapse-ai/development/tasks/init-project-status.md +1 -7
  122. package/.sinapse-ai/development/tasks/integrate-squad.md +3 -3
  123. package/.sinapse-ai/development/tasks/kb-mode-interaction.md +3 -3
  124. package/.sinapse-ai/development/tasks/learn-patterns.md +3 -3
  125. package/.sinapse-ai/development/tasks/modify-agent.md +1 -8
  126. package/.sinapse-ai/development/tasks/modify-task.md +1 -8
  127. package/.sinapse-ai/development/tasks/modify-workflow.md +1 -8
  128. package/.sinapse-ai/development/tasks/po-backlog-add.md +3 -3
  129. package/.sinapse-ai/development/tasks/po-manage-story-backlog.md +3 -3
  130. package/.sinapse-ai/development/tasks/po-pull-story-from-clickup.md +3 -3
  131. package/.sinapse-ai/development/tasks/po-pull-story.md +3 -3
  132. package/.sinapse-ai/development/tasks/po-stories-index.md +3 -3
  133. package/.sinapse-ai/development/tasks/po-sync-story-to-clickup.md +3 -3
  134. package/.sinapse-ai/development/tasks/po-sync-story.md +3 -3
  135. package/.sinapse-ai/development/tasks/pr-automation.md +1 -1
  136. package/.sinapse-ai/development/tasks/propose-modification.md +3 -3
  137. package/.sinapse-ai/development/tasks/qa-backlog-add-followup.md +1 -8
  138. package/.sinapse-ai/development/tasks/qa-create-fix-request.md +1 -4
  139. package/.sinapse-ai/development/tasks/qa-gate.md +1 -8
  140. package/.sinapse-ai/development/tasks/qa-generate-tests.md +1 -8
  141. package/.sinapse-ai/development/tasks/qa-nfr-assess.md +1 -8
  142. package/.sinapse-ai/development/tasks/qa-review-proposal.md +1 -8
  143. package/.sinapse-ai/development/tasks/qa-review-story.md +1 -8
  144. package/.sinapse-ai/development/tasks/qa-risk-profile.md +1 -8
  145. package/.sinapse-ai/development/tasks/qa-run-tests.md +1 -8
  146. package/.sinapse-ai/development/tasks/qa-test-design.md +1 -8
  147. package/.sinapse-ai/development/tasks/qa-trace-requirements.md +1 -8
  148. package/.sinapse-ai/development/tasks/release-management.md +1 -1
  149. package/.sinapse-ai/development/tasks/security-audit.md +1 -4
  150. package/.sinapse-ai/development/tasks/security-scan.md +1 -4
  151. package/.sinapse-ai/development/tasks/setup-database.md +2 -11
  152. package/.sinapse-ai/development/tasks/setup-design-system.md +2 -11
  153. package/.sinapse-ai/development/tasks/shard-doc.md +3 -3
  154. package/.sinapse-ai/development/tasks/sm-create-next-story.md +3 -3
  155. package/.sinapse-ai/development/tasks/spec-gather-requirements.md +11 -0
  156. package/.sinapse-ai/development/tasks/sync-documentation.md +1 -6
  157. package/.sinapse-ai/development/tasks/tailwind-upgrade.md +3 -3
  158. package/.sinapse-ai/development/tasks/test-as-user.md +3 -3
  159. package/.sinapse-ai/development/tasks/undo-last.md +2 -5
  160. package/.sinapse-ai/development/tasks/update-manifest.md +1 -8
  161. package/.sinapse-ai/development/tasks/ux-create-wireframe.md +1 -1
  162. package/.sinapse-ai/development/tasks/ux-ds-scan-artifact.md +3 -3
  163. package/.sinapse-ai/development/tasks/ux-user-research.md +3 -3
  164. package/.sinapse-ai/development/tasks/validate-next-story.md +1 -8
  165. package/.sinapse-ai/development/templates/approval-table.md +106 -0
  166. package/.sinapse-ai/development/templates/chrome-brain/scripts/chrome-ensure.cjs +1 -1
  167. package/.sinapse-ai/development/workflows/spec-pipeline.yaml +1 -0
  168. package/.sinapse-ai/git-hooks/post-commit +0 -0
  169. package/.sinapse-ai/git-hooks/pre-commit +0 -0
  170. package/.sinapse-ai/git-hooks/pre-push +0 -0
  171. package/.sinapse-ai/infrastructure/scripts/changelog-generator.js +5 -1
  172. package/.sinapse-ai/infrastructure/scripts/pattern-extractor.js +11 -2
  173. package/.sinapse-ai/infrastructure/scripts/test-utilities.js +34 -13
  174. package/.sinapse-ai/infrastructure/scripts/usage-analytics.js +9 -5
  175. package/.sinapse-ai/infrastructure/scripts/validate-claude-integration.js +10 -2
  176. package/.sinapse-ai/install-manifest.yaml +364 -320
  177. package/.sinapse-ai/lib/build.json +1 -0
  178. package/.sinapse-ai/product/templates/personalized-task-template-v2.md +4 -2
  179. package/.sinapse-ai/product/templates/prd-tmpl.yaml +6 -2
  180. package/.sinapse-ai/product/templates/statusline/statusline-script.js +7 -3
  181. package/CHANGELOG.md +85 -7
  182. package/README.en.md +5 -5
  183. package/README.md +5 -5
  184. package/bin/cli.js +1 -1
  185. package/bin/commands/install.js +288 -114
  186. package/bin/commands/local.js +11 -0
  187. package/bin/lib/command-generator.js +31 -2
  188. package/bin/sinapse.js +121 -0
  189. package/docs/README.md +1 -1
  190. package/docs/agent-reference-guide.md +1 -1
  191. package/docs/community/README-community-snippet-core.md +1 -1
  192. package/docs/community/README-community-snippet-mcp.md +1 -1
  193. package/docs/community/README-community-snippet-squads.md +1 -1
  194. package/docs/examples/quickstart-recording.md +1 -1
  195. package/docs/framework/README.md +1 -1
  196. package/docs/framework/architecture-overview.md +1 -0
  197. package/docs/framework/atlas/OPERATING-ATLAS.md +537 -0
  198. package/docs/framework/atlas/README.md +34 -0
  199. package/docs/framework/atlas/atlas-data.json +2810 -0
  200. package/docs/framework/atlas/atlas.html +392 -0
  201. package/docs/framework/coding-standards.md +1 -1
  202. package/docs/framework/core-architecture.md +1 -1
  203. package/docs/framework/guiding-principles.md +1 -1
  204. package/docs/framework/source-tree.md +1 -1
  205. package/docs/framework/tech-stack.md +1 -1
  206. package/docs/framework/versioning-and-releases.md +1 -1
  207. package/docs/getting-started.md +1 -1
  208. package/docs/guides/agent-reference.md +1 -1
  209. package/docs/guides/agent-selection-guide.md +1 -1
  210. package/docs/guides/api-reference.md +1 -1
  211. package/docs/guides/contextual-greeting-system-guide.md +1 -1
  212. package/docs/guides/contributing-squads.md +1 -1
  213. package/docs/guides/development-setup.md +1 -1
  214. package/docs/guides/git-workflow-guide.md +1 -1
  215. package/docs/guides/installation-troubleshooting.md +1 -1
  216. package/docs/guides/llm-routing.md +1 -1
  217. package/docs/guides/mcp-global-setup.md +1 -1
  218. package/docs/guides/meta-agent-commands.md +1 -1
  219. package/docs/guides/project-status-feature.md +1 -1
  220. package/docs/guides/quality-dashboard.md +1 -1
  221. package/docs/guides/quality-gates.md +1 -1
  222. package/docs/guides/security-hardening.md +1 -1
  223. package/docs/guides/service-discovery.md +19 -22
  224. package/docs/guides/squad-examples/README.md +1 -1
  225. package/docs/guides/squad-migration.md +1 -1
  226. package/docs/guides/squads-guide.md +1 -1
  227. package/docs/guides/squads-overview.md +10 -13
  228. package/docs/guides/template-engine-v2.md +1 -1
  229. package/docs/guides/testing-guide.md +1 -1
  230. package/docs/guides/user-guide.md +30 -26
  231. package/docs/installation/README.md +3 -3
  232. package/docs/installation/faq.md +1 -1
  233. package/docs/installation/linux.md +2 -2
  234. package/docs/installation/macos.md +1 -1
  235. package/docs/installation/npx-install.md +1 -1
  236. package/docs/installation/troubleshooting.md +1 -1
  237. package/docs/installation/uninstallation.md +1 -1
  238. package/docs/installation/v4-quick-start.md +1 -1
  239. package/docs/installation/windows.md +2 -2
  240. package/docs/pt/CHANGELOG.md +1 -1
  241. package/docs/pt/DOCUMENTATION-ROADMAP.md +1 -1
  242. package/docs/pt/ENVIRONMENT.md +1 -1
  243. package/docs/pt/FEATURE_PROCESS.md +2 -2
  244. package/docs/pt/GUIDING-PRINCIPLES.md +2 -2
  245. package/docs/pt/agent-reference-guide.md +3 -3
  246. package/docs/pt/architecture/ARCHITECTURE-INDEX.md +2 -2
  247. package/docs/pt/architecture/ade-architecture.md +1 -1
  248. package/docs/pt/architecture/agent-config-audit.md +1 -1
  249. package/docs/pt/architecture/agent-responsibility-matrix.md +1 -1
  250. package/docs/pt/architecture/agent-tool-integration-guide.md +1 -1
  251. package/docs/pt/architecture/ci-cd.md +1 -1
  252. package/docs/pt/architecture/coding-standards.md +1 -1
  253. package/docs/pt/architecture/contribution-workflow-research.md +1 -1
  254. package/docs/pt/architecture/dashboard-architecture.md +1 -1
  255. package/docs/pt/architecture/dashboard-realtime.md +1 -1
  256. package/docs/pt/architecture/hcs-check-specifications.md +1 -1
  257. package/docs/pt/architecture/hcs-execution-modes.md +1 -1
  258. package/docs/pt/architecture/hcs-self-healing-spec.md +1 -1
  259. package/docs/pt/architecture/high-level-architecture.md +1 -1
  260. package/docs/pt/architecture/introduction.md +1 -1
  261. package/docs/pt/architecture/mcp-api-keys-management.md +3 -3
  262. package/docs/pt/architecture/mcp-system-diagrams.md +1 -1
  263. package/docs/pt/architecture/module-system.md +4 -4
  264. package/docs/pt/architecture/multi-repo-strategy.md +2 -2
  265. package/docs/pt/architecture/source-tree.md +1 -1
  266. package/docs/pt/architecture/squad-improvement-analysis.md +1 -1
  267. package/docs/pt/architecture/squad-improvement-recommended-approach.md +1 -1
  268. package/docs/pt/architecture/tech-stack.md +1 -1
  269. package/docs/pt/architecture/utility-integration-guide.md +1 -1
  270. package/docs/pt/code-of-conduct.md +1 -1
  271. package/docs/pt/community/README-community-snippet-core.md +1 -1
  272. package/docs/pt/community/README-community-snippet-mcp.md +2 -2
  273. package/docs/pt/contributing.md +7 -7
  274. package/docs/pt/core-architecture.md +1 -1
  275. package/docs/pt/docker-mcp-setup.md +1 -1
  276. package/docs/pt/framework/README.md +1 -1
  277. package/docs/pt/framework/coding-standards.md +1 -1
  278. package/docs/pt/framework/source-tree.md +1 -1
  279. package/docs/pt/framework/tech-stack.md +1 -1
  280. package/docs/pt/getting-started.md +1 -1
  281. package/docs/pt/git-workflow-guide.md +1 -1
  282. package/docs/pt/guides/README.md +3 -3
  283. package/docs/pt/guides/agent-selection-guide.md +2 -2
  284. package/docs/pt/guides/api-reference.md +1 -1
  285. package/docs/pt/guides/contextual-greeting-system-guide.md +1 -1
  286. package/docs/pt/guides/contributing-squads.md +1 -1
  287. package/docs/pt/guides/development-setup.md +1 -1
  288. package/docs/pt/guides/installation-troubleshooting.md +1 -1
  289. package/docs/pt/guides/llm-routing.md +1 -1
  290. package/docs/pt/guides/mcp/desktop-commander.md +1 -1
  291. package/docs/pt/guides/mcp/docker-gateway-tutorial.md +1 -1
  292. package/docs/pt/guides/mcp-global-setup.md +1 -1
  293. package/docs/pt/guides/project-status-feature.md +1 -1
  294. package/docs/pt/guides/quality-dashboard.md +1 -1
  295. package/docs/pt/guides/quality-gates.md +1 -1
  296. package/docs/pt/guides/security-hardening.md +2 -2
  297. package/docs/pt/guides/service-discovery.md +19 -22
  298. package/docs/pt/guides/squad-examples/README.md +1 -1
  299. package/docs/pt/guides/squad-migration.md +1 -1
  300. package/docs/pt/guides/squads-guide.md +1 -1
  301. package/docs/pt/guides/squads-overview.md +11 -13
  302. package/docs/pt/guides/template-engine-v2.md +1 -1
  303. package/docs/pt/guides/testing-guide.md +3 -3
  304. package/docs/pt/guides/user-guide.md +30 -26
  305. package/docs/pt/guides/workflows-guide.md +1 -1
  306. package/docs/pt/how-to-contribute-with-pull-requests.md +1 -1
  307. package/docs/pt/ide-integration.md +2 -2
  308. package/docs/pt/installation/README.md +1 -1
  309. package/docs/pt/installation/faq.md +1 -1
  310. package/docs/pt/installation/linux.md +1 -1
  311. package/docs/pt/installation/macos.md +1 -1
  312. package/docs/pt/installation/troubleshooting.md +1 -1
  313. package/docs/pt/installation/v4-quick-start.md +1 -1
  314. package/docs/pt/installation/windows.md +1 -1
  315. package/docs/pt/meta-agent-commands.md +1 -1
  316. package/docs/pt/migration-guide.md +1 -1
  317. package/docs/pt/npx-install.md +1 -1
  318. package/docs/pt/performance-tuning-guide.md +1 -1
  319. package/docs/pt/platforms/claude-code.md +2 -2
  320. package/docs/pt/roadmap.md +2 -2
  321. package/docs/pt/security-best-practices.md +2 -2
  322. package/docs/pt/security.md +1 -1
  323. package/docs/pt/sinapse-nomenclature-specification.md +1 -1
  324. package/docs/pt/troubleshooting.md +1 -1
  325. package/docs/pt/uninstallation.md +1 -1
  326. package/docs/pt/versioning-and-releases.md +1 -1
  327. package/docs/security/overview.md +1 -1
  328. package/docs/security/security-best-practices.md +2 -2
  329. package/docs/sinapse-workflows/README.md +1 -1
  330. package/package.json +2 -1
  331. package/packages/installer/package.json +1 -0
  332. package/packages/installer/src/wizard/feedback.js +18 -2
  333. package/packages/installer/src/wizard/i18n.js +78 -0
  334. package/packages/installer/src/wizard/ide-config-generator.js +14 -9
  335. package/packages/installer/src/wizard/index.js +16 -16
  336. package/packages/installer/src/wizard/validation/report-generator.js +22 -21
  337. package/packages/installer/src/wizard/validation/troubleshooting-system.js +19 -13
  338. package/scripts/gen-agent-badges.js +1 -1
  339. package/scripts/install-chrome-brain.sh +2 -2
  340. package/scripts/package-synapse.js +14 -5
  341. package/scripts/prepare-hooks.js +19 -0
  342. package/scripts/validate-agent-codenames.js +174 -0
  343. package/scripts/validate-all.js +1 -0
  344. package/scripts/validate-no-personal-leaks.js +24 -9
  345. package/sinapse/agents/sinapse-orqx.md +5 -5
  346. package/sinapse/agents/snps-orqx.md +5 -5
  347. package/squads/squad-brand/agents/brand-creative-engineer.md +5 -5
  348. package/squads/squad-brand/squad.yaml +6 -6
  349. package/squads/squad-content/agents/content-engineer.md +7 -7
  350. package/squads/squad-content/squad.yaml +5 -5
  351. package/squads/squad-copy/knowledge-base/consequence-headline-patterns.md +2 -2
  352. package/squads/squad-courses/agents/production-director.md +5 -5
  353. package/squads/squad-courses/squad.yaml +1 -1
  354. package/docs/guides/hooks-two-layers.md +0 -66
@@ -0,0 +1,253 @@
1
+ /**
2
+ * Framework Operating Flows — PT-BR translations.
3
+ *
4
+ * Portuguese rendering of FRAMEWORK_FLOWS (flows.js), keyed by flow id. Used by
5
+ * the research-card render target so the SINAPSE case-study card in the
6
+ * engineering-software research reads in the same language as the rest of that
7
+ * corpus. flows.js stays the single source of *which* flows exist and their
8
+ * structure; this file is the translation layer.
9
+ *
10
+ * Drift guard: a test asserts every id in FRAMEWORK_FLOWS has an entry here, so
11
+ * adding a flow without translating it fails CI.
12
+ *
13
+ * @module core/atlas/flows-pt
14
+ */
15
+
16
+ 'use strict';
17
+
18
+ /** @type {Record<string,{titulo:string,proposito:string,mermaid:string}>} */
19
+ const FRAMEWORK_FLOWS_PT = {
20
+ lifecycle: {
21
+ titulo: 'Ciclo de ponta a ponta',
22
+ proposito:
23
+ 'A espinha completa que um pedido percorre: do briefing ao código entregue, com o pipeline doc-first e os gates no meio.',
24
+ mermaid: `flowchart TD
25
+ U[Briefing do usuário] --> C{Classifica intenção + tipo de projeto}
26
+ C -->|projeto novo| GF[Workflow greenfield]
27
+ C -->|projeto existente| BF[Descoberta brownfield]
28
+ C -->|bug / ajuste| SDC[Ciclo de dev da story - YOLO]
29
+ GF --> DOC[Pipeline doc-first]
30
+ BF --> DOC
31
+ DOC --> PRD[PRD] --> EPIC[Épico] --> STORY[Story - validada >= Ready] --> SPEC[Spec]
32
+ SPEC --> GATE{{Gate doc-first}}
33
+ SDC --> GATE
34
+ GATE -->|faltam docs| BLOCK[Bloqueado - produza os docs antes]
35
+ GATE -->|satisfeito| IMPL[Implementação - desenvolvedor]
36
+ IMPL --> QA[Gate de QA + loop de QA]
37
+ QA -->|passa| SHIP[Push / PR - só devops]
38
+ QA -->|falha| IMPL`,
39
+ },
40
+ 'agent-routing': {
41
+ titulo: 'Roteamento de agente (delegação)',
42
+ proposito:
43
+ 'Como um briefing chega no especialista certo. Orquestradores roteiam e coordenam; nunca executam o trabalho de domínio (Artigo VIII).',
44
+ mermaid: `sequenceDiagram
45
+ participant U as Usuário
46
+ participant I as Imperator (master -orqx)
47
+ participant S as Squad -orqx
48
+ participant A as Agente especialista
49
+ U->>I: briefing (linguagem natural)
50
+ I->>I: diagnostica domínio + tipo de projeto
51
+ alt trabalho de domínio
52
+ I->>S: delega (anuncia o plano, espera o "pode ir")
53
+ S->>A: roteia pro especialista
54
+ A-->>S: artefato / resultado
55
+ S-->>I: consolidado
56
+ else dev do framework
57
+ I->>A: roteia pro agente de framework (pm / architect / dev / qa)
58
+ end
59
+ I-->>U: resultado em linguagem de negócio (sem jargão interno)`,
60
+ },
61
+ 'model-routing': {
62
+ titulo: 'Roteamento de modelo (o mais barato que resolve)',
63
+ proposito:
64
+ 'Como cada tarefa escolhe o tier de modelo. O raciocínio pesado vai pra spec; a execução depois quase só lê um doc pronto, então economia de token é consequência.',
65
+ mermaid: `flowchart TD
66
+ T[Tarefa] --> K{Tipo?}
67
+ K -->|lint / rename / yaml / massa| H[haiku - esforço baixo]
68
+ K -->|feature da spec / review / bug / testes| SO[sonnet - alto]
69
+ K -->|arquivo único / factual| SM[sonnet - médio]
70
+ K -->|arquitetura cross-system / debug complexo| OP[opus - xhigh]
71
+ K -->|Spec Pipeline COMPLEX score >= 16| OM[opus - max]
72
+ H --> SP{>= 8 tool calls ou fan-out real?}
73
+ SO --> SP
74
+ SM --> SP
75
+ OP --> SP
76
+ OM --> SP
77
+ SP -->|sim| SUB[Spawna sub-agente]
78
+ SP -->|não| INLINE[Roda inline]`,
79
+ },
80
+ 'doc-first': {
81
+ titulo: 'Enforcement doc-first',
82
+ proposito:
83
+ 'O que torna impossível começar um projeto novo sem docs. O resolver responde o que falta; hooks bloqueiam escrita de código até existir PRD + épico + story.',
84
+ mermaid: `flowchart TD
85
+ W[Escreve/edita arquivo de código] --> EX{Path isento ou repo do framework?}
86
+ EX -->|sim| ALLOW[Libera]
87
+ EX -->|não| RES[doc-first-resolver: tipo, workflow, gate]
88
+ RES --> GF{Greenfield + gate não satisfeito?}
89
+ GF -->|não| STORY{Existe story Ready? - story-gate}
90
+ GF -->|sim, sem PRD/épico/story| DENY[BLOQUEIA - rode o fluxo greenfield antes]
91
+ STORY -->|sim| ALLOW
92
+ STORY -->|não| DENY2[BLOQUEIA - crie uma story]
93
+ DENY -.->|escape: SINAPSE_SKIP_DOCFIRST=1| ALLOW
94
+ OBS["sinapse route dá a mesma resposta (observabilidade)"]:::note
95
+ RES -. compartilha a lógica .- OBS
96
+ classDef note fill:#1c1c1c,stroke:#555,color:#aaa`,
97
+ },
98
+ 'constitution-gates': {
99
+ titulo: 'Gates constitucionais por fase',
100
+ proposito:
101
+ 'Onde cada artigo inegociável dispara ao longo do ciclo — a camada de enforcement que bloqueia violações automaticamente.',
102
+ mermaid: `flowchart LR
103
+ subgraph PLAN[Planejar]
104
+ A3[III Documentação-Primeiro]
105
+ A4[IV Sem Invenção]
106
+ end
107
+ subgraph BUILD[Construir]
108
+ A6[VI Imports Absolutos]
109
+ A8[VIII Delegação Obrigatória]
110
+ A10[X Segurança & Dados]
111
+ end
112
+ subgraph SHIP[Entregar]
113
+ A2[II Autoridade de Agente - só devops]
114
+ A5[V Qualidade Primeiro]
115
+ A9[IX Colaboração Segura]
116
+ end
117
+ subgraph ALWAYS[Transversais]
118
+ A1[I CLI Primeiro]
119
+ A7[VII Exatidão de Métricas]
120
+ A11[XI Default Conservador]
121
+ end
122
+ PLAN --> BUILD --> SHIP`,
123
+ },
124
+ 'project-classification': {
125
+ titulo: 'Classificação de projeto para workflow',
126
+ proposito:
127
+ 'Como a intenção mapeia pro workflow certo: site/lp/app vs plataforma/saas vs api/serviço, greenfield vs brownfield, ou um ajuste leve.',
128
+ mermaid: `flowchart TD
129
+ B[Briefing] --> N{Novo ou existente?}
130
+ N -->|existente, desconhecido| BD[brownfield-discovery]
131
+ N -->|existente, conhecido| FIX{Tamanho da mudança?}
132
+ N -->|novo| TYPE{Tipo de projeto?}
133
+ TYPE -->|site / lp / app| GUI[greenfield-ui]
134
+ TYPE -->|plataforma / saas| GFS[greenfield-fullstack]
135
+ TYPE -->|api / serviço| GSV[greenfield-service]
136
+ BD --> BTYPE{Tipo?}
137
+ BTYPE -->|ui| BUI[brownfield-ui]
138
+ BTYPE -->|fullstack| BFS[brownfield-fullstack]
139
+ BTYPE -->|serviço| BSV[brownfield-service]
140
+ FIX -->|bug / ajuste| YOLO[SDC - YOLO]
141
+ FIX -->|feature| SDCI[SDC - interativo]
142
+ FIX -->|complexo score >= 16| SPEC[Spec Pipeline antes]`,
143
+ },
144
+ 'prompt-lifecycle': {
145
+ titulo: 'Cada prompt (o que dispara em toda mensagem)',
146
+ proposito:
147
+ 'O que acontece em toda mensagem do usuário antes mesmo do modelo responder: hooks injetam grounding e a constituição, então cada turno já começa ciente da base de conhecimento do projeto, do design system, das leis de engenharia e das regras ativas.',
148
+ mermaid: `flowchart TD
149
+ P[Usuário envia um prompt] --> H[Hooks UserPromptSubmit disparam]
150
+ H --> VG[Grounding de conhecimento - contexto do projeto por domínio]
151
+ H --> DS[Grounding do design system - DS resolver por cwd]
152
+ H --> EG[Grounding de engenharia - leis + KIT por tema]
153
+ H --> SG[Grounding de squad - contexto curado da squad]
154
+ H --> CR[Constituição + bracket de contexto injetados]
155
+ VG --> M[Modelo recebe contexto enriquecido]
156
+ DS --> M
157
+ EG --> M
158
+ SG --> M
159
+ CR --> M
160
+ M --> ACT[Age: responde ou roteia pro especialista]`,
161
+ },
162
+ 'session-start': {
163
+ titulo: 'Cada sessão (início seguro)',
164
+ proposito:
165
+ 'A rede de segurança que roda antes de qualquer trabalho na sessão: sincroniza com o remoto, nunca toca na main, audita o que já existe para nunca sobrescrever trabalho parcial (Colaboração Segura + Inteligência de Projeto).',
166
+ mermaid: `flowchart TD
167
+ S[Sessão inicia] --> F[git fetch origin]
168
+ F --> SY{Main local atrasada?}
169
+ SY -->|sim, limpa| PULL[Pull fast-forward]
170
+ SY -->|divergiu| STOP[Para - resolve com segurança]
171
+ PULL --> BR[Cria feature branch automática - user/type/desc]
172
+ STOP --> BR
173
+ BR --> AUD[Auditoria de estado inicial - 8 dimensões]
174
+ AUD --> MAT{Maturidade?}
175
+ MAT -->|vazio| GREEN[Workflow greenfield]
176
+ MAT -->|parcial| CONT[Continua - nunca sobrescreve]
177
+ MAT -->|maduro| BROWN[Descoberta brownfield]
178
+ MAT -->|gerido-pelo-sinapse| RESUME[Retoma story ativa - SDC]`,
179
+ },
180
+ 'orchestration-handoff': {
181
+ titulo: 'Cada orquestração (plano + handoff)',
182
+ proposito:
183
+ 'Como o controle passa entre agentes sem inchar o contexto: o orquestrador planeja e então espera o "pode ir", e cada troca de agente compacta a persona anterior num artefato mínimo de handoff (~379 tokens) em vez de carregar tudo adiante.',
184
+ mermaid: `sequenceDiagram
185
+ participant U as Usuário
186
+ participant O as Orquestrador
187
+ participant A1 as Agente A (saindo)
188
+ participant A2 as Agente B (entrando)
189
+ O->>O: diagnostica + monta plano de orquestração
190
+ O->>U: apresenta o plano
191
+ U-->>O: pode ir
192
+ O->>A1: atribui trabalho (contexto isolado e mínimo)
193
+ A1->>A1: escreve artefato de handoff + scratchpad
194
+ A1-->>A2: handoff (story id, decisões, arquivos, próxima ação)
195
+ Note over A1,A2: persona completa descartada, ~379 tok mantidos
196
+ A2->>A2: lê o scratchpad, continua
197
+ A2-->>O: resultado destilado
198
+ O-->>U: síntese`,
199
+ },
200
+ 'execution-cycle': {
201
+ titulo: 'Cada execução (ciclo de dev da story)',
202
+ proposito:
203
+ 'O ciclo de vida da story depois que o gate doc-first é satisfeito: de rascunho a validada a implementada a revisada a entregue, com CodeRabbit se autocorrigindo no dev e o loop de QA antes do push (só @devops entrega).',
204
+ mermaid: `flowchart TD
205
+ D[Rascunho - sprint-lead] --> V{Valida - product-lead 10pt}
206
+ V -->|NÃO-VAI| D
207
+ V -->|VAI| R[Ready]
208
+ R --> IMP[InProgress - desenvolvedor]
209
+ IMP --> CRB[Autocorreção CodeRabbit - máx 2 iter]
210
+ CRB --> REV[InReview - quality-gate]
211
+ REV --> QL{Veredito do loop de QA}
212
+ QL -->|FALHA| IMP
213
+ QL -->|RESSALVAS| DOC[Documenta dívida]
214
+ QL -->|PASSA| PUSH[Push / PR - só devops]
215
+ DOC --> PUSH
216
+ PUSH --> DONE[Done]`,
217
+ },
218
+ 'security-enforcement': {
219
+ titulo: 'Enforcement de segurança (transversal)',
220
+ proposito:
221
+ 'Os guardrails sempre-ativos do commit à produção: segredos nunca são commitados, o acesso a dados é de menor privilégio e parametrizado, e nada chega na main sem PR (Artigos IX + X).',
222
+ mermaid: `flowchart TD
223
+ C[Pré-commit] --> SS{Varredura de segredos}
224
+ SS -->|segredo encontrado| BLK[Bloqueia - remove do staging]
225
+ SS -->|limpo| CM[Commit]
226
+ CM --> MRG[Merge origin/main - resolve conflitos]
227
+ MRG --> PR[PR obrigatório - branch protection]
228
+ PR --> CHK{Status checks + review}
229
+ CHK -->|falha| FIXS[Volta pra correção]
230
+ CHK -->|passa| SHIP[Merge]
231
+ DATA[Camada de dados] --> RLS[RLS em toda tabela de usuário]
232
+ DATA --> PAR[Só queries parametrizadas]
233
+ DATA --> ENV[Segredos no env, nunca no código]`,
234
+ },
235
+ 'knowledge-memory': {
236
+ titulo: 'Conhecimento & memória (como se mantém atual)',
237
+ proposito:
238
+ 'Como o framework se mantém grounded e autodocumentado: fontes de grounding alimentam cada turno, fatos duráveis persistem como dicas de memória, e o Atlas se regenera do disco para o mapa nunca divergir da realidade.',
239
+ mermaid: `flowchart TD
240
+ SRC[Fontes de grounding] --> VLT[Base de conhecimento - fonte de verdade do projeto]
241
+ SRC --> DSY[Design systems - DS do projeto]
242
+ SRC --> ENG[Pesquisa de engenharia - 60 domínios]
243
+ VLT --> TURN[Injetado a cada turno]
244
+ DSY --> TURN
245
+ ENG --> TURN
246
+ MEM[Arquivos de memória - dicas, não verdade] --> VERIFY[Verifica contra o código antes de agir]
247
+ ATL[sinapse atlas] --> SCAN[Varre o repo do disco - contagens exatas]
248
+ SCAN --> OUT[Regenera o mapa - md + html + json]
249
+ OUT --> NODRIFT[Fonte única, nunca diverge]`,
250
+ },
251
+ };
252
+
253
+ module.exports = { FRAMEWORK_FLOWS_PT };
@@ -0,0 +1,266 @@
1
+ /**
2
+ * Framework Operating Flows — the meta-workflows of how SINAPSE itself runs.
3
+ *
4
+ * These are NOT development workflows (those live in docs/sinapse-workflows/).
5
+ * They are the framework's own mechanisms — agent routing, model routing, the
6
+ * doc-first enforcement chain, constitutional gates, project classification —
7
+ * authored as Mermaid diagrams. Both the markdown atlas and the HTML dashboard
8
+ * render them, so "how the framework works" is shown visually in one place.
9
+ *
10
+ * Kept as data (id, title, purpose, mermaid) so renderers stay dumb and the set
11
+ * is easy to extend. Mermaid is hand-written and kept simple (plain node labels,
12
+ * no reserved chars) so it renders everywhere.
13
+ *
14
+ * @module core/atlas/flows
15
+ */
16
+
17
+ 'use strict';
18
+
19
+ /** @type {Array<{id:string,title:string,purpose:string,mermaid:string}>} */
20
+ const FRAMEWORK_FLOWS = [
21
+ {
22
+ id: 'lifecycle',
23
+ title: 'End-to-end lifecycle',
24
+ purpose:
25
+ 'The full spine a request travels: from briefing to shipped code, with the doc-first pipeline and gates in the middle.',
26
+ mermaid: `flowchart TD
27
+ U[User briefing] --> C{Classify intent + project type}
28
+ C -->|new project| GF[Greenfield workflow]
29
+ C -->|existing project| BF[Brownfield discovery]
30
+ C -->|bug / tweak| SDC[Story dev cycle - YOLO]
31
+ GF --> DOC[Doc-first pipeline]
32
+ BF --> DOC
33
+ DOC --> PRD[PRD] --> EPIC[Epic] --> STORY[Story - validated >= Ready] --> SPEC[Spec]
34
+ SPEC --> GATE{{Doc-first gate}}
35
+ SDC --> GATE
36
+ GATE -->|missing docs| BLOCK[Blocked - produce docs first]
37
+ GATE -->|satisfied| IMPL[Implementation - @developer]
38
+ IMPL --> QA[QA gate + QA loop]
39
+ QA -->|pass| SHIP[Push / PR - @devops only]
40
+ QA -->|fail| IMPL`,
41
+ },
42
+ {
43
+ id: 'agent-routing',
44
+ title: 'Agent routing (delegation)',
45
+ purpose:
46
+ 'How a briefing reaches the right specialist. Orchestrators route and coordinate; they never execute domain work themselves (Article VIII).',
47
+ mermaid: `sequenceDiagram
48
+ participant U as User
49
+ participant I as Imperator (master -orqx)
50
+ participant S as Squad -orqx
51
+ participant A as Specialist agent
52
+ U->>I: briefing (natural language)
53
+ I->>I: diagnose domain + project type
54
+ alt domain work
55
+ I->>S: delegate (announce plan, await go)
56
+ S->>A: route to specialist
57
+ A-->>S: artifact / result
58
+ S-->>I: consolidated
59
+ else framework dev
60
+ I->>A: route to framework agent (pm / architect / dev / qa)
61
+ end
62
+ I-->>U: business-language result (no internal jargon)`,
63
+ },
64
+ {
65
+ id: 'model-routing',
66
+ title: 'Model routing (cheapest that solves it)',
67
+ purpose:
68
+ 'How each task picks a model tier. Heavy thinking goes into the spec; execution then mostly reads a finished doc, so token economy is a consequence.',
69
+ mermaid: `flowchart TD
70
+ T[Task] --> K{Kind?}
71
+ K -->|lint / rename / yaml / bulk| H[haiku - low effort]
72
+ K -->|feature from spec / review / bug / tests| SO[sonnet - high]
73
+ K -->|single-file / factual| SM[sonnet - medium]
74
+ K -->|cross-system arch / complex debug / multi-file| OP[opus - xhigh]
75
+ K -->|Spec Pipeline COMPLEX score >= 16| OM[opus - max]
76
+ H --> SP{>= 8 tool calls or real fan-out?}
77
+ SO --> SP
78
+ SM --> SP
79
+ OP --> SP
80
+ OM --> SP
81
+ SP -->|yes| SUB[Spawn sub-agent]
82
+ SP -->|no| INLINE[Run inline]`,
83
+ },
84
+ {
85
+ id: 'doc-first',
86
+ title: 'Doc-first enforcement',
87
+ purpose:
88
+ 'What makes it impossible to start a new project without docs. The resolver answers what is missing; hooks block code writes until PRD + epic + story exist.',
89
+ mermaid: `flowchart TD
90
+ W[Write/Edit a code file] --> EX{Exempt path or framework repo?}
91
+ EX -->|yes| ALLOW[Allow]
92
+ EX -->|no| RES[doc-first-resolver: type, workflow, gate]
93
+ RES --> GF{Greenfield + gate unsatisfied?}
94
+ GF -->|no| STORY{Ready story exists? - story-gate}
95
+ GF -->|yes, no PRD/epic/story| DENY[BLOCK - run greenfield flow first]
96
+ STORY -->|yes| ALLOW
97
+ STORY -->|no| DENY2[BLOCK - create a story]
98
+ DENY -.->|escape: SINAPSE_SKIP_DOCFIRST=1| ALLOW
99
+ OBS["sinapse route gives the same answer (observability)"]:::note
100
+ RES -. shares logic .- OBS
101
+ classDef note fill:#1c1c1c,stroke:#555,color:#aaa`,
102
+ },
103
+ {
104
+ id: 'constitution-gates',
105
+ title: 'Constitutional gates by phase',
106
+ purpose:
107
+ 'Where each non-negotiable article fires across the lifecycle — the enforcement layer that blocks violations automatically.',
108
+ mermaid: `flowchart LR
109
+ subgraph PLAN[Plan]
110
+ A3[III Documentation-First]
111
+ A4[IV No Invention]
112
+ end
113
+ subgraph BUILD[Build]
114
+ A6[VI Absolute Imports]
115
+ A8[VIII Mandatory Delegation]
116
+ A10[X Security & Data]
117
+ end
118
+ subgraph SHIP[Ship]
119
+ A2[II Agent Authority - devops only]
120
+ A5[V Quality First]
121
+ A9[IX Safe Collaboration]
122
+ end
123
+ subgraph ALWAYS[Cross-cutting]
124
+ A1[I CLI First]
125
+ A7[VII Metrics Accuracy]
126
+ A11[XI Conservative Default]
127
+ end
128
+ PLAN --> BUILD --> SHIP`,
129
+ },
130
+ {
131
+ id: 'project-classification',
132
+ title: 'Project classification to workflow',
133
+ purpose:
134
+ 'How intent maps to the right workflow: site/lp/app vs platform/saas vs api/service, greenfield vs brownfield, or a light fix.',
135
+ mermaid: `flowchart TD
136
+ B[Briefing] --> N{New or existing?}
137
+ N -->|existing, unknown| BD[brownfield-discovery]
138
+ N -->|existing, known| FIX{Change size?}
139
+ N -->|new| TYPE{Project type?}
140
+ TYPE -->|site / lp / app| GUI[greenfield-ui]
141
+ TYPE -->|platform / saas| GFS[greenfield-fullstack]
142
+ TYPE -->|api / service| GSV[greenfield-service]
143
+ BD --> BTYPE{Type?}
144
+ BTYPE -->|ui| BUI[brownfield-ui]
145
+ BTYPE -->|fullstack| BFS[brownfield-fullstack]
146
+ BTYPE -->|service| BSV[brownfield-service]
147
+ FIX -->|bug / tweak| YOLO[SDC - YOLO]
148
+ FIX -->|feature| SDCI[SDC - interactive]
149
+ FIX -->|complex score >= 16| SPEC[Spec Pipeline first]`,
150
+ },
151
+ {
152
+ id: 'prompt-lifecycle',
153
+ title: 'Every prompt (what fires on each message)',
154
+ purpose:
155
+ 'What happens on every single user message before the model even answers: hooks inject grounding and the constitution, so each turn starts already aware of the project knowledge base, design system, engineering laws and the active rules.',
156
+ mermaid: `flowchart TD
157
+ P[User sends a prompt] --> H[UserPromptSubmit hooks fire]
158
+ H --> VG[Knowledge grounding - project context by domain]
159
+ H --> DS[Design system grounding - DS resolver by cwd]
160
+ H --> EG[Engineering grounding - laws + KIT by topic]
161
+ H --> SG[Squad grounding - curated squad context]
162
+ H --> CR[Constitution + context bracket injected]
163
+ VG --> M[Model receives enriched context]
164
+ DS --> M
165
+ EG --> M
166
+ SG --> M
167
+ CR --> M
168
+ M --> ACT[Act: answer or route to specialist]`,
169
+ },
170
+ {
171
+ id: 'session-start',
172
+ title: 'Every session (safe start)',
173
+ purpose:
174
+ 'The safety net that runs before any work in a session: sync with remote, never touch main, audit what already exists so partial work is never overwritten (Safe Collaboration + Project Intelligence).',
175
+ mermaid: `flowchart TD
176
+ S[Session starts] --> F[git fetch origin]
177
+ F --> SY{Local main behind?}
178
+ SY -->|yes, clean| PULL[Fast-forward pull]
179
+ SY -->|diverged| STOP[Stop - resolve safely]
180
+ PULL --> BR[Auto-create feature branch - user/type/desc]
181
+ STOP --> BR
182
+ BR --> AUD[Initial state audit - 8 dimensions]
183
+ AUD --> MAT{Maturity?}
184
+ MAT -->|empty| GREEN[Greenfield workflow]
185
+ MAT -->|partial| CONT[Continue - never overwrite]
186
+ MAT -->|mature| BROWN[Brownfield discovery]
187
+ MAT -->|sinapse-managed| RESUME[Resume active story - SDC]`,
188
+ },
189
+ {
190
+ id: 'orchestration-handoff',
191
+ title: 'Every orchestration (plan + handoff)',
192
+ purpose:
193
+ 'How control passes between agents without context bloat: the orchestrator plans then waits for go, and each agent switch compacts the previous persona into a tiny handoff artifact (~379 tokens) instead of carrying it all forward.',
194
+ mermaid: `sequenceDiagram
195
+ participant U as User
196
+ participant O as Orchestrator
197
+ participant A1 as Agent A (outgoing)
198
+ participant A2 as Agent B (incoming)
199
+ O->>O: diagnose + build orchestration plan
200
+ O->>U: present plan
201
+ U-->>O: go
202
+ O->>A1: assign work (isolated, minimal context)
203
+ A1->>A1: write handoff artifact + scratchpad
204
+ A1-->>A2: handoff (story id, decisions, files, next action)
205
+ Note over A1,A2: full persona discarded, ~379 tok kept
206
+ A2->>A2: read scratchpad, continue
207
+ A2-->>O: distilled result
208
+ O-->>U: synthesis`,
209
+ },
210
+ {
211
+ id: 'execution-cycle',
212
+ title: 'Every execution (story dev cycle)',
213
+ purpose:
214
+ 'The story lifecycle once the doc-first gate is satisfied: draft to validated to implemented to reviewed to shipped, with CodeRabbit self-healing in dev and the QA loop before push (only @devops ships).',
215
+ mermaid: `flowchart TD
216
+ D[Draft - sprint-lead] --> V{Validate - product-lead 10pt}
217
+ V -->|NO-GO| D
218
+ V -->|GO| R[Ready]
219
+ R --> IMP[InProgress - developer]
220
+ IMP --> CRB[CodeRabbit self-heal - max 2 iter]
221
+ CRB --> REV[InReview - quality-gate]
222
+ REV --> QL{QA loop verdict}
223
+ QL -->|FAIL| IMP
224
+ QL -->|CONCERNS| DOC[Document debt]
225
+ QL -->|PASS| PUSH[Push / PR - devops only]
226
+ DOC --> PUSH
227
+ PUSH --> DONE[Done]`,
228
+ },
229
+ {
230
+ id: 'security-enforcement',
231
+ title: 'Security enforcement (cross-cutting)',
232
+ purpose:
233
+ 'The always-on guardrails from commit to production: secrets never get committed, data access is least-privilege and parameterized, and nothing reaches main without a PR (Articles IX + X).',
234
+ mermaid: `flowchart TD
235
+ C[Pre-commit] --> SS{Secret scan}
236
+ SS -->|secret found| BLK[Block - remove from staging]
237
+ SS -->|clean| CM[Commit]
238
+ CM --> MRG[Merge origin/main - resolve conflicts]
239
+ MRG --> PR[PR required - branch protection]
240
+ PR --> CHK{Status checks + review}
241
+ CHK -->|fail| FIXS[Return for fixes]
242
+ CHK -->|pass| SHIP[Merge]
243
+ DATA[Data layer] --> RLS[RLS on every user table]
244
+ DATA --> PAR[Parameterized queries only]
245
+ DATA --> ENV[Secrets in env, never in code]`,
246
+ },
247
+ {
248
+ id: 'knowledge-memory',
249
+ title: 'Knowledge & memory (how it stays current)',
250
+ purpose:
251
+ 'How the framework keeps itself grounded and self-documenting: grounding sources feed every turn, durable facts persist as memory hints, and the Atlas regenerates from disk so the map never drifts from reality.',
252
+ mermaid: `flowchart TD
253
+ SRC[Grounding sources] --> VLT[Knowledge base - project source of truth]
254
+ SRC --> DSY[Design systems - project DS]
255
+ SRC --> ENG[Engineering research - 60 domains]
256
+ VLT --> TURN[Injected every turn]
257
+ DSY --> TURN
258
+ ENG --> TURN
259
+ MEM[Memory files - hints, not truth] --> VERIFY[Verify vs codebase before acting]
260
+ ATL[sinapse atlas] --> SCAN[Scan repo from disk - exact counts]
261
+ SCAN --> OUT[Regenerate map - md + html + json]
262
+ OUT --> NODRIFT[Single source, never drifts]`,
263
+ },
264
+ ];
265
+
266
+ module.exports = { FRAMEWORK_FLOWS };
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Atlas — generate the Framework Operating Atlas (data + LLM-readable markdown).
3
+ *
4
+ * One source of truth (atlas-data) → multiple renderings. This module writes:
5
+ * - docs/framework/atlas/atlas-data.json (structured data; HTML dashboard + tooling consume it)
6
+ * - docs/framework/atlas/OPERATING-ATLAS.md (LLM-readable atlas)
7
+ *
8
+ * CLI-first (Article I): exposed as `sinapse atlas`.
9
+ *
10
+ * @module core/atlas
11
+ */
12
+
13
+ 'use strict';
14
+
15
+ const fs = require('fs');
16
+ const path = require('path');
17
+
18
+ const { buildAtlasData } = require('./atlas-data');
19
+ const { renderAtlasMarkdown } = require('./render-markdown');
20
+ const { renderAtlasHtml } = require('./render-html');
21
+
22
+ const OUT_DIR = path.join('docs', 'framework', 'atlas');
23
+
24
+ /**
25
+ * Generate the atlas artifacts.
26
+ * @param {object} [opts]
27
+ * @param {string} [opts.root=process.cwd()] - Repo root.
28
+ * @param {string} [opts.generatedAt] - ISO timestamp to stamp into outputs.
29
+ * @param {boolean} [opts.write=true] - Write files to disk.
30
+ * @returns {{ data: object, markdown: string, paths: {json:string, md:string} }}
31
+ */
32
+ function generateAtlas(opts = {}) {
33
+ const root = opts.root || process.cwd();
34
+ const data = buildAtlasData({ root, generatedAt: opts.generatedAt || null });
35
+ const markdown = renderAtlasMarkdown(data);
36
+ const html = renderAtlasHtml(data);
37
+
38
+ const outDir = path.join(root, OUT_DIR);
39
+ const jsonPath = path.join(outDir, 'atlas-data.json');
40
+ const mdPath = path.join(outDir, 'OPERATING-ATLAS.md');
41
+ const htmlPath = path.join(outDir, 'atlas.html');
42
+
43
+ if (opts.write !== false) {
44
+ fs.mkdirSync(outDir, { recursive: true });
45
+ fs.writeFileSync(jsonPath, JSON.stringify(data, null, 2) + '\n');
46
+ fs.writeFileSync(mdPath, markdown);
47
+ fs.writeFileSync(htmlPath, html);
48
+ }
49
+
50
+ return {
51
+ data,
52
+ markdown,
53
+ html,
54
+ paths: {
55
+ json: path.relative(root, jsonPath),
56
+ md: path.relative(root, mdPath),
57
+ html: path.relative(root, htmlPath),
58
+ },
59
+ };
60
+ }
61
+
62
+ module.exports = { generateAtlas, buildAtlasData, renderAtlasMarkdown };