ai-first-cli 1.3.1 → 1.3.6

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 (514) hide show
  1. package/.ai-dev/index.db +0 -0
  2. package/CHANGELOG.md +241 -0
  3. package/PHASE1_USER_SIMULATION.md +56 -0
  4. package/PHASE2_USER_SIMULATION.md +81 -0
  5. package/PHASE3_USER_SIMULATION.md +176 -0
  6. package/README.es.md +73 -0
  7. package/README.md +119 -15
  8. package/ai/graph/knowledge-graph.json +10 -0
  9. package/ai-context/ai_context.md +130 -0
  10. package/{test-projects/react-app/.ai-dev → ai-context}/ai_rules.md +10 -5
  11. package/ai-context/architecture.md +136 -0
  12. package/ai-context/context/features/src.json +69 -0
  13. package/ai-context/context/features/test-projects.json +69 -0
  14. package/ai-context/context/flows/ai-first.json +9 -0
  15. package/ai-context/context/flows/auth.json +13 -0
  16. package/ai-context/context/flows/doctor.json +9 -0
  17. package/ai-context/context/flows/explore.json +9 -0
  18. package/ai-context/context/flows/routes.json +15 -0
  19. package/ai-context/context/flows/user.json +23 -0
  20. package/ai-context/context/flows/views.json +12 -0
  21. package/{test-projects/react-app/.ai-dev → ai-context}/conventions.md +3 -2
  22. package/ai-context/dependencies.json +3360 -0
  23. package/ai-context/entrypoints.md +45 -0
  24. package/ai-context/index-state.json +196 -0
  25. package/ai-context/modules.json +901 -0
  26. package/ai-context/project.json +33 -0
  27. package/ai-context/repo_map.json +8857 -0
  28. package/ai-context/repo_map.md +2002 -0
  29. package/{test-projects/flask-app/.ai-dev → ai-context}/schema.json +1 -1
  30. package/ai-context/summary.md +46 -0
  31. package/ai-context/symbols.json +82467 -0
  32. package/{test-projects/react-app/.ai-dev → ai-context}/tech_stack.md +15 -7
  33. package/ai-context-evaluation-report-1774223059505.md +206 -0
  34. package/dist/analyzers/architecture.d.ts.map +1 -1
  35. package/dist/analyzers/architecture.js +78 -5
  36. package/dist/analyzers/architecture.js.map +1 -1
  37. package/dist/analyzers/entrypoints.d.ts.map +1 -1
  38. package/dist/analyzers/entrypoints.js +358 -0
  39. package/dist/analyzers/entrypoints.js.map +1 -1
  40. package/dist/analyzers/symbols.d.ts.map +1 -1
  41. package/dist/analyzers/symbols.js +119 -3
  42. package/dist/analyzers/symbols.js.map +1 -1
  43. package/dist/analyzers/techStack.d.ts +8 -0
  44. package/dist/analyzers/techStack.d.ts.map +1 -1
  45. package/dist/analyzers/techStack.js +118 -0
  46. package/dist/analyzers/techStack.js.map +1 -1
  47. package/dist/utils/fileUtils.d.ts.map +1 -1
  48. package/dist/utils/fileUtils.js +5 -0
  49. package/dist/utils/fileUtils.js.map +1 -1
  50. package/package.json +1 -1
  51. package/scripts/ai-context-evaluator.ts +440 -0
  52. package/src/analyzers/architecture.ts +83 -6
  53. package/src/analyzers/entrypoints.ts +400 -0
  54. package/src/analyzers/symbols.ts +129 -3
  55. package/src/analyzers/techStack.ts +137 -0
  56. package/src/utils/fileUtils.ts +5 -0
  57. package/tests/apex-parser.test.ts +193 -0
  58. package/tests/cli-commands-batch1.test.ts +808 -0
  59. package/tests/cli-commands-batch2.test.ts +1113 -0
  60. package/tests/cli-commands-batch3.test.ts +1128 -0
  61. package/tests/cli-index.test.ts +1007 -0
  62. package/tests/cli-init.test.ts +761 -0
  63. package/tests/entrypoints-languages.test.ts +373 -0
  64. package/tests/framework-detection.test.ts +296 -0
  65. package/tests/salesforce-apex-classes.test.ts +713 -0
  66. package/tests/salesforce-apex-triggers.test.ts +871 -0
  67. package/tests/salesforce-custom-objects.test.ts +918 -0
  68. package/tests/salesforce-flows.test.ts +710 -0
  69. package/tests/salesforce-lwc.test.ts +963 -0
  70. package/tests/salesforce-sfdx-integration.test.ts +1125 -0
  71. package/ANALISIS_COMPLETO.md +0 -424
  72. package/ANALISIS_MEJORAS.md +0 -327
  73. package/CONTRIBUTING.md +0 -89
  74. package/FLOW.md +0 -129
  75. package/TEST_RESULTS.md +0 -198
  76. package/TEST_RESULTS_COMPARATIVE.md +0 -159
  77. package/TEST_RESULTS_COMPLETE.md +0 -127
  78. package/TEST_RESULTS_COMPREHENSIVE.md +0 -208
  79. package/install.sh +0 -188
  80. package/run-all-tests.sh +0 -184
  81. package/test-ai-context-understanding.sh +0 -21
  82. package/test-projects/django-app/.ai-dev/ai_context.md +0 -92
  83. package/test-projects/django-app/.ai-dev/ai_rules.md +0 -47
  84. package/test-projects/django-app/.ai-dev/architecture.md +0 -57
  85. package/test-projects/django-app/.ai-dev/cache.json +0 -169
  86. package/test-projects/django-app/.ai-dev/context/flows/views.json +0 -10
  87. package/test-projects/django-app/.ai-dev/conventions.md +0 -51
  88. package/test-projects/django-app/.ai-dev/dependencies.json +0 -312
  89. package/test-projects/django-app/.ai-dev/entrypoints.md +0 -4
  90. package/test-projects/django-app/.ai-dev/files.json +0 -209
  91. package/test-projects/django-app/.ai-dev/graph/knowledge-graph.json +0 -36
  92. package/test-projects/django-app/.ai-dev/graph/module-graph.json +0 -145
  93. package/test-projects/django-app/.ai-dev/graph/symbol-graph.json +0 -1488
  94. package/test-projects/django-app/.ai-dev/graph/symbol-references.json +0 -1
  95. package/test-projects/django-app/.ai-dev/index-state.json +0 -294
  96. package/test-projects/django-app/.ai-dev/modules.json +0 -35
  97. package/test-projects/django-app/.ai-dev/project.json +0 -11
  98. package/test-projects/django-app/.ai-dev/repo_map.json +0 -412
  99. package/test-projects/django-app/.ai-dev/repo_map.md +0 -105
  100. package/test-projects/django-app/.ai-dev/schema.json +0 -5
  101. package/test-projects/django-app/.ai-dev/summary.md +0 -15
  102. package/test-projects/django-app/.ai-dev/symbols.json +0 -1
  103. package/test-projects/django-app/.ai-dev/tech_stack.md +0 -32
  104. package/test-projects/django-app/README.md +0 -91
  105. package/test-projects/django-app/blog/__init__.py +0 -0
  106. package/test-projects/django-app/blog/admin.py +0 -31
  107. package/test-projects/django-app/blog/models.py +0 -55
  108. package/test-projects/django-app/blog/serializers.py +0 -69
  109. package/test-projects/django-app/blog/urls.py +0 -14
  110. package/test-projects/django-app/blog/views.py +0 -96
  111. package/test-projects/django-app/django_app/__init__.py +0 -0
  112. package/test-projects/django-app/django_app/settings.py +0 -90
  113. package/test-projects/django-app/django_app/urls.py +0 -11
  114. package/test-projects/django-app/django_app/wsgi.py +0 -9
  115. package/test-projects/django-app/manage.py +0 -23
  116. package/test-projects/django-app/requirements.txt +0 -3
  117. package/test-projects/django-app/users/__init__.py +0 -0
  118. package/test-projects/django-app/users/admin.py +0 -42
  119. package/test-projects/django-app/users/models.py +0 -54
  120. package/test-projects/django-app/users/serializers.py +0 -113
  121. package/test-projects/django-app/users/urls.py +0 -13
  122. package/test-projects/django-app/users/views.py +0 -135
  123. package/test-projects/express-api/.ai-dev/ai_context.md +0 -112
  124. package/test-projects/express-api/.ai-dev/ai_rules.md +0 -50
  125. package/test-projects/express-api/.ai-dev/architecture.md +0 -62
  126. package/test-projects/express-api/.ai-dev/context/features/controllers.json +0 -13
  127. package/test-projects/express-api/.ai-dev/context/features/services.json +0 -13
  128. package/test-projects/express-api/.ai-dev/context/flows/auth.json +0 -12
  129. package/test-projects/express-api/.ai-dev/context/flows/user.json +0 -13
  130. package/test-projects/express-api/.ai-dev/conventions.md +0 -51
  131. package/test-projects/express-api/.ai-dev/dependencies.json +0 -54
  132. package/test-projects/express-api/.ai-dev/entrypoints.md +0 -17
  133. package/test-projects/express-api/.ai-dev/modules.json +0 -30
  134. package/test-projects/express-api/.ai-dev/project.json +0 -15
  135. package/test-projects/express-api/.ai-dev/repo_map.json +0 -100
  136. package/test-projects/express-api/.ai-dev/repo_map.md +0 -36
  137. package/test-projects/express-api/.ai-dev/schema.json +0 -5
  138. package/test-projects/express-api/.ai-dev/summary.md +0 -14
  139. package/test-projects/express-api/.ai-dev/symbols.json +0 -7
  140. package/test-projects/express-api/.ai-dev/tech_stack.md +0 -38
  141. package/test-projects/express-api/.ai-dev/tools.json +0 -10
  142. package/test-projects/express-api/controllers/authController.js +0 -32
  143. package/test-projects/express-api/controllers/userController.js +0 -51
  144. package/test-projects/express-api/index.js +0 -30
  145. package/test-projects/express-api/middleware/authMiddleware.js +0 -30
  146. package/test-projects/express-api/models/userRepository.js +0 -25
  147. package/test-projects/express-api/package.json +0 -18
  148. package/test-projects/express-api/services/authService.js +0 -17
  149. package/test-projects/express-api/services/userService.js +0 -28
  150. package/test-projects/fastapi-app/.ai-dev/ai_context.md +0 -89
  151. package/test-projects/fastapi-app/.ai-dev/ai_rules.md +0 -47
  152. package/test-projects/fastapi-app/.ai-dev/architecture.md +0 -39
  153. package/test-projects/fastapi-app/.ai-dev/cache.json +0 -125
  154. package/test-projects/fastapi-app/.ai-dev/conventions.md +0 -51
  155. package/test-projects/fastapi-app/.ai-dev/dependencies.json +0 -244
  156. package/test-projects/fastapi-app/.ai-dev/entrypoints.md +0 -4
  157. package/test-projects/fastapi-app/.ai-dev/files.json +0 -154
  158. package/test-projects/fastapi-app/.ai-dev/graph/knowledge-graph.json +0 -15
  159. package/test-projects/fastapi-app/.ai-dev/graph/module-graph.json +0 -78
  160. package/test-projects/fastapi-app/.ai-dev/graph/symbol-graph.json +0 -1724
  161. package/test-projects/fastapi-app/.ai-dev/graph/symbol-references.json +0 -51
  162. package/test-projects/fastapi-app/.ai-dev/index-state.json +0 -217
  163. package/test-projects/fastapi-app/.ai-dev/modules.json +0 -16
  164. package/test-projects/fastapi-app/.ai-dev/project.json +0 -9
  165. package/test-projects/fastapi-app/.ai-dev/repo_map.json +0 -298
  166. package/test-projects/fastapi-app/.ai-dev/repo_map.md +0 -74
  167. package/test-projects/fastapi-app/.ai-dev/schema.json +0 -5
  168. package/test-projects/fastapi-app/.ai-dev/summary.md +0 -12
  169. package/test-projects/fastapi-app/.ai-dev/symbols.json +0 -1
  170. package/test-projects/fastapi-app/.ai-dev/tech_stack.md +0 -32
  171. package/test-projects/fastapi-app/.ai-dev/tools.json +0 -10
  172. package/test-projects/fastapi-app/README.md +0 -118
  173. package/test-projects/fastapi-app/app/database.py +0 -21
  174. package/test-projects/fastapi-app/app/dependencies.py +0 -107
  175. package/test-projects/fastapi-app/app/main.py +0 -47
  176. package/test-projects/fastapi-app/app/models.py +0 -149
  177. package/test-projects/fastapi-app/app/routers/auth.py +0 -117
  178. package/test-projects/fastapi-app/app/routers/posts.py +0 -272
  179. package/test-projects/fastapi-app/app/schemas.py +0 -191
  180. package/test-projects/fastapi-app/requirements.txt +0 -10
  181. package/test-projects/flask-app/.ai-dev/ai_context.md +0 -94
  182. package/test-projects/flask-app/.ai-dev/ai_rules.md +0 -47
  183. package/test-projects/flask-app/.ai-dev/architecture.md +0 -49
  184. package/test-projects/flask-app/.ai-dev/cache.json +0 -157
  185. package/test-projects/flask-app/.ai-dev/context/features/app.json +0 -25
  186. package/test-projects/flask-app/.ai-dev/context/flows/routes.json +0 -14
  187. package/test-projects/flask-app/.ai-dev/conventions.md +0 -51
  188. package/test-projects/flask-app/.ai-dev/dependencies.json +0 -298
  189. package/test-projects/flask-app/.ai-dev/entrypoints.md +0 -4
  190. package/test-projects/flask-app/.ai-dev/files.json +0 -194
  191. package/test-projects/flask-app/.ai-dev/graph/knowledge-graph.json +0 -60
  192. package/test-projects/flask-app/.ai-dev/graph/module-graph.json +0 -95
  193. package/test-projects/flask-app/.ai-dev/graph/symbol-graph.json +0 -1448
  194. package/test-projects/flask-app/.ai-dev/graph/symbol-references.json +0 -45
  195. package/test-projects/flask-app/.ai-dev/index-state.json +0 -273
  196. package/test-projects/flask-app/.ai-dev/modules.json +0 -21
  197. package/test-projects/flask-app/.ai-dev/project.json +0 -13
  198. package/test-projects/flask-app/.ai-dev/repo_map.json +0 -400
  199. package/test-projects/flask-app/.ai-dev/repo_map.md +0 -98
  200. package/test-projects/flask-app/.ai-dev/summary.md +0 -13
  201. package/test-projects/flask-app/.ai-dev/symbols.json +0 -1
  202. package/test-projects/flask-app/.ai-dev/tech_stack.md +0 -32
  203. package/test-projects/flask-app/.ai-dev/tools.json +0 -10
  204. package/test-projects/flask-app/README.md +0 -129
  205. package/test-projects/flask-app/app/__init__.py +0 -46
  206. package/test-projects/flask-app/app/api/__init__.py +0 -7
  207. package/test-projects/flask-app/app/api/routes.py +0 -122
  208. package/test-projects/flask-app/app/auth/__init__.py +0 -7
  209. package/test-projects/flask-app/app/auth/forms.py +0 -52
  210. package/test-projects/flask-app/app/auth/routes.py +0 -68
  211. package/test-projects/flask-app/app/blog/__init__.py +0 -7
  212. package/test-projects/flask-app/app/blog/forms.py +0 -35
  213. package/test-projects/flask-app/app/blog/routes.py +0 -140
  214. package/test-projects/flask-app/app/main/__init__.py +0 -7
  215. package/test-projects/flask-app/app/main/routes.py +0 -88
  216. package/test-projects/flask-app/app/models.py +0 -177
  217. package/test-projects/flask-app/config.py +0 -64
  218. package/test-projects/flask-app/requirements.txt +0 -10
  219. package/test-projects/laravel-app/.ai-dev/ai_context.md +0 -97
  220. package/test-projects/laravel-app/.ai-dev/ai_rules.md +0 -47
  221. package/test-projects/laravel-app/.ai-dev/architecture.md +0 -60
  222. package/test-projects/laravel-app/.ai-dev/cache.json +0 -161
  223. package/test-projects/laravel-app/.ai-dev/context/features/app.json +0 -21
  224. package/test-projects/laravel-app/.ai-dev/context/flows/.json +0 -9
  225. package/test-projects/laravel-app/.ai-dev/context/flows/category.json +0 -12
  226. package/test-projects/laravel-app/.ai-dev/context/flows/comment.json +0 -12
  227. package/test-projects/laravel-app/.ai-dev/context/flows/post.json +0 -12
  228. package/test-projects/laravel-app/.ai-dev/context/flows/unnamed.json +0 -9
  229. package/test-projects/laravel-app/.ai-dev/conventions.md +0 -51
  230. package/test-projects/laravel-app/.ai-dev/dependencies.json +0 -6
  231. package/test-projects/laravel-app/.ai-dev/entrypoints.md +0 -4
  232. package/test-projects/laravel-app/.ai-dev/files.json +0 -199
  233. package/test-projects/laravel-app/.ai-dev/graph/knowledge-graph.json +0 -98
  234. package/test-projects/laravel-app/.ai-dev/graph/module-graph.json +0 -30
  235. package/test-projects/laravel-app/.ai-dev/graph/symbol-graph.json +0 -5
  236. package/test-projects/laravel-app/.ai-dev/graph/symbol-references.json +0 -1
  237. package/test-projects/laravel-app/.ai-dev/index-state.json +0 -280
  238. package/test-projects/laravel-app/.ai-dev/modules.json +0 -29
  239. package/test-projects/laravel-app/.ai-dev/project.json +0 -17
  240. package/test-projects/laravel-app/.ai-dev/repo_map.json +0 -419
  241. package/test-projects/laravel-app/.ai-dev/repo_map.md +0 -106
  242. package/test-projects/laravel-app/.ai-dev/schema.json +0 -5
  243. package/test-projects/laravel-app/.ai-dev/summary.md +0 -15
  244. package/test-projects/laravel-app/.ai-dev/symbols.json +0 -1
  245. package/test-projects/laravel-app/.ai-dev/tech_stack.md +0 -34
  246. package/test-projects/laravel-app/.ai-dev/tools.json +0 -10
  247. package/test-projects/laravel-app/README.md +0 -107
  248. package/test-projects/laravel-app/app/Http/Controllers/Api/CategoryController.php +0 -88
  249. package/test-projects/laravel-app/app/Http/Controllers/Api/CommentController.php +0 -56
  250. package/test-projects/laravel-app/app/Http/Controllers/Api/PostController.php +0 -174
  251. package/test-projects/laravel-app/app/Http/Controllers/Controller.php +0 -12
  252. package/test-projects/laravel-app/app/Models/Category.php +0 -34
  253. package/test-projects/laravel-app/app/Models/Comment.php +0 -51
  254. package/test-projects/laravel-app/app/Models/Post.php +0 -108
  255. package/test-projects/laravel-app/app/Models/User.php +0 -85
  256. package/test-projects/laravel-app/bootstrap/app.php +0 -25
  257. package/test-projects/laravel-app/composer.json +0 -35
  258. package/test-projects/laravel-app/routes/api.php +0 -40
  259. package/test-projects/nestjs-backend/.ai-dev/ai_context.md +0 -111
  260. package/test-projects/nestjs-backend/.ai-dev/ai_rules.md +0 -52
  261. package/test-projects/nestjs-backend/.ai-dev/architecture.md +0 -49
  262. package/test-projects/nestjs-backend/.ai-dev/cache.json +0 -169
  263. package/test-projects/nestjs-backend/.ai-dev/context/features/src.json +0 -23
  264. package/test-projects/nestjs-backend/.ai-dev/context/flows/auth.controller.json +0 -14
  265. package/test-projects/nestjs-backend/.ai-dev/context/flows/auth.json +0 -10
  266. package/test-projects/nestjs-backend/.ai-dev/context/flows/users..json +0 -10
  267. package/test-projects/nestjs-backend/.ai-dev/context/flows/users.controller.json +0 -14
  268. package/test-projects/nestjs-backend/.ai-dev/context/flows/users.json +0 -10
  269. package/test-projects/nestjs-backend/.ai-dev/conventions.md +0 -52
  270. package/test-projects/nestjs-backend/.ai-dev/dependencies.json +0 -152
  271. package/test-projects/nestjs-backend/.ai-dev/entrypoints.md +0 -18
  272. package/test-projects/nestjs-backend/.ai-dev/files.json +0 -209
  273. package/test-projects/nestjs-backend/.ai-dev/graph/knowledge-graph.json +0 -132
  274. package/test-projects/nestjs-backend/.ai-dev/graph/module-graph.json +0 -29
  275. package/test-projects/nestjs-backend/.ai-dev/graph/symbol-graph.json +0 -304
  276. package/test-projects/nestjs-backend/.ai-dev/graph/symbol-references.json +0 -5
  277. package/test-projects/nestjs-backend/.ai-dev/index-state.json +0 -294
  278. package/test-projects/nestjs-backend/.ai-dev/modules.json +0 -19
  279. package/test-projects/nestjs-backend/.ai-dev/project.json +0 -18
  280. package/test-projects/nestjs-backend/.ai-dev/repo_map.json +0 -427
  281. package/test-projects/nestjs-backend/.ai-dev/repo_map.md +0 -104
  282. package/test-projects/nestjs-backend/.ai-dev/schema.json +0 -5
  283. package/test-projects/nestjs-backend/.ai-dev/summary.md +0 -13
  284. package/test-projects/nestjs-backend/.ai-dev/symbols.json +0 -1
  285. package/test-projects/nestjs-backend/.ai-dev/tech_stack.md +0 -38
  286. package/test-projects/nestjs-backend/.ai-dev/tools.json +0 -10
  287. package/test-projects/nestjs-backend/package.json +0 -22
  288. package/test-projects/nestjs-backend/src/app.module.ts +0 -8
  289. package/test-projects/nestjs-backend/src/auth/auth.controller.ts +0 -22
  290. package/test-projects/nestjs-backend/src/auth/auth.module.ts +0 -11
  291. package/test-projects/nestjs-backend/src/auth/auth.service.ts +0 -28
  292. package/test-projects/nestjs-backend/src/auth/dto/login.dto.ts +0 -4
  293. package/test-projects/nestjs-backend/src/auth/strategies/jwt.strategy.ts +0 -18
  294. package/test-projects/nestjs-backend/src/main.ts +0 -9
  295. package/test-projects/nestjs-backend/src/users/users.controller.ts +0 -32
  296. package/test-projects/nestjs-backend/src/users/users.module.ts +0 -10
  297. package/test-projects/nestjs-backend/src/users/users.service.ts +0 -42
  298. package/test-projects/nestjs-backend/tsconfig.json +0 -21
  299. package/test-projects/python-cli/.ai-dev/ai_context.md +0 -95
  300. package/test-projects/python-cli/.ai-dev/ai_rules.md +0 -47
  301. package/test-projects/python-cli/.ai-dev/architecture.md +0 -55
  302. package/test-projects/python-cli/.ai-dev/cache.json +0 -149
  303. package/test-projects/python-cli/.ai-dev/context/features/cli.json +0 -16
  304. package/test-projects/python-cli/.ai-dev/context/flows/list_.json +0 -9
  305. package/test-projects/python-cli/.ai-dev/context/flows/remove_.json +0 -9
  306. package/test-projects/python-cli/.ai-dev/conventions.md +0 -51
  307. package/test-projects/python-cli/.ai-dev/dependencies.json +0 -66
  308. package/test-projects/python-cli/.ai-dev/entrypoints.md +0 -4
  309. package/test-projects/python-cli/.ai-dev/files.json +0 -184
  310. package/test-projects/python-cli/.ai-dev/graph/knowledge-graph.json +0 -83
  311. package/test-projects/python-cli/.ai-dev/graph/module-graph.json +0 -31
  312. package/test-projects/python-cli/.ai-dev/graph/symbol-graph.json +0 -358
  313. package/test-projects/python-cli/.ai-dev/graph/symbol-references.json +0 -11
  314. package/test-projects/python-cli/.ai-dev/index-state.json +0 -259
  315. package/test-projects/python-cli/.ai-dev/modules.json +0 -21
  316. package/test-projects/python-cli/.ai-dev/project.json +0 -15
  317. package/test-projects/python-cli/.ai-dev/repo_map.json +0 -367
  318. package/test-projects/python-cli/.ai-dev/repo_map.md +0 -93
  319. package/test-projects/python-cli/.ai-dev/schema.json +0 -5
  320. package/test-projects/python-cli/.ai-dev/summary.md +0 -14
  321. package/test-projects/python-cli/.ai-dev/symbols.json +0 -1
  322. package/test-projects/python-cli/.ai-dev/tech_stack.md +0 -32
  323. package/test-projects/python-cli/.ai-dev/tools.json +0 -10
  324. package/test-projects/python-cli/__init__.py +0 -1
  325. package/test-projects/python-cli/cli/__init__.py +0 -1
  326. package/test-projects/python-cli/cli/add_command.py +0 -6
  327. package/test-projects/python-cli/cli/list_command.py +0 -7
  328. package/test-projects/python-cli/cli/remove_command.py +0 -6
  329. package/test-projects/python-cli/main.py +0 -34
  330. package/test-projects/python-cli/models/__init__.py +0 -2
  331. package/test-projects/python-cli/models/task.py +0 -19
  332. package/test-projects/python-cli/models/task_repository.py +0 -44
  333. package/test-projects/rails-app/.ai-dev/ai_context.md +0 -94
  334. package/test-projects/rails-app/.ai-dev/ai_rules.md +0 -47
  335. package/test-projects/rails-app/.ai-dev/architecture.md +0 -49
  336. package/test-projects/rails-app/.ai-dev/cache.json +0 -193
  337. package/test-projects/rails-app/.ai-dev/context/features/app.json +0 -24
  338. package/test-projects/rails-app/.ai-dev/context/features/config.json +0 -13
  339. package/test-projects/rails-app/.ai-dev/context/flows/application.json +0 -9
  340. package/test-projects/rails-app/.ai-dev/context/flows/application_.json +0 -9
  341. package/test-projects/rails-app/.ai-dev/context/flows/comments.json +0 -11
  342. package/test-projects/rails-app/.ai-dev/context/flows/comments_.json +0 -11
  343. package/test-projects/rails-app/.ai-dev/context/flows/posts.json +0 -11
  344. package/test-projects/rails-app/.ai-dev/context/flows/posts_.json +0 -11
  345. package/test-projects/rails-app/.ai-dev/context/flows/routes.json +0 -9
  346. package/test-projects/rails-app/.ai-dev/context/flows/users.json +0 -11
  347. package/test-projects/rails-app/.ai-dev/context/flows/users_.json +0 -11
  348. package/test-projects/rails-app/.ai-dev/conventions.md +0 -51
  349. package/test-projects/rails-app/.ai-dev/dependencies.json +0 -6
  350. package/test-projects/rails-app/.ai-dev/entrypoints.md +0 -4
  351. package/test-projects/rails-app/.ai-dev/files.json +0 -239
  352. package/test-projects/rails-app/.ai-dev/graph/knowledge-graph.json +0 -130
  353. package/test-projects/rails-app/.ai-dev/graph/module-graph.json +0 -27
  354. package/test-projects/rails-app/.ai-dev/graph/symbol-graph.json +0 -5
  355. package/test-projects/rails-app/.ai-dev/graph/symbol-references.json +0 -1
  356. package/test-projects/rails-app/.ai-dev/index-state.json +0 -336
  357. package/test-projects/rails-app/.ai-dev/modules.json +0 -26
  358. package/test-projects/rails-app/.ai-dev/project.json +0 -22
  359. package/test-projects/rails-app/.ai-dev/repo_map.json +0 -486
  360. package/test-projects/rails-app/.ai-dev/repo_map.md +0 -117
  361. package/test-projects/rails-app/.ai-dev/schema.json +0 -5
  362. package/test-projects/rails-app/.ai-dev/summary.md +0 -13
  363. package/test-projects/rails-app/.ai-dev/symbols.json +0 -1
  364. package/test-projects/rails-app/.ai-dev/tech_stack.md +0 -32
  365. package/test-projects/rails-app/.ai-dev/tools.json +0 -10
  366. package/test-projects/rails-app/Gemfile +0 -38
  367. package/test-projects/rails-app/README.md +0 -140
  368. package/test-projects/rails-app/Rakefile +0 -8
  369. package/test-projects/rails-app/app/controllers/api/comments_controller.rb +0 -75
  370. package/test-projects/rails-app/app/controllers/api/posts_controller.rb +0 -68
  371. package/test-projects/rails-app/app/controllers/api/users_controller.rb +0 -54
  372. package/test-projects/rails-app/app/controllers/application_controller.rb +0 -31
  373. package/test-projects/rails-app/app/models/comment.rb +0 -34
  374. package/test-projects/rails-app/app/models/post.rb +0 -36
  375. package/test-projects/rails-app/app/models/user.rb +0 -28
  376. package/test-projects/rails-app/app/services/post_service.rb +0 -92
  377. package/test-projects/rails-app/app/services/user_service.rb +0 -76
  378. package/test-projects/rails-app/config/application.rb +0 -27
  379. package/test-projects/rails-app/config/environment.rb +0 -7
  380. package/test-projects/rails-app/config/routes.rb +0 -15
  381. package/test-projects/react-app/.ai-dev/ai_context.md +0 -96
  382. package/test-projects/react-app/.ai-dev/architecture.md +0 -39
  383. package/test-projects/react-app/.ai-dev/cache.json +0 -153
  384. package/test-projects/react-app/.ai-dev/context/features/src.json +0 -18
  385. package/test-projects/react-app/.ai-dev/context/flows/UsersPage.json +0 -14
  386. package/test-projects/react-app/.ai-dev/context/flows/dashboard.json +0 -9
  387. package/test-projects/react-app/.ai-dev/context/flows/login.json +0 -9
  388. package/test-projects/react-app/.ai-dev/context/flows/users.json +0 -9
  389. package/test-projects/react-app/.ai-dev/dependencies.json +0 -128
  390. package/test-projects/react-app/.ai-dev/entrypoints.md +0 -4
  391. package/test-projects/react-app/.ai-dev/files.json +0 -189
  392. package/test-projects/react-app/.ai-dev/graph/knowledge-graph.json +0 -112
  393. package/test-projects/react-app/.ai-dev/graph/module-graph.json +0 -31
  394. package/test-projects/react-app/.ai-dev/graph/symbol-graph.json +0 -868
  395. package/test-projects/react-app/.ai-dev/graph/symbol-references.json +0 -31
  396. package/test-projects/react-app/.ai-dev/index-state.json +0 -266
  397. package/test-projects/react-app/.ai-dev/modules.json +0 -17
  398. package/test-projects/react-app/.ai-dev/project.json +0 -16
  399. package/test-projects/react-app/.ai-dev/repo_map.json +0 -391
  400. package/test-projects/react-app/.ai-dev/repo_map.md +0 -94
  401. package/test-projects/react-app/.ai-dev/schema.json +0 -5
  402. package/test-projects/react-app/.ai-dev/summary.md +0 -13
  403. package/test-projects/react-app/.ai-dev/symbols.json +0 -1
  404. package/test-projects/react-app/.ai-dev/tools.json +0 -10
  405. package/test-projects/react-app/package.json +0 -16
  406. package/test-projects/react-app/src/App.tsx +0 -21
  407. package/test-projects/react-app/src/context/AuthContext.tsx +0 -41
  408. package/test-projects/react-app/src/hooks/useAuth.ts +0 -10
  409. package/test-projects/react-app/src/main.tsx +0 -10
  410. package/test-projects/react-app/src/pages/DashboardPage.tsx +0 -17
  411. package/test-projects/react-app/src/pages/LoginPage.tsx +0 -41
  412. package/test-projects/react-app/src/pages/UsersPage.tsx +0 -36
  413. package/test-projects/react-app/src/services/userService.ts +0 -37
  414. package/test-projects/salesforce-cli/.ai-dev/ai_context.md +0 -89
  415. package/test-projects/salesforce-cli/.ai-dev/ai_rules.md +0 -47
  416. package/test-projects/salesforce-cli/.ai-dev/architecture.md +0 -39
  417. package/test-projects/salesforce-cli/.ai-dev/cache.json +0 -125
  418. package/test-projects/salesforce-cli/.ai-dev/context/features/force-app.json +0 -14
  419. package/test-projects/salesforce-cli/.ai-dev/context/flows/account.json +0 -9
  420. package/test-projects/salesforce-cli/.ai-dev/context/flows/opportunity.json +0 -9
  421. package/test-projects/salesforce-cli/.ai-dev/conventions.md +0 -51
  422. package/test-projects/salesforce-cli/.ai-dev/dependencies.json +0 -6
  423. package/test-projects/salesforce-cli/.ai-dev/entrypoints.md +0 -4
  424. package/test-projects/salesforce-cli/.ai-dev/files.json +0 -154
  425. package/test-projects/salesforce-cli/.ai-dev/graph/knowledge-graph.json +0 -64
  426. package/test-projects/salesforce-cli/.ai-dev/graph/module-graph.json +0 -13
  427. package/test-projects/salesforce-cli/.ai-dev/graph/symbol-graph.json +0 -148
  428. package/test-projects/salesforce-cli/.ai-dev/graph/symbol-references.json +0 -1
  429. package/test-projects/salesforce-cli/.ai-dev/index-state.json +0 -217
  430. package/test-projects/salesforce-cli/.ai-dev/modules.json +0 -12
  431. package/test-projects/salesforce-cli/.ai-dev/project.json +0 -14
  432. package/test-projects/salesforce-cli/.ai-dev/repo_map.json +0 -328
  433. package/test-projects/salesforce-cli/.ai-dev/repo_map.md +0 -80
  434. package/test-projects/salesforce-cli/.ai-dev/schema.json +0 -5
  435. package/test-projects/salesforce-cli/.ai-dev/summary.md +0 -13
  436. package/test-projects/salesforce-cli/.ai-dev/symbols.json +0 -1
  437. package/test-projects/salesforce-cli/.ai-dev/tech_stack.md +0 -31
  438. package/test-projects/salesforce-cli/.ai-dev/tools.json +0 -10
  439. package/test-projects/salesforce-cli/.forceignore +0 -27
  440. package/test-projects/salesforce-cli/force-app/main/default/classes/AccountController.cls +0 -24
  441. package/test-projects/salesforce-cli/force-app/main/default/classes/OpportunityController.cls +0 -25
  442. package/test-projects/salesforce-cli/force-app/main/default/objects/Project__c.object.xml +0 -45
  443. package/test-projects/salesforce-cli/force-app/main/default/triggers/AccountTrigger.trigger +0 -33
  444. package/test-projects/salesforce-cli/sfdx-project.json +0 -11
  445. package/test-projects/spring-boot-app/.ai-dev/ai_context.md +0 -91
  446. package/test-projects/spring-boot-app/.ai-dev/ai_rules.md +0 -48
  447. package/test-projects/spring-boot-app/.ai-dev/architecture.md +0 -39
  448. package/test-projects/spring-boot-app/.ai-dev/cache.json +0 -173
  449. package/test-projects/spring-boot-app/.ai-dev/context/features/src.json +0 -26
  450. package/test-projects/spring-boot-app/.ai-dev/context/flows/PostController.json +0 -19
  451. package/test-projects/spring-boot-app/.ai-dev/context/flows/UserController.json +0 -19
  452. package/test-projects/spring-boot-app/.ai-dev/context/flows/comment.json +0 -11
  453. package/test-projects/spring-boot-app/.ai-dev/context/flows/post.json +0 -14
  454. package/test-projects/spring-boot-app/.ai-dev/context/flows/user.json +0 -14
  455. package/test-projects/spring-boot-app/.ai-dev/conventions.md +0 -52
  456. package/test-projects/spring-boot-app/.ai-dev/dependencies.json +0 -326
  457. package/test-projects/spring-boot-app/.ai-dev/entrypoints.md +0 -4
  458. package/test-projects/spring-boot-app/.ai-dev/files.json +0 -214
  459. package/test-projects/spring-boot-app/.ai-dev/graph/knowledge-graph.json +0 -231
  460. package/test-projects/spring-boot-app/.ai-dev/graph/module-graph.json +0 -22
  461. package/test-projects/spring-boot-app/.ai-dev/graph/symbol-graph.json +0 -794
  462. package/test-projects/spring-boot-app/.ai-dev/graph/symbol-references.json +0 -70
  463. package/test-projects/spring-boot-app/.ai-dev/index-state.json +0 -301
  464. package/test-projects/spring-boot-app/.ai-dev/modules.json +0 -21
  465. package/test-projects/spring-boot-app/.ai-dev/project.json +0 -17
  466. package/test-projects/spring-boot-app/.ai-dev/repo_map.json +0 -461
  467. package/test-projects/spring-boot-app/.ai-dev/repo_map.md +0 -109
  468. package/test-projects/spring-boot-app/.ai-dev/schema.json +0 -5
  469. package/test-projects/spring-boot-app/.ai-dev/summary.md +0 -12
  470. package/test-projects/spring-boot-app/.ai-dev/symbols.json +0 -1
  471. package/test-projects/spring-boot-app/.ai-dev/tech_stack.md +0 -32
  472. package/test-projects/spring-boot-app/.ai-dev/tools.json +0 -10
  473. package/test-projects/spring-boot-app/.classpath +0 -57
  474. package/test-projects/spring-boot-app/.factorypath +0 -69
  475. package/test-projects/spring-boot-app/.project +0 -34
  476. package/test-projects/spring-boot-app/.settings/org.eclipse.core.resources.prefs +0 -4
  477. package/test-projects/spring-boot-app/.settings/org.eclipse.jdt.apt.core.prefs +0 -4
  478. package/test-projects/spring-boot-app/.settings/org.eclipse.jdt.core.prefs +0 -10
  479. package/test-projects/spring-boot-app/.settings/org.eclipse.m2e.core.prefs +0 -4
  480. package/test-projects/spring-boot-app/README.md +0 -122
  481. package/test-projects/spring-boot-app/pom.xml +0 -79
  482. package/test-projects/spring-boot-app/src/main/java/com/example/demo/DemoApplication.java +0 -12
  483. package/test-projects/spring-boot-app/src/main/java/com/example/demo/controllers/CommentController.java +0 -89
  484. package/test-projects/spring-boot-app/src/main/java/com/example/demo/controllers/PostController.java +0 -92
  485. package/test-projects/spring-boot-app/src/main/java/com/example/demo/controllers/UserController.java +0 -84
  486. package/test-projects/spring-boot-app/src/main/java/com/example/demo/models/Comment.java +0 -38
  487. package/test-projects/spring-boot-app/src/main/java/com/example/demo/models/Post.java +0 -56
  488. package/test-projects/spring-boot-app/src/main/java/com/example/demo/models/User.java +0 -44
  489. package/test-projects/spring-boot-app/src/main/java/com/example/demo/repositories/CommentRepository.java +0 -21
  490. package/test-projects/spring-boot-app/src/main/java/com/example/demo/repositories/PostRepository.java +0 -18
  491. package/test-projects/spring-boot-app/src/main/java/com/example/demo/repositories/UserRepository.java +0 -15
  492. package/test-projects/spring-boot-app/src/main/java/com/example/demo/services/PostService.java +0 -83
  493. package/test-projects/spring-boot-app/src/main/java/com/example/demo/services/UserService.java +0 -62
  494. package/test-projects/spring-boot-app/src/main/resources/application.properties +0 -22
  495. package/test-projects/spring-boot-app/target/classes/com/example/demo/DemoApplication.class +0 -0
  496. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/CommentController$CommentCreateRequest.class +0 -0
  497. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/CommentController$CommentUpdateRequest.class +0 -0
  498. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/CommentController.class +0 -0
  499. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/PostController$PostCreateRequest.class +0 -0
  500. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/PostController$PostUpdateRequest.class +0 -0
  501. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/PostController.class +0 -0
  502. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/UserController$UserCreateRequest.class +0 -0
  503. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/UserController$UserUpdateRequest.class +0 -0
  504. package/test-projects/spring-boot-app/target/classes/com/example/demo/controllers/UserController.class +0 -0
  505. package/test-projects/spring-boot-app/target/classes/com/example/demo/models/Comment.class +0 -0
  506. package/test-projects/spring-boot-app/target/classes/com/example/demo/models/Post.class +0 -0
  507. package/test-projects/spring-boot-app/target/classes/com/example/demo/models/User.class +0 -0
  508. package/test-projects/spring-boot-app/target/classes/com/example/demo/repositories/CommentRepository.class +0 -0
  509. package/test-projects/spring-boot-app/target/classes/com/example/demo/repositories/PostRepository.class +0 -0
  510. package/test-projects/spring-boot-app/target/classes/com/example/demo/repositories/UserRepository.class +0 -0
  511. package/test-projects/spring-boot-app/target/classes/com/example/demo/services/PostService.class +0 -0
  512. package/test-projects/spring-boot-app/target/classes/com/example/demo/services/UserService.class +0 -0
  513. package/tests/e2e/run-e2e.sh +0 -88
  514. /package/{test-projects/django-app/.ai-dev → ai-context}/tools.json +0 -0
