aios-core 2.1.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 (607) hide show
  1. package/.aios-core/.session/current-session.json +14 -0
  2. package/.aios-core/cli/commands/generate/index.js +222 -0
  3. package/.aios-core/cli/commands/manifest/index.js +46 -0
  4. package/.aios-core/cli/commands/manifest/regenerate.js +96 -0
  5. package/.aios-core/cli/commands/manifest/validate.js +66 -0
  6. package/.aios-core/cli/commands/mcp/add.js +234 -0
  7. package/.aios-core/cli/commands/mcp/index.js +76 -0
  8. package/.aios-core/cli/commands/mcp/link.js +217 -0
  9. package/.aios-core/cli/commands/mcp/setup.js +164 -0
  10. package/.aios-core/cli/commands/mcp/status.js +183 -0
  11. package/.aios-core/cli/commands/metrics/cleanup.js +91 -0
  12. package/.aios-core/cli/commands/metrics/index.js +65 -0
  13. package/.aios-core/cli/commands/metrics/record.js +154 -0
  14. package/.aios-core/cli/commands/metrics/seed.js +126 -0
  15. package/.aios-core/cli/commands/metrics/show.js +209 -0
  16. package/.aios-core/cli/commands/migrate/analyze.js +353 -0
  17. package/.aios-core/cli/commands/migrate/backup.js +352 -0
  18. package/.aios-core/cli/commands/migrate/execute.js +292 -0
  19. package/.aios-core/cli/commands/migrate/index.js +441 -0
  20. package/.aios-core/cli/commands/migrate/rollback.js +323 -0
  21. package/.aios-core/cli/commands/migrate/update-imports.js +396 -0
  22. package/.aios-core/cli/commands/migrate/validate.js +452 -0
  23. package/.aios-core/cli/commands/qa/index.js +56 -0
  24. package/.aios-core/cli/commands/qa/run.js +163 -0
  25. package/.aios-core/cli/commands/qa/status.js +195 -0
  26. package/.aios-core/cli/commands/workers/formatters/info-formatter.js +274 -0
  27. package/.aios-core/cli/commands/workers/formatters/list-table.js +265 -0
  28. package/.aios-core/cli/commands/workers/formatters/list-tree.js +159 -0
  29. package/.aios-core/cli/commands/workers/index.js +56 -0
  30. package/.aios-core/cli/commands/workers/info.js +194 -0
  31. package/.aios-core/cli/commands/workers/list.js +214 -0
  32. package/.aios-core/cli/commands/workers/search-filters.js +185 -0
  33. package/.aios-core/cli/commands/workers/search-keyword.js +310 -0
  34. package/.aios-core/cli/commands/workers/search-semantic.js +293 -0
  35. package/.aios-core/cli/commands/workers/search.js +154 -0
  36. package/.aios-core/cli/commands/workers/utils/pagination.js +102 -0
  37. package/.aios-core/cli/index.js +128 -0
  38. package/.aios-core/cli/utils/output-formatter-cli.js +232 -0
  39. package/.aios-core/cli/utils/score-calculator.js +221 -0
  40. package/.aios-core/core/README.md +229 -0
  41. package/.aios-core/core/config/config-cache.js +233 -0
  42. package/.aios-core/core/config/config-loader.js +277 -0
  43. package/.aios-core/core/data/agent-config-requirements.yaml +368 -0
  44. package/.aios-core/core/data/aios-kb.md +924 -0
  45. package/.aios-core/core/data/workflow-patterns.yaml +267 -0
  46. package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -0
  47. package/.aios-core/core/docs/component-creation-guide.md +458 -0
  48. package/.aios-core/core/docs/session-update-pattern.md +307 -0
  49. package/.aios-core/core/docs/template-syntax.md +267 -0
  50. package/.aios-core/core/docs/troubleshooting-guide.md +625 -0
  51. package/.aios-core/core/elicitation/agent-elicitation.js +272 -0
  52. package/.aios-core/core/elicitation/elicitation-engine.js +479 -0
  53. package/.aios-core/core/elicitation/session-manager.js +320 -0
  54. package/.aios-core/core/elicitation/task-elicitation.js +281 -0
  55. package/.aios-core/core/elicitation/workflow-elicitation.js +315 -0
  56. package/.aios-core/core/index.esm.js +42 -0
  57. package/.aios-core/core/index.js +76 -0
  58. package/.aios-core/core/manifest/manifest-generator.js +386 -0
  59. package/.aios-core/core/manifest/manifest-validator.js +429 -0
  60. package/.aios-core/core/mcp/config-migrator.js +340 -0
  61. package/.aios-core/core/mcp/global-config-manager.js +369 -0
  62. package/.aios-core/core/mcp/index.js +34 -0
  63. package/.aios-core/core/mcp/os-detector.js +188 -0
  64. package/.aios-core/core/mcp/symlink-manager.js +413 -0
  65. package/.aios-core/core/migration/migration-config.yaml +83 -0
  66. package/.aios-core/core/migration/module-mapping.yaml +89 -0
  67. package/.aios-core/core/quality-gates/base-layer.js +134 -0
  68. package/.aios-core/core/quality-gates/checklist-generator.js +329 -0
  69. package/.aios-core/core/quality-gates/focus-area-recommender.js +359 -0
  70. package/.aios-core/core/quality-gates/human-review-orchestrator.js +529 -0
  71. package/.aios-core/core/quality-gates/layer1-precommit.js +336 -0
  72. package/.aios-core/core/quality-gates/layer2-pr-automation.js +324 -0
  73. package/.aios-core/core/quality-gates/layer3-human-review.js +348 -0
  74. package/.aios-core/core/quality-gates/notification-manager.js +550 -0
  75. package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -0
  76. package/.aios-core/core/quality-gates/quality-gate-manager.js +601 -0
  77. package/.aios-core/core/registry/README.md +179 -0
  78. package/.aios-core/core/registry/build-registry.js +452 -0
  79. package/.aios-core/core/registry/registry-loader.js +330 -0
  80. package/.aios-core/core/registry/registry-schema.json +166 -0
  81. package/.aios-core/core/registry/service-registry.json +6586 -0
  82. package/.aios-core/core/registry/validate-registry.js +340 -0
  83. package/.aios-core/core/session/context-detector.js +229 -0
  84. package/.aios-core/core/session/context-loader.js +288 -0
  85. package/.aios-core/core/utils/output-formatter.js +298 -0
  86. package/.aios-core/core/utils/security-utils.js +333 -0
  87. package/.aios-core/core/utils/yaml-validator.js +419 -0
  88. package/.aios-core/core-config.yaml +382 -0
  89. package/.aios-core/data/agent-config-requirements.yaml +368 -0
  90. package/.aios-core/data/aios-kb.md +924 -0
  91. package/.aios-core/data/technical-preferences.md +4 -0
  92. package/.aios-core/data/workflow-patterns.yaml +267 -0
  93. package/.aios-core/development/README.md +142 -0
  94. package/.aios-core/development/agent-teams/team-all.yaml +15 -0
  95. package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -0
  96. package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -0
  97. package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -0
  98. package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -0
  99. package/.aios-core/development/agents/aios-master.md +339 -0
  100. package/.aios-core/development/agents/analyst.md +195 -0
  101. package/.aios-core/development/agents/architect.md +359 -0
  102. package/.aios-core/development/agents/data-engineer.md +468 -0
  103. package/.aios-core/development/agents/dev.md +390 -0
  104. package/.aios-core/development/agents/devops.md +398 -0
  105. package/.aios-core/development/agents/pm.md +198 -0
  106. package/.aios-core/development/agents/po.md +256 -0
  107. package/.aios-core/development/agents/qa.md +312 -0
  108. package/.aios-core/development/agents/sm.md +220 -0
  109. package/.aios-core/development/agents/ux-design-expert.md +451 -0
  110. package/.aios-core/development/scripts/agent-assignment-resolver.js +231 -0
  111. package/.aios-core/development/scripts/agent-config-loader.js +624 -0
  112. package/.aios-core/development/scripts/agent-exit-hooks.js +96 -0
  113. package/.aios-core/development/scripts/apply-inline-greeting-all-agents.js +146 -0
  114. package/.aios-core/development/scripts/audit-agent-config.js +380 -0
  115. package/.aios-core/development/scripts/backlog-manager.js +404 -0
  116. package/.aios-core/development/scripts/batch-update-agents-session-context.js +95 -0
  117. package/.aios-core/development/scripts/decision-context.js +228 -0
  118. package/.aios-core/development/scripts/decision-log-generator.js +293 -0
  119. package/.aios-core/development/scripts/decision-log-indexer.js +284 -0
  120. package/.aios-core/development/scripts/decision-recorder.js +168 -0
  121. package/.aios-core/development/scripts/dev-context-loader.js +297 -0
  122. package/.aios-core/development/scripts/generate-greeting.js +160 -0
  123. package/.aios-core/development/scripts/greeting-builder.js +866 -0
  124. package/.aios-core/development/scripts/greeting-config-cli.js +85 -0
  125. package/.aios-core/development/scripts/greeting-preference-manager.js +145 -0
  126. package/.aios-core/development/scripts/migrate-task-to-v2.js +377 -0
  127. package/.aios-core/development/scripts/story-index-generator.js +337 -0
  128. package/.aios-core/development/scripts/story-manager.js +375 -0
  129. package/.aios-core/development/scripts/story-update-hook.js +259 -0
  130. package/.aios-core/development/scripts/task-identifier-resolver.js +145 -0
  131. package/.aios-core/development/scripts/test-greeting-system.js +142 -0
  132. package/.aios-core/development/scripts/validate-task-v2.js +319 -0
  133. package/.aios-core/development/scripts/workflow-navigator.js +214 -0
  134. package/.aios-core/development/tasks/add-mcp.md +319 -0
  135. package/.aios-core/development/tasks/advanced-elicitation.md +319 -0
  136. package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +342 -0
  137. package/.aios-core/development/tasks/analyze-framework.md +697 -0
  138. package/.aios-core/development/tasks/analyze-performance.md +637 -0
  139. package/.aios-core/development/tasks/apply-qa-fixes.md +340 -0
  140. package/.aios-core/development/tasks/architect-analyze-impact.md +827 -0
  141. package/.aios-core/development/tasks/audit-codebase.md +429 -0
  142. package/.aios-core/development/tasks/audit-tailwind-config.md +270 -0
  143. package/.aios-core/development/tasks/audit-utilities.md +358 -0
  144. package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -0
  145. package/.aios-core/development/tasks/brownfield-create-epic.md +486 -0
  146. package/.aios-core/development/tasks/brownfield-create-story.md +357 -0
  147. package/.aios-core/development/tasks/build-component.md +478 -0
  148. package/.aios-core/development/tasks/calculate-roi.md +455 -0
  149. package/.aios-core/development/tasks/ci-cd-configuration.md +764 -0
  150. package/.aios-core/development/tasks/cleanup-utilities.md +670 -0
  151. package/.aios-core/development/tasks/collaborative-edit.md +1109 -0
  152. package/.aios-core/development/tasks/compose-molecule.md +284 -0
  153. package/.aios-core/development/tasks/consolidate-patterns.md +414 -0
  154. package/.aios-core/development/tasks/correct-course.md +280 -0
  155. package/.aios-core/development/tasks/create-agent.md +322 -0
  156. package/.aios-core/development/tasks/create-brownfield-story.md +727 -0
  157. package/.aios-core/development/tasks/create-deep-research-prompt.md +499 -0
  158. package/.aios-core/development/tasks/create-doc.md +316 -0
  159. package/.aios-core/development/tasks/create-next-story.md +774 -0
  160. package/.aios-core/development/tasks/create-suite.md +284 -0
  161. package/.aios-core/development/tasks/create-task.md +372 -0
  162. package/.aios-core/development/tasks/create-workflow.md +371 -0
  163. package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -0
  164. package/.aios-core/development/tasks/db-apply-migration.md +381 -0
  165. package/.aios-core/development/tasks/db-bootstrap.md +642 -0
  166. package/.aios-core/development/tasks/db-domain-modeling.md +693 -0
  167. package/.aios-core/development/tasks/db-dry-run.md +293 -0
  168. package/.aios-core/development/tasks/db-env-check.md +260 -0
  169. package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -0
  170. package/.aios-core/development/tasks/db-explain.md +631 -0
  171. package/.aios-core/development/tasks/db-impersonate.md +495 -0
  172. package/.aios-core/development/tasks/db-load-csv.md +593 -0
  173. package/.aios-core/development/tasks/db-policy-apply.md +653 -0
  174. package/.aios-core/development/tasks/db-rls-audit.md +411 -0
  175. package/.aios-core/development/tasks/db-rollback.md +739 -0
  176. package/.aios-core/development/tasks/db-run-sql.md +613 -0
  177. package/.aios-core/development/tasks/db-schema-audit.md +1011 -0
  178. package/.aios-core/development/tasks/db-seed.md +390 -0
  179. package/.aios-core/development/tasks/db-smoke-test.md +351 -0
  180. package/.aios-core/development/tasks/db-snapshot.md +569 -0
  181. package/.aios-core/development/tasks/db-supabase-setup.md +712 -0
  182. package/.aios-core/development/tasks/db-verify-order.md +515 -0
  183. package/.aios-core/development/tasks/deprecate-component.md +957 -0
  184. package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -0
  185. package/.aios-core/development/tasks/dev-backlog-debt.md +469 -0
  186. package/.aios-core/development/tasks/dev-develop-story.md +846 -0
  187. package/.aios-core/development/tasks/dev-improve-code-quality.md +873 -0
  188. package/.aios-core/development/tasks/dev-optimize-performance.md +1034 -0
  189. package/.aios-core/development/tasks/dev-suggest-refactoring.md +871 -0
  190. package/.aios-core/development/tasks/dev-validate-next-story.md +349 -0
  191. package/.aios-core/development/tasks/document-project.md +553 -0
  192. package/.aios-core/development/tasks/environment-bootstrap.md +1311 -0
  193. package/.aios-core/development/tasks/execute-checklist.md +301 -0
  194. package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -0
  195. package/.aios-core/development/tasks/extend-pattern.md +269 -0
  196. package/.aios-core/development/tasks/extract-tokens.md +467 -0
  197. package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -0
  198. package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +261 -0
  199. package/.aios-core/development/tasks/generate-documentation.md +284 -0
  200. package/.aios-core/development/tasks/generate-migration-strategy.md +522 -0
  201. package/.aios-core/development/tasks/generate-shock-report.md +501 -0
  202. package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -0
  203. package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -0
  204. package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -0
  205. package/.aios-core/development/tasks/github-devops-version-management.md +483 -0
  206. package/.aios-core/development/tasks/improve-self.md +823 -0
  207. package/.aios-core/development/tasks/index-docs.md +388 -0
  208. package/.aios-core/development/tasks/init-project-status.md +506 -0
  209. package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -0
  210. package/.aios-core/development/tasks/kb-mode-interaction.md +284 -0
  211. package/.aios-core/development/tasks/learn-patterns.md +901 -0
  212. package/.aios-core/development/tasks/mcp-workflow.md +437 -0
  213. package/.aios-core/development/tasks/modify-agent.md +382 -0
  214. package/.aios-core/development/tasks/modify-task.md +425 -0
  215. package/.aios-core/development/tasks/modify-workflow.md +466 -0
  216. package/.aios-core/development/tasks/po-backlog-add.md +370 -0
  217. package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -0
  218. package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -0
  219. package/.aios-core/development/tasks/po-pull-story.md +316 -0
  220. package/.aios-core/development/tasks/po-stories-index.md +351 -0
  221. package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -0
  222. package/.aios-core/development/tasks/po-sync-story.md +303 -0
  223. package/.aios-core/development/tasks/pr-automation.md +701 -0
  224. package/.aios-core/development/tasks/propose-modification.md +843 -0
  225. package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -0
  226. package/.aios-core/development/tasks/qa-gate.md +374 -0
  227. package/.aios-core/development/tasks/qa-generate-tests.md +1175 -0
  228. package/.aios-core/development/tasks/qa-nfr-assess.md +558 -0
  229. package/.aios-core/development/tasks/qa-review-proposal.md +1158 -0
  230. package/.aios-core/development/tasks/qa-review-story.md +683 -0
  231. package/.aios-core/development/tasks/qa-risk-profile.md +567 -0
  232. package/.aios-core/development/tasks/qa-run-tests.md +277 -0
  233. package/.aios-core/development/tasks/qa-test-design.md +388 -0
  234. package/.aios-core/development/tasks/qa-trace-requirements.md +477 -0
  235. package/.aios-core/development/tasks/release-management.md +723 -0
  236. package/.aios-core/development/tasks/security-audit.md +554 -0
  237. package/.aios-core/development/tasks/security-scan.md +790 -0
  238. package/.aios-core/development/tasks/setup-database.md +741 -0
  239. package/.aios-core/development/tasks/setup-design-system.md +462 -0
  240. package/.aios-core/development/tasks/setup-github.md +874 -0
  241. package/.aios-core/development/tasks/setup-llm-routing.md +229 -0
  242. package/.aios-core/development/tasks/setup-mcp-docker.md +584 -0
  243. package/.aios-core/development/tasks/shard-doc.md +538 -0
  244. package/.aios-core/development/tasks/sm-create-next-story.md +480 -0
  245. package/.aios-core/development/tasks/sync-documentation.md +865 -0
  246. package/.aios-core/development/tasks/tailwind-upgrade.md +294 -0
  247. package/.aios-core/development/tasks/test-as-user.md +621 -0
  248. package/.aios-core/development/tasks/test-validation-task.md +171 -0
  249. package/.aios-core/development/tasks/undo-last.md +347 -0
  250. package/.aios-core/development/tasks/update-manifest.md +410 -0
  251. package/.aios-core/development/tasks/ux-create-wireframe.md +617 -0
  252. package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -0
  253. package/.aios-core/development/tasks/ux-user-research.md +559 -0
  254. package/.aios-core/development/tasks/validate-next-story.md +423 -0
  255. package/.aios-core/development/tasks/validate-structure.md +243 -0
  256. package/.aios-core/development/workflows/README.md +84 -0
  257. package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -0
  258. package/.aios-core/development/workflows/brownfield-service.yaml +187 -0
  259. package/.aios-core/development/workflows/brownfield-ui.yaml +197 -0
  260. package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -0
  261. package/.aios-core/development/workflows/greenfield-service.yaml +206 -0
  262. package/.aios-core/development/workflows/greenfield-ui.yaml +235 -0
  263. package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -0
  264. package/.aios-core/docs/component-creation-guide.md +458 -0
  265. package/.aios-core/docs/session-update-pattern.md +307 -0
  266. package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -0
  267. package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -0
  268. package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -0
  269. package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -0
  270. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -0
  271. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -0
  272. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -0
  273. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -0
  274. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -0
  275. package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -0
  276. package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -0
  277. package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -0
  278. package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -0
  279. package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -0
  280. package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -0
  281. package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -0
  282. package/.aios-core/docs/template-syntax.md +267 -0
  283. package/.aios-core/docs/troubleshooting-guide.md +625 -0
  284. package/.aios-core/elicitation/agent-elicitation.js +272 -0
  285. package/.aios-core/elicitation/task-elicitation.js +281 -0
  286. package/.aios-core/elicitation/workflow-elicitation.js +315 -0
  287. package/.aios-core/index.d.ts +8 -0
  288. package/.aios-core/index.esm.js +16 -0
  289. package/.aios-core/index.js +16 -0
  290. package/.aios-core/infrastructure/README.md +126 -0
  291. package/.aios-core/infrastructure/index.js +199 -0
  292. package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -0
  293. package/.aios-core/infrastructure/integrations/pm-adapters/clickup-adapter.js +345 -0
  294. package/.aios-core/infrastructure/integrations/pm-adapters/github-adapter.js +392 -0
  295. package/.aios-core/infrastructure/integrations/pm-adapters/jira-adapter.js +448 -0
  296. package/.aios-core/infrastructure/integrations/pm-adapters/local-adapter.js +175 -0
  297. package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +122 -0
  298. package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +89 -0
  299. package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +780 -0
  300. package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +950 -0
  301. package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +425 -0
  302. package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +132 -0
  303. package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +381 -0
  304. package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +203 -0
  305. package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +24 -0
  306. package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +51 -0
  307. package/.aios-core/infrastructure/scripts/aios-validator.js +294 -0
  308. package/.aios-core/infrastructure/scripts/approval-workflow.js +643 -0
  309. package/.aios-core/infrastructure/scripts/atomic-layer-classifier.js +308 -0
  310. package/.aios-core/infrastructure/scripts/backup-manager.js +607 -0
  311. package/.aios-core/infrastructure/scripts/batch-creator.js +608 -0
  312. package/.aios-core/infrastructure/scripts/branch-manager.js +391 -0
  313. package/.aios-core/infrastructure/scripts/capability-analyzer.js +535 -0
  314. package/.aios-core/infrastructure/scripts/clickup-helpers.js +226 -0
  315. package/.aios-core/infrastructure/scripts/code-quality-improver.js +1312 -0
  316. package/.aios-core/infrastructure/scripts/commit-message-generator.js +850 -0
  317. package/.aios-core/infrastructure/scripts/component-generator.js +738 -0
  318. package/.aios-core/infrastructure/scripts/component-metadata.js +627 -0
  319. package/.aios-core/infrastructure/scripts/component-search.js +277 -0
  320. package/.aios-core/infrastructure/scripts/config-cache.js +322 -0
  321. package/.aios-core/infrastructure/scripts/config-loader.js +349 -0
  322. package/.aios-core/infrastructure/scripts/conflict-resolver.js +675 -0
  323. package/.aios-core/infrastructure/scripts/coverage-analyzer.js +882 -0
  324. package/.aios-core/infrastructure/scripts/dependency-analyzer.js +638 -0
  325. package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +703 -0
  326. package/.aios-core/infrastructure/scripts/diff-generator.js +129 -0
  327. package/.aios-core/infrastructure/scripts/documentation-integrity/brownfield-analyzer.js +501 -0
  328. package/.aios-core/infrastructure/scripts/documentation-integrity/config-generator.js +329 -0
  329. package/.aios-core/infrastructure/scripts/documentation-integrity/deployment-config-loader.js +282 -0
  330. package/.aios-core/infrastructure/scripts/documentation-integrity/doc-generator.js +331 -0
  331. package/.aios-core/infrastructure/scripts/documentation-integrity/gitignore-generator.js +313 -0
  332. package/.aios-core/infrastructure/scripts/documentation-integrity/index.js +74 -0
  333. package/.aios-core/infrastructure/scripts/documentation-integrity/mode-detector.js +358 -0
  334. package/.aios-core/infrastructure/scripts/documentation-synchronizer.js +1432 -0
  335. package/.aios-core/infrastructure/scripts/framework-analyzer.js +746 -0
  336. package/.aios-core/infrastructure/scripts/git-config-detector.js +293 -0
  337. package/.aios-core/infrastructure/scripts/git-wrapper.js +443 -0
  338. package/.aios-core/infrastructure/scripts/improvement-engine.js +758 -0
  339. package/.aios-core/infrastructure/scripts/improvement-validator.js +710 -0
  340. package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +267 -0
  341. package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free.cmd +80 -0
  342. package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free.sh +62 -0
  343. package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-max.cmd +26 -0
  344. package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-max.sh +18 -0
  345. package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +970 -0
  346. package/.aios-core/infrastructure/scripts/modification-validator.js +555 -0
  347. package/.aios-core/infrastructure/scripts/output-formatter.js +297 -0
  348. package/.aios-core/infrastructure/scripts/performance-analyzer.js +758 -0
  349. package/.aios-core/infrastructure/scripts/performance-and-error-resolver.js +258 -0
  350. package/.aios-core/infrastructure/scripts/performance-optimizer.js +1902 -0
  351. package/.aios-core/infrastructure/scripts/performance-tracker.js +452 -0
  352. package/.aios-core/infrastructure/scripts/pm-adapter-factory.js +181 -0
  353. package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -0
  354. package/.aios-core/infrastructure/scripts/project-status-loader.js +445 -0
  355. package/.aios-core/infrastructure/scripts/refactoring-suggester.js +1139 -0
  356. package/.aios-core/infrastructure/scripts/repository-detector.js +64 -0
  357. package/.aios-core/infrastructure/scripts/sandbox-tester.js +618 -0
  358. package/.aios-core/infrastructure/scripts/security-checker.js +359 -0
  359. package/.aios-core/infrastructure/scripts/source-tree-guardian/index.js +375 -0
  360. package/.aios-core/infrastructure/scripts/source-tree-guardian/manifest-generator.js +410 -0
  361. package/.aios-core/infrastructure/scripts/source-tree-guardian/rules/naming-rules.yaml +285 -0
  362. package/.aios-core/infrastructure/scripts/source-tree-guardian/rules/placement-rules.yaml +262 -0
  363. package/.aios-core/infrastructure/scripts/source-tree-guardian/validator.js +468 -0
  364. package/.aios-core/infrastructure/scripts/spot-check-validator.js +149 -0
  365. package/.aios-core/infrastructure/scripts/status-mapper.js +115 -0
  366. package/.aios-core/infrastructure/scripts/template-engine.js +240 -0
  367. package/.aios-core/infrastructure/scripts/template-validator.js +279 -0
  368. package/.aios-core/infrastructure/scripts/test-generator.js +844 -0
  369. package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1081 -0
  370. package/.aios-core/infrastructure/scripts/test-utilities-fast.js +126 -0
  371. package/.aios-core/infrastructure/scripts/test-utilities.js +200 -0
  372. package/.aios-core/infrastructure/scripts/tool-resolver.js +360 -0
  373. package/.aios-core/infrastructure/scripts/transaction-manager.js +590 -0
  374. package/.aios-core/infrastructure/scripts/usage-analytics.js +634 -0
  375. package/.aios-core/infrastructure/scripts/validate-output-pattern.js +213 -0
  376. package/.aios-core/infrastructure/scripts/visual-impact-generator.js +1056 -0
  377. package/.aios-core/infrastructure/scripts/yaml-validator.js +397 -0
  378. package/.aios-core/infrastructure/templates/coderabbit.yaml.template +279 -0
  379. package/.aios-core/infrastructure/templates/core-config/core-config-brownfield.tmpl.yaml +182 -0
  380. package/.aios-core/infrastructure/templates/core-config/core-config-greenfield.tmpl.yaml +127 -0
  381. package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -0
  382. package/.aios-core/infrastructure/templates/github-workflows/ci.yml.template +169 -0
  383. package/.aios-core/infrastructure/templates/github-workflows/pr-automation.yml.template +330 -0
  384. package/.aios-core/infrastructure/templates/github-workflows/release.yml.template +196 -0
  385. package/.aios-core/infrastructure/templates/gitignore/gitignore-aios-base.tmpl +63 -0
  386. package/.aios-core/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +18 -0
  387. package/.aios-core/infrastructure/templates/gitignore/gitignore-node.tmpl +85 -0
  388. package/.aios-core/infrastructure/templates/gitignore/gitignore-python.tmpl +145 -0
  389. package/.aios-core/infrastructure/templates/project-docs/coding-standards-tmpl.md +346 -0
  390. package/.aios-core/infrastructure/templates/project-docs/source-tree-tmpl.md +177 -0
  391. package/.aios-core/infrastructure/templates/project-docs/tech-stack-tmpl.md +267 -0
  392. package/.aios-core/infrastructure/tests/project-status-loader.test.js +394 -0
  393. package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -0
  394. package/.aios-core/infrastructure/tests/utilities-audit-results.json +501 -0
  395. package/.aios-core/infrastructure/tests/validate-module.js +97 -0
  396. package/.aios-core/infrastructure/tools/README.md +222 -0
  397. package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -0
  398. package/.aios-core/infrastructure/tools/cli/llm-routing.yaml +126 -0
  399. package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -0
  400. package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -0
  401. package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -0
  402. package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -0
  403. package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -0
  404. package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -0
  405. package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -0
  406. package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -0
  407. package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -0
  408. package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -0
  409. package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -0
  410. package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -0
  411. package/.aios-core/install-manifest.yaml +347 -0
  412. package/.aios-core/manifests/agents.csv +1 -0
  413. package/.aios-core/manifests/schema/manifest-schema.json +190 -0
  414. package/.aios-core/manifests/tasks.csv +121 -0
  415. package/.aios-core/manifests/workers.csv +204 -0
  416. package/.aios-core/package.json +103 -0
  417. package/.aios-core/product/README.md +56 -0
  418. package/.aios-core/product/checklists/architect-checklist.md +444 -0
  419. package/.aios-core/product/checklists/change-checklist.md +183 -0
  420. package/.aios-core/product/checklists/database-design-checklist.md +119 -0
  421. package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -0
  422. package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -0
  423. package/.aios-core/product/checklists/pm-checklist.md +376 -0
  424. package/.aios-core/product/checklists/po-master-checklist.md +442 -0
  425. package/.aios-core/product/checklists/pre-push-checklist.md +108 -0
  426. package/.aios-core/product/checklists/release-checklist.md +122 -0
  427. package/.aios-core/product/checklists/story-dod-checklist.md +102 -0
  428. package/.aios-core/product/checklists/story-draft-checklist.md +216 -0
  429. package/.aios-core/product/data/brainstorming-techniques.md +37 -0
  430. package/.aios-core/product/data/elicitation-methods.md +135 -0
  431. package/.aios-core/product/data/mode-selection-best-practices.md +471 -0
  432. package/.aios-core/product/data/test-levels-framework.md +149 -0
  433. package/.aios-core/product/data/test-priorities-matrix.md +175 -0
  434. package/.aios-core/product/templates/1mcp-config.yaml +225 -0
  435. package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -0
  436. package/.aios-core/product/templates/activation-instructions-template.md +258 -0
  437. package/.aios-core/product/templates/adr.hbs +125 -0
  438. package/.aios-core/product/templates/agent-template.yaml +121 -0
  439. package/.aios-core/product/templates/architecture-tmpl.yaml +651 -0
  440. package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +156 -0
  441. package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +476 -0
  442. package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +280 -0
  443. package/.aios-core/product/templates/changelog-template.md +134 -0
  444. package/.aios-core/product/templates/command-rationalization-matrix.md +152 -0
  445. package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +293 -0
  446. package/.aios-core/product/templates/component-react-tmpl.tsx +98 -0
  447. package/.aios-core/product/templates/dbdr.hbs +241 -0
  448. package/.aios-core/product/templates/design-story-tmpl.yaml +587 -0
  449. package/.aios-core/product/templates/ds-artifact-analysis.md +70 -0
  450. package/.aios-core/product/templates/engine/elicitation.js +298 -0
  451. package/.aios-core/product/templates/engine/index.js +308 -0
  452. package/.aios-core/product/templates/engine/loader.js +231 -0
  453. package/.aios-core/product/templates/engine/renderer.js +343 -0
  454. package/.aios-core/product/templates/engine/schemas/adr.schema.json +102 -0
  455. package/.aios-core/product/templates/engine/schemas/dbdr.schema.json +205 -0
  456. package/.aios-core/product/templates/engine/schemas/epic.schema.json +175 -0
  457. package/.aios-core/product/templates/engine/schemas/pmdr.schema.json +175 -0
  458. package/.aios-core/product/templates/engine/schemas/prd-v2.schema.json +300 -0
  459. package/.aios-core/product/templates/engine/schemas/prd.schema.json +152 -0
  460. package/.aios-core/product/templates/engine/schemas/story.schema.json +222 -0
  461. package/.aios-core/product/templates/engine/schemas/task.schema.json +154 -0
  462. package/.aios-core/product/templates/engine/validator.js +294 -0
  463. package/.aios-core/product/templates/epic.hbs +212 -0
  464. package/.aios-core/product/templates/eslintrc-security.json +32 -0
  465. package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +206 -0
  466. package/.aios-core/product/templates/front-end-spec-tmpl.yaml +349 -0
  467. package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +805 -0
  468. package/.aios-core/product/templates/github-actions-cd.yml +212 -0
  469. package/.aios-core/product/templates/github-actions-ci.yml +172 -0
  470. package/.aios-core/product/templates/github-pr-template.md +67 -0
  471. package/.aios-core/product/templates/gordon-mcp.yaml +140 -0
  472. package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -0
  473. package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -0
  474. package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -0
  475. package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -0
  476. package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -0
  477. package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -0
  478. package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -0
  479. package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -0
  480. package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -0
  481. package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -0
  482. package/.aios-core/product/templates/market-research-tmpl.yaml +252 -0
  483. package/.aios-core/product/templates/mcp-workflow.js +271 -0
  484. package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -0
  485. package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -0
  486. package/.aios-core/product/templates/personalized-agent-template.md +258 -0
  487. package/.aios-core/product/templates/personalized-checklist-template.md +340 -0
  488. package/.aios-core/product/templates/personalized-task-template-v2.md +905 -0
  489. package/.aios-core/product/templates/personalized-task-template.md +344 -0
  490. package/.aios-core/product/templates/personalized-template-file.yaml +322 -0
  491. package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -0
  492. package/.aios-core/product/templates/pmdr.hbs +186 -0
  493. package/.aios-core/product/templates/prd-tmpl.yaml +202 -0
  494. package/.aios-core/product/templates/prd-v2.0.hbs +216 -0
  495. package/.aios-core/product/templates/prd.hbs +201 -0
  496. package/.aios-core/product/templates/project-brief-tmpl.yaml +221 -0
  497. package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -0
  498. package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -0
  499. package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -0
  500. package/.aios-core/product/templates/shock-report-tmpl.html +502 -0
  501. package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -0
  502. package/.aios-core/product/templates/story-tmpl.yaml +332 -0
  503. package/.aios-core/product/templates/story.hbs +263 -0
  504. package/.aios-core/product/templates/task-execution-report.md +495 -0
  505. package/.aios-core/product/templates/task-template.md +123 -0
  506. package/.aios-core/product/templates/task.hbs +170 -0
  507. package/.aios-core/product/templates/tmpl-comment-on-examples.sql +158 -0
  508. package/.aios-core/product/templates/tmpl-migration-script.sql +91 -0
  509. package/.aios-core/product/templates/tmpl-rls-granular-policies.sql +104 -0
  510. package/.aios-core/product/templates/tmpl-rls-kiss-policy.sql +10 -0
  511. package/.aios-core/product/templates/tmpl-rls-roles.sql +135 -0
  512. package/.aios-core/product/templates/tmpl-rls-simple.sql +77 -0
  513. package/.aios-core/product/templates/tmpl-rls-tenant.sql +152 -0
  514. package/.aios-core/product/templates/tmpl-rollback-script.sql +77 -0
  515. package/.aios-core/product/templates/tmpl-seed-data.sql +140 -0
  516. package/.aios-core/product/templates/tmpl-smoke-test.sql +16 -0
  517. package/.aios-core/product/templates/tmpl-staging-copy-merge.sql +139 -0
  518. package/.aios-core/product/templates/tmpl-stored-proc.sql +140 -0
  519. package/.aios-core/product/templates/tmpl-trigger.sql +152 -0
  520. package/.aios-core/product/templates/tmpl-view-materialized.sql +133 -0
  521. package/.aios-core/product/templates/tmpl-view.sql +177 -0
  522. package/.aios-core/product/templates/token-exports-css-tmpl.css +240 -0
  523. package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -0
  524. package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -0
  525. package/.aios-core/product/templates/workflow-template.yaml +134 -0
  526. package/.aios-core/quality/metrics-collector.js +572 -0
  527. package/.aios-core/quality/metrics-hook.js +260 -0
  528. package/.aios-core/quality/schemas/quality-metrics.schema.json +233 -0
  529. package/.aios-core/quality/seed-metrics.js +336 -0
  530. package/.aios-core/scripts/README.md +354 -0
  531. package/.aios-core/scripts/aios-doc-template.md +325 -0
  532. package/.aios-core/scripts/batch-migrate-phase1.ps1 +36 -0
  533. package/.aios-core/scripts/batch-migrate-phase2.ps1 +88 -0
  534. package/.aios-core/scripts/batch-migrate-phase3.ps1 +45 -0
  535. package/.aios-core/scripts/command-execution-hook.js +201 -0
  536. package/.aios-core/scripts/context-detector.js +226 -0
  537. package/.aios-core/scripts/elicitation-engine.js +385 -0
  538. package/.aios-core/scripts/elicitation-session-manager.js +300 -0
  539. package/.aios-core/scripts/migrate-framework-docs.sh +300 -0
  540. package/.aios-core/scripts/session-context-loader.js +286 -0
  541. package/.aios-core/scripts/test-template-system.js +941 -0
  542. package/.aios-core/scripts/validate-phase1.ps1 +35 -0
  543. package/.aios-core/scripts/workflow-management.md +69 -0
  544. package/.aios-core/tasks/find-component.md.legacy +391 -0
  545. package/.aios-core/tasks/generate-commit-message.md.legacy +426 -0
  546. package/.aios-core/tasks/generate-migration.md.legacy +382 -0
  547. package/.aios-core/tasks/rollback-modification.md.legacy +307 -0
  548. package/.aios-core/tasks/update-tests.md.legacy +283 -0
  549. package/.aios-core/user-guide.md +1413 -0
  550. package/.aios-core/working-in-the-brownfield.md +361 -0
  551. package/.claude/CLAUDE.md +221 -0
  552. package/LICENSE +48 -0
  553. package/README.md +703 -0
  554. package/bin/aios-init-old.js +532 -0
  555. package/bin/aios-init-v4.js +390 -0
  556. package/bin/aios-init.backup-v1.1.4.js +352 -0
  557. package/bin/aios-init.js +736 -0
  558. package/bin/aios-minimal.js +26 -0
  559. package/bin/aios.js +279 -0
  560. package/bin/migrate-pm-config.js +219 -0
  561. package/bin/modules/env-config.js +436 -0
  562. package/bin/modules/mcp-installer.js +383 -0
  563. package/bin/utils/install-errors.js +339 -0
  564. package/bin/utils/install-transaction.js +445 -0
  565. package/index.d.ts +19 -0
  566. package/index.esm.js +21 -0
  567. package/index.js +94 -0
  568. package/package.json +161 -0
  569. package/packages/installer/package.json +39 -0
  570. package/packages/installer/src/config/configure-environment.js +312 -0
  571. package/packages/installer/src/config/templates/core-config-template.js +183 -0
  572. package/packages/installer/src/config/templates/env-template.js +127 -0
  573. package/packages/installer/src/config/validation/config-validator.js +243 -0
  574. package/packages/installer/src/detection/detect-project-type.js +81 -0
  575. package/packages/installer/src/wizard/wizard.js +244 -0
  576. package/packages/installer/tests/integration/environment-configuration.test.js +328 -0
  577. package/packages/installer/tests/integration/wizard-detection.test.js +349 -0
  578. package/packages/installer/tests/unit/config-validator.test.js +315 -0
  579. package/packages/installer/tests/unit/detection/detect-project-type.test.js +401 -0
  580. package/packages/installer/tests/unit/env-template.test.js +185 -0
  581. package/src/config/ide-configs.js +189 -0
  582. package/src/installer/aios-core-installer.js +319 -0
  583. package/src/installer/dependency-installer.js +335 -0
  584. package/src/utils/aios-colors.js +234 -0
  585. package/src/wizard/feedback.js +218 -0
  586. package/src/wizard/ide-config-generator.js +488 -0
  587. package/src/wizard/ide-selector.js +84 -0
  588. package/src/wizard/index.js +589 -0
  589. package/src/wizard/questions.js +249 -0
  590. package/src/wizard/validation/index.js +120 -0
  591. package/src/wizard/validation/report-generator.js +269 -0
  592. package/src/wizard/validation/troubleshooting-system.js +346 -0
  593. package/src/wizard/validation/validators/config-validator.js +362 -0
  594. package/src/wizard/validation/validators/dependency-validator.js +333 -0
  595. package/src/wizard/validation/validators/file-structure-validator.js +181 -0
  596. package/src/wizard/validation/validators/mcp-health-checker.js +310 -0
  597. package/src/wizard/validators.js +274 -0
  598. package/templates/squad/LICENSE +21 -0
  599. package/templates/squad/README.md +37 -0
  600. package/templates/squad/agents/example-agent.yaml +36 -0
  601. package/templates/squad/package.json +19 -0
  602. package/templates/squad/squad.yaml +25 -0
  603. package/templates/squad/tasks/example-task.yaml +46 -0
  604. package/templates/squad/templates/example-template.md +24 -0
  605. package/templates/squad/tests/example-agent.test.js +53 -0
  606. package/templates/squad/workflows/example-workflow.yaml +54 -0
  607. package/tools/package-builder.js +35 -0
