proagents 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +170 -0
  3. package/bin/proagents.js +90 -0
  4. package/lib/commands/feature.js +125 -0
  5. package/lib/commands/fix.js +60 -0
  6. package/lib/commands/help.js +76 -0
  7. package/lib/commands/init.js +64 -0
  8. package/lib/commands/status.js +91 -0
  9. package/lib/index.js +28 -0
  10. package/package.json +52 -0
  11. package/proagents/.learning/global/common-patterns.json +77 -0
  12. package/proagents/.learning/global/user-preferences.json +76 -0
  13. package/proagents/.learning/projects/example-project/corrections.json +99 -0
  14. package/proagents/.learning/projects/example-project/feedback.json +109 -0
  15. package/proagents/.learning/projects/example-project/metrics.json +101 -0
  16. package/proagents/.learning/projects/example-project/patterns.json +102 -0
  17. package/proagents/.learning/schemas/README.md +48 -0
  18. package/proagents/.learning/schemas/corrections-schema.json +100 -0
  19. package/proagents/.learning/schemas/feedback-schema.json +144 -0
  20. package/proagents/.learning/schemas/metrics-schema.json +96 -0
  21. package/proagents/.learning/schemas/patterns-schema.json +82 -0
  22. package/proagents/.learning/schemas/project-patterns-schema.json +125 -0
  23. package/proagents/.learning/schemas/user-preferences-schema.json +136 -0
  24. package/proagents/GETTING-STARTED-STORY.md +708 -0
  25. package/proagents/README.md +99 -0
  26. package/proagents/WORKFLOW.md +1234 -0
  27. package/proagents/active-features/.gitkeep +0 -0
  28. package/proagents/active-features/README.md +176 -0
  29. package/proagents/active-features/_index.json +74 -0
  30. package/proagents/active-features/feature-user-auth/dependencies.json +81 -0
  31. package/proagents/active-features/feature-user-auth/files-modified.json +126 -0
  32. package/proagents/active-features/feature-user-auth/status.json +122 -0
  33. package/proagents/active-features/schemas/dependencies-schema.json +119 -0
  34. package/proagents/active-features/schemas/feature-schema.json +132 -0
  35. package/proagents/active-features/schemas/files-schema.json +100 -0
  36. package/proagents/active-features/schemas/index-schema.json +95 -0
  37. package/proagents/adr/README.md +302 -0
  38. package/proagents/adr/examples/api-versioning.md +297 -0
  39. package/proagents/adr/examples/database-choice.md +264 -0
  40. package/proagents/adr/template.md +273 -0
  41. package/proagents/ai-models/README.md +141 -0
  42. package/proagents/ai-models/cost-management.md +362 -0
  43. package/proagents/ai-models/fallbacks.md +342 -0
  44. package/proagents/ai-models/model-config.md +318 -0
  45. package/proagents/ai-models/task-routing.md +503 -0
  46. package/proagents/ai-training/README.md +155 -0
  47. package/proagents/ai-training/continuous-learning.md +413 -0
  48. package/proagents/ai-training/domain-knowledge.md +378 -0
  49. package/proagents/ai-training/pattern-learning.md +455 -0
  50. package/proagents/ai-training/training-data.md +337 -0
  51. package/proagents/ai-training/user-preferences.md +346 -0
  52. package/proagents/api-versioning/README.md +257 -0
  53. package/proagents/api-versioning/changelog-template.md +225 -0
  54. package/proagents/api-versioning/deprecation-workflow.md +470 -0
  55. package/proagents/api-versioning/versioning-strategy.md +291 -0
  56. package/proagents/approval-workflows/README.md +146 -0
  57. package/proagents/approval-workflows/approval-config.md +332 -0
  58. package/proagents/approval-workflows/approval-stages.md +503 -0
  59. package/proagents/approval-workflows/emergency-bypass.md +351 -0
  60. package/proagents/approval-workflows/examples.md +859 -0
  61. package/proagents/approval-workflows/notifications.md +320 -0
  62. package/proagents/automation/README.md +38 -0
  63. package/proagents/automation/ai-behavior-rules.md +339 -0
  64. package/proagents/automation/ai-prompt-injection.md +331 -0
  65. package/proagents/automation/auto-decisions.md +535 -0
  66. package/proagents/automation/decision-defaults.yaml +317 -0
  67. package/proagents/cache/README.md +110 -0
  68. package/proagents/cache/analysis-metadata.json +76 -0
  69. package/proagents/cache/conventions.json +125 -0
  70. package/proagents/cache/dependencies.json +85 -0
  71. package/proagents/cache/features.json +115 -0
  72. package/proagents/cache/patterns.json +105 -0
  73. package/proagents/cache/schemas/conventions-schema.json +138 -0
  74. package/proagents/cache/schemas/dependencies-schema.json +95 -0
  75. package/proagents/cache/schemas/features-schema.json +104 -0
  76. package/proagents/cache/schemas/metadata-schema.json +83 -0
  77. package/proagents/cache/schemas/patterns-schema.json +136 -0
  78. package/proagents/cache/schemas/structure-schema.json +72 -0
  79. package/proagents/cache/structure.json +109 -0
  80. package/proagents/changelog/2024/01/2024-01-10-api-url-config.md +41 -0
  81. package/proagents/changelog/2024/01/2024-01-12-login-bug-fix.md +69 -0
  82. package/proagents/changelog/2024/01/2024-01-15-user-auth-feature.md +99 -0
  83. package/proagents/changelog/CHANGELOG.md +82 -0
  84. package/proagents/changelog/README.md +327 -0
  85. package/proagents/changelog/entry-template.md +283 -0
  86. package/proagents/checklists/README.md +261 -0
  87. package/proagents/checklists/code-quality.md +137 -0
  88. package/proagents/checklists/code-review.md +148 -0
  89. package/proagents/checklists/pr-checklist.md +78 -0
  90. package/proagents/checklists/pre-deployment.md +132 -0
  91. package/proagents/checklists/pre-implementation.md +80 -0
  92. package/proagents/checklists/testing.md +120 -0
  93. package/proagents/cicd/README.md +338 -0
  94. package/proagents/cicd/azure-devops.md +267 -0
  95. package/proagents/cicd/github-actions.md +375 -0
  96. package/proagents/cicd/gitlab-ci.md +278 -0
  97. package/proagents/cicd/jenkins.md +317 -0
  98. package/proagents/cli/README.md +392 -0
  99. package/proagents/cli/commands-reference.md +893 -0
  100. package/proagents/cli/ide-integration.md +584 -0
  101. package/proagents/cli/shortcuts.md +394 -0
  102. package/proagents/cli/slash-commands.md +507 -0
  103. package/proagents/collaboration/README.md +143 -0
  104. package/proagents/collaboration/roles.md +248 -0
  105. package/proagents/collaboration/sessions.md +390 -0
  106. package/proagents/collaboration/sync.md +358 -0
  107. package/proagents/compliance/README.md +206 -0
  108. package/proagents/compliance/access-control.md +310 -0
  109. package/proagents/compliance/audit-logging.md +444 -0
  110. package/proagents/compliance/compliance-frameworks.md +429 -0
  111. package/proagents/compliance/reports.md +491 -0
  112. package/proagents/compliance/retention-policies.md +454 -0
  113. package/proagents/config/README.md +181 -0
  114. package/proagents/config/integrations/README.md +68 -0
  115. package/proagents/config/integrations/github.yaml +211 -0
  116. package/proagents/config/integrations/jira.yaml +144 -0
  117. package/proagents/config/integrations/linear.yaml +157 -0
  118. package/proagents/config/integrations/notion.yaml +203 -0
  119. package/proagents/config/integrations/slack.yaml +230 -0
  120. package/proagents/config/rules/README.md +73 -0
  121. package/proagents/config/rules/custom-rules.template.yaml +188 -0
  122. package/proagents/config/rules/validation-rules.template.yaml +177 -0
  123. package/proagents/config/standards/README.md +58 -0
  124. package/proagents/config/standards/architecture-rules.template.md +124 -0
  125. package/proagents/config/standards/coding-standards.template.md +107 -0
  126. package/proagents/config/standards/naming-conventions.template.md +114 -0
  127. package/proagents/config/standards/testing-standards.template.md +213 -0
  128. package/proagents/config/templates/README.md +74 -0
  129. package/proagents/config/templates/api-route.template.ts +142 -0
  130. package/proagents/config/templates/component.template.tsx +55 -0
  131. package/proagents/config/templates/hook.template.ts +93 -0
  132. package/proagents/config/templates/test.template.ts +171 -0
  133. package/proagents/config-versioning/README.md +120 -0
  134. package/proagents/config-versioning/changelog.md +300 -0
  135. package/proagents/config-versioning/rollback.md +283 -0
  136. package/proagents/config-versioning/versioning.md +330 -0
  137. package/proagents/contract-testing/README.md +223 -0
  138. package/proagents/contract-testing/contract-testing.md +614 -0
  139. package/proagents/contract-testing/pact-integration.md +507 -0
  140. package/proagents/contract-testing/schema-validation.md +565 -0
  141. package/proagents/cost/README.md +48 -0
  142. package/proagents/cost/cost-template.md +283 -0
  143. package/proagents/cost/estimation-framework.md +287 -0
  144. package/proagents/database/README.md +72 -0
  145. package/proagents/database/examples/001-create-users.sql +129 -0
  146. package/proagents/database/examples/002-add-preferences.sql +94 -0
  147. package/proagents/database/examples/003-add-index.sql +105 -0
  148. package/proagents/database/examples/004-rename-column.sql +122 -0
  149. package/proagents/database/examples/005-add-foreign-key.sql +142 -0
  150. package/proagents/database/examples/006-data-migration.sql +196 -0
  151. package/proagents/database/examples/007-drop-column.sql +163 -0
  152. package/proagents/database/examples/README.md +89 -0
  153. package/proagents/database/migration-workflow.md +478 -0
  154. package/proagents/database/rollback-scripts.md +487 -0
  155. package/proagents/database/safety-checks.md +447 -0
  156. package/proagents/dependency-management/README.md +140 -0
  157. package/proagents/dependency-management/automation.md +363 -0
  158. package/proagents/dependency-management/compatibility.md +319 -0
  159. package/proagents/dependency-management/security-scanning.md +413 -0
  160. package/proagents/dependency-management/update-policies.md +374 -0
  161. package/proagents/disaster-recovery/README.md +247 -0
  162. package/proagents/disaster-recovery/automation.md +366 -0
  163. package/proagents/disaster-recovery/backup-recovery.md +571 -0
  164. package/proagents/disaster-recovery/incident-response.md +565 -0
  165. package/proagents/disaster-recovery/rollback-procedures.md +499 -0
  166. package/proagents/disaster-recovery/runbooks.md +603 -0
  167. package/proagents/disaster-recovery/scenarios.md +892 -0
  168. package/proagents/disaster-recovery/testing.md +438 -0
  169. package/proagents/environments/README.md +244 -0
  170. package/proagents/environments/configuration.md +437 -0
  171. package/proagents/environments/promotion.md +434 -0
  172. package/proagents/environments/setup.md +420 -0
  173. package/proagents/examples/README.md +55 -0
  174. package/proagents/examples/backend-nodejs/README.md +188 -0
  175. package/proagents/examples/backend-nodejs/complete-conversation.md +601 -0
  176. package/proagents/examples/backend-nodejs/proagents.config.yaml +415 -0
  177. package/proagents/examples/backend-nodejs/workflow-example.md +909 -0
  178. package/proagents/examples/fullstack-nextjs/README.md +155 -0
  179. package/proagents/examples/fullstack-nextjs/complete-conversation.md +604 -0
  180. package/proagents/examples/fullstack-nextjs/proagents.config.yaml +287 -0
  181. package/proagents/examples/fullstack-nextjs/workflow-example.md +553 -0
  182. package/proagents/examples/mobile-react-native/README.md +171 -0
  183. package/proagents/examples/mobile-react-native/complete-conversation.md +825 -0
  184. package/proagents/examples/mobile-react-native/proagents.config.yaml +330 -0
  185. package/proagents/examples/mobile-react-native/workflow-example.md +723 -0
  186. package/proagents/examples/web-frontend-react/README.md +125 -0
  187. package/proagents/examples/web-frontend-react/complete-conversation.md +556 -0
  188. package/proagents/examples/web-frontend-react/proagents.config.yaml +183 -0
  189. package/proagents/examples/web-frontend-react/workflow-example.md +603 -0
  190. package/proagents/existing-projects/README.md +65 -0
  191. package/proagents/existing-projects/challenges.md +861 -0
  192. package/proagents/existing-projects/coexistence-mode.md +483 -0
  193. package/proagents/existing-projects/compatibility-assessment.md +541 -0
  194. package/proagents/existing-projects/gradual-adoption.md +515 -0
  195. package/proagents/existing-projects/migration-strategies.md +788 -0
  196. package/proagents/existing-projects/pattern-reconciliation.md +489 -0
  197. package/proagents/existing-projects/team-onboarding.md +617 -0
  198. package/proagents/existing-projects/technical-debt-handling.md +644 -0
  199. package/proagents/feature-flags/README.md +263 -0
  200. package/proagents/feature-flags/ab-testing.md +413 -0
  201. package/proagents/feature-flags/configuration.md +420 -0
  202. package/proagents/feature-flags/kill-switches.md +444 -0
  203. package/proagents/feature-flags/rollout-strategies.md +392 -0
  204. package/proagents/getting-started/README.md +60 -0
  205. package/proagents/getting-started/ai-training-setup.md +380 -0
  206. package/proagents/getting-started/ide-setup.md +195 -0
  207. package/proagents/getting-started/mcp-setup.md +239 -0
  208. package/proagents/getting-started/pm-integration.md +336 -0
  209. package/proagents/getting-started/prompt-engineering.md +478 -0
  210. package/proagents/getting-started/team-onboarding.md +236 -0
  211. package/proagents/git/README.md +68 -0
  212. package/proagents/git/branch-strategy.md +164 -0
  213. package/proagents/git/commit-conventions.md +241 -0
  214. package/proagents/git/pr-workflow.md +286 -0
  215. package/proagents/git/rollback-procedures.md +416 -0
  216. package/proagents/i18n/README.md +133 -0
  217. package/proagents/i18n/extraction.md +433 -0
  218. package/proagents/i18n/tms-integration.md +332 -0
  219. package/proagents/i18n/translation-workflow.md +413 -0
  220. package/proagents/i18n/validation.md +355 -0
  221. package/proagents/ide-integration/README.md +124 -0
  222. package/proagents/ide-integration/cline-config.md +429 -0
  223. package/proagents/ide-integration/continue-config.md +380 -0
  224. package/proagents/ide-integration/cursor-rules.md +280 -0
  225. package/proagents/ide-integration/github-copilot.md +384 -0
  226. package/proagents/ide-integration/windsurf-rules.md +314 -0
  227. package/proagents/integrations/README.md +97 -0
  228. package/proagents/integrations/pm/README.md +344 -0
  229. package/proagents/learning/README.md +136 -0
  230. package/proagents/learning/adaptation.md +305 -0
  231. package/proagents/learning/data-collection.md +283 -0
  232. package/proagents/learning/implementation-guide.md +865 -0
  233. package/proagents/learning/reports.md +306 -0
  234. package/proagents/logging/README.md +276 -0
  235. package/proagents/logging/aggregation.md +475 -0
  236. package/proagents/logging/log-levels.md +376 -0
  237. package/proagents/logging/sensitive-data.md +423 -0
  238. package/proagents/logging/structured-logging.md +406 -0
  239. package/proagents/mcp/README.md +133 -0
  240. package/proagents/mcp/context-providers.md +442 -0
  241. package/proagents/mcp/server-config.md +306 -0
  242. package/proagents/mcp/tools-definition.md +513 -0
  243. package/proagents/metrics/README.md +174 -0
  244. package/proagents/metrics/code-quality-kpis.md +461 -0
  245. package/proagents/metrics/deployment-metrics.md +517 -0
  246. package/proagents/metrics/developer-productivity.md +368 -0
  247. package/proagents/metrics/learning-effectiveness.md +478 -0
  248. package/proagents/migrations/README.md +77 -0
  249. package/proagents/migrations/from-claude-projects.md +312 -0
  250. package/proagents/migrations/from-cursor-rules.md +345 -0
  251. package/proagents/migrations/from-custom-workflows.md +410 -0
  252. package/proagents/monitoring/README.md +308 -0
  253. package/proagents/monitoring/alerting.md +449 -0
  254. package/proagents/monitoring/dashboards.md +454 -0
  255. package/proagents/monitoring/health-checks.md +436 -0
  256. package/proagents/monitoring/metrics.md +434 -0
  257. package/proagents/multi-project/README.md +170 -0
  258. package/proagents/multi-project/coordinated-deploy.md +510 -0
  259. package/proagents/multi-project/cross-project-deps.md +395 -0
  260. package/proagents/multi-project/unified-changelog.md +477 -0
  261. package/proagents/multi-project/walkthroughs/monorepo-setup.md +787 -0
  262. package/proagents/multi-project/workspace-config.md +408 -0
  263. package/proagents/notifications/README.md +151 -0
  264. package/proagents/notifications/channels.md +457 -0
  265. package/proagents/notifications/preferences.md +415 -0
  266. package/proagents/notifications/routing.md +449 -0
  267. package/proagents/notifications/scheduling.md +425 -0
  268. package/proagents/notifications/templates.md +446 -0
  269. package/proagents/offline-mode/README.md +145 -0
  270. package/proagents/offline-mode/caching.md +344 -0
  271. package/proagents/offline-mode/offline-operations.md +312 -0
  272. package/proagents/offline-mode/queue-specifications.md +679 -0
  273. package/proagents/offline-mode/sync.md +475 -0
  274. package/proagents/parallel-features/README.md +85 -0
  275. package/proagents/parallel-features/conflict-detection.md +226 -0
  276. package/proagents/parallel-features/dependency-management.md +392 -0
  277. package/proagents/parallel-features/merge-coordination.md +506 -0
  278. package/proagents/parallel-features/tracking-system.md +416 -0
  279. package/proagents/patterns/README.md +305 -0
  280. package/proagents/patterns/api-errors.md +453 -0
  281. package/proagents/patterns/async-errors.md +521 -0
  282. package/proagents/patterns/error-types.md +437 -0
  283. package/proagents/patterns/ui-errors.md +595 -0
  284. package/proagents/performance/README.md +59 -0
  285. package/proagents/performance/bundle-analysis.md +375 -0
  286. package/proagents/performance/load-testing.md +563 -0
  287. package/proagents/performance/runtime-metrics.md +489 -0
  288. package/proagents/performance/web-vitals.md +425 -0
  289. package/proagents/plugins/README.md +139 -0
  290. package/proagents/plugins/creating-plugins.md +504 -0
  291. package/proagents/plugins/plugin-api.md +467 -0
  292. package/proagents/plugins/plugin-registry.md +276 -0
  293. package/proagents/pm-integration/README.md +151 -0
  294. package/proagents/pm-integration/asana.md +346 -0
  295. package/proagents/pm-integration/github-issues.md +308 -0
  296. package/proagents/pm-integration/gitlab-issues.md +482 -0
  297. package/proagents/pm-integration/jira.md +364 -0
  298. package/proagents/pm-integration/linear.md +409 -0
  299. package/proagents/pm-integration/notion.md +275 -0
  300. package/proagents/pm-integration/sync-config.md +533 -0
  301. package/proagents/pm-integration/trello.md +159 -0
  302. package/proagents/proagents.config.yaml +213 -0
  303. package/proagents/prompts/00-init-wizard.md +426 -0
  304. package/proagents/prompts/00-init.md +219 -0
  305. package/proagents/prompts/01-analysis.md +244 -0
  306. package/proagents/prompts/02-requirements.md +399 -0
  307. package/proagents/prompts/03-ui-design.md +493 -0
  308. package/proagents/prompts/04-planning.md +505 -0
  309. package/proagents/prompts/05-implementation.md +518 -0
  310. package/proagents/prompts/06-testing.md +620 -0
  311. package/proagents/prompts/06.5-code-review.md +512 -0
  312. package/proagents/prompts/07-documentation.md +673 -0
  313. package/proagents/prompts/08-deployment.md +539 -0
  314. package/proagents/prompts/09-rollback.md +554 -0
  315. package/proagents/prompts/README.md +51 -0
  316. package/proagents/prompts/accessibility/README.md +146 -0
  317. package/proagents/prompts/accessibility/aria.md +276 -0
  318. package/proagents/prompts/accessibility/audit.md +233 -0
  319. package/proagents/prompts/accessibility/keyboard.md +392 -0
  320. package/proagents/prompts/accessibility/wcag.md +189 -0
  321. package/proagents/prompts/debugging/README.md +51 -0
  322. package/proagents/prompts/debugging/error-analysis.md +385 -0
  323. package/proagents/prompts/debugging/performance-debug.md +381 -0
  324. package/proagents/prompts/debugging/systematic.md +270 -0
  325. package/proagents/prompts/performance/README.md +47 -0
  326. package/proagents/prompts/performance/analyze.md +265 -0
  327. package/proagents/prompts/performance/optimize.md +347 -0
  328. package/proagents/prompts/refactoring/README.md +51 -0
  329. package/proagents/prompts/refactoring/architecture.md +531 -0
  330. package/proagents/prompts/refactoring/code-smells.md +174 -0
  331. package/proagents/prompts/refactoring/patterns.md +516 -0
  332. package/proagents/prompts/security-audit/README.md +197 -0
  333. package/proagents/prompts/security-audit/code-review.md +260 -0
  334. package/proagents/prompts/security-audit/vulnerability-scan.md +288 -0
  335. package/proagents/reporting/README.md +158 -0
  336. package/proagents/reporting/dashboards.md +366 -0
  337. package/proagents/reporting/exports.md +524 -0
  338. package/proagents/reporting/quality-metrics.md +385 -0
  339. package/proagents/reporting/templates/README.md +56 -0
  340. package/proagents/reporting/templates/dashboard-config.json +187 -0
  341. package/proagents/reporting/templates/metrics-queries.md +427 -0
  342. package/proagents/reporting/templates/react-dashboard.tsx +544 -0
  343. package/proagents/reporting/templates/widgets.md +451 -0
  344. package/proagents/reporting/velocity-metrics.md +340 -0
  345. package/proagents/reverse-engineering/README.md +151 -0
  346. package/proagents/reverse-engineering/architecture-extraction.md +325 -0
  347. package/proagents/reverse-engineering/code-analysis.md +377 -0
  348. package/proagents/reverse-engineering/dependency-mapping.md +567 -0
  349. package/proagents/reverse-engineering/diagram-generation.md +586 -0
  350. package/proagents/reverse-engineering/documentation-generation.md +468 -0
  351. package/proagents/reverse-engineering/pattern-detection.md +569 -0
  352. package/proagents/reverse-engineering/quality-assessment.md +733 -0
  353. package/proagents/rules/README.md +179 -0
  354. package/proagents/rules/custom-rules-template.yaml +286 -0
  355. package/proagents/rules/custom-rules.md +754 -0
  356. package/proagents/rules/validation-rules-template.yaml +517 -0
  357. package/proagents/runbooks/README.md +219 -0
  358. package/proagents/runbooks/dependency-vulnerability.md +505 -0
  359. package/proagents/runbooks/incident-response.md +451 -0
  360. package/proagents/runbooks/performance-degradation.md +584 -0
  361. package/proagents/runbooks/production-debugging.md +489 -0
  362. package/proagents/scaffolding/README.md +64 -0
  363. package/proagents/scaffolding/nextjs/README.md +578 -0
  364. package/proagents/scaffolding/nextjs/templates/api-route.ts.template +185 -0
  365. package/proagents/scaffolding/nextjs/templates/page.tsx.template +109 -0
  366. package/proagents/scaffolding/nextjs/templates/server-action.ts.template +204 -0
  367. package/proagents/scaffolding/nodejs/README.md +558 -0
  368. package/proagents/scaffolding/nodejs/templates/controller.ts.template +167 -0
  369. package/proagents/scaffolding/nodejs/templates/repository.ts.template +155 -0
  370. package/proagents/scaffolding/nodejs/templates/service.ts.template +207 -0
  371. package/proagents/scaffolding/project-types.md +401 -0
  372. package/proagents/scaffolding/react/README.md +399 -0
  373. package/proagents/scaffolding/react/templates/component.tsx.template +88 -0
  374. package/proagents/scaffolding/react/templates/hook.ts.template +127 -0
  375. package/proagents/scaffolding/react/templates/service.ts.template +155 -0
  376. package/proagents/scaffolding/react/templates/test.tsx.template +149 -0
  377. package/proagents/scaffolding/react-native/README.md +476 -0
  378. package/proagents/scaffolding/react-native/templates/hook.ts.template +226 -0
  379. package/proagents/scaffolding/react-native/templates/screen.tsx.template +247 -0
  380. package/proagents/secrets/README.md +278 -0
  381. package/proagents/secrets/access-control.md +443 -0
  382. package/proagents/secrets/rotation.md +403 -0
  383. package/proagents/secrets/scanning.md +487 -0
  384. package/proagents/secrets/storage.md +394 -0
  385. package/proagents/security/README.md +71 -0
  386. package/proagents/security/owasp-checklist.md +390 -0
  387. package/proagents/security/sast-guide.md +473 -0
  388. package/proagents/security/security-report-template.md +343 -0
  389. package/proagents/security/vulnerability-scanning.md +329 -0
  390. package/proagents/slash-commands.json +161 -0
  391. package/proagents/standards/README.md +120 -0
  392. package/proagents/standards/architecture-patterns.md +728 -0
  393. package/proagents/standards/architecture-rules-template.md +489 -0
  394. package/proagents/standards/coding-standards-template.md +489 -0
  395. package/proagents/standards/examples/README.md +61 -0
  396. package/proagents/standards/examples/nodejs-api.md +560 -0
  397. package/proagents/standards/examples/react-nextjs.md +428 -0
  398. package/proagents/standards/naming-conventions-template.md +526 -0
  399. package/proagents/standards/override-system.md +717 -0
  400. package/proagents/standards/testing-standards-template.md +220 -0
  401. package/proagents/team/README.md +256 -0
  402. package/proagents/team/code-ownership.md +306 -0
  403. package/proagents/team/communication-templates.md +441 -0
  404. package/proagents/team/handoff-protocol.md +380 -0
  405. package/proagents/team/ide-setup/README.md +103 -0
  406. package/proagents/team/ide-setup/cursor.md +276 -0
  407. package/proagents/team/ide-setup/jetbrains.md +330 -0
  408. package/proagents/team/ide-setup/neovim.md +640 -0
  409. package/proagents/team/ide-setup/vscode.md +348 -0
  410. package/proagents/team/onboarding.md +278 -0
  411. package/proagents/templates/README.md +57 -0
  412. package/proagents/templates/code-review-report.md +255 -0
  413. package/proagents/templates/codebase-analysis-report.md +315 -0
  414. package/proagents/templates/deployment-checklist.md +277 -0
  415. package/proagents/templates/feature-requirements.md +142 -0
  416. package/proagents/templates/feature-status.md +231 -0
  417. package/proagents/templates/implementation-plan.md +373 -0
  418. package/proagents/templates/rollback-plan.md +331 -0
  419. package/proagents/templates/test-plan.md +336 -0
  420. package/proagents/templates/ui-specification.md +431 -0
  421. package/proagents/testing-standards/README.md +229 -0
  422. package/proagents/testing-standards/coverage-requirements.md +198 -0
  423. package/proagents/testing-standards/mocking-guidelines.md +478 -0
  424. package/proagents/testing-standards/test-naming.md +485 -0
  425. package/proagents/testing-standards/test-patterns.md +488 -0
  426. package/proagents/troubleshooting/README.md +730 -0
  427. package/proagents/troubleshooting/ai-issues.md +601 -0
  428. package/proagents/troubleshooting/workflow-issues.md +571 -0
  429. package/proagents/ui-integration/README.md +77 -0
  430. package/proagents/ui-integration/figma-guide.md +217 -0
  431. package/proagents/ui-integration/manual-export-guide.md +358 -0
  432. package/proagents/ui-integration/sketch-interpretation.md +471 -0
  433. package/proagents/webhooks/README.md +126 -0
  434. package/proagents/webhooks/endpoints.md +298 -0
  435. package/proagents/webhooks/events.md +316 -0
  436. package/proagents/webhooks/payloads.md +325 -0
  437. package/proagents/webhooks/reliability.md +363 -0
  438. package/proagents/webhooks/security.md +380 -0
  439. package/proagents/workflow-modes/README.md +136 -0
  440. package/proagents/workflow-modes/deferred-tracking.md +405 -0
  441. package/proagents/workflow-modes/entry-modes.md +397 -0
  442. package/proagents/workflow-modes/guardrails.md +405 -0
  443. package/proagents/workflow-modes/mode-detection.md +358 -0
  444. package/proagents/workflow-modes/mode-switching.md +372 -0