package/install.sh DELETED
@@ -1,188 +0,0 @@
1
- #!/usr/bin/env bash
2
- # af (AI-First) Installer
3
- # Usage: curl -fsSL https://raw.githubusercontent.com/julianperezpesce/ai-first/master/install.sh | bash
4
- set -e
5
-
6
- AF_VERSION="${AF_VERSION:-1.2.2}"
7
-
8
- RED='\033[0;31m'
9
- GREEN='\033[0;32m'
10
- YELLOW='\033[1;33m'
11
- BLUE='\033[0;34m'
12
- NC='\033[0m'
13
-
14
- log_info() { echo -e "${GREEN}✓${NC} $1"; }
15
- log_warn() { echo -e "${YELLOW}⚠${NC} $1"; }
16
- log_error() { echo -e "${RED}✗${NC} $1"; }
17
- log_step() { echo -e "${BLUE}→${NC} $1"; }
18
-
19
- # Detect npm's global bin directory
20
- get_npm_global_bin() {
21
- npm config get prefix --global 2>/dev/null
22
- }
23
-
24
- # Try to create symlink in a PATH directory
25
- setup_symlink() {
26
- local src="$1"
27
- local name="af"
28
-
29
- # Try /usr/local/bin first (standard)
30
- if [ -w /usr/local/bin ] 2>/dev/null; then
31
- ln -sf "$src" /usr/local/bin/$name
32
- echo "/usr/local/bin/$name"
33
- return 0
34
- fi
35
-
36
- # Try ~/.local/bin (Freedesktop standard)
37
- if [ -w "$HOME/.local/bin" ] 2>/dev/null || mkdir -p "$HOME/.local/bin" 2>/dev/null; then
38
- ln -sf "$src" "$HOME/.local/bin/$name"
39
- echo "$HOME/.local/bin/$name"
40
- return 0
41
- fi
42
-
43
- # Try ~/bin (legacy)
44
- if [ -w "$HOME/bin" ] 2>/dev/null || mkdir -p "$HOME/bin" 2>/dev/null; then
45
- ln -sf "$src" "$HOME/bin/$name"
46
- echo "$HOME/bin/$name"
47
- return 0
48
- fi
49
-
50
- return 1
51
- }
52
-
53
- # Add directory to PATH in shell RC if not already present
54
- ensure_path() {
55
- local dir="$1"
56
- local rcfile=""
57
-
58
- # Find the active shell RC file
59
- if [ -n "$ZSH_VERSION" ]; then
60
- rcfile="$HOME/.zshrc"
61
- elif [ -n "$BASH_VERSION" ]; then
62
- rcfile="$HOME/.bashrc"
63
- else
64
- rcfile="$HOME/.profile"
65
- fi
66
-
67
- # Check if dir is already in PATH
68
- if echo "$PATH" | tr ':' '\n' | grep -qx "$dir"; then
69
- return 0
70
- fi
71
-
72
- # Check if already added in RC
73
- if [ -f "$rcfile" ] && grep -q "$dir" "$rcfile" 2>/dev/null; then
74
- return 0
75
- fi
76
-
77
- # Add to RC
78
- echo "" >> "$rcfile"
79
- echo "# Added by ai-first-cli installer" >> "$rcfile"
80
- echo "export PATH=\"$dir:\$PATH\"" >> "$rcfile"
81
-
82
- log_warn "Added $dir to PATH in $rcfile"
83
- log_warn "Run: source $rcfile"
84
- }
85
-
86
- check_node() {
87
- if ! command -v node &> /dev/null; then
88
- log_error "Node.js not installed. Install Node.js 18+ first: https://nodejs.org"
89
- exit 1
90
- fi
91
- NODE_VERSION=$(node -v | cut -d'v' -f2 | cut -d'.' -f1)
92
- if [ "$NODE_VERSION" -lt 18 ]; then
93
- log_error "Node.js 18+ required. Current: $(node -v)"
94
- exit 1
95
- fi
96
- log_info "Node.js $(node -v) detected"
97
- }
98
-
99
- install_af() {
100
- log_step "Installing af@${AF_VERSION}..."
101
- npm install -g "ai-first-cli@${AF_VERSION}" 2>&1
102
- log_info "npm install completed"
103
- }
104
-
105
- find_af_binary() {
106
- # Find the af binary in npm's global bin directory
107
- local prefix
108
- prefix=$(npm config get prefix --global 2>/dev/null || npm config get prefix 2>/dev/null)
109
-
110
- if [ -n "$prefix" ] && [ -f "$prefix/bin/af" ]; then
111
- echo "$prefix/bin/af"
112
- return 0
113
- fi
114
-
115
- if [ -n "$prefix" ] && [ -f "$prefix/bin/ai-first" ]; then
116
- echo "$prefix/bin/ai-first"
117
- return 0
118
- fi
119
-
120
- # Try common locations
121
- for dir in "$prefix/bin" "$HOME/.npm-global/bin" "/usr/local/bin" "$HOME/.local/bin" "$HOME/bin"; do
122
- if [ -f "$dir/af" ]; then
123
- echo "$dir/af"
124
- return 0
125
- fi
126
- if [ -f "$dir/ai-first" ]; then
127
- echo "$dir/ai-first"
128
- return 0
129
- fi
130
- done
131
-
132
- return 1
133
- }
134
-
135
- verify_install() {
136
- log_step "Verifying installation..."
137
-
138
- local af_path
139
- af_path=$(find_af_binary) || {
140
- log_error "Could not find af binary after installation"
141
- log_error "npm prefix: $(npm config get prefix 2>/dev/null)"
142
- exit 1
143
- }
144
-
145
- log_info "Found af at: $af_path"
146
-
147
- # Try to create symlink in PATH
148
- local symlink
149
- if symlink=$(setup_symlink "$af_path"); then
150
- log_info "Created symlink: $symlink"
151
- else
152
- log_warn "Could not create symlink in standard PATH location"
153
- # Try adding the binary's directory to PATH
154
- local bindir
155
- bindir=$(dirname "$af_path")
156
- ensure_path "$bindir"
157
- fi
158
-
159
- echo ""
160
- echo " ╔══════════════════════════════════════╗"
161
- echo " ║ af installation complete! ║"
162
- echo " ╚══════════════════════════════════════╝"
163
- echo ""
164
- echo " Commands:"
165
- echo " af init Initialize AI context"
166
- echo " af index Generate SQLite index"
167
- echo " af doctor Check repository health"
168
- echo " af --help Show all commands"
169
- echo ""
170
- echo " Quick start:"
171
- echo " af init # Generate context files"
172
- echo " af doctor # Check repository health"
173
- echo ""
174
- }
175
-
176
- echo ""
177
- echo " ██╗ ██╗ ██████╗ ████████╗███████╗"
178
- echo " ██║ ██║██╔═══██╗╚══██╔══╝██╔════╝"
179
- echo " ███████║██║ ██║ ██║ █████╗ "
180
- echo " ██╔══██║██║ ██║ ██║ ██╔══╝ "
181
- echo " ██║ ██║╚██████╔╝ ██║ ███████╗"
182
- echo " ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚══════╝"
183
- echo " AI-First CLI Installer v${AF_VERSION}"
184
- echo ""
185
-
186
- check_node
187
- install_af
188
- verify_install
package/run-all-tests.sh DELETED
@@ -1,184 +0,0 @@
1
- #!/bin/bash
2
- #
3
- # MASTER TEST SCRIPT - ai-first-cli
4
- # Ejecuta TODOS los tests: unitarios + funcionales + integracion
5
- #
6
-
7
- set -e
8
-
9
- PROJECT_ROOT="$(cd "$(dirname "$0")" && pwd)"
10
- DIST_DIR="$PROJECT_ROOT/dist"
11
- CLI="$DIST_DIR/commands/ai-first.js"
12
-
13
- # Colors
14
- RED='\033[0;31m'
15
- GREEN='\033[0;32m'
16
- YELLOW='\033[1;33m'
17
- BLUE='\033[0;34m'
18
- NC='\033[0m'
19
-
20
- TESTS_PASSED=0
21
- TESTS_FAILED=0
22
-
23
- log_info() {
24
- echo -e "${BLUE}[INFO]${NC} $1"
25
- }
26
-
27
- log_success() {
28
- echo -e "${GREEN}[PASS]${NC} $1"
29
- ((TESTS_PASSED++))
30
- }
31
-
32
- log_error() {
33
- echo -e "${RED}[FAIL]${NC} $1"
34
- ((TESTS_FAILED++))
35
- }
36
-
37
- # ============================================
38
- # PHASE 1: BUILD
39
- # ============================================
40
- echo ""
41
- echo "==================================================="
42
- echo "PHASE 1: BUILD"
43
- echo "==================================================="
44
- echo ""
45
-
46
- log_info "Building TypeScript..."
47
- if npm run build > /dev/null 2>&1; then
48
- log_success "TypeScript build"
49
- else
50
- log_error "TypeScript build FAILED"
51
- exit 1
52
- fi
53
-
54
- # ============================================
55
- # PHASE 2: UNIT TESTS (Vitest)
56
- # ============================================
57
- echo ""
58
- echo "==================================================="
59
- echo "PHASE 2: UNIT TESTS (Vitest)"
60
- echo "==================================================="
61
- echo ""
62
-
63
- log_info "Running vitest..."
64
- if npx vitest run 2>&1 | grep -q "passed"; then
65
- # Extract test count
66
- VITEST_OUTPUT=$(npx vitest run 2>&1)
67
- TEST_COUNT=$(echo "$VITEST_OUTPUT" | grep -oE '[0-9]+ passed' | head -1 | grep -oE '[0-9]+')
68
- log_success "Unit tests: $TEST_COUNT passed"
69
- else
70
- log_error "Unit tests FAILED"
71
- fi
72
-
73
- # ============================================
74
- # PHASE 3: FUNCTIONAL TESTS
75
- # ============================================
76
- echo ""
77
- echo "==================================================="
78
- echo "PHASE 3: FUNCTIONAL TESTS (11 Adapters)"
79
- echo "==================================================="
80
- echo ""
81
-
82
- ADAPTERS="django-app laravel-app fastapi-app flask-app rails-app spring-boot-app nestjs-backend express-api react-app salesforce-cli python-cli"
83
- SYMBOLS_OK=0
84
-
85
- log_info "Testing symbol extraction..."
86
- for adapter in $ADAPTERS; do
87
- PROJECT_DIR="$PROJECT_ROOT/test-projects/$adapter"
88
- if [ -f "$PROJECT_DIR/ai-context/symbols.json" ]; then
89
- SYMBOL_COUNT=$(cat "$PROJECT_DIR/ai-context/symbols.json" | grep -o '"id"' | wc -l)
90
- if [ "$SYMBOL_COUNT" -gt 0 ]; then
91
- ((SYMBOLS_OK++))
92
- log_success "$adapter: $SYMBOL_COUNT symbols"
93
- else
94
- log_error "$adapter: 0 symbols"
95
- fi
96
- else
97
- log_error "$adapter: symbols.json not found"
98
- fi
99
- done
100
-
101
- if [ "$SYMBOLS_OK" -eq 11 ]; then
102
- log_success "All 11 adapters have symbols > 0"
103
- else
104
- log_error "Only $SYMBOLS_OK/11 adapters have symbols"
105
- fi
106
-
107
- # ============================================
108
- # PHASE 4: INTEGRATION TESTS
109
- # ============================================
110
- echo ""
111
- echo "==================================================="
112
- echo "PHASE 4: INTEGRATION TESTS"
113
- echo "==================================================="
114
- echo ""
115
-
116
- COMMANDS="init map index doctor"
117
- TOTAL_TESTS=0
118
- PASSED_TESTS=0
119
-
120
- for adapter in $ADAPTERS; do
121
- PROJECT_DIR="$PROJECT_ROOT/test-projects/$adapter"
122
-
123
- for cmd in $COMMANDS; do
124
- ((TOTAL_TESTS++))
125
-
126
- case $cmd in
127
- "init")
128
- if [ -d "$PROJECT_DIR/ai-context" ] && [ -f "$PROJECT_DIR/ai-context/symbols.json" ]; then
129
- ((PASSED_TESTS++))
130
- else
131
- log_error "$adapter: init failed"
132
- fi
133
- ;;
134
- "map")
135
- if [ -f "$PROJECT_DIR/ai-context/graph/module-graph.json" ]; then
136
- ((PASSED_TESTS++))
137
- else
138
- log_error "$adapter: map failed"
139
- fi
140
- ;;
141
- "index")
142
- if [ -f "$PROJECT_DIR/ai-context/index.db" ]; then
143
- ((PASSED_TESTS++))
144
- else
145
- log_error "$adapter: index failed"
146
- fi
147
- ;;
148
- "doctor")
149
- if [ -f "$PROJECT_DIR/ai-context/repo_map.json" ]; then
150
- ((PASSED_TESTS++))
151
- else
152
- log_error "$adapter: doctor failed"
153
- fi
154
- ;;
155
- esac
156
- done
157
- done
158
-
159
- log_info "Integration tests: $PASSED_TESTS/$TOTAL_TESTS passed"
160
- if [ "$PASSED_TESTS" -eq "$TOTAL_TESTS" ]; then
161
- log_success "All integration tests passed"
162
- else
163
- log_error "Some integration tests failed"
164
- fi
165
-
166
- # ============================================
167
- # FINAL SUMMARY
168
- # ============================================
169
- echo ""
170
- echo "==================================================="
171
- echo "FINAL SUMMARY"
172
- echo "==================================================="
173
- echo ""
174
- echo "Tests Passed: $TESTS_PASSED"
175
- echo "Tests Failed: $TESTS_FAILED"
176
- echo ""
177
-
178
- if [ "$TESTS_FAILED" -eq 0 ]; then
179
- echo -e "${GREEN}ALL TESTS PASSED!${NC}"
180
- exit 0
181
- else
182
- echo -e "${RED}SOME TESTS FAILED!${NC}"
183
- exit 1
184
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/bash
2
- # Test: Ask AI to understand project from ai-context
3
- # Usage: ./test-ai-context-understanding.sh [project-path]
4
-
5
- PROJECT_DIR="${1:-.}"
6
-
7
- echo "=== Testing AI Context Understanding ==="
8
- echo ""
9
-
10
- CONTEXT=$(cat "$PROJECT_DIR/ai-context/ai_context.md" 2>/dev/null)
11
- if [ -z "$CONTEXT" ]; then
12
- echo "Error: No ai-context found in $PROJECT_DIR"
13
- exit 1
14
- fi
15
-
16
- echo "Project Context:"
17
- echo "---"
18
- echo "$CONTEXT"
19
- echo "---"
20
- echo ""
21
- echo "Ask an AI: 'What does this project do based on the context above?'"
@@ -1,92 +0,0 @@
1
- # AI Context
2
-
3
- > This file provides a comprehensive overview of the repository for AI coding assistants.
4
-
5
- ---
6
-
7
- ## Quick Overview
8
-
9
- - **Pattern**: Flat / Simple Structure
10
- - **Languages**: Markdown, JSON, Python
11
- - **Frameworks**: None
12
- - **Total Files**: 41
13
-
14
- ---
15
-
16
- ## Table of Contents
17
-
18
- 1. [Tech Stack](#tech-stack)
19
- 2. [Architecture](#architecture)
20
- 3. [Key Entrypoints](#key-entrypoints)
21
- 4. [Code Conventions](#code-conventions)
22
- 5. [AI Rules](#ai-rules)
23
- 6. [Repository Map](#repository-map)
24
-
25
- ---
26
-
27
- ## Tech Stack
28
-
29
- **Languages**: Markdown, JSON, Python
30
-
31
- ---
32
-
33
- ## Architecture
34
-
35
- ## Architectural Pattern
36
- **Primary**: Flat / Simple Structure
37
-
38
- ## Key Modules
39
- | Module | Responsibility |
40
- |--------|----------------|
41
- | `README.md` | Contains 0 files |
42
- | `ai` | Contains 23 files |
43
- | `blog` | Contains 6 files |
44
- | `django_app` | Contains 4 files |
45
- | `manage.py` | Contains 0 files |
46
- | `users` | Contains 6 files |
47
-
48
-
49
- ---
50
-
51
- ## Key Entrypoints
52
-
53
- ---
54
-
55
- ## Code Conventions
56
-
57
- ## Naming Conventions
58
- - **Files**: PascalCase
59
-
60
- ## Project Structure
61
-
62
- ## Code Style
63
- - **Semicolons**: Required
64
-
65
-
66
- ---
67
-
68
- ## AI Rules
69
-
70
- - Language: Use Markdown, JSON, Python
71
- - Architecture: Follow Flat / Simple Structure pattern
72
- - File naming: PascalCase
73
-
74
- ---
75
-
76
- ## Repository Map
77
-
78
- See repo_map.md for the full structure.
79
-
80
- ---
81
-
82
- ## Notes for AI Assistants
83
-
84
- 1. Follow the established naming conventions (see conventions.md)
85
- 2. Use the detected frameworks and libraries
86
- 3. Target the correct entrypoints for modifications
87
- 4. Maintain the detected architecture patterns
88
- 5. Follow AI rules in ai_rules.md
89
-
90
- ---
91
-
92
- *Generated by ai-first*
@@ -1,47 +0,0 @@
1
- # AI Rules
2
-
3
- > Guidelines for AI assistants working on this project
4
-
5
- ---
6
-
7
- ## Guidelines
8
-
9
- - Language: Use Markdown, JSON, Python
10
- - Architecture: Follow Flat / Simple Structure pattern
11
- - File naming: PascalCase
12
-
13
- ## Patterns
14
-
15
- - Layer structure:
16
-
17
- ## Constraints
18
-
19
- - Always use semicolons
20
-
21
- ---
22
-
23
- ## Quick Reference
24
-
25
- | Category | Value |
26
- |----------|-------|
27
- | Language | Markdown, JSON, Python |
28
- | Framework | N/A |
29
- | Architecture | Flat / Simple Structure |
30
- | Naming | PascalCase |
31
- | Indentation | unknown |
32
-
33
- ---
34
-
35
- ## Best Practices
36
-
37
- 1. Follow the established naming conventions
38
- 2. Keep functions small and focused
39
- 3. Write tests for new features
40
- 4. Use descriptive variable names
41
- 5. Keep the architecture consistent
42
- 6. Document complex logic
43
- 7. Review code before committing
44
-
45
- ---
46
-
47
- *Generated by ai-first*
@@ -1,57 +0,0 @@
1
- # Architecture
2
-
3
- ## Architectural Pattern
4
- **Primary**: Flat / Simple Structure
5
-
6
- ## Key Modules
7
- | Module | Responsibility |
8
- |--------|----------------|
9
- | `README.md` | Contains 0 files |
10
- | `ai` | Contains 23 files |
11
- | `blog` | Contains 6 files |
12
- | `django_app` | Contains 4 files |
13
- | `manage.py` | Contains 0 files |
14
- | `users` | Contains 6 files |
15
-
16
-
17
- ## Module Details
18
-
19
- ### README.md
20
- - **Path**: `README.md`
21
- - **Responsibility**: Contains 0 files
22
-
23
-
24
- ### ai
25
- - **Path**: `ai`
26
- - **Responsibility**: Contains 23 files
27
-
28
-
29
- ### blog
30
- - **Path**: `blog`
31
- - **Responsibility**: Contains 6 files
32
-
33
-
34
- ### django_app
35
- - **Path**: `django_app`
36
- - **Responsibility**: Contains 4 files
37
-
38
-
39
- ### manage.py
40
- - **Path**: `manage.py`
41
- - **Responsibility**: Contains 0 files
42
-
43
-
44
- ### users
45
- - **Path**: `users`
46
- - **Responsibility**: Contains 6 files
47
-
48
-
49
-
50
- ## Recommendations
51
-
52
- - Keep the architecture consistent as the project grows
53
- - Follow the established layer structure
54
- - Use dependency injection to manage module relationships
55
-
56
- ---
57
- *Generated by ai-first*