@@ -0,0 +1,381 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Phase 3: Tools/Scripts/Validation Logic Resolution Script
5
+ * Story 6.1.7.1 - Task Content Completion
6
+ *
7
+ * Purpose: Resolve ~1,375 TODOs for:
8
+ * - Task 3.1: Tools descriptions (~685 TODOs)
9
+ * - Task 3.2: Scripts descriptions (~690 TODOs)
10
+ * - Task 3.3: Pre/Post-condition validation logic (~690 TODOs)
11
+ */
12
+
13
+ const fs = require('fs');
14
+ const path = require('path');
15
+
16
+ const TASKS_DIR = path.join(process.cwd(), '.aios-core', 'tasks');
17
+ const REPORT_FILE = path.join(process.cwd(), '.ai', 'task-3.1-3.2-3.3-phase3-report.json');
18
+
19
+ // Tools templates by task category
20
+ const TOOLS_BY_CATEGORY = {
21
+ CREATE: [
22
+ { tool: 'component-generator', purpose: 'Generate new components from templates', source: '.aios-core/scripts/component-generator.js' },
23
+ { tool: 'file-system', purpose: 'File creation and validation', source: 'Node.js fs module' },
24
+ ],
25
+ MODIFY: [
26
+ { tool: 'file-system', purpose: 'File reading, modification, and backup', source: 'Node.js fs module' },
27
+ { tool: 'ast-parser', purpose: 'Parse and modify code safely', source: '.aios-core/utils/ast-parser.js' },
28
+ ],
29
+ ANALYZE: [
30
+ { tool: 'code-analyzer', purpose: 'Static code analysis and metrics', source: '.aios-core/utils/code-analyzer.js' },
31
+ { tool: 'file-system', purpose: 'Recursive directory traversal', source: 'Node.js fs module' },
32
+ ],
33
+ VALIDATE: [
34
+ { tool: 'validation-engine', purpose: 'Rule-based validation and reporting', source: '.aios-core/utils/validation-engine.js' },
35
+ { tool: 'schema-validator', purpose: 'JSON/YAML schema validation', source: 'ajv or similar' },
36
+ ],
37
+ EXECUTE: [
38
+ { tool: 'task-runner', purpose: 'Task execution and orchestration', source: '.aios-core/core/task-runner.js' },
39
+ { tool: 'logger', purpose: 'Execution logging and error tracking', source: '.aios-core/utils/logger.js' },
40
+ ],
41
+ DATABASE: [
42
+ { tool: 'neo4j-driver', purpose: 'Neo4j database connection and query execution', source: 'npm: neo4j-driver' },
43
+ { tool: 'query-validator', purpose: 'Cypher query syntax validation', source: '.aios-core/utils/db-query-validator.js' },
44
+ ],
45
+ DOCUMENTATION: [
46
+ { tool: 'markdown-renderer', purpose: 'Markdown parsing and rendering', source: 'npm: marked or similar' },
47
+ { tool: 'template-engine', purpose: 'Document template processing', source: '.aios-core/product/templates/' },
48
+ ],
49
+ SECURITY: [
50
+ { tool: 'security-scanner', purpose: 'Static security analysis and vulnerability detection', source: 'npm: eslint-plugin-security or similar' },
51
+ { tool: 'dependency-checker', purpose: 'Check for vulnerable dependencies', source: 'npm audit or snyk' },
52
+ ],
53
+ INIT: [
54
+ { tool: 'project-scaffolder', purpose: 'Generate project structure and config', source: '.aios-core/scripts/project-scaffolder.js' },
55
+ { tool: 'config-manager', purpose: 'Initialize configuration files', source: '.aios-core/utils/config-manager.js' },
56
+ ],
57
+ ROLLBACK: [
58
+ { tool: 'backup-manager', purpose: 'Backup and restore operations', source: '.aios-core/utils/backup-manager.js' },
59
+ { tool: 'version-control', purpose: 'Git operations for rollback', source: 'npm: simple-git' },
60
+ ],
61
+ };
62
+
63
+ // Scripts templates by task category
64
+ const SCRIPTS_BY_CATEGORY = {
65
+ CREATE: [
66
+ { script: 'create-component.js', purpose: 'Component creation workflow', language: 'JavaScript', location: '.aios-core/scripts/create-component.js' },
67
+ ],
68
+ MODIFY: [
69
+ { script: 'modify-file.js', purpose: 'Safe file modification with backup', language: 'JavaScript', location: '.aios-core/scripts/modify-file.js' },
70
+ ],
71
+ ANALYZE: [
72
+ { script: 'analyze-codebase.js', purpose: 'Codebase analysis and reporting', language: 'JavaScript', location: '.aios-core/scripts/analyze-codebase.js' },
73
+ ],
74
+ VALIDATE: [
75
+ { script: 'run-validation.js', purpose: 'Execute validation rules and generate report', language: 'JavaScript', location: '.aios-core/scripts/run-validation.js' },
76
+ ],
77
+ EXECUTE: [
78
+ { script: 'execute-task.js', purpose: 'Generic task execution wrapper', language: 'JavaScript', location: '.aios-core/scripts/execute-task.js' },
79
+ ],
80
+ DATABASE: [
81
+ { script: 'db-query.js', purpose: 'Execute Neo4j queries with error handling', language: 'JavaScript', location: '.aios-core/scripts/db-query.js' },
82
+ ],
83
+ DOCUMENTATION: [
84
+ { script: 'generate-docs.js', purpose: 'Documentation generation from templates', language: 'JavaScript', location: '.aios-core/scripts/generate-docs.js' },
85
+ ],
86
+ SECURITY: [
87
+ { script: 'security-scan.js', purpose: 'Run security scans and generate reports', language: 'JavaScript', location: '.aios-core/scripts/security-scan.js' },
88
+ ],
89
+ INIT: [
90
+ { script: 'init-project.js', purpose: 'Project initialization workflow', language: 'JavaScript', location: '.aios-core/scripts/init-project.js' },
91
+ ],
92
+ ROLLBACK: [
93
+ { script: 'rollback-changes.js', purpose: 'Rollback to previous state', language: 'JavaScript', location: '.aios-core/scripts/rollback-changes.js' },
94
+ ],
95
+ };
96
+
97
+ // Validation logic templates by task category
98
+ const VALIDATION_TEMPLATES = {
99
+ preCondition: {
100
+ CREATE: 'Target does not already exist; required inputs provided; permissions granted',
101
+ MODIFY: 'Target exists; backup created; valid modification parameters',
102
+ ANALYZE: 'Target exists and is accessible; analysis tools available',
103
+ VALIDATE: 'Validation rules loaded; target available for validation',
104
+ EXECUTE: 'Task is registered; required parameters provided; dependencies met',
105
+ DATABASE: 'Database connection established; query syntax valid',
106
+ DOCUMENTATION: 'Template exists; source data available',
107
+ SECURITY: 'Scanner available; target accessible; rules configured',
108
+ INIT: 'Directory is empty or force flag set; config valid',
109
+ ROLLBACK: 'Backup exists; rollback target valid',
110
+ },
111
+ postCondition: {
112
+ CREATE: 'Resource created successfully; validation passed; no errors logged',
113
+ MODIFY: 'Modification applied; backup preserved; integrity verified',
114
+ ANALYZE: 'Analysis complete; report generated; no critical issues',
115
+ VALIDATE: 'Validation executed; results accurate; report generated',
116
+ EXECUTE: 'Task completed; exit code 0; expected outputs created',
117
+ DATABASE: 'Query executed; results returned; transaction committed',
118
+ DOCUMENTATION: 'Documentation generated; format valid; links working',
119
+ SECURITY: 'Scan completed; vulnerabilities reported; no scan errors',
120
+ INIT: 'Project initialized; config files created; structure valid',
121
+ ROLLBACK: 'State restored; integrity verified; no data loss',
122
+ },
123
+ acceptanceCriterion: {
124
+ CREATE: 'Resource exists and is valid; no duplicate resources created',
125
+ MODIFY: 'Changes applied correctly; original backed up; rollback possible',
126
+ ANALYZE: 'Analysis accurate; all targets covered; report complete',
127
+ VALIDATE: 'Validation rules applied; pass/fail accurate; actionable feedback',
128
+ EXECUTE: 'Task completed as expected; side effects documented',
129
+ DATABASE: 'Data persisted correctly; constraints respected; no orphaned data',
130
+ DOCUMENTATION: 'Documentation readable; examples work; links valid',
131
+ SECURITY: 'No critical vulnerabilities; all checks passed',
132
+ INIT: 'Project structure correct; all config files valid',
133
+ ROLLBACK: 'Original state restored; no residual changes',
134
+ },
135
+ };
136
+
137
+ // Determine task category from filename
138
+ function getTaskCategory(filename) {
139
+ const categories = {
140
+ CREATE: ['create-', 'compose-', 'build-', 'generate-'],
141
+ MODIFY: ['modify-', 'update-', 'extend-', 'edit-'],
142
+ ANALYZE: ['analyze-', 'audit-', 'review-', 'risk-'],
143
+ VALIDATE: ['validate-', 'qa-', 'gate-', 'check-'],
144
+ EXECUTE: ['execute-', 'run-', 'apply-', 'deploy-'],
145
+ DATABASE: ['db-'],
146
+ DOCUMENTATION: ['doc-', 'index-'],
147
+ SECURITY: ['security-'],
148
+ INIT: ['init-', 'setup-'],
149
+ ROLLBACK: ['undo-', 'rollback-'],
150
+ };
151
+
152
+ for (const [category, prefixes] of Object.entries(categories)) {
153
+ for (const prefix of prefixes) {
154
+ if (filename.startsWith(prefix)) {
155
+ return category;
156
+ }
157
+ }
158
+ }
159
+ return 'EXECUTE'; // Default
160
+ }
161
+
162
+ // Format Tools section
163
+ function formatToolsSection(tools) {
164
+ if (tools.length === 0) {
165
+ return `- **Tool:** N/A
166
+ - **Purpose:** No external tools required
167
+ - **Source:** N/A`;
168
+ }
169
+
170
+ return tools.map(t => `- **Tool:** ${t.tool}
171
+ - **Purpose:** ${t.purpose}
172
+ - **Source:** ${t.source}`).join('\n\n');
173
+ }
174
+
175
+ // Format Scripts section
176
+ function formatScriptsSection(scripts) {
177
+ if (scripts.length === 0) {
178
+ return `- **Script:** N/A
179
+ - **Purpose:** No agent-specific scripts
180
+ - **Language:** N/A
181
+ - **Location:** N/A`;
182
+ }
183
+
184
+ return scripts.map(s => `- **Script:** ${s.script}
185
+ - **Purpose:** ${s.purpose}
186
+ - **Language:** ${s.language}
187
+ - **Location:** ${s.location}`).join('\n\n');
188
+ }
189
+
190
+ // Process single task file
191
+ function processTaskFile(filename) {
192
+ const filePath = path.join(TASKS_DIR, filename);
193
+
194
+ // Skip backup files
195
+ if (filename.includes('.pre-task-id-fix') || filename.includes('.v1-backup')) {
196
+ return { skipped: true, reason: 'backup file' };
197
+ }
198
+
199
+ let content = fs.readFileSync(filePath, 'utf8');
200
+ let modified = false;
201
+ const todosResolved = { tools: 0, scripts: 0, validation: 0 };
202
+
203
+ // Determine task category
204
+ const category = getTaskCategory(filename);
205
+ const tools = TOOLS_BY_CATEGORY[category] || [];
206
+ const scripts = SCRIPTS_BY_CATEGORY[category] || [];
207
+
208
+ // Task 3.1: Resolve Tools section
209
+ const toolsPattern = /- \*\*Tool:\*\* N\/A\n {2}- \*\*Purpose:\*\* \{TODO: what this tool does\}\n {2}- \*\*Source:\*\* \{TODO: where to find it\}/;
210
+ if (toolsPattern.test(content)) {
211
+ content = content.replace(toolsPattern, formatToolsSection(tools));
212
+ modified = true;
213
+ todosResolved.tools += 2; // Purpose + Source
214
+ }
215
+
216
+ // Task 3.2: Resolve Scripts section
217
+ const scriptsPattern = /- \*\*Script:\*\* N\/A\n {2}- \*\*Purpose:\*\* \{TODO: what this script does\}\n {2}- \*\*Language:\*\* \{TODO: JavaScript \| Python \| Bash\}\n {2}- \*\*Location:\*\* \{TODO: file path\}/;
218
+ if (scriptsPattern.test(content)) {
219
+ content = content.replace(scriptsPattern, formatScriptsSection(scripts));
220
+ modified = true;
221
+ todosResolved.scripts += 3; // Purpose + Language + Location
222
+ }
223
+
224
+ // Task 3.3: Resolve Pre-Conditions validation
225
+ const preCondPattern = /- \[ \] \{TODO: condition description\}\n {4}tipo: pre-condition\n {4}blocker: true\n {4}validação: \|\n {6}\{TODO: validation logic\}\n {4}error_message: "\{TODO: error message\}"/g;
226
+ const preCondValidation = VALIDATION_TEMPLATES.preCondition[category] || 'Prerequisites validated';
227
+ const preCondReplacement = `- [ ] ${preCondValidation}
228
+ tipo: pre-condition
229
+ blocker: true
230
+ validação: |
231
+ Check ${preCondValidation.toLowerCase()}
232
+ error_message: "Pre-condition failed: ${preCondValidation}"`;
233
+
234
+ const preCondMatches = content.match(preCondPattern);
235
+ if (preCondMatches) {
236
+ content = content.replace(preCondPattern, preCondReplacement);
237
+ modified = true;
238
+ todosResolved.validation += preCondMatches.length * 3; // condition + validation + error_message
239
+ }
240
+
241
+ // Task 3.3: Resolve Post-Conditions validation
242
+ const postCondPattern = /- \[ \] \{TODO: verification step\}\n {4}tipo: post-condition\n {4}blocker: true\n {4}validação: \|\n {6}\{TODO: validation logic\}\n {4}error_message: "\{TODO: error message\}"/g;
243
+ const postCondValidation = VALIDATION_TEMPLATES.postCondition[category] || 'Task completed successfully';
244
+ const postCondReplacement = `- [ ] ${postCondValidation}
245
+ tipo: post-condition
246
+ blocker: true
247
+ validação: |
248
+ Verify ${postCondValidation.toLowerCase()}
249
+ error_message: "Post-condition failed: ${postCondValidation}"`;
250
+
251
+ const postCondMatches = content.match(postCondPattern);
252
+ if (postCondMatches) {
253
+ content = content.replace(postCondPattern, postCondReplacement);
254
+ modified = true;
255
+ todosResolved.validation += postCondMatches.length * 3;
256
+ }
257
+
258
+ // Task 3.3: Resolve Acceptance Criteria validation
259
+ const acceptancePattern = /- \[ \] \{TODO: acceptance criterion\}\n {4}tipo: acceptance-criterion\n {4}blocker: true\n {4}validação: \|\n {6}\{TODO: validation logic\}\n {4}error_message: "\{TODO: error message\}"/g;
260
+ const acceptanceValidation = VALIDATION_TEMPLATES.acceptanceCriterion[category] || 'Acceptance criteria met';
261
+ const acceptanceReplacement = `- [ ] ${acceptanceValidation}
262
+ tipo: acceptance-criterion
263
+ blocker: true
264
+ validação: |
265
+ Assert ${acceptanceValidation.toLowerCase()}
266
+ error_message: "Acceptance criterion not met: ${acceptanceValidation}"`;
267
+
268
+ const acceptanceMatches = content.match(acceptancePattern);
269
+ if (acceptanceMatches) {
270
+ content = content.replace(acceptancePattern, acceptanceReplacement);
271
+ modified = true;
272
+ todosResolved.validation += acceptanceMatches.length * 3;
273
+ }
274
+
275
+ // Write back if modified
276
+ if (modified) {
277
+ fs.writeFileSync(filePath, content, 'utf8');
278
+ }
279
+
280
+ return {
281
+ skipped: false,
282
+ modified,
283
+ category,
284
+ todosResolved,
285
+ };
286
+ }
287
+
288
+ // Main execution
289
+ function main() {
290
+ console.log('šŸš€ Phase 3: Tools/Scripts/Validation Resolution');
291
+ console.log('=================================================\n');
292
+
293
+ // Ensure report directory exists
294
+ const reportDir = path.dirname(REPORT_FILE);
295
+ if (!fs.existsSync(reportDir)) {
296
+ fs.mkdirSync(reportDir, { recursive: true });
297
+ }
298
+
299
+ // Get all task files
300
+ const files = fs.readdirSync(TASKS_DIR).filter(f => f.endsWith('.md'));
301
+ console.log(`šŸ“ Found ${files.length} task files\n`);
302
+
303
+ const results = {
304
+ timestamp: new Date().toISOString(),
305
+ totalFiles: files.length,
306
+ processed: 0,
307
+ skipped: 0,
308
+ modified: 0,
309
+ todosCounts: {
310
+ tools: 0,
311
+ scripts: 0,
312
+ validation: 0,
313
+ total: 0,
314
+ },
315
+ tasksByCategory: {},
316
+ details: [],
317
+ };
318
+
319
+ // Process each file
320
+ files.forEach((filename, index) => {
321
+ const result = processTaskFile(filename);
322
+
323
+ if (result.skipped) {
324
+ results.skipped++;
325
+ console.log(`ā­ļø [${index + 1}/${files.length}] Skipped: ${filename} (${result.reason})`);
326
+ } else {
327
+ results.processed++;
328
+ if (result.modified) {
329
+ results.modified++;
330
+ const totalTodos = result.todosResolved.tools + result.todosResolved.scripts + result.todosResolved.validation;
331
+ results.todosCounts.tools += result.todosResolved.tools;
332
+ results.todosCounts.scripts += result.todosResolved.scripts;
333
+ results.todosCounts.validation += result.todosResolved.validation;
334
+ results.todosCounts.total += totalTodos;
335
+
336
+ // Track by category
337
+ if (!results.tasksByCategory[result.category]) {
338
+ results.tasksByCategory[result.category] = 0;
339
+ }
340
+ results.tasksByCategory[result.category]++;
341
+
342
+ console.log(`āœ… [${index + 1}/${files.length}] ${filename} (${result.category}): ${totalTodos} TODOs resolved`);
343
+ } else {
344
+ console.log(`⚪ [${index + 1}/${files.length}] ${filename}: No changes needed`);
345
+ }
346
+
347
+ results.details.push({
348
+ filename,
349
+ ...result,
350
+ });
351
+ }
352
+ });
353
+
354
+ // Summary
355
+ console.log('\nšŸ“Š Summary:');
356
+ console.log('===========');
357
+ console.log(`Total files: ${results.totalFiles}`);
358
+ console.log(`Processed: ${results.processed}`);
359
+ console.log(`Skipped: ${results.skipped}`);
360
+ console.log(`Modified: ${results.modified}`);
361
+ console.log('\nTODOs Resolved:');
362
+ console.log(` Tools descriptions: ${results.todosCounts.tools}`);
363
+ console.log(` Scripts descriptions: ${results.todosCounts.scripts}`);
364
+ console.log(` Validation logic: ${results.todosCounts.validation}`);
365
+ console.log(` TOTAL: ${results.todosCounts.total}`);
366
+ console.log('\nTasks by Category:');
367
+ Object.entries(results.tasksByCategory).forEach(([cat, count]) => {
368
+ console.log(` ${cat}: ${count} tasks`);
369
+ });
370
+
371
+ // Write report
372
+ fs.writeFileSync(REPORT_FILE, JSON.stringify(results, null, 2));
373
+ console.log(`\nāœ… Report saved: ${REPORT_FILE}`);
374
+
375
+ // Exit with success
376
+ process.exit(0);
377
+ }
378
+
379
+ // Run
380
+ main();
381
+
@@ -0,0 +1,203 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Phase 4: Metadata & Performance TODOs Resolution Script
5
+ * Story 6.1.7.1 - Task Content Completion
6
+ *
7
+ * Resolves remaining TODOs in:
8
+ * - Performance section (token_usage, optimization notes)
9
+ * - Metadata section (story, dependencies, tags)
10
+ */
11
+
12
+ const fs = require('fs');
13
+ const path = require('path');
14
+
15
+ const TASKS_DIR = path.join(process.cwd(), '.aios-core', 'tasks');
16
+ const REPORT_FILE = path.join(process.cwd(), '.ai', 'task-phase4-metadata-performance-report.json');
17
+
18
+ // Performance token usage by atomic layer
19
+ const TOKEN_USAGE_BY_LAYER = {
20
+ Atom: '~500-1,000 tokens',
21
+ Molecule: '~1,000-3,000 tokens',
22
+ Organism: '~3,000-10,000 tokens',
23
+ Template: '~1,500-5,000 tokens',
24
+ Strategy: '~2,000-8,000 tokens',
25
+ Config: '~800-2,500 tokens',
26
+ };
27
+
28
+ // Optimization notes by atomic layer
29
+ const OPTIMIZATION_NOTES_BY_LAYER = {
30
+ Atom: 'Minimize external dependencies; cache results if reusable; validate inputs early',
31
+ Molecule: 'Parallelize independent operations; reuse atom results; implement early exits',
32
+ Organism: 'Break into smaller workflows; implement checkpointing; use async processing where possible',
33
+ Template: 'Cache template compilation; minimize data transformations; lazy load resources',
34
+ Strategy: 'Iterative analysis with depth limits; cache intermediate results; batch similar operations',
35
+ Config: 'Validate configuration early; use atomic writes; implement rollback checkpoints',
36
+ };
37
+
38
+ // Process single task file
39
+ function processTaskFile(filename) {
40
+ const filePath = path.join(TASKS_DIR, filename);
41
+
42
+ // Skip backup files
43
+ if (filename.includes('.pre-task-id-fix') || filename.includes('.v1-backup')) {
44
+ return { skipped: true, reason: 'backup file' };
45
+ }
46
+
47
+ let content = fs.readFileSync(filePath, 'utf8');
48
+ let modified = false;
49
+ let todosResolved = 0;
50
+
51
+ // Extract atomic_layer for context
52
+ const atomicLayerMatch = content.match(/atomic_layer: (\w+)/);
53
+ const atomicLayer = atomicLayerMatch ? atomicLayerMatch[1] : 'Organism';
54
+
55
+ const tokenUsage = TOKEN_USAGE_BY_LAYER[atomicLayer] || '~2,000-5,000 tokens';
56
+ const optimizationNotes = OPTIMIZATION_NOTES_BY_LAYER[atomicLayer] || 'Optimize based on task requirements';
57
+
58
+ // Resolve token_usage TODO
59
+ const tokenPattern = /token_usage: \{TODO: ~X tokens\}/g;
60
+ if (tokenPattern.test(content)) {
61
+ content = content.replace(tokenPattern, `token_usage: ${tokenUsage}`);
62
+ modified = true;
63
+ todosResolved++;
64
+ }
65
+
66
+ // Resolve optimization notes TODO
67
+ const optimizationPattern = /- \{TODO: performance tips\}/g;
68
+ if (optimizationPattern.test(content)) {
69
+ content = content.replace(optimizationPattern, `- ${optimizationNotes}`);
70
+ modified = true;
71
+ todosResolved++;
72
+ }
73
+
74
+ // Resolve story TODO (N/A for now, will be filled when tasks are used in stories)
75
+ const storyPattern = /story: \{TODO: Story ID or N\/A\}/g;
76
+ if (storyPattern.test(content)) {
77
+ content = content.replace(storyPattern, 'story: N/A');
78
+ modified = true;
79
+ todosResolved++;
80
+ }
81
+
82
+ // Resolve dependencies TODO
83
+ const dependenciesPattern = / {2}- \{TODO: dependency file or N\/A\}/g;
84
+ if (dependenciesPattern.test(content)) {
85
+ content = content.replace(dependenciesPattern, ' - N/A');
86
+ modified = true;
87
+ todosResolved++;
88
+ }
89
+
90
+ // Resolve tags TODO
91
+ const tag1Pattern = / {2}- \{TODO: tag1\}/g;
92
+ const tag2Pattern = / {2}- \{TODO: tag2\}/g;
93
+
94
+ // Determine appropriate tags based on task category
95
+ const tags = [];
96
+ if (filename.startsWith('dev-')) tags.push('development', 'code');
97
+ else if (filename.startsWith('qa-')) tags.push('quality-assurance', 'testing');
98
+ else if (filename.startsWith('po-')) tags.push('product-management', 'planning');
99
+ else if (filename.startsWith('db-')) tags.push('database', 'infrastructure');
100
+ else if (filename.startsWith('security-')) tags.push('security', 'audit');
101
+ else if (filename.includes('create-')) tags.push('creation', 'setup');
102
+ else if (filename.includes('analyze-')) tags.push('analysis', 'metrics');
103
+ else if (filename.includes('modify-')) tags.push('modification', 'update');
104
+ else tags.push('automation', 'workflow');
105
+
106
+ if (tag1Pattern.test(content)) {
107
+ content = content.replace(tag1Pattern, ` - ${tags[0] || 'automation'}`);
108
+ modified = true;
109
+ todosResolved++;
110
+ }
111
+
112
+ if (tag2Pattern.test(content)) {
113
+ content = content.replace(tag2Pattern, ` - ${tags[1] || 'workflow'}`);
114
+ modified = true;
115
+ todosResolved++;
116
+ }
117
+
118
+ // Write back if modified
119
+ if (modified) {
120
+ fs.writeFileSync(filePath, content, 'utf8');
121
+ }
122
+
123
+ return {
124
+ skipped: false,
125
+ modified,
126
+ atomicLayer,
127
+ todosResolved,
128
+ };
129
+ }
130
+
131
+ // Main execution
132
+ function main() {
133
+ console.log('šŸš€ Phase 4: Metadata & Performance Resolution');
134
+ console.log('==============================================\n');
135
+
136
+ // Ensure report directory exists
137
+ const reportDir = path.dirname(REPORT_FILE);
138
+ if (!fs.existsSync(reportDir)) {
139
+ fs.mkdirSync(reportDir, { recursive: true });
140
+ }
141
+
142
+ // Get all task files
143
+ const files = fs.readdirSync(TASKS_DIR).filter(f => f.endsWith('.md'));
144
+ console.log(`šŸ“ Found ${files.length} task files\n`);
145
+
146
+ const results = {
147
+ timestamp: new Date().toISOString(),
148
+ totalFiles: files.length,
149
+ processed: 0,
150
+ skipped: 0,
151
+ modified: 0,
152
+ todosResolved: 0,
153
+ details: [],
154
+ };
155
+
156
+ // Process each file
157
+ files.forEach((filename, index) => {
158
+ const result = processTaskFile(filename);
159
+
160
+ if (result.skipped) {
161
+ results.skipped++;
162
+ if (index < 10) {
163
+ console.log(`ā­ļø [${index + 1}/${files.length}] Skipped: ${filename} (${result.reason})`);
164
+ }
165
+ } else {
166
+ results.processed++;
167
+ if (result.modified) {
168
+ results.modified++;
169
+ results.todosResolved += result.todosResolved;
170
+ console.log(`āœ… [${index + 1}/${files.length}] ${filename}: ${result.todosResolved} TODOs resolved`);
171
+ } else {
172
+ if (index < 10) {
173
+ console.log(`⚪ [${index + 1}/${files.length}] ${filename}: No changes needed`);
174
+ }
175
+ }
176
+
177
+ results.details.push({
178
+ filename,
179
+ ...result,
180
+ });
181
+ }
182
+ });
183
+
184
+ // Summary
185
+ console.log('\nšŸ“Š Summary:');
186
+ console.log('===========');
187
+ console.log(`Total files: ${results.totalFiles}`);
188
+ console.log(`Processed: ${results.processed}`);
189
+ console.log(`Skipped: ${results.skipped}`);
190
+ console.log(`Modified: ${results.modified}`);
191
+ console.log(`TODOs Resolved: ${results.todosResolved}`);
192
+
193
+ // Write report
194
+ fs.writeFileSync(REPORT_FILE, JSON.stringify(results, null, 2));
195
+ console.log(`\nāœ… Report saved: ${REPORT_FILE}`);
196
+
197
+ // Exit with success
198
+ process.exit(0);
199
+ }
200
+
201
+ // Run
202
+ main();
203
+
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env node
2
+ const fs = require('fs');
3
+ const yaml = require('js-yaml');
4
+ const path = require('path');
5
+
6
+ const agentPath = path.join(__dirname, '..', 'agents', 'po.md');
7
+ const content = fs.readFileSync(agentPath, 'utf8');
8
+ const yamlMatch = content.match(/```yaml([\s\S]*?)```/);
9
+
10
+ if (yamlMatch) {
11
+ try {
12
+ const agent = yaml.load(yamlMatch[1]);
13
+ console.log('āœ… YAML parsed successfully!');
14
+ console.log('Agent:', agent.agent.name);
15
+ console.log('STEP 3 type:', typeof agent['activation-instructions'][2]);
16
+ console.log('STEP 3 preview:', agent['activation-instructions'][2].substring(0, 150) + '...');
17
+ } catch (error) {
18
+ console.log('āŒ YAML parsing failed:', error.message);
19
+ process.exit(1);
20
+ }
21
+ } else {
22
+ console.log('āŒ No YAML block found');
23
+ process.exit(1);
24
+ }
@@ -0,0 +1,51 @@
1
+ #!/usr/bin/env node
2
+ const fs = require('fs');
3
+ const yaml = require('js-yaml');
4
+ const path = require('path');
5
+
6
+ console.log('šŸ” Verifying YAML Fix\n');
7
+
8
+ const AGENTS = [
9
+ 'dev.md', 'qa.md', 'po.md', 'sm.md', 'pm.md',
10
+ 'architect.md', 'analyst.md', 'data-engineer.md',
11
+ 'devops.md', 'aios-master.md', 'ux-design-expert.md',
12
+ ];
13
+
14
+ let passCount = 0;
15
+ let failCount = 0;
16
+
17
+ for (const agentFile of AGENTS) {
18
+ const agentPath = path.join(__dirname, '..', 'agents', agentFile);
19
+ const content = fs.readFileSync(agentPath, 'utf8');
20
+ const yamlMatch = content.match(/```yaml([\s\S]*?)```/);
21
+
22
+ try {
23
+ const agent = yaml.load(yamlMatch[1]);
24
+ const step3 = agent['activation-instructions'][2];
25
+
26
+ // STEP 3 should now be an object with "STEP 3" key containing multi-line string
27
+ if (typeof step3 === 'object' && step3['STEP 3']) {
28
+ console.log(`āœ… ${agentFile.padEnd(25)} - YAML valid, pipe syntax working`);
29
+ passCount++;
30
+ } else if (typeof step3 === 'string' && step3.includes('Build intelligent greeting')) {
31
+ console.log(`āœ… ${agentFile.padEnd(25)} - YAML valid`);
32
+ passCount++;
33
+ } else {
34
+ console.log(`āš ļø ${agentFile.padEnd(25)} - Unexpected format: ${typeof step3}`);
35
+ failCount++;
36
+ }
37
+ } catch (error) {
38
+ console.log(`āŒ ${agentFile.padEnd(25)} - Parse error: ${error.message.substring(0, 50)}`);
39
+ failCount++;
40
+ }
41
+ }
42
+
43
+ console.log(`\nšŸ“Š Results: ${passCount}/${AGENTS.length} agents valid`);
44
+
45
+ if (failCount === 0) {
46
+ console.log('āœ… All agents have valid YAML!');
47
+ process.exit(0);
48
+ } else {
49
+ console.log(`āŒ ${failCount} agents have issues`);
50
+ process.exit(1);
51
+ }