@@ -0,0 +1,431 @@
1
+ # UI Specification: [Feature/Component Name]
2
+
3
+ **Created:** [YYYY-MM-DD]
4
+ **Designer:** [Name]
5
+ **Developer:** [Name]
6
+ **Version:** [X.X]
7
+
8
+ ---
9
+
10
+ ## Overview
11
+
12
+ ### Description
13
+ [Brief description of the UI element/feature being specified]
14
+
15
+ ### Purpose
16
+ [Why this UI exists and what user need it addresses]
17
+
18
+ ### Design Reference
19
+ - Figma: [link]
20
+ - Prototype: [link]
21
+ - Design System: [link]
22
+
23
+ ---
24
+
25
+ ## Design Tokens
26
+
27
+ ### Colors
28
+
29
+ | Token | Value | Usage |
30
+ |-------|-------|-------|
31
+ | `--color-primary` | #3B82F6 | Primary buttons, links |
32
+ | `--color-primary-hover` | #2563EB | Primary hover states |
33
+ | `--color-secondary` | #10B981 | Secondary elements |
34
+ | `--color-background` | #FFFFFF | Page background |
35
+ | `--color-surface` | #F9FAFB | Card backgrounds |
36
+ | `--color-text` | #1F2937 | Primary text |
37
+ | `--color-text-muted` | #6B7280 | Secondary text |
38
+ | `--color-border` | #E5E7EB | Borders |
39
+ | `--color-error` | #EF4444 | Error states |
40
+ | `--color-success` | #10B981 | Success states |
41
+ | `--color-warning` | #F59E0B | Warning states |
42
+
43
+ ### Typography
44
+
45
+ | Token | Font | Size | Weight | Line Height |
46
+ |-------|------|------|--------|-------------|
47
+ | `--text-heading-1` | Inter | 32px | 700 | 1.2 |
48
+ | `--text-heading-2` | Inter | 24px | 600 | 1.3 |
49
+ | `--text-heading-3` | Inter | 20px | 600 | 1.4 |
50
+ | `--text-body` | Inter | 16px | 400 | 1.5 |
51
+ | `--text-body-small` | Inter | 14px | 400 | 1.5 |
52
+ | `--text-caption` | Inter | 12px | 400 | 1.4 |
53
+
54
+ ### Spacing
55
+
56
+ | Token | Value | Usage |
57
+ |-------|-------|-------|
58
+ | `--space-1` | 4px | Tight spacing |
59
+ | `--space-2` | 8px | Component internal |
60
+ | `--space-3` | 12px | Small gaps |
61
+ | `--space-4` | 16px | Standard spacing |
62
+ | `--space-5` | 20px | Medium spacing |
63
+ | `--space-6` | 24px | Section spacing |
64
+ | `--space-8` | 32px | Large spacing |
65
+ | `--space-10` | 40px | Extra large |
66
+ | `--space-12` | 48px | Page sections |
67
+
68
+ ### Border Radius
69
+
70
+ | Token | Value | Usage |
71
+ |-------|-------|-------|
72
+ | `--radius-sm` | 4px | Small elements |
73
+ | `--radius-md` | 8px | Buttons, inputs |
74
+ | `--radius-lg` | 12px | Cards |
75
+ | `--radius-xl` | 16px | Modals |
76
+ | `--radius-full` | 9999px | Pills, avatars |
77
+
78
+ ### Shadows
79
+
80
+ | Token | Value | Usage |
81
+ |-------|-------|-------|
82
+ | `--shadow-sm` | 0 1px 2px rgba(0,0,0,0.05) | Subtle elevation |
83
+ | `--shadow-md` | 0 4px 6px rgba(0,0,0,0.1) | Cards |
84
+ | `--shadow-lg` | 0 10px 15px rgba(0,0,0,0.1) | Dropdowns |
85
+ | `--shadow-xl` | 0 20px 25px rgba(0,0,0,0.15) | Modals |
86
+
87
+ ---
88
+
89
+ ## Component Specifications
90
+
91
+ ### [Component Name]
92
+
93
+ #### Visual Design
94
+
95
+ **Layout:**
96
+ ```
97
+ ┌─────────────────────────────────┐
98
+ │ [Icon] Title │
99
+ │ Subtitle text here │
100
+ ├─────────────────────────────────┤
101
+ │ │
102
+ │ Content area │
103
+ │ │
104
+ ├─────────────────────────────────┤
105
+ │ [Secondary] [Primary] │
106
+ └─────────────────────────────────┘
107
+ ```
108
+
109
+ **Dimensions:**
110
+ | Property | Value |
111
+ |----------|-------|
112
+ | Width | 100% (max: 400px) |
113
+ | Min Height | 200px |
114
+ | Padding | 24px |
115
+ | Border Radius | 12px |
116
+
117
+ **Colors:**
118
+ | Element | Color Token |
119
+ |---------|-------------|
120
+ | Background | `--color-surface` |
121
+ | Border | `--color-border` |
122
+ | Title | `--color-text` |
123
+ | Subtitle | `--color-text-muted` |
124
+
125
+ #### Props Interface
126
+
127
+ ```typescript
128
+ interface ComponentNameProps {
129
+ /** Main title text */
130
+ title: string;
131
+
132
+ /** Optional subtitle */
133
+ subtitle?: string;
134
+
135
+ /** Icon to display (optional) */
136
+ icon?: React.ReactNode;
137
+
138
+ /** Primary action handler */
139
+ onPrimaryAction: () => void;
140
+
141
+ /** Primary action label */
142
+ primaryLabel?: string;
143
+
144
+ /** Secondary action handler (optional) */
145
+ onSecondaryAction?: () => void;
146
+
147
+ /** Secondary action label */
148
+ secondaryLabel?: string;
149
+
150
+ /** Component content */
151
+ children: React.ReactNode;
152
+
153
+ /** Additional CSS class */
154
+ className?: string;
155
+ }
156
+ ```
157
+
158
+ #### States
159
+
160
+ **Default State:**
161
+ - Background: `--color-surface`
162
+ - Border: 1px solid `--color-border`
163
+ - Shadow: `--shadow-md`
164
+
165
+ **Hover State:**
166
+ - Shadow: `--shadow-lg`
167
+ - Transition: 200ms ease-out
168
+
169
+ **Focus State:**
170
+ - Border: 2px solid `--color-primary`
171
+ - Outline: none
172
+
173
+ **Disabled State:**
174
+ - Opacity: 0.5
175
+ - Pointer-events: none
176
+
177
+ **Loading State:**
178
+ - Content replaced with skeleton/spinner
179
+ - Actions disabled
180
+
181
+ **Error State:**
182
+ - Border: 1px solid `--color-error`
183
+ - Error message displayed below
184
+
185
+ #### Variants
186
+
187
+ | Variant | Description | Visual Difference |
188
+ |---------|-------------|-------------------|
189
+ | default | Standard card | As specified above |
190
+ | elevated | Higher elevation | Larger shadow |
191
+ | outlined | No shadow | Border only |
192
+ | filled | Colored background | Primary background |
193
+
194
+ ---
195
+
196
+ ## Page Layout
197
+
198
+ ### Page Structure
199
+
200
+ ```
201
+ ┌──────────────────────────────────────────────┐
202
+ │ Header (64px) │
203
+ ├──────────────────────────────────────────────┤
204
+ │ │
205
+ │ Main Content │
206
+ │ ┌──────────┐ ┌──────────────────────────┐ │
207
+ │ │ │ │ │ │
208
+ │ │ Sidebar │ │ Content Area │ │
209
+ │ │ (240px) │ │ (flex: 1) │ │
210
+ │ │ │ │ │ │
211
+ │ └──────────┘ └──────────────────────────┘ │
212
+ │ │
213
+ ├──────────────────────────────────────────────┤
214
+ │ Footer (48px) │
215
+ └──────────────────────────────────────────────┘
216
+ ```
217
+
218
+ ### Grid System
219
+
220
+ | Breakpoint | Columns | Gutter | Margin |
221
+ |------------|---------|--------|--------|
222
+ | Mobile (<640px) | 4 | 16px | 16px |
223
+ | Tablet (640-1024px) | 8 | 24px | 32px |
224
+ | Desktop (>1024px) | 12 | 24px | 48px |
225
+
226
+ ---
227
+
228
+ ## Responsive Behavior
229
+
230
+ ### Mobile (< 640px)
231
+
232
+ ```
233
+ ┌────────────────────┐
234
+ │ Header │
235
+ ├────────────────────┤
236
+ │ │
237
+ │ Content │
238
+ │ (full width) │
239
+ │ │
240
+ ├────────────────────┤
241
+ │ Bottom Nav │
242
+ └────────────────────┘
243
+ ```
244
+
245
+ **Changes:**
246
+ - Sidebar becomes bottom navigation
247
+ - Cards stack vertically
248
+ - Touch targets minimum 44px
249
+
250
+ ### Tablet (640px - 1024px)
251
+
252
+ ```
253
+ ┌──────────────────────────┐
254
+ │ Header │
255
+ ├──────────────────────────┤
256
+ │ │ │
257
+ │ Side │ Content │
258
+ │ (200px) │ (flex: 1) │
259
+ │ │ │
260
+ └──────────────────────────┘
261
+ ```
262
+
263
+ **Changes:**
264
+ - Collapsed sidebar (icons only)
265
+ - 2-column grid for cards
266
+
267
+ ### Desktop (> 1024px)
268
+
269
+ **Changes:**
270
+ - Full sidebar expanded
271
+ - 3-4 column grid for cards
272
+ - Hover states enabled
273
+
274
+ ---
275
+
276
+ ## Interactions
277
+
278
+ ### Click/Tap
279
+
280
+ | Element | Action | Feedback |
281
+ |---------|--------|----------|
282
+ | Primary Button | Submit form | Scale 0.98, color darken |
283
+ | Card | Navigate | Elevation increase |
284
+ | Link | Navigate | Underline, color change |
285
+
286
+ ### Hover (Desktop)
287
+
288
+ | Element | Effect | Transition |
289
+ |---------|--------|------------|
290
+ | Button | Background darken | 150ms ease |
291
+ | Card | Shadow increase | 200ms ease |
292
+ | Link | Underline | immediate |
293
+ | Icon | Scale 1.1 | 150ms ease |
294
+
295
+ ### Focus
296
+
297
+ | Element | Indicator |
298
+ |---------|-----------|
299
+ | All interactive | 2px primary outline, 2px offset |
300
+ | Input | Border color change |
301
+ | Button | Outline + slight scale |
302
+
303
+ ### Loading States
304
+
305
+ | Scenario | Indicator |
306
+ |----------|-----------|
307
+ | Page load | Full page spinner |
308
+ | Section load | Skeleton placeholders |
309
+ | Button action | Button spinner + disabled |
310
+ | Inline action | Small spinner |
311
+
312
+ ---
313
+
314
+ ## Animations
315
+
316
+ ### Transitions
317
+
318
+ | Property | Duration | Easing |
319
+ |----------|----------|--------|
320
+ | Color | 150ms | ease |
321
+ | Background | 150ms | ease |
322
+ | Transform | 200ms | ease-out |
323
+ | Opacity | 200ms | ease |
324
+ | Shadow | 200ms | ease |
325
+
326
+ ### Entry Animations
327
+
328
+ | Element | Animation |
329
+ |---------|-----------|
330
+ | Modal | Fade in + scale from 0.95 |
331
+ | Dropdown | Fade in + slide down 8px |
332
+ | Toast | Slide in from right |
333
+ | Page | Fade in |
334
+
335
+ ### Exit Animations
336
+
337
+ | Element | Animation |
338
+ |---------|-----------|
339
+ | Modal | Fade out + scale to 0.95 |
340
+ | Dropdown | Fade out + slide up 8px |
341
+ | Toast | Slide out to right |
342
+
343
+ ---
344
+
345
+ ## Accessibility
346
+
347
+ ### Keyboard Navigation
348
+
349
+ | Key | Action |
350
+ |-----|--------|
351
+ | Tab | Move to next focusable |
352
+ | Shift+Tab | Move to previous focusable |
353
+ | Enter | Activate button/link |
354
+ | Space | Toggle checkbox, activate button |
355
+ | Escape | Close modal/dropdown |
356
+ | Arrow keys | Navigate within component |
357
+
358
+ ### ARIA Requirements
359
+
360
+ | Element | ARIA Attribute |
361
+ |---------|----------------|
362
+ | Modal | role="dialog", aria-modal="true" |
363
+ | Button | aria-label (if icon-only) |
364
+ | Alert | role="alert" |
365
+ | Progress | aria-valuenow, aria-valuemax |
366
+ | Tabs | role="tablist", role="tab" |
367
+
368
+ ### Color Contrast
369
+
370
+ | Text Type | Minimum Ratio |
371
+ |-----------|---------------|
372
+ | Normal text | 4.5:1 |
373
+ | Large text (18px+) | 3:1 |
374
+ | UI components | 3:1 |
375
+
376
+ ---
377
+
378
+ ## Assets
379
+
380
+ ### Icons
381
+
382
+ | Icon | Name | Usage |
383
+ |------|------|-------|
384
+ | [icon] | icon-close | Close buttons, dismiss |
385
+ | [icon] | icon-check | Success, selected |
386
+ | [icon] | icon-alert | Warnings, errors |
387
+ | [icon] | icon-info | Information |
388
+ | [icon] | icon-arrow-right | Navigation |
389
+
390
+ ### Images
391
+
392
+ | Image | Format | Sizes |
393
+ |-------|--------|-------|
394
+ | Hero image | WebP | 1x, 2x |
395
+ | Thumbnails | WebP | 150x150, 300x300 |
396
+ | Avatars | PNG | 32x32, 64x64, 128x128 |
397
+
398
+ ---
399
+
400
+ ## Implementation Notes
401
+
402
+ ### CSS Approach
403
+
404
+ [Describe CSS methodology: CSS Modules, Styled Components, Tailwind, etc.]
405
+
406
+ ### Component Library
407
+
408
+ [Reference to existing components that can be used/extended]
409
+
410
+ ### Browser Support
411
+
412
+ | Browser | Version |
413
+ |---------|---------|
414
+ | Chrome | Last 2 versions |
415
+ | Firefox | Last 2 versions |
416
+ | Safari | Last 2 versions |
417
+ | Edge | Last 2 versions |
418
+
419
+ ---
420
+
421
+ ## Approval
422
+
423
+ | Role | Name | Date | Approved |
424
+ |------|------|------|----------|
425
+ | Design | | | [ ] |
426
+ | Frontend | | | [ ] |
427
+ | Product | | | [ ] |
428
+
429
+ ---
430
+
431
+ *Generated by ProAgents*
@@ -0,0 +1,229 @@
1
+ # Testing Standards
2
+
3
+ Comprehensive testing guidelines and standards for consistent quality.
4
+
5
+ ---
6
+
7
+ ## Overview
8
+
9
+ Define testing requirements, coverage targets, and best practices for your project.
10
+
11
+ ## Documentation
12
+
13
+ | Document | Description |
14
+ |----------|-------------|
15
+ | [Coverage Requirements](./coverage-requirements.md) | Minimum coverage targets |
16
+ | [Test Patterns](./test-patterns.md) | Unit, integration, E2E patterns |
17
+ | [Mocking Guidelines](./mocking-guidelines.md) | When and how to mock |
18
+ | [Test Naming](./test-naming.md) | Naming conventions |
19
+
20
+ ---
21
+
22
+ ## Coverage Requirements
23
+
24
+ ### By Project Type
25
+
26
+ | Project Type | Unit | Integration | E2E |
27
+ |--------------|------|-------------|-----|
28
+ | Web Frontend | 80% | 60% | Critical flows |
29
+ | Full-stack | 80% | 70% | Critical flows |
30
+ | Mobile | 75% | 60% | Smoke tests |
31
+ | Backend/API | 85% | 75% | N/A |
32
+
33
+ ### Configuration
34
+
35
+ ```yaml
36
+ # proagents.config.yaml
37
+ testing:
38
+ coverage:
39
+ minimum: 80
40
+ fail_under: true
41
+
42
+ by_directory:
43
+ "src/core/": 90
44
+ "src/utils/": 85
45
+ "src/ui/": 70
46
+ ```
47
+
48
+ ---
49
+
50
+ ## Test Structure
51
+
52
+ ### Unit Tests
53
+
54
+ ```typescript
55
+ // Good: Focused, isolated
56
+ describe('calculateTotal', () => {
57
+ it('should sum all items', () => {
58
+ const items = [{ price: 10 }, { price: 20 }];
59
+ expect(calculateTotal(items)).toBe(30);
60
+ });
61
+
62
+ it('should return 0 for empty array', () => {
63
+ expect(calculateTotal([])).toBe(0);
64
+ });
65
+
66
+ it('should handle negative prices', () => {
67
+ const items = [{ price: 10 }, { price: -5 }];
68
+ expect(calculateTotal(items)).toBe(5);
69
+ });
70
+ });
71
+ ```
72
+
73
+ ### Integration Tests
74
+
75
+ ```typescript
76
+ // Test component with dependencies
77
+ describe('UserProfile', () => {
78
+ it('should fetch and display user data', async () => {
79
+ // Setup
80
+ const mockUser = { id: 1, name: 'John' };
81
+ server.use(
82
+ rest.get('/api/users/1', (req, res, ctx) => {
83
+ return res(ctx.json(mockUser));
84
+ })
85
+ );
86
+
87
+ // Act
88
+ render(<UserProfile userId={1} />);
89
+
90
+ // Assert
91
+ await screen.findByText('John');
92
+ });
93
+ });
94
+ ```
95
+
96
+ ### E2E Tests
97
+
98
+ ```typescript
99
+ // Test complete user flow
100
+ describe('Login Flow', () => {
101
+ it('should login and redirect to dashboard', () => {
102
+ cy.visit('/login');
103
+ cy.get('[data-testid="email"]').type('user@example.com');
104
+ cy.get('[data-testid="password"]').type('password123');
105
+ cy.get('[data-testid="submit"]').click();
106
+ cy.url().should('include', '/dashboard');
107
+ cy.contains('Welcome back');
108
+ });
109
+ });
110
+ ```
111
+
112
+ ---
113
+
114
+ ## Test Naming Convention
115
+
116
+ ### Format
117
+
118
+ ```
119
+ describe('[Component/Function Name]', () => {
120
+ it('should [expected behavior] when [condition]', () => {
121
+ // ...
122
+ });
123
+ });
124
+ ```
125
+
126
+ ### Examples
127
+
128
+ ```typescript
129
+ // Good
130
+ it('should return null when user is not found')
131
+ it('should throw error when input is invalid')
132
+ it('should update state when button is clicked')
133
+
134
+ // Bad
135
+ it('test1')
136
+ it('works correctly')
137
+ it('handles edge case')
138
+ ```
139
+
140
+ ---
141
+
142
+ ## Mocking Guidelines
143
+
144
+ ### When to Mock
145
+
146
+ | Mock | Don't Mock |
147
+ |------|------------|
148
+ | External APIs | Business logic |
149
+ | Database calls | Pure functions |
150
+ | Time/Date | Internal modules |
151
+ | Random values | Simple utilities |
152
+ | Third-party services | |
153
+
154
+ ### Mock Example
155
+
156
+ ```typescript
157
+ // Mock external service
158
+ jest.mock('../services/api', () => ({
159
+ fetchUser: jest.fn(),
160
+ }));
161
+
162
+ // Mock time
163
+ jest.useFakeTimers();
164
+ jest.setSystemTime(new Date('2024-01-15'));
165
+
166
+ // Mock random
167
+ jest.spyOn(Math, 'random').mockReturnValue(0.5);
168
+ ```
169
+
170
+ ---
171
+
172
+ ## Test Commands
173
+
174
+ ```bash
175
+ # Run all tests
176
+ proagents test
177
+
178
+ # Run with coverage
179
+ proagents test --coverage
180
+
181
+ # Run specific type
182
+ proagents test --type unit
183
+ proagents test --type integration
184
+ proagents test --type e2e
185
+
186
+ # Watch mode
187
+ proagents test --watch
188
+
189
+ # Run for changed files only
190
+ proagents test --changed
191
+ ```
192
+
193
+ ---
194
+
195
+ ## Test Reports
196
+
197
+ ```
198
+ ┌─────────────────────────────────────────────────────────────┐
199
+ │ Test Results │
200
+ ├─────────────────────────────────────────────────────────────┤
201
+ │ │
202
+ │ Tests: 245 passed, 2 failed, 247 total │
203
+ │ Time: 12.5s │
204
+ │ │
205
+ │ Coverage: │
206
+ │ ├── Statements: 85.2% (target: 80%) ✅ │
207
+ │ ├── Branches: 78.5% (target: 75%) ✅ │
208
+ │ ├── Functions: 88.1% (target: 80%) ✅ │
209
+ │ └── Lines: 84.8% (target: 80%) ✅ │
210
+ │ │
211
+ │ Failed Tests: │
212
+ │ ├── UserService.test.ts:45 - timeout │
213
+ │ └── LoginForm.test.ts:82 - assertion failed │
214
+ │ │
215
+ └─────────────────────────────────────────────────────────────┘
216
+ ```
217
+
218
+ ---
219
+
220
+ ## Best Practices
221
+
222
+ 1. **Test Behavior, Not Implementation**: Focus on what, not how
223
+ 2. **Keep Tests Independent**: No shared state between tests
224
+ 3. **Use Descriptive Names**: Clear intent in test names
225
+ 4. **Arrange-Act-Assert**: Follow AAA pattern
226
+ 5. **One Assertion Per Test**: When possible
227
+ 6. **Test Edge Cases**: Empty, null, boundary values
228
+ 7. **Don't Test Frameworks**: Trust library code
229
+ 8. **Maintain Test Quality**: Tests are code too