qa360 2.1.2 → 2.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (866) hide show
  1. package/.BETA_TESTING_FEEDBACK.md +256 -0
  2. package/.claude/settings.local.json +151 -0
  3. package/.editorconfig +21 -0
  4. package/.github/CODEOWNERS +23 -0
  5. package/.github/ISSUE_TEMPLATE/bug_report.yml +108 -0
  6. package/.github/ISSUE_TEMPLATE/feedback_dx.yml +121 -0
  7. package/.github/dependabot.yml +35 -0
  8. package/.github/workflows/mcp-dx.yml +106 -0
  9. package/.github/workflows/release.yml +26 -0
  10. package/.github/workflows/test.yml +93 -0
  11. package/.nvmrc +1 -0
  12. package/.qa360-artifacts/.gitkeep +0 -0
  13. package/.qa360-artifacts/baselines/.gitkeep +0 -0
  14. package/.qa360-artifacts/cache/.gitkeep +0 -0
  15. package/.qa360-artifacts/reports/.gitkeep +0 -0
  16. package/.qa360-artifacts/screenshots/.gitkeep +0 -0
  17. package/.qa360-baselines/www_xyqo_ai.baseline.json +33 -0
  18. package/CHANGELOG.md +234 -0
  19. package/CODEOWNERS +43 -0
  20. package/CONTRIBUTING.md +273 -0
  21. package/NOVICE_USER_GUIDE.md +272 -0
  22. package/QUICK_START.md +191 -0
  23. package/README.md +191 -163
  24. package/adapters/README.md +62 -0
  25. package/check-branches.sh +32 -0
  26. package/cli/CHANGELOG.md +84 -0
  27. package/cli/LICENSE +24 -0
  28. package/cli/README.md +222 -0
  29. package/cli/examples/README.md +160 -0
  30. package/cli/package.json +76 -0
  31. package/cli/scripts/bundle-for-npm.sh +51 -0
  32. package/cli/scripts/validate-package.js +116 -0
  33. package/cli/src/__tests__/commands/doctor.test.ts +97 -0
  34. package/cli/src/__tests__/index.test.ts +15 -0
  35. package/cli/src/cli-minimal.ts +44 -0
  36. package/cli/src/commands/__tests__/crawl.test.ts +412 -0
  37. package/cli/src/commands/__tests__/doctor-qa360-home.test.ts +156 -0
  38. package/cli/src/commands/__tests__/e2e-ui-tests.test.ts +494 -0
  39. package/cli/src/commands/__tests__/e2e.test.ts +187 -0
  40. package/cli/src/commands/__tests__/flakiness.test.ts +528 -0
  41. package/cli/src/commands/__tests__/generate.test.ts +507 -0
  42. package/cli/src/commands/__tests__/history.integration.test.ts +358 -0
  43. package/cli/src/commands/__tests__/history.test.ts +433 -0
  44. package/cli/src/commands/__tests__/monitor-realworld.test.ts +199 -0
  45. package/cli/src/commands/__tests__/monitor.test.ts +81 -0
  46. package/cli/src/commands/__tests__/ollama.test.ts +529 -0
  47. package/cli/src/commands/__tests__/repair.test.ts +225 -0
  48. package/cli/src/commands/__tests__/report.integration.test.ts +167 -0
  49. package/cli/src/commands/__tests__/report.test.ts +294 -0
  50. package/cli/src/commands/__tests__/report.vitest.ts +288 -0
  51. package/cli/src/commands/__tests__/retry.test.ts +78 -0
  52. package/cli/src/commands/__tests__/run.integration.test.ts +240 -0
  53. package/cli/src/commands/__tests__/run.test.ts +346 -0
  54. package/cli/src/commands/__tests__/run.vitest.ts +301 -0
  55. package/cli/src/commands/__tests__/secrets.test.ts +114 -0
  56. package/cli/src/commands/__tests__/serve.test.ts +80 -0
  57. package/cli/src/commands/__tests__/verify.test.ts +103 -0
  58. package/cli/src/commands/ai.ts +579 -0
  59. package/cli/src/commands/ask.ts +678 -0
  60. package/cli/src/commands/coverage.ts +305 -0
  61. package/cli/src/commands/crawl.ts +155 -0
  62. package/cli/src/commands/doctor.ts +610 -0
  63. package/cli/src/commands/examples.ts +248 -0
  64. package/cli/src/commands/explain.ts +710 -0
  65. package/cli/src/commands/flakiness.ts +560 -0
  66. package/cli/src/commands/generate.ts +566 -0
  67. package/cli/src/commands/history.ts +914 -0
  68. package/cli/src/commands/init.ts +763 -0
  69. package/cli/src/commands/monitor.ts +270 -0
  70. package/cli/src/commands/ollama.ts +337 -0
  71. package/cli/src/commands/pack.ts +497 -0
  72. package/cli/src/commands/regression.ts +400 -0
  73. package/cli/src/commands/repair.ts +356 -0
  74. package/cli/src/commands/report.ts +463 -0
  75. package/cli/src/commands/retry.ts +380 -0
  76. package/cli/src/commands/run.ts +218 -0
  77. package/cli/src/commands/scan.ts +177 -0
  78. package/cli/src/commands/secrets.ts +340 -0
  79. package/cli/src/commands/serve.ts +194 -0
  80. package/cli/src/commands/slo.ts +387 -0
  81. package/cli/src/commands/verify-temp-note.md +11 -0
  82. package/cli/src/commands/verify.ts +322 -0
  83. package/cli/src/generators/index.ts +6 -0
  84. package/cli/src/generators/json-reporter.ts +15 -0
  85. package/cli/src/generators/test-generator.ts +90 -0
  86. package/cli/src/index.ts +289 -0
  87. package/cli/src/scanners/dom-scanner.ts +360 -0
  88. package/cli/src/scanners/index.ts +5 -0
  89. package/cli/src/types/scan.ts +84 -0
  90. package/cli/src/utils/config.ts +145 -0
  91. package/cli/tsconfig.bundle.json +12 -0
  92. package/cli/tsconfig.json +23 -0
  93. package/cli/vitest.config.ts +57 -0
  94. package/core/LICENSE +24 -0
  95. package/core/README.md +64 -0
  96. package/core/package.json +81 -0
  97. package/core/src/__tests__/adapters-contract/adapters-contract.test.md +156 -0
  98. package/core/src/__tests__/index.test.ts +31 -0
  99. package/core/src/__tests__/integration/phase3.test.ts +405 -0
  100. package/core/src/__tests__/pack/validator.test.ts +312 -0
  101. package/core/src/__tests__/secrets/crypto.test.ts +190 -0
  102. package/core/src/__tests__/secrets/manager.test.ts +316 -0
  103. package/core/src/__tests__/security/redactor-phase3.test.ts +233 -0
  104. package/core/src/__tests__/serve/health-checker.test.ts +155 -0
  105. package/core/src/__tests__/serve/process-manager.test.ts +213 -0
  106. package/core/src/__tests__/serve/server.test.ts +103 -0
  107. package/core/src/__tests__/vault/cas.test.ts +178 -0
  108. package/core/src/__tests__/vault/vault.test.ts +296 -0
  109. package/core/src/adapters/__tests__/gitleaks-secrets.test.ts +452 -0
  110. package/core/src/adapters/__tests__/k6-perf.test.ts +538 -0
  111. package/core/src/adapters/__tests__/osv-deps.test.ts +471 -0
  112. package/core/src/adapters/__tests__/playwright-native-api.test.ts +792 -0
  113. package/core/src/adapters/__tests__/playwright-ui-e2e.test.ts +431 -0
  114. package/core/src/adapters/__tests__/playwright-ui.test.ts +1073 -0
  115. package/core/src/adapters/__tests__/semgrep-sast.test.ts +436 -0
  116. package/core/src/adapters/__tests__/zap-dast.test.ts +453 -0
  117. package/core/src/adapters/gitleaks-secrets.ts +521 -0
  118. package/core/src/adapters/k6-perf.ts +479 -0
  119. package/core/src/adapters/osv-deps.ts +467 -0
  120. package/core/src/adapters/playwright-native-adapter.ts +472 -0
  121. package/core/src/adapters/playwright-native-api.ts +619 -0
  122. package/core/src/adapters/playwright-ui.ts +1088 -0
  123. package/core/src/adapters/semgrep-sast.ts +410 -0
  124. package/core/src/adapters/zap-dast.ts +551 -0
  125. package/core/src/ai/__tests__/deepseek-provider.test.ts +586 -0
  126. package/core/src/ai/__tests__/ollama-provider.test.ts +641 -0
  127. package/core/src/ai/anthropic-provider.ts +248 -0
  128. package/core/src/ai/deepseek-provider.ts +301 -0
  129. package/core/src/ai/index.ts +87 -0
  130. package/core/src/ai/llm-client.ts +52 -0
  131. package/core/src/ai/mock-provider.ts +146 -0
  132. package/core/src/ai/ollama-provider.ts +255 -0
  133. package/core/src/ai/openai-provider.ts +226 -0
  134. package/core/src/ai/provider-factory.ts +408 -0
  135. package/core/src/artifacts/README.md +78 -0
  136. package/core/src/artifacts/index.ts +16 -0
  137. package/core/src/artifacts/ui-artifacts.ts +412 -0
  138. package/core/src/assertions/__tests__/engine.test.ts +360 -0
  139. package/core/src/assertions/engine.ts +577 -0
  140. package/core/src/assertions/index.ts +13 -0
  141. package/core/src/assertions/types.ts +229 -0
  142. package/core/src/auth/__tests__/api-key-provider.test.ts +282 -0
  143. package/core/src/auth/__tests__/auth-manager.test.ts +430 -0
  144. package/core/src/auth/__tests__/basic-auth-provider.test.ts +364 -0
  145. package/core/src/auth/__tests__/cloud-providers.test.ts +751 -0
  146. package/core/src/auth/__tests__/jwt-provider.test.ts +400 -0
  147. package/core/src/auth/__tests__/oauth2-provider.test.ts +383 -0
  148. package/core/src/auth/__tests__/totp-provider.test.ts +294 -0
  149. package/core/src/auth/__tests__/ui-login-provider.test.ts +323 -0
  150. package/core/src/auth/api-key-provider.ts +75 -0
  151. package/core/src/auth/aws-iam-provider.ts +212 -0
  152. package/core/src/auth/azure-ad-provider.ts +126 -0
  153. package/core/src/auth/basic-auth-provider.ts +133 -0
  154. package/core/src/auth/gcp-adc-provider.ts +146 -0
  155. package/core/src/auth/index.ts +342 -0
  156. package/core/src/auth/jwt-provider.ts +193 -0
  157. package/core/src/auth/manager.ts +281 -0
  158. package/core/src/auth/oauth2-provider.ts +141 -0
  159. package/core/src/auth/totp-provider.ts +163 -0
  160. package/core/src/auth/ui-login-provider.ts +242 -0
  161. package/core/src/cache/__tests__/lru-cache.test.ts +564 -0
  162. package/core/src/cache/index.ts +13 -0
  163. package/core/src/cache/lru-cache.ts +536 -0
  164. package/core/src/crawler/__tests__/journey-generator.test.ts +344 -0
  165. package/core/src/crawler/__tests__/selector-generator.test.ts +211 -0
  166. package/core/src/crawler/index.ts +335 -0
  167. package/core/src/crawler/journey-generator.ts +471 -0
  168. package/core/src/crawler/page-analyzer.ts +857 -0
  169. package/core/src/crawler/selector-generator.ts +280 -0
  170. package/core/src/crawler/types.ts +475 -0
  171. package/core/src/dashboard/__tests__/real-world.test.ts +430 -0
  172. package/core/src/dashboard/__tests__/server.test.ts +283 -0
  173. package/core/src/dashboard/__tests__/types.test.ts +208 -0
  174. package/core/src/dashboard/assets.ts +692 -0
  175. package/core/src/dashboard/index.ts +17 -0
  176. package/core/src/dashboard/server.ts +401 -0
  177. package/core/src/dashboard/types.ts +78 -0
  178. package/core/src/discoverer/__tests__/test-discoverer.test.ts +444 -0
  179. package/core/src/discoverer/index.ts +374 -0
  180. package/core/src/flakiness/__tests__/flakiness.test.ts +554 -0
  181. package/core/src/flakiness/index.ts +536 -0
  182. package/core/src/generation/__tests__/code-formatter.test.ts +170 -0
  183. package/core/src/generation/__tests__/code-generator-contract.test.ts +207 -0
  184. package/core/src/generation/__tests__/code-generator.test.ts +586 -0
  185. package/core/src/generation/__tests__/crawler-pack-generator.test.ts +479 -0
  186. package/core/src/generation/__tests__/generation-e2e-b2bshop.test.ts +718 -0
  187. package/core/src/generation/__tests__/generation-integration.test.ts +655 -0
  188. package/core/src/generation/__tests__/pack-generator.test.ts +408 -0
  189. package/core/src/generation/__tests__/prompt-builder.test.ts +200 -0
  190. package/core/src/generation/__tests__/real-provider-integration.test.ts +414 -0
  191. package/core/src/generation/__tests__/source-analyzer.test.ts +774 -0
  192. package/core/src/generation/__tests__/test-optimizer.test.ts +255 -0
  193. package/core/src/generation/code-formatter.ts +408 -0
  194. package/core/src/generation/code-generator.ts +470 -0
  195. package/core/src/generation/crawler-pack-generator.ts +289 -0
  196. package/core/src/generation/generator.ts +113 -0
  197. package/core/src/generation/index.ts +59 -0
  198. package/core/src/generation/pack-generator.ts +527 -0
  199. package/core/src/generation/prompt-builder.ts +772 -0
  200. package/core/src/generation/source-analyzer.ts +830 -0
  201. package/core/src/generation/test-optimizer.ts +474 -0
  202. package/core/src/generation/types.ts +217 -0
  203. package/core/src/hooks/__tests__/compose.test.ts +636 -0
  204. package/core/src/hooks/__tests__/runner.test.ts +478 -0
  205. package/core/src/hooks/compose.ts +268 -0
  206. package/core/src/hooks/runner.ts +364 -0
  207. package/core/src/index.ts +237 -0
  208. package/core/src/pack/__tests__/migrator.test.ts +594 -0
  209. package/core/src/pack/__tests__/validator.test.ts +759 -0
  210. package/core/src/pack/migrator.ts +353 -0
  211. package/core/src/pack/validator.ts +359 -0
  212. package/core/src/pack-v2/__tests__/loader.test.ts +533 -0
  213. package/core/src/pack-v2/__tests__/migrator.test.ts +455 -0
  214. package/core/src/pack-v2/__tests__/validator.test.ts +549 -0
  215. package/core/src/pack-v2/index.ts +41 -0
  216. package/core/src/pack-v2/loader.ts +321 -0
  217. package/core/src/pack-v2/migrator.ts +540 -0
  218. package/core/src/pack-v2/validator.ts +673 -0
  219. package/core/src/parallel/README.md +143 -0
  220. package/core/src/parallel/index.ts +16 -0
  221. package/core/src/parallel/parallel-runner.ts +282 -0
  222. package/core/src/proof/__tests__/proof-roundtrip.test.ts +149 -0
  223. package/core/src/proof/__tests__/schema-validation-manual.mjs +211 -0
  224. package/core/src/proof/__tests__/schema-validation.test.ts +336 -0
  225. package/core/src/proof/__tests__/signer.test.ts +486 -0
  226. package/core/src/proof/__tests__/temporal-regression.test.ts +537 -0
  227. package/core/src/proof/__tests__/verifier-advanced.test.ts +588 -0
  228. package/core/src/proof/__tests__/verifier.test.ts +413 -0
  229. package/core/src/proof/bundle.ts +290 -0
  230. package/core/src/proof/canonicalize.ts +116 -0
  231. package/core/src/proof/index.ts +74 -0
  232. package/core/src/proof/schema.ts +285 -0
  233. package/core/src/proof/signer.ts +293 -0
  234. package/core/src/proof/verifier.ts +380 -0
  235. package/core/src/regression/__tests__/detector.test.ts +396 -0
  236. package/core/src/regression/__tests__/trend-analyzer.test.ts +300 -0
  237. package/core/src/regression/detector.ts +629 -0
  238. package/core/src/regression/index.ts +34 -0
  239. package/core/src/regression/trend-analyzer.ts +468 -0
  240. package/core/src/regression/types.ts +295 -0
  241. package/core/src/regression/vault.ts +419 -0
  242. package/core/src/repair/__tests__/repairer.test.ts +572 -0
  243. package/core/src/repair/__tests__/types.test.ts +302 -0
  244. package/core/src/repair/engine/__tests__/fixer.test.ts +482 -0
  245. package/core/src/repair/engine/__tests__/suggestion-engine.test.ts +395 -0
  246. package/core/src/repair/engine/fixer.ts +271 -0
  247. package/core/src/repair/engine/suggestion-engine.ts +234 -0
  248. package/core/src/repair/index.ts +53 -0
  249. package/core/src/repair/repairer.ts +376 -0
  250. package/core/src/repair/types.ts +119 -0
  251. package/core/src/repair/utils/__tests__/error-analyzer.test.ts +454 -0
  252. package/core/src/repair/utils/error-analyzer.ts +308 -0
  253. package/core/src/reporting/README.md +144 -0
  254. package/core/src/reporting/html-reporter.ts +835 -0
  255. package/core/src/reporting/index.ts +16 -0
  256. package/core/src/retry/README.md +192 -0
  257. package/core/src/retry/__tests__/flakiness-integration.test.ts +475 -0
  258. package/core/src/retry/__tests__/retry-engine.test.ts +424 -0
  259. package/core/src/retry/flakiness-integration.ts +267 -0
  260. package/core/src/retry/index.ts +48 -0
  261. package/core/src/retry/retry-engine.ts +368 -0
  262. package/core/src/retry/types.ts +208 -0
  263. package/core/src/retry/vault.ts +413 -0
  264. package/core/src/runner/__tests__/flakiness-integration.test.ts +566 -0
  265. package/core/src/runner/__tests__/phase3-e2e-b2bshop.test.ts +218 -0
  266. package/core/src/runner/__tests__/phase3-e2e-reqres.test.ts +199 -0
  267. package/core/src/runner/__tests__/phase3-runner.test.ts +1118 -0
  268. package/core/src/runner/e2e-helpers.ts +216 -0
  269. package/core/src/runner/phase3-runner.ts +1236 -0
  270. package/core/src/schemas/gherkin-report.json +122 -0
  271. package/core/src/secrets/__tests__/crypto.test.ts +180 -0
  272. package/core/src/secrets/crypto.ts +289 -0
  273. package/core/src/secrets/manager.ts +272 -0
  274. package/core/src/security/__tests__/hardening.test.ts +480 -0
  275. package/core/src/security/redaction-patterns-extended.ts +278 -0
  276. package/core/src/security/redactor.ts +326 -0
  277. package/core/src/self-healing/assertion-healer.ts +485 -0
  278. package/core/src/self-healing/engine.ts +626 -0
  279. package/core/src/self-healing/index.ts +33 -0
  280. package/core/src/self-healing/selector-healer.ts +488 -0
  281. package/core/src/self-healing/types.ts +193 -0
  282. package/core/src/serve/diagnostics-collector.ts +201 -0
  283. package/core/src/serve/health-checker.ts +274 -0
  284. package/core/src/serve/index.ts +9 -0
  285. package/core/src/serve/metrics-collector.ts +386 -0
  286. package/core/src/serve/process-manager.ts +265 -0
  287. package/core/src/serve/server.ts +230 -0
  288. package/core/src/slo/config.ts +408 -0
  289. package/core/src/slo/index.ts +68 -0
  290. package/core/src/slo/sli-calculator.ts +474 -0
  291. package/core/src/slo/slo-tracker.ts +481 -0
  292. package/core/src/slo/types.ts +408 -0
  293. package/core/src/slo/vault.ts +600 -0
  294. package/core/src/tui/__tests__/monitor.test.ts +336 -0
  295. package/core/src/tui/__tests__/real-world.test.ts +376 -0
  296. package/core/src/tui/__tests__/renderer.test.ts +201 -0
  297. package/core/src/tui/__tests__/types.test.ts +295 -0
  298. package/core/src/tui/index.ts +19 -0
  299. package/core/src/tui/monitor.ts +331 -0
  300. package/core/src/tui/renderer.ts +269 -0
  301. package/core/src/tui/types.ts +68 -0
  302. package/core/src/types/pack-v1.ts +305 -0
  303. package/core/src/types/pack-v2.ts +491 -0
  304. package/core/src/types/trust-score.ts +258 -0
  305. package/core/src/vault/__tests__/flakiness-vault.test.ts +562 -0
  306. package/core/src/vault/__tests__/vault.test.ts +259 -0
  307. package/core/src/vault/cas.ts +323 -0
  308. package/core/src/vault/index.ts +1361 -0
  309. package/core/src/vault/schema.sql +168 -0
  310. package/core/src/visual/README.md +185 -0
  311. package/core/src/visual/index.ts +14 -0
  312. package/core/src/visual/visual-regression.ts +347 -0
  313. package/core/src/watch/__tests__/watch-mode.test.ts +192 -0
  314. package/core/src/watch/index.ts +14 -0
  315. package/core/src/watch/watch-mode.ts +565 -0
  316. package/core/tsconfig.json +12 -0
  317. package/core/vitest.config.ts +52 -0
  318. package/docs/ARCHITECTURE.md +901 -0
  319. package/docs/AUDIT-GLOBAL-DEC2025.md +271 -0
  320. package/docs/BETA_TESTING.md +257 -0
  321. package/docs/BETA_TESTING_PLAN.md +727 -0
  322. package/docs/CERTIFICATION-REPORT.md +142 -0
  323. package/docs/COMPLETE_AUDIT_REFACTORING.md +965 -0
  324. package/docs/DEVELOPMENT.md +331 -0
  325. package/docs/DEVELOPMENT_HISTORY.md +345 -0
  326. package/docs/LIMITATIONS.md +176 -0
  327. package/docs/MIGRATION.md +303 -0
  328. package/docs/OPTION_3_4_EXPLORATION.md +1257 -0
  329. package/docs/PHASE1_PERFORMANCE.md +144 -0
  330. package/docs/QA360_Cloud.postman_collection.json +89 -0
  331. package/docs/README.md +50 -0
  332. package/docs/STATUS.md +179 -0
  333. package/docs/STRATEGIC_STUDY_GOOSE_INTEGRATION.md +615 -0
  334. package/docs/USER_GUIDE.md +687 -0
  335. package/docs/WORK-DONE-ADAPTER-TESTS.md +136 -0
  336. package/docs/adapters-security.md +485 -0
  337. package/docs/architecture-diagram.mmd +168 -0
  338. package/docs/archive/ARCH-01-DAY6-BUILD-FIXES.md +396 -0
  339. package/docs/archive/ARCH-01-DAY6-FINAL-STATUS.md +324 -0
  340. package/docs/archive/ARCH-01_MCP_MERGE_ANALYSIS.md +644 -0
  341. package/docs/archive/ARCH-01_NEXT_STEPS.md +60 -0
  342. package/docs/archive/BRANCH_PROTECTION.md +183 -0
  343. package/docs/archive/CI_LOCKDOWN_CHECKLIST.md +222 -0
  344. package/docs/archive/HANDOFF_TEST-01.md +669 -0
  345. package/docs/archive/LEGAL_READY_PLACEHOLDERS.md +372 -0
  346. package/docs/archive/NODE_UPGRADE_GUIDE.md +188 -0
  347. package/docs/archive/PHASE1_COMPLETION.md +386 -0
  348. package/docs/archive/PHASE2_COMPLETION.md +404 -0
  349. package/docs/archive/PHASE3_AND_4_FINAL.md +360 -0
  350. package/docs/archive/PHASE3_COMPLETE.md +301 -0
  351. package/docs/archive/PHASE3_STATUS.md +255 -0
  352. package/docs/archive/PRE-WEEK2-AUDIT.md +364 -0
  353. package/docs/archive/README.md +33 -0
  354. package/docs/archive/SCHEMA_AJV_2020_FIX.md +245 -0
  355. package/docs/archive/TEST-01_AUDIT_REPORT.md +240 -0
  356. package/docs/archive/TEST-01_COVERAGE_PLAN.md +423 -0
  357. package/docs/budgets-advanced.md +308 -0
  358. package/docs/examples/history-export-gc.md +285 -0
  359. package/docs/examples/pack-v2-complete.yaml +158 -0
  360. package/docs/examples/pack-v2-quickstart.yaml +24 -0
  361. package/docs/examples/pack-v2-ui-login.yaml +81 -0
  362. package/docs/examples/qa360-report.json +50 -0
  363. package/docs/history.md +565 -0
  364. package/docs/hooks.md +304 -0
  365. package/docs/llm-providers.md +419 -0
  366. package/docs/mcp-server.md +651 -0
  367. package/docs/mcp-tools.md +1131 -0
  368. package/docs/pack-v1.md +383 -0
  369. package/docs/pack-v2.md +558 -0
  370. package/docs/proofs.md +670 -0
  371. package/docs/quickstart-5min.md +257 -0
  372. package/docs/readiness-ci.md +654 -0
  373. package/docs/rfc/README.md +20 -0
  374. package/docs/rfc/proof-bundle-v1.md +787 -0
  375. package/docs/secrets.md +392 -0
  376. package/docs/serve.md +494 -0
  377. package/docs/vault.md +491 -0
  378. package/e2e/qa360-e2e.test.ts +696 -0
  379. package/e2e/vitest.config.ts +18 -0
  380. package/examples/README.md +30 -140
  381. package/examples/ci/docker-compose-serve.yml +375 -0
  382. package/examples/ci/github-actions-serve.yml +345 -0
  383. package/examples/ci/gitlab-ci-serve.yml +407 -0
  384. package/examples/datasets/README.md +101 -0
  385. package/examples/datasets/b2bshop.ts +155 -0
  386. package/examples/datasets/index.ts +57 -0
  387. package/examples/datasets/reqres.ts +195 -0
  388. package/examples/future-api/README.md +16 -0
  389. package/examples/future-api/diag.js +7 -0
  390. package/examples/future-api/health.js +4 -0
  391. package/examples/future-api/packs.js +13 -0
  392. package/examples/future-api/runpack.js +10 -0
  393. package/examples/generation/README.md +148 -0
  394. package/examples/generation/pack-generator-example.js +115 -0
  395. package/examples/generation/source-analyzer-example.js +115 -0
  396. package/examples/httpbin/pack.yml +59 -0
  397. package/examples/load-testing/mcp-load.yml +115 -0
  398. package/examples/load-testing/mcp-stdio.yml +95 -0
  399. package/examples/mcp/claude-desktop-config.json +33 -0
  400. package/examples/mcp/claude-desktop.json +16 -0
  401. package/examples/mcp/conversation-sample.md +131 -0
  402. package/examples/mcp/demo-60s.md +330 -0
  403. package/examples/mcp/sample-conversation.jsonl +21 -0
  404. package/examples/mcp/vscode-settings.json +22 -0
  405. package/examples/pack-v2-complete.yml +242 -0
  406. package/examples/pack-v2-examples.md +244 -0
  407. package/examples/pack-v2-quickstart.yml +55 -0
  408. package/examples/packs-business/ecommerce-api.yml +121 -0
  409. package/examples/packs-business/saas-dashboard-ui.yml +133 -0
  410. package/examples/packs-conformance/compose-multi.yml +174 -0
  411. package/examples/packs-conformance/full.yml +152 -0
  412. package/examples/packs-conformance/heavy-artifacts.yml +152 -0
  413. package/examples/packs-conformance/minimal.yml +71 -0
  414. package/examples/packs-conformance/secrets-missing.yml +97 -0
  415. package/examples/packs-conformance/timeouts.yml +77 -0
  416. package/examples/proofs/e2e-playwright-proof.json +75 -0
  417. package/examples/proofs/httpbin-proof.json +69 -0
  418. package/examples/proofs/multi-adapter-proof.json +117 -0
  419. package/examples/proofs/test-proof.json +26 -0
  420. package/examples/restful-api-dev/README.md +102 -0
  421. package/examples/restful-api-dev/restful-api-advanced.yml +29 -0
  422. package/examples/restful-api-dev/restful-api-basic.yml +29 -0
  423. package/examples/web-lite/.github/workflows/qa360-phase3.yml +73 -0
  424. package/examples/web-lite/api-mock/server.js +258 -0
  425. package/examples/web-lite/pack.yml +71 -0
  426. package/examples/web-lite/services.yml +43 -0
  427. package/examples/web-lite/web-content/healthz +1 -0
  428. package/examples/web-lite/web-content/index.html +259 -0
  429. package/package.json +55 -45
  430. package/packages/mcp/CHANGELOG.md +109 -0
  431. package/packages/mcp/IMPLEMENTATION_SUMMARY.md +350 -0
  432. package/packages/mcp/LICENSE +21 -0
  433. package/packages/mcp/QUICK_START.md +291 -0
  434. package/packages/mcp/README.md +294 -0
  435. package/packages/mcp/TELEMETRY.md +220 -0
  436. package/packages/mcp/package.json +92 -0
  437. package/packages/mcp/scripts/generate-sbom-fallback.cjs +84 -0
  438. package/packages/mcp/scripts/safe-postinstall.cjs +32 -0
  439. package/packages/mcp/src/__tests__/contract.test.ts +902 -0
  440. package/packages/mcp/src/cli/cli.ts +137 -0
  441. package/packages/mcp/src/cli/doctor.ts +286 -0
  442. package/packages/mcp/src/cli/fix.ts +99 -0
  443. package/packages/mcp/src/cli/init.ts +233 -0
  444. package/packages/mcp/src/cli/postinstall.ts +14 -0
  445. package/packages/mcp/src/cli/reset.ts +44 -0
  446. package/packages/mcp/src/cli/telemetry.ts +166 -0
  447. package/packages/mcp/src/cli/test-dx.ts +94 -0
  448. package/packages/mcp/src/cli/uninstall.ts +80 -0
  449. package/packages/mcp/src/cli/up.ts +178 -0
  450. package/packages/mcp/src/index.ts +12 -0
  451. package/packages/mcp/src/scripts/e2e-local.ts +337 -0
  452. package/packages/mcp/src/scripts/verify-settings.ts +242 -0
  453. package/packages/mcp/src/security/audit.ts +244 -0
  454. package/packages/mcp/src/security/manager.ts +242 -0
  455. package/packages/mcp/src/server/full-server.ts +212 -0
  456. package/packages/mcp/src/server/minimal-server.ts +134 -0
  457. package/packages/mcp/src/tools/history.ts +388 -0
  458. package/packages/mcp/src/tools/pack.ts +449 -0
  459. package/packages/mcp/src/tools/registry.ts +638 -0
  460. package/packages/mcp/src/tools/report.ts +100 -0
  461. package/packages/mcp/src/tools/run.ts +268 -0
  462. package/packages/mcp/src/tools/secrets.ts +198 -0
  463. package/packages/mcp/src/tools/serve.ts +221 -0
  464. package/packages/mcp/src/tools/triage.ts +532 -0
  465. package/packages/mcp/src/tools/types.ts +26 -0
  466. package/packages/mcp/src/tools/vault.ts +164 -0
  467. package/packages/mcp/src/tools/verify.ts +166 -0
  468. package/packages/mcp/src/types/index.ts +311 -0
  469. package/packages/mcp/src/types/mcp-stubs.ts +83 -0
  470. package/packages/mcp/tsconfig.json +16 -0
  471. package/playwright.config.ts +20 -0
  472. package/pnpm-workspace.yaml +4 -0
  473. package/run-test-and-push.sh +20 -0
  474. package/scripts/build-proof-cli.sh +110 -0
  475. package/scripts/ci/check-windows-paths.js +92 -0
  476. package/scripts/ci/invariants.sh +124 -0
  477. package/scripts/ci/make-final-bundle.js +106 -0
  478. package/scripts/ci/mcp-run-multipack.js +305 -0
  479. package/scripts/ci/run-pack-suite.sh +103 -0
  480. package/scripts/ci/run-phase7-final.sh +190 -0
  481. package/scripts/ci/slo-assert.js +158 -0
  482. package/scripts/ci/test-fault-tolerance.sh +301 -0
  483. package/scripts/install-mcp.sh +66 -0
  484. package/scripts/mcp-smoke.mjs +27 -0
  485. package/scripts/smoke.sh +26 -0
  486. package/scripts/stress-test.js +288 -0
  487. package/scripts/validate-examples.mjs +404 -0
  488. package/scripts/validation/simple-pack-check.sh +51 -0
  489. package/scripts/validation/validate-universal-pack.mjs +77 -0
  490. package/scripts/verify-persistence.js +127 -0
  491. package/test-pack.yaml +43 -0
  492. package/test-results/.last-run.json +4 -0
  493. package/test-runner.mjs +87 -0
  494. package/tests/artifacts.spec.js +147 -0
  495. package/tests/contracts.spec.js +239 -0
  496. package/tests/e2e/assertions.test.mjs +370 -0
  497. package/tests/e2e/crawler.test.mjs +451 -0
  498. package/tests/e2e/playwright-plus-plus.test.mjs +604 -0
  499. package/tests/e2e/proof-bundle.test.mjs +258 -0
  500. package/tests/e2e/real-world/saucedemo.test.mjs +714 -0
  501. package/tests/e2e/real-world/the-internet-herokuapp.test.mjs +760 -0
  502. package/tests/e2e/ui-actions.test.mjs +546 -0
  503. package/tests/gherkin.e2e.spec.ts +310 -0
  504. package/tests/no-console-errors.spec.js +136 -0
  505. package/tests/pdf.spec.ts +252 -0
  506. package/tests/run-pack.spec.ts +58 -0
  507. package/tsconfig.base.json +15 -0
  508. package/tsconfig.build.json +8 -0
  509. package/tsconfig.json +37 -0
  510. package/tsconfig.test.json +18 -0
  511. package/typedoc.json +37 -0
  512. package/ui/README.md +51 -0
  513. package/verify-proof.mjs +60 -0
  514. package/dist/cli-minimal.d.ts +0 -6
  515. package/dist/cli-minimal.js +0 -36
  516. package/dist/commands/ai.d.ts +0 -41
  517. package/dist/commands/ai.js +0 -511
  518. package/dist/commands/ask.d.ts +0 -94
  519. package/dist/commands/ask.js +0 -582
  520. package/dist/commands/coverage.d.ts +0 -8
  521. package/dist/commands/coverage.js +0 -252
  522. package/dist/commands/crawl.d.ts +0 -24
  523. package/dist/commands/crawl.js +0 -121
  524. package/dist/commands/doctor.d.ts +0 -54
  525. package/dist/commands/doctor.js +0 -513
  526. package/dist/commands/examples.d.ts +0 -33
  527. package/dist/commands/examples.js +0 -193
  528. package/dist/commands/explain.d.ts +0 -27
  529. package/dist/commands/explain.js +0 -630
  530. package/dist/commands/flakiness.d.ts +0 -73
  531. package/dist/commands/flakiness.js +0 -435
  532. package/dist/commands/generate.d.ts +0 -66
  533. package/dist/commands/generate.js +0 -438
  534. package/dist/commands/history.d.ts +0 -76
  535. package/dist/commands/history.js +0 -757
  536. package/dist/commands/init.d.ts +0 -106
  537. package/dist/commands/init.js +0 -599
  538. package/dist/commands/monitor.d.ts +0 -27
  539. package/dist/commands/monitor.js +0 -225
  540. package/dist/commands/ollama.d.ts +0 -40
  541. package/dist/commands/ollama.js +0 -301
  542. package/dist/commands/pack.d.ts +0 -70
  543. package/dist/commands/pack.js +0 -413
  544. package/dist/commands/regression.d.ts +0 -8
  545. package/dist/commands/regression.js +0 -340
  546. package/dist/commands/repair.d.ts +0 -26
  547. package/dist/commands/repair.js +0 -307
  548. package/dist/commands/report.d.ts +0 -62
  549. package/dist/commands/report.js +0 -378
  550. package/dist/commands/retry.d.ts +0 -43
  551. package/dist/commands/retry.js +0 -275
  552. package/dist/commands/run.d.ts +0 -41
  553. package/dist/commands/run.js +0 -169
  554. package/dist/commands/scan.d.ts +0 -5
  555. package/dist/commands/scan.js +0 -155
  556. package/dist/commands/secrets.d.ts +0 -58
  557. package/dist/commands/secrets.js +0 -289
  558. package/dist/commands/serve.d.ts +0 -13
  559. package/dist/commands/serve.js +0 -156
  560. package/dist/commands/slo.d.ts +0 -8
  561. package/dist/commands/slo.js +0 -327
  562. package/dist/commands/verify.d.ts +0 -32
  563. package/dist/commands/verify.js +0 -278
  564. package/dist/core/adapters/gitleaks-secrets.d.ts +0 -114
  565. package/dist/core/adapters/gitleaks-secrets.js +0 -410
  566. package/dist/core/adapters/k6-perf.d.ts +0 -85
  567. package/dist/core/adapters/k6-perf.js +0 -398
  568. package/dist/core/adapters/osv-deps.d.ts +0 -123
  569. package/dist/core/adapters/osv-deps.js +0 -372
  570. package/dist/core/adapters/playwright-native-adapter.d.ts +0 -121
  571. package/dist/core/adapters/playwright-native-adapter.js +0 -339
  572. package/dist/core/adapters/playwright-native-api.d.ts +0 -183
  573. package/dist/core/adapters/playwright-native-api.js +0 -461
  574. package/dist/core/adapters/playwright-ui.d.ts +0 -197
  575. package/dist/core/adapters/playwright-ui.js +0 -840
  576. package/dist/core/adapters/semgrep-sast.d.ts +0 -99
  577. package/dist/core/adapters/semgrep-sast.js +0 -322
  578. package/dist/core/adapters/zap-dast.d.ts +0 -133
  579. package/dist/core/adapters/zap-dast.js +0 -424
  580. package/dist/core/ai/anthropic-provider.d.ts +0 -50
  581. package/dist/core/ai/anthropic-provider.js +0 -211
  582. package/dist/core/ai/deepseek-provider.d.ts +0 -81
  583. package/dist/core/ai/deepseek-provider.js +0 -254
  584. package/dist/core/ai/index.d.ts +0 -60
  585. package/dist/core/ai/index.js +0 -18
  586. package/dist/core/ai/llm-client.d.ts +0 -45
  587. package/dist/core/ai/llm-client.js +0 -7
  588. package/dist/core/ai/mock-provider.d.ts +0 -49
  589. package/dist/core/ai/mock-provider.js +0 -121
  590. package/dist/core/ai/ollama-provider.d.ts +0 -78
  591. package/dist/core/ai/ollama-provider.js +0 -192
  592. package/dist/core/ai/openai-provider.d.ts +0 -48
  593. package/dist/core/ai/openai-provider.js +0 -188
  594. package/dist/core/ai/provider-factory.d.ts +0 -160
  595. package/dist/core/ai/provider-factory.js +0 -269
  596. package/dist/core/artifacts/index.d.ts +0 -6
  597. package/dist/core/artifacts/index.js +0 -6
  598. package/dist/core/artifacts/ui-artifacts.d.ts +0 -133
  599. package/dist/core/artifacts/ui-artifacts.js +0 -304
  600. package/dist/core/assertions/engine.d.ts +0 -51
  601. package/dist/core/assertions/engine.js +0 -530
  602. package/dist/core/assertions/index.d.ts +0 -11
  603. package/dist/core/assertions/index.js +0 -11
  604. package/dist/core/assertions/types.d.ts +0 -121
  605. package/dist/core/assertions/types.js +0 -37
  606. package/dist/core/auth/api-key-provider.d.ts +0 -16
  607. package/dist/core/auth/api-key-provider.js +0 -63
  608. package/dist/core/auth/aws-iam-provider.d.ts +0 -35
  609. package/dist/core/auth/aws-iam-provider.js +0 -177
  610. package/dist/core/auth/azure-ad-provider.d.ts +0 -15
  611. package/dist/core/auth/azure-ad-provider.js +0 -99
  612. package/dist/core/auth/basic-auth-provider.d.ts +0 -26
  613. package/dist/core/auth/basic-auth-provider.js +0 -111
  614. package/dist/core/auth/gcp-adc-provider.d.ts +0 -27
  615. package/dist/core/auth/gcp-adc-provider.js +0 -126
  616. package/dist/core/auth/index.d.ts +0 -238
  617. package/dist/core/auth/index.js +0 -82
  618. package/dist/core/auth/jwt-provider.d.ts +0 -19
  619. package/dist/core/auth/jwt-provider.js +0 -160
  620. package/dist/core/auth/manager.d.ts +0 -84
  621. package/dist/core/auth/manager.js +0 -230
  622. package/dist/core/auth/oauth2-provider.d.ts +0 -17
  623. package/dist/core/auth/oauth2-provider.js +0 -114
  624. package/dist/core/auth/totp-provider.d.ts +0 -31
  625. package/dist/core/auth/totp-provider.js +0 -134
  626. package/dist/core/auth/ui-login-provider.d.ts +0 -26
  627. package/dist/core/auth/ui-login-provider.js +0 -198
  628. package/dist/core/cache/index.d.ts +0 -7
  629. package/dist/core/cache/index.js +0 -6
  630. package/dist/core/cache/lru-cache.d.ts +0 -203
  631. package/dist/core/cache/lru-cache.js +0 -397
  632. package/dist/core/core/coverage/analyzer.d.ts +0 -101
  633. package/dist/core/core/coverage/analyzer.js +0 -415
  634. package/dist/core/core/coverage/collector.d.ts +0 -74
  635. package/dist/core/core/coverage/collector.js +0 -459
  636. package/dist/core/core/coverage/config.d.ts +0 -37
  637. package/dist/core/core/coverage/config.js +0 -156
  638. package/dist/core/core/coverage/index.d.ts +0 -11
  639. package/dist/core/core/coverage/index.js +0 -15
  640. package/dist/core/core/coverage/types.d.ts +0 -267
  641. package/dist/core/core/coverage/types.js +0 -6
  642. package/dist/core/core/coverage/vault.d.ts +0 -95
  643. package/dist/core/core/coverage/vault.js +0 -405
  644. package/dist/core/coverage/analyzer.d.ts +0 -101
  645. package/dist/core/coverage/analyzer.js +0 -415
  646. package/dist/core/coverage/collector.d.ts +0 -74
  647. package/dist/core/coverage/collector.js +0 -459
  648. package/dist/core/coverage/config.d.ts +0 -37
  649. package/dist/core/coverage/config.js +0 -156
  650. package/dist/core/coverage/index.d.ts +0 -11
  651. package/dist/core/coverage/index.js +0 -15
  652. package/dist/core/coverage/types.d.ts +0 -267
  653. package/dist/core/coverage/types.js +0 -6
  654. package/dist/core/coverage/vault.d.ts +0 -95
  655. package/dist/core/coverage/vault.js +0 -405
  656. package/dist/core/crawler/index.d.ts +0 -57
  657. package/dist/core/crawler/index.js +0 -281
  658. package/dist/core/crawler/journey-generator.d.ts +0 -49
  659. package/dist/core/crawler/journey-generator.js +0 -412
  660. package/dist/core/crawler/page-analyzer.d.ts +0 -88
  661. package/dist/core/crawler/page-analyzer.js +0 -709
  662. package/dist/core/crawler/selector-generator.d.ts +0 -34
  663. package/dist/core/crawler/selector-generator.js +0 -240
  664. package/dist/core/crawler/types.d.ts +0 -353
  665. package/dist/core/crawler/types.js +0 -6
  666. package/dist/core/dashboard/assets.d.ts +0 -6
  667. package/dist/core/dashboard/assets.js +0 -690
  668. package/dist/core/dashboard/index.d.ts +0 -6
  669. package/dist/core/dashboard/index.js +0 -5
  670. package/dist/core/dashboard/server.d.ts +0 -72
  671. package/dist/core/dashboard/server.js +0 -354
  672. package/dist/core/dashboard/types.d.ts +0 -70
  673. package/dist/core/dashboard/types.js +0 -5
  674. package/dist/core/discoverer/index.d.ts +0 -115
  675. package/dist/core/discoverer/index.js +0 -250
  676. package/dist/core/flakiness/index.d.ts +0 -228
  677. package/dist/core/flakiness/index.js +0 -384
  678. package/dist/core/generation/code-formatter.d.ts +0 -111
  679. package/dist/core/generation/code-formatter.js +0 -307
  680. package/dist/core/generation/code-generator.d.ts +0 -144
  681. package/dist/core/generation/code-generator.js +0 -293
  682. package/dist/core/generation/crawler-pack-generator.d.ts +0 -44
  683. package/dist/core/generation/crawler-pack-generator.js +0 -231
  684. package/dist/core/generation/generator.d.ts +0 -40
  685. package/dist/core/generation/generator.js +0 -76
  686. package/dist/core/generation/index.d.ts +0 -32
  687. package/dist/core/generation/index.js +0 -30
  688. package/dist/core/generation/pack-generator.d.ts +0 -107
  689. package/dist/core/generation/pack-generator.js +0 -416
  690. package/dist/core/generation/prompt-builder.d.ts +0 -132
  691. package/dist/core/generation/prompt-builder.js +0 -672
  692. package/dist/core/generation/source-analyzer.d.ts +0 -213
  693. package/dist/core/generation/source-analyzer.js +0 -657
  694. package/dist/core/generation/test-optimizer.d.ts +0 -117
  695. package/dist/core/generation/test-optimizer.js +0 -328
  696. package/dist/core/generation/types.d.ts +0 -214
  697. package/dist/core/generation/types.js +0 -4
  698. package/dist/core/hooks/compose.d.ts +0 -61
  699. package/dist/core/hooks/compose.js +0 -225
  700. package/dist/core/hooks/runner.d.ts +0 -68
  701. package/dist/core/hooks/runner.js +0 -303
  702. package/dist/core/index.d.ts +0 -104
  703. package/dist/core/index.js +0 -91
  704. package/dist/core/pack/migrator.d.ts +0 -51
  705. package/dist/core/pack/migrator.js +0 -304
  706. package/dist/core/pack/validator.d.ts +0 -42
  707. package/dist/core/pack/validator.js +0 -322
  708. package/dist/core/pack-v2/index.d.ts +0 -9
  709. package/dist/core/pack-v2/index.js +0 -8
  710. package/dist/core/pack-v2/loader.d.ts +0 -62
  711. package/dist/core/pack-v2/loader.js +0 -259
  712. package/dist/core/pack-v2/migrator.d.ts +0 -61
  713. package/dist/core/pack-v2/migrator.js +0 -480
  714. package/dist/core/pack-v2/validator.d.ts +0 -61
  715. package/dist/core/pack-v2/validator.js +0 -577
  716. package/dist/core/parallel/index.d.ts +0 -6
  717. package/dist/core/parallel/index.js +0 -6
  718. package/dist/core/parallel/parallel-runner.d.ts +0 -107
  719. package/dist/core/parallel/parallel-runner.js +0 -192
  720. package/dist/core/proof/bundle.d.ts +0 -137
  721. package/dist/core/proof/bundle.js +0 -160
  722. package/dist/core/proof/canonicalize.d.ts +0 -47
  723. package/dist/core/proof/canonicalize.js +0 -105
  724. package/dist/core/proof/index.d.ts +0 -13
  725. package/dist/core/proof/index.js +0 -18
  726. package/dist/core/proof/schema.d.ts +0 -217
  727. package/dist/core/proof/schema.js +0 -263
  728. package/dist/core/proof/signer.d.ts +0 -111
  729. package/dist/core/proof/signer.js +0 -226
  730. package/dist/core/proof/verifier.d.ts +0 -97
  731. package/dist/core/proof/verifier.js +0 -308
  732. package/dist/core/regression/detector.d.ts +0 -107
  733. package/dist/core/regression/detector.js +0 -497
  734. package/dist/core/regression/index.d.ts +0 -9
  735. package/dist/core/regression/index.js +0 -11
  736. package/dist/core/regression/trend-analyzer.d.ts +0 -102
  737. package/dist/core/regression/trend-analyzer.js +0 -345
  738. package/dist/core/regression/types.d.ts +0 -222
  739. package/dist/core/regression/types.js +0 -7
  740. package/dist/core/regression/vault.d.ts +0 -87
  741. package/dist/core/regression/vault.js +0 -289
  742. package/dist/core/repair/engine/fixer.d.ts +0 -24
  743. package/dist/core/repair/engine/fixer.js +0 -226
  744. package/dist/core/repair/engine/suggestion-engine.d.ts +0 -18
  745. package/dist/core/repair/engine/suggestion-engine.js +0 -187
  746. package/dist/core/repair/index.d.ts +0 -10
  747. package/dist/core/repair/index.js +0 -13
  748. package/dist/core/repair/repairer.d.ts +0 -90
  749. package/dist/core/repair/repairer.js +0 -284
  750. package/dist/core/repair/types.d.ts +0 -91
  751. package/dist/core/repair/types.js +0 -6
  752. package/dist/core/repair/utils/error-analyzer.d.ts +0 -28
  753. package/dist/core/repair/utils/error-analyzer.js +0 -264
  754. package/dist/core/reporting/html-reporter.d.ts +0 -119
  755. package/dist/core/reporting/html-reporter.js +0 -737
  756. package/dist/core/reporting/index.d.ts +0 -6
  757. package/dist/core/reporting/index.js +0 -6
  758. package/dist/core/retry/flakiness-integration.d.ts +0 -60
  759. package/dist/core/retry/flakiness-integration.js +0 -228
  760. package/dist/core/retry/index.d.ts +0 -14
  761. package/dist/core/retry/index.js +0 -16
  762. package/dist/core/retry/retry-engine.d.ts +0 -80
  763. package/dist/core/retry/retry-engine.js +0 -296
  764. package/dist/core/retry/types.d.ts +0 -178
  765. package/dist/core/retry/types.js +0 -52
  766. package/dist/core/retry/vault.d.ts +0 -77
  767. package/dist/core/retry/vault.js +0 -304
  768. package/dist/core/runner/e2e-helpers.d.ts +0 -102
  769. package/dist/core/runner/e2e-helpers.js +0 -153
  770. package/dist/core/runner/phase3-runner.d.ts +0 -200
  771. package/dist/core/runner/phase3-runner.js +0 -1039
  772. package/dist/core/secrets/crypto.d.ts +0 -75
  773. package/dist/core/secrets/crypto.js +0 -223
  774. package/dist/core/secrets/manager.d.ts +0 -76
  775. package/dist/core/secrets/manager.js +0 -219
  776. package/dist/core/security/redaction-patterns-extended.d.ts +0 -27
  777. package/dist/core/security/redaction-patterns-extended.js +0 -247
  778. package/dist/core/security/redactor.d.ts +0 -71
  779. package/dist/core/security/redactor.js +0 -279
  780. package/dist/core/self-healing/assertion-healer.d.ts +0 -97
  781. package/dist/core/self-healing/assertion-healer.js +0 -371
  782. package/dist/core/self-healing/engine.d.ts +0 -122
  783. package/dist/core/self-healing/engine.js +0 -538
  784. package/dist/core/self-healing/index.d.ts +0 -10
  785. package/dist/core/self-healing/index.js +0 -11
  786. package/dist/core/self-healing/selector-healer.d.ts +0 -103
  787. package/dist/core/self-healing/selector-healer.js +0 -372
  788. package/dist/core/self-healing/types.d.ts +0 -152
  789. package/dist/core/self-healing/types.js +0 -6
  790. package/dist/core/serve/diagnostics-collector.d.ts +0 -32
  791. package/dist/core/serve/diagnostics-collector.js +0 -149
  792. package/dist/core/serve/health-checker.d.ts +0 -44
  793. package/dist/core/serve/health-checker.js +0 -219
  794. package/dist/core/serve/index.d.ts +0 -8
  795. package/dist/core/serve/index.js +0 -8
  796. package/dist/core/serve/metrics-collector.d.ts +0 -24
  797. package/dist/core/serve/metrics-collector.js +0 -322
  798. package/dist/core/serve/process-manager.d.ts +0 -36
  799. package/dist/core/serve/process-manager.js +0 -213
  800. package/dist/core/serve/server.d.ts +0 -36
  801. package/dist/core/serve/server.js +0 -191
  802. package/dist/core/slo/config.d.ts +0 -107
  803. package/dist/core/slo/config.js +0 -360
  804. package/dist/core/slo/index.d.ts +0 -11
  805. package/dist/core/slo/index.js +0 -15
  806. package/dist/core/slo/sli-calculator.d.ts +0 -92
  807. package/dist/core/slo/sli-calculator.js +0 -364
  808. package/dist/core/slo/slo-tracker.d.ts +0 -148
  809. package/dist/core/slo/slo-tracker.js +0 -379
  810. package/dist/core/slo/types.d.ts +0 -281
  811. package/dist/core/slo/types.js +0 -7
  812. package/dist/core/slo/vault.d.ts +0 -102
  813. package/dist/core/slo/vault.js +0 -427
  814. package/dist/core/tui/index.d.ts +0 -7
  815. package/dist/core/tui/index.js +0 -6
  816. package/dist/core/tui/monitor.d.ts +0 -92
  817. package/dist/core/tui/monitor.js +0 -271
  818. package/dist/core/tui/renderer.d.ts +0 -33
  819. package/dist/core/tui/renderer.js +0 -218
  820. package/dist/core/tui/types.d.ts +0 -63
  821. package/dist/core/tui/types.js +0 -5
  822. package/dist/core/types/pack-v1.d.ts +0 -251
  823. package/dist/core/types/pack-v1.js +0 -5
  824. package/dist/core/types/pack-v2.d.ts +0 -425
  825. package/dist/core/types/pack-v2.js +0 -8
  826. package/dist/core/types/trust-score.d.ts +0 -69
  827. package/dist/core/types/trust-score.js +0 -191
  828. package/dist/core/vault/cas.d.ts +0 -90
  829. package/dist/core/vault/cas.js +0 -261
  830. package/dist/core/vault/index.d.ts +0 -326
  831. package/dist/core/vault/index.js +0 -1042
  832. package/dist/core/visual/index.d.ts +0 -6
  833. package/dist/core/visual/index.js +0 -6
  834. package/dist/core/visual/visual-regression.d.ts +0 -113
  835. package/dist/core/visual/visual-regression.js +0 -236
  836. package/dist/core/watch/index.d.ts +0 -7
  837. package/dist/core/watch/index.js +0 -6
  838. package/dist/core/watch/watch-mode.d.ts +0 -213
  839. package/dist/core/watch/watch-mode.js +0 -389
  840. package/dist/generators/index.d.ts +0 -5
  841. package/dist/generators/index.js +0 -5
  842. package/dist/generators/json-reporter.d.ts +0 -10
  843. package/dist/generators/json-reporter.js +0 -12
  844. package/dist/generators/test-generator.d.ts +0 -18
  845. package/dist/generators/test-generator.js +0 -78
  846. package/dist/index.d.ts +0 -8
  847. package/dist/index.js +0 -246
  848. package/dist/scanners/dom-scanner.d.ts +0 -52
  849. package/dist/scanners/dom-scanner.js +0 -296
  850. package/dist/scanners/index.d.ts +0 -4
  851. package/dist/scanners/index.js +0 -4
  852. package/dist/schemas/pack.schema.json +0 -236
  853. package/dist/types/scan.d.ts +0 -68
  854. package/dist/types/scan.js +0 -4
  855. package/dist/utils/config.d.ts +0 -5
  856. package/dist/utils/config.js +0 -136
  857. /package/{bin → cli/bin}/qa360.js +0 -0
  858. /package/{examples → cli/examples}/accessibility.yml +0 -0
  859. /package/{examples → cli/examples}/api-basic.yml +0 -0
  860. /package/{examples → cli/examples}/complete.yml +0 -0
  861. /package/{examples → cli/examples}/crawler.yml +0 -0
  862. /package/{examples → cli/examples}/fullstack.yml +0 -0
  863. /package/{examples → cli/examples}/security.yml +0 -0
  864. /package/{examples → cli/examples}/ui-advanced.yml +0 -0
  865. /package/{examples → cli/examples}/ui-basic.yml +0 -0
  866. /package/{dist/core → core}/schemas/pack.schema.json +0 -0
@@ -0,0 +1,423 @@
1
+ # 📊 TEST-01 COVERAGE PLAN - DAY 3
2
+
3
+ **Date**: December 23, 2024
4
+ **Current Status**: Baseline established
5
+ **Target**: 80% overall coverage
6
+
7
+ ---
8
+
9
+ ## 📈 CURRENT COVERAGE BASELINE
10
+
11
+ ### Overall Metrics
12
+ - **Statements**: 8.54%
13
+ - **Branches**: 4.75%
14
+ - **Functions**: 9.05%
15
+ - **Lines**: 8.62%
16
+
17
+ **Status**: 🔴 Critical - Needs significant work
18
+
19
+ ### By Package Analysis
20
+
21
+ | Package | Statements | Branches | Functions | Lines | Status |
22
+ |---------|-----------|----------|-----------|-------|--------|
23
+ | **core** | ~5-10% | ~2-5% | ~5-10% | ~5-10% | 🔴 CRITICAL |
24
+ | **cli** | ~10-15% | ~5-10% | ~10-15% | ~10-15% | 🔴 CRITICAL |
25
+ | **mcp** | N/A | N/A | N/A | N/A | ⚪ Not tested |
26
+
27
+ Legend:
28
+ - 🔴 <60% - Needs significant work (CURRENT STATE)
29
+ - 🟡 60-75% - Needs improvement
30
+ - 🟢 >75% - Good baseline
31
+
32
+ ### Coverage Highlights
33
+ **What IS tested (195 passing tests):**
34
+ - ✅ CLI doctor command (QA360Doctor)
35
+ - ✅ Proof system (bundle, schema, canonicalize) - **63% coverage**
36
+ - ✅ CLI utilities and helpers
37
+ - ✅ Configuration loading
38
+
39
+ **What is NOT tested (0% coverage):**
40
+ - ❌ All adapters (Playwright, k6, Semgrep, ZAP, OSV, Gitleaks)
41
+ - ❌ Evidence Vault (sqlite3)
42
+ - ❌ Secrets management (crypto, manager)
43
+ - ❌ Security redactor
44
+ - ❌ Server/observability endpoints
45
+ - ❌ Hooks runner & compose
46
+ - ❌ Pack validation & migration
47
+ - ❌ CLI commands (run, verify, serve, report, secrets, ask)
48
+
49
+ ---
50
+
51
+ ## 🎯 COVERAGE TARGETS
52
+
53
+ ### Day 4 Goals (Aggressive but Achievable)
54
+ | Package | Current | Day 4 Target | Gap | Priority |
55
+ |---------|---------|--------------|-----|----------|
56
+ | **core** | ~8% | 60% | +52% | 🔥 CRITICAL |
57
+ | **cli** | ~12% | 50% | +38% | 🔥 HIGH |
58
+ | **mcp** | 0% | 30% | +30% | 🟡 MEDIUM |
59
+ | **Overall** | 8.54% | 55% | +46.5% | 🔥 CRITICAL |
60
+
61
+ ### Week 2 Final Targets
62
+ - Core: 80%
63
+ - CLI: 75%
64
+ - MCP: 70%
65
+ - Overall: 75%
66
+
67
+ **Rationale**: Day 4 establishes foundation (55%), Day 5 pushes to target (75%)
68
+
69
+ ---
70
+
71
+ ## 🚨 CRITICAL GAPS (0% Coverage)
72
+
73
+ ### Core Package - ZERO Coverage Files
74
+ 1. **core/src/adapters/** (ALL 7 adapters - 0%)
75
+ - `playwright-api.ts` (328 lines) - API testing adapter
76
+ - `playwright-ui.ts` (445 lines) - UI testing adapter
77
+ - `k6-perf.ts` (474 lines) - Performance testing
78
+ - `semgrep-sast.ts` (405 lines) - SAST scanning
79
+ - `gitleaks-secrets.ts` (514 lines) - Secrets scanning
80
+ - `zap-dast.ts` (543 lines) - DAST scanning
81
+ - `osv-deps.ts` (460 lines) - Dependency scanning
82
+
83
+ 2. **core/src/vault/** (Evidence storage - 0%)
84
+ - `index.ts` (663 lines) - SQLite vault operations
85
+ - `cas.ts` (314 lines) - Content-addressable storage
86
+
87
+ 3. **core/src/secrets/** (0%)
88
+ - `crypto.ts` (293 lines) - AES-256 encryption
89
+ - `manager.ts` (269 lines) - Secrets CRUD
90
+
91
+ 4. **core/src/security/** (0%)
92
+ - `redactor.ts` (319 lines) - PII masking
93
+ - `redaction-patterns-extended.ts` (277 lines)
94
+
95
+ 5. **core/src/serve/** (Observability - 0%)
96
+ - `server.ts` (228 lines) - HTTP server
97
+ - `health-checker.ts` (271 lines) - Health checks
98
+ - `diagnostics-collector.ts` (199 lines)
99
+ - `metrics-collector.ts` (383 lines)
100
+ - `process-manager.ts` (263 lines)
101
+
102
+ 6. **core/src/hooks/** (0%)
103
+ - `runner.ts` (362 lines) - Hook execution
104
+ - `compose.ts` (266 lines) - Docker Compose
105
+
106
+ 7. **core/src/pack/** (0%)
107
+ - `validator.ts` (321 lines) - Pack validation
108
+ - `migrator.ts` (351 lines) - Pack migration
109
+
110
+ 8. **core/src/runner/** (0%)
111
+ - `phase3-runner.ts` (454 lines) - Advanced orchestration
112
+
113
+ 9. **core/src/types/** (0%)
114
+ - `trust-score.ts` (253 lines) - Trust calculations
115
+
116
+ ### CLI Package - ZERO Coverage Commands
117
+ 1. **cli/src/commands/** (Most commands 0%)
118
+ - `run.ts` (379 lines) - Main execution command
119
+ - `verify.ts` (284 lines) - Proof verification
120
+ - `serve.ts` (192 lines) - Server command
121
+ - `report.ts` (440 lines) - Report generation
122
+ - `secrets.ts` (328 lines) - Secrets management
123
+ - `ask.ts` (356 lines) - AI test generation
124
+ - `history.ts` (387 lines) - Run history
125
+
126
+ **Total untested files: ~40+ files with 0% coverage**
127
+
128
+ ---
129
+
130
+ ## ⚠️ LOW COVERAGE (<50%)
131
+
132
+ ### Files Needing Significant Testing
133
+ 1. **core/src/proof/signer.ts** (35.8%)
134
+ - Sign operations: 64% uncovered
135
+ - Ed25519 signature generation
136
+ - Private key operations
137
+
138
+ 2. **core/src/proof/verifier.ts** (43.05%)
139
+ - Verify operations: 57% uncovered
140
+ - Signature validation
141
+ - Certificate chain verification
142
+
143
+ 3. **core/src/index.ts** (0% - exports only)
144
+ - Main package exports
145
+ - Low priority (mostly re-exports)
146
+
147
+ ---
148
+
149
+ ## 📋 DAY 4 ACTION PLAN
150
+
151
+ ### Phase 1: Core Foundations (4 hours)
152
+
153
+ #### High Priority - Critical Path Testing
154
+ - [ ] **Proof System** (90 min)
155
+ - Complete signer.ts coverage (35% → 80%)
156
+ - Complete verifier.ts coverage (43% → 80%)
157
+ - Target: Proof system to 75% overall
158
+
159
+ - [ ] **Vault Operations** (60 min)
160
+ - Test vault CRUD (store, retrieve, list)
161
+ - Test CAS operations
162
+ - Mock sqlite3 appropriately
163
+ - Target: vault/ to 60%
164
+
165
+ - [ ] **Secrets Management** (45 min)
166
+ - Test crypto encrypt/decrypt
167
+ - Test manager CRUD operations
168
+ - Target: secrets/ to 60%
169
+
170
+ - [ ] **Pack Validation** (45 min)
171
+ - Test validator.ts (schema checks)
172
+ - Test basic validation flows
173
+ - Target: pack/ to 50%
174
+
175
+ ### Phase 2: CLI Commands (3 hours)
176
+
177
+ #### Medium Priority - User-Facing Features
178
+ - [ ] **doctor command** (30 min)
179
+ - Already well tested (✅)
180
+ - Add edge case tests
181
+ - Target: 90%+
182
+
183
+ - [ ] **run command** (60 min)
184
+ - Test basic execution flow
185
+ - Mock adapters
186
+ - Test error handling
187
+ - Target: 50%
188
+
189
+ - [ ] **verify command** (45 min)
190
+ - Test proof verification flow
191
+ - Integration with proof system
192
+ - Target: 50%
193
+
194
+ - [ ] **serve command** (45 min)
195
+ - Test server startup
196
+ - Mock endpoints
197
+ - Target: 40%
198
+
199
+ ### Phase 3: Quick Wins (2 hours)
200
+
201
+ #### Low Priority - Easy Coverage Boosts
202
+ - [ ] **Security Redactor** (30 min)
203
+ - Test pattern matching
204
+ - Test redaction logic
205
+ - Target: 60%
206
+
207
+ - [ ] **Adapters Smoke Tests** (60 min)
208
+ - Basic instantiation tests for all 7
209
+ - Mock external tools
210
+ - Target: 20% each (just structure)
211
+
212
+ - [ ] **Type Utilities** (30 min)
213
+ - Test trust-score calculations
214
+ - Pure logic, easy to test
215
+ - Target: 70%
216
+
217
+ ---
218
+
219
+ ## 🎯 TESTING STRATEGY
220
+
221
+ ### Unit Tests Focus
222
+ **Pure Logic (Easy):**
223
+ - ✅ Proof canonicalization (already 90%)
224
+ - ✅ Proof schema validation (already 96%)
225
+ - 🎯 Trust score calculations
226
+ - 🎯 Security redaction patterns
227
+ - 🎯 Pack validation rules
228
+
229
+ **Core Operations (Medium):**
230
+ - 🎯 Vault CRUD (mock sqlite3)
231
+ - 🎯 Secrets encrypt/decrypt (real crypto)
232
+ - 🎯 Proof sign/verify (real Ed25519)
233
+ - 🎯 Pack migration logic
234
+
235
+ **Integrations (Hard):**
236
+ - 🎯 CLI command flows
237
+ - 🎯 Adapter orchestration
238
+ - 🎯 Server endpoints
239
+
240
+ ### Integration Tests
241
+ **Critical Paths:**
242
+ - 🎯 Full run → vault → report flow
243
+ - 🎯 Sign → verify → bundle flow
244
+ - 🎯 Doctor → fix → validate flow
245
+
246
+ ### Mock Strategy
247
+ **What to Mock:**
248
+ - ✅ File system operations (fs.readFile, writeFile)
249
+ - ✅ External tools (playwright, k6, zap, etc.)
250
+ - ✅ Network calls (HTTP requests)
251
+ - ✅ Child processes (spawn, exec)
252
+
253
+ **What to Keep Real:**
254
+ - ✅ Crypto operations (Ed25519, AES-256)
255
+ - ✅ SQLite in-memory (use :memory:)
256
+ - ✅ Core logic (proof, validation)
257
+
258
+ ---
259
+
260
+ ## 🚀 QUICK WINS FOR DAY 4
261
+
262
+ ### 1. Proof System (Already 63% - Easy Push)
263
+ **File**: `core/src/proof/signer.ts`
264
+ **Effort**: 30 min
265
+ **Impact**: +10% overall
266
+ **Why**: Core functionality, pure logic, already partially tested
267
+
268
+ ### 2. Proof System (Part 2)
269
+ **File**: `core/src/proof/verifier.ts`
270
+ **Effort**: 30 min
271
+ **Impact**: +10% overall
272
+ **Why**: Completes proof system to 80%+
273
+
274
+ ### 3. Security Redactor
275
+ **File**: `core/src/security/redactor.ts`
276
+ **Effort**: 30 min
277
+ **Impact**: +5% overall
278
+ **Why**: Pure string manipulation, easy test cases
279
+
280
+ ### 4. Trust Score Calculations
281
+ **File**: `core/src/types/trust-score.ts`
282
+ **Effort**: 30 min
283
+ **Impact**: +3% overall
284
+ **Why**: Pure math, no dependencies
285
+
286
+ ### 5. Pack Validator Basics
287
+ **File**: `core/src/pack/validator.ts`
288
+ **Effort**: 45 min
289
+ **Impact**: +5% overall
290
+ **Why**: Schema validation, clear test cases
291
+
292
+ ### 6. Vault Smoke Tests
293
+ **File**: `core/src/vault/index.ts`
294
+ **Effort**: 45 min
295
+ **Impact**: +8% overall
296
+ **Why**: Critical path, use in-memory sqlite
297
+
298
+ ### 7. Secrets Crypto
299
+ **File**: `core/src/secrets/crypto.ts`
300
+ **Effort**: 30 min
301
+ **Impact**: +4% overall
302
+ **Why**: Encryption/decryption, testable
303
+
304
+ ### 8. CLI Run Command Basics
305
+ **File**: `cli/src/commands/run.ts`
306
+ **Effort**: 45 min
307
+ **Impact**: +6% overall
308
+ **Why**: Main user command, high visibility
309
+
310
+ **Total Quick Wins**: 51% potential coverage gain in ~5 hours
311
+
312
+ ---
313
+
314
+ ## 🎯 SUCCESS CRITERIA (DAY 4)
315
+
316
+ ### Primary Goals
317
+ - [ ] **Overall coverage: 55%+** (current 8.54%)
318
+ - [ ] **Core proof system: 75%+** (current 63%)
319
+ - [ ] **Vault operations: 60%+** (current 0%)
320
+ - [ ] **Secrets management: 60%+** (current 0%)
321
+ - [ ] **CLI doctor: 90%+** (current ~80%)
322
+
323
+ ### Secondary Goals
324
+ - [ ] All critical paths have at least smoke tests
325
+ - [ ] No 0% coverage in core proof/vault/secrets
326
+ - [ ] Pack validation basics covered
327
+ - [ ] CLI run command basics covered
328
+
329
+ ### Stretch Goals
330
+ - [ ] Overall coverage: 60%+
331
+ - [ ] 2+ adapters with smoke tests (20%+)
332
+ - [ ] Server health checks tested
333
+
334
+ ---
335
+
336
+ ## 📊 ESTIMATED EFFORT
337
+
338
+ ### By Area
339
+ | Area | Tests Needed | Est. Time | Impact |
340
+ |------|--------------|-----------|--------|
341
+ | **Proof completion** | 10 tests | 1 hour | +20% |
342
+ | **Vault basics** | 15 tests | 1.5 hours | +8% |
343
+ | **Secrets basics** | 10 tests | 1 hour | +4% |
344
+ | **Pack validation** | 8 tests | 1 hour | +5% |
345
+ | **CLI commands** | 20 tests | 2 hours | +10% |
346
+ | **Quick wins** | 15 tests | 1.5 hours | +8% |
347
+
348
+ **Total Day 4**: ~60-70 new tests, 8 hours, targeting 55% coverage
349
+
350
+ ---
351
+
352
+ ## 📝 TESTING PRIORITIES
353
+
354
+ ### 🔥 P0 - Must Have (Day 4)
355
+ 1. Proof signer/verifier completion
356
+ 2. Vault CRUD operations
357
+ 3. Secrets encryption
358
+ 4. CLI run command basics
359
+
360
+ ### 🔶 P1 - Should Have (Day 4-5)
361
+ 1. Pack validation
362
+ 2. Security redactor
363
+ 3. Trust score calculations
364
+ 4. CLI verify command
365
+ 5. Adapter smoke tests
366
+
367
+ ### 🟡 P2 - Nice to Have (Day 5+)
368
+ 1. Server endpoints
369
+ 2. Hooks runner
370
+ 3. Process manager
371
+ 4. CLI report generation
372
+ 5. Full adapter coverage
373
+
374
+ ---
375
+
376
+ ## 🎓 LESSONS LEARNED
377
+
378
+ ### What Worked Well
379
+ - ✅ Doctor command has good test coverage
380
+ - ✅ Proof system partially covered (63%)
381
+ - ✅ Test infrastructure stable (195/195 passing)
382
+
383
+ ### What Needs Attention
384
+ - ⚠️ 40+ files with 0% coverage
385
+ - ⚠️ Adapters completely untested
386
+ - ⚠️ Vault/secrets (critical paths) untested
387
+ - ⚠️ Most CLI commands untested
388
+
389
+ ### Key Insights
390
+ 1. **Focus on pure logic first** (proof, crypto, validation)
391
+ 2. **Mock external dependencies** (fs, network, tools)
392
+ 3. **Use in-memory sqlite** for vault tests
393
+ 4. **Test critical paths** (run → vault → report)
394
+ 5. **Quick wins matter** (8% → 55% is achievable in Day 4)
395
+
396
+ ---
397
+
398
+ ## 📈 COVERAGE ROADMAP
399
+
400
+ ### Day 4 Target: 55%
401
+ - Proof: 75%
402
+ - Vault: 60%
403
+ - Secrets: 60%
404
+ - Pack: 50%
405
+ - CLI: 40%
406
+
407
+ ### Day 5 Target: 75%
408
+ - Core: 80%
409
+ - CLI: 75%
410
+ - Adapters: 40%
411
+ - Server: 60%
412
+
413
+ ### Week 2 Final: 80%
414
+ - Core: 85%
415
+ - CLI: 80%
416
+ - MCP: 70%
417
+ - Adapters: 60%
418
+
419
+ ---
420
+
421
+ **Coverage baseline established by TEST-01 on Day 3**
422
+ **Status**: 🔴 8.54% → 🟢 Target 55% (Day 4)
423
+ **Ready for**: Aggressive coverage push on Day 4
@@ -0,0 +1,308 @@
1
+ # QA360 Phase 4 - Budgets Avancés & Trust Score
2
+
3
+ Guide complet des budgets granulaires et du système de Trust Score pondéré.
4
+
5
+ ## 📊 Schéma Budgets Avancés
6
+
7
+ ### Structure Complète
8
+
9
+ ```yaml
10
+ version: 1
11
+ name: "enterprise-app"
12
+ gates: ["ui", "api", "perf", "a11y", "sast", "deps", "secrets", "dast"]
13
+
14
+ budgets:
15
+ perf:
16
+ p95_ms: 800 # P95 response time budget
17
+ p90_ms: 600 # P90 response time budget
18
+ p50_ms: 300 # P50 response time budget
19
+ max_errors_rate: 0.1 # 10% max error rate
20
+
21
+ a11y:
22
+ min_score: 90 # Minimum accessibility score
23
+ max_violations:
24
+ critical: 0 # Zero critical violations
25
+ serious: 2 # Max 2 serious violations
26
+ moderate: 5 # Max 5 moderate violations
27
+ minor: 10 # Max 10 minor violations
28
+
29
+ security:
30
+ sast: # Static Application Security Testing
31
+ max_high: 0 # Zero high severity findings
32
+ max_critical: 0 # Zero critical findings
33
+ max_medium: 3 # Max 3 medium findings
34
+
35
+ deps: # Dependency vulnerabilities
36
+ max_high: 0 # Zero high severity vulns
37
+ max_critical: 0 # Zero critical vulns
38
+ max_medium: 2 # Max 2 medium vulns
39
+
40
+ secrets: # Secret detection
41
+ max_findings: 0 # Zero secrets in code
42
+
43
+ dast: # Dynamic Application Security Testing
44
+ max_high: 0 # Zero high severity alerts
45
+ max_critical: 0 # Zero critical alerts
46
+ max_medium: 1 # Max 1 medium alert
47
+ timeout_ms: 300000 # 5 minutes ZAP scan timeout
48
+
49
+ execution:
50
+ on_failure: "continue" # continue | stop
51
+ mode: "strict" # strict | soft
52
+ ```
53
+
54
+ ### Modes d'Exécution
55
+
56
+ #### Mode Strict (Défaut)
57
+ ```yaml
58
+ execution:
59
+ mode: "strict"
60
+ ```
61
+ - Échec immédiat si budget dépassé
62
+ - Exit code 1 pour CI/CD
63
+ - Blocage du pipeline
64
+
65
+ #### Mode Soft
66
+ ```yaml
67
+ execution:
68
+ mode: "soft"
69
+ ```
70
+ - Transformation en warnings
71
+ - Dégradation du Trust Score
72
+ - Pipeline continue
73
+
74
+ ## 🎯 Trust Score Pondéré
75
+
76
+ ### Pondération Par Défaut
77
+
78
+ ```typescript
79
+ const DEFAULT_WEIGHTS = {
80
+ ui: 20, // Tests UI/UX
81
+ api: 20, // Tests API
82
+ perf: 15, // Performance
83
+ a11y: 10, // Accessibilité
84
+ sast: 15, // Sécurité statique
85
+ deps: 10, // Vulnérabilités dépendances
86
+ secrets: 5, // Détection secrets
87
+ dast: 5 // Sécurité dynamique
88
+ };
89
+ ```
90
+
91
+ ### Personnalisation Weights
92
+
93
+ ```bash
94
+ # Via CLI
95
+ qa360 run --url <url> --weights "ui:25,api:25,perf:20,sast:20,dast:10"
96
+
97
+ # Via pack.yml
98
+ weights:
99
+ ui: 25
100
+ api: 25
101
+ perf: 20
102
+ sast: 20
103
+ dast: 10
104
+ ```
105
+
106
+ ### Calcul Trust Score
107
+
108
+ ```
109
+ Trust Score = Σ(Gate Score × Weight) / 100
110
+
111
+ Exemple:
112
+ - UI: 85% × 20% = 17.0
113
+ - API: 90% × 20% = 18.0
114
+ - Perf: 75% × 15% = 11.25
115
+ - A11y: 95% × 10% = 9.5
116
+ - SAST: 100% × 15% = 15.0
117
+ - Deps: 100% × 10% = 10.0
118
+ - Secrets: 100% × 5% = 5.0
119
+ - DAST: 90% × 5% = 4.5
120
+
121
+ Trust Score = 90.25%
122
+ ```
123
+
124
+ ## 🔧 Exemples par Secteur
125
+
126
+ ### E-commerce
127
+ ```yaml
128
+ budgets:
129
+ perf:
130
+ p95_ms: 500 # Performance critique
131
+ max_errors_rate: 0.01
132
+ a11y:
133
+ min_score: 95 # Accessibilité légale
134
+ security:
135
+ sast:
136
+ max_high: 0 # Sécurité paiements
137
+ dast:
138
+ max_high: 0
139
+
140
+ weights:
141
+ perf: 30 # Performance prioritaire
142
+ ui: 25
143
+ sast: 20 # Sécurité critique
144
+ api: 15
145
+ dast: 10
146
+ ```
147
+
148
+ ### SaaS B2B
149
+ ```yaml
150
+ budgets:
151
+ perf:
152
+ p95_ms: 1000 # Tolérance plus élevée
153
+ a11y:
154
+ min_score: 85 # Standard business
155
+ security:
156
+ sast:
157
+ max_high: 1 # Tolérance limitée
158
+ secrets:
159
+ max_findings: 0 # Zero secret
160
+
161
+ weights:
162
+ api: 30 # API-first
163
+ ui: 25
164
+ sast: 20
165
+ perf: 15
166
+ deps: 10
167
+ ```
168
+
169
+ ### Application Interne
170
+ ```yaml
171
+ budgets:
172
+ perf:
173
+ p95_ms: 2000 # Réseau interne
174
+ a11y:
175
+ min_score: 70 # Standard interne
176
+ security:
177
+ sast:
178
+ max_high: 3 # Plus permissif
179
+ dast:
180
+ max_medium: 5
181
+
182
+ weights:
183
+ ui: 40 # UX prioritaire
184
+ api: 30
185
+ perf: 20
186
+ sast: 10
187
+ ```
188
+
189
+ ## 📈 Recommandations Trust Score
190
+
191
+ ### Excellent (90-100%)
192
+ - ✅ Prêt pour production
193
+ - ✅ Qualité enterprise
194
+ - ✅ Sécurité optimale
195
+
196
+ ### Good (80-89%)
197
+ - ✅ Production acceptable
198
+ - ⚠️ Améliorations mineures
199
+ - ✅ Sécurité correcte
200
+
201
+ ### Acceptable (70-79%)
202
+ - ⚠️ Production conditionnelle
203
+ - 🔧 Améliorations requises
204
+ - ⚠️ Révision sécurité
205
+
206
+ ### Needs Improvement (50-69%)
207
+ - ❌ Production non recommandée
208
+ - 🔧 Corrections majeures
209
+ - 🔍 Audit sécurité
210
+
211
+ ### Critical (<50%)
212
+ - 🚨 Blocage production
213
+ - 🔧 Refactoring requis
214
+ - 🚨 Failles critiques
215
+
216
+ ## 🛠️ Intégration CI/CD
217
+
218
+ ### GitHub Actions
219
+ ```yaml
220
+ - name: QA360 Quality Gate
221
+ run: |
222
+ qa360 run --url ${{ env.STAGING_URL }} \
223
+ --mode strict \
224
+ --weights "perf:25,sast:25,ui:20,api:20,dast:10" \
225
+ --report-format json
226
+
227
+ # Vérifier Trust Score
228
+ TRUST_SCORE=$(jq '.trustScore.weightedScore' qa360-report.json)
229
+ if [ $TRUST_SCORE -lt 80 ]; then
230
+ echo "Trust Score too low: $TRUST_SCORE%"
231
+ exit 1
232
+ fi
233
+ ```
234
+
235
+ ### GitLab CI
236
+ ```yaml
237
+ qa360_quality_gate:
238
+ script:
239
+ - qa360 run --url $STAGING_URL --mode strict
240
+ - qa360 report --format badge --output trust-score.svg
241
+ artifacts:
242
+ reports:
243
+ junit: qa360-junit.xml
244
+ paths:
245
+ - trust-score.svg
246
+ ```
247
+
248
+ ## 🎨 Badges & Rapports
249
+
250
+ ### Badge Trust Score
251
+ ```markdown
252
+ ![Trust Score](https://img.shields.io/badge/Trust%20Score-85%25-green)
253
+ ```
254
+
255
+ ### Rapport Exécutif
256
+ ```bash
257
+ qa360 report --format executive --output executive-report.pdf
258
+ ```
259
+
260
+ ### Dashboard Multi-Projets
261
+ ```bash
262
+ qa360 dashboard --input "./projects/**/qa360-report.json" \
263
+ --output dashboard.html \
264
+ --weights "perf:30,sast:25,ui:25,api:20"
265
+ ```
266
+
267
+ ## 🔍 Monitoring & Alertes
268
+
269
+ ### Métriques Prometheus
270
+ ```
271
+ qa360_trust_score{project="app",environment="prod"} 85
272
+ qa360_gate_score{gate="perf",project="app"} 78
273
+ qa360_budget_exceeded{gate="sast",severity="high"} 1
274
+ ```
275
+
276
+ ### Alertes Slack
277
+ ```yaml
278
+ alerts:
279
+ trust_score_threshold: 80
280
+ webhook_url: "https://hooks.slack.com/..."
281
+ channels:
282
+ critical: "#security-alerts"
283
+ warning: "#qa-team"
284
+ ```
285
+
286
+ ## 📚 Bonnes Pratiques
287
+
288
+ ### 1. Définition Budgets
289
+ - Commencer permissif, durcir progressivement
290
+ - Adapter selon criticité métier
291
+ - Réviser trimestriellement
292
+
293
+ ### 2. Pondération Weights
294
+ - Aligner sur priorités business
295
+ - Ajuster selon phase projet
296
+ - Documenter les choix
297
+
298
+ ### 3. Monitoring Continu
299
+ - Tracking évolution Trust Score
300
+ - Alertes sur régressions
301
+ - Rapports réguliers stakeholders
302
+
303
+ ### 4. Amélioration Continue
304
+ - Analyse tendances
305
+ - Identification goulots
306
+ - Formation équipes
307
+
308
+ Ce système de budgets avancés et Trust Score pondéré transforme QA360 en véritable plateforme de gouvernance qualité enterprise.