@kevinrabun/judges 3.18.3 → 3.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/evaluators/accessibility.js +5 -5
  3. package/dist/evaluators/accessibility.js.map +1 -1
  4. package/dist/evaluators/ai-code-safety.d.ts.map +1 -1
  5. package/dist/evaluators/ai-code-safety.js +9 -9
  6. package/dist/evaluators/ai-code-safety.js.map +1 -1
  7. package/dist/evaluators/api-design.js +7 -7
  8. package/dist/evaluators/api-design.js.map +1 -1
  9. package/dist/evaluators/authentication.d.ts.map +1 -1
  10. package/dist/evaluators/authentication.js +15 -15
  11. package/dist/evaluators/authentication.js.map +1 -1
  12. package/dist/evaluators/backwards-compatibility.js +5 -5
  13. package/dist/evaluators/backwards-compatibility.js.map +1 -1
  14. package/dist/evaluators/caching.d.ts.map +1 -1
  15. package/dist/evaluators/caching.js +7 -7
  16. package/dist/evaluators/caching.js.map +1 -1
  17. package/dist/evaluators/ci-cd.js +14 -14
  18. package/dist/evaluators/ci-cd.js.map +1 -1
  19. package/dist/evaluators/cloud-readiness.d.ts.map +1 -1
  20. package/dist/evaluators/cloud-readiness.js +6 -6
  21. package/dist/evaluators/cloud-readiness.js.map +1 -1
  22. package/dist/evaluators/compliance.d.ts.map +1 -1
  23. package/dist/evaluators/compliance.js +5 -5
  24. package/dist/evaluators/compliance.js.map +1 -1
  25. package/dist/evaluators/concurrency.js +2 -2
  26. package/dist/evaluators/concurrency.js.map +1 -1
  27. package/dist/evaluators/configuration-management.d.ts.map +1 -1
  28. package/dist/evaluators/configuration-management.js +8 -8
  29. package/dist/evaluators/configuration-management.js.map +1 -1
  30. package/dist/evaluators/cost-effectiveness.d.ts.map +1 -1
  31. package/dist/evaluators/cost-effectiveness.js +3 -3
  32. package/dist/evaluators/cost-effectiveness.js.map +1 -1
  33. package/dist/evaluators/cybersecurity.d.ts.map +1 -1
  34. package/dist/evaluators/cybersecurity.js +8 -8
  35. package/dist/evaluators/cybersecurity.js.map +1 -1
  36. package/dist/evaluators/data-security.d.ts.map +1 -1
  37. package/dist/evaluators/data-security.js +11 -11
  38. package/dist/evaluators/data-security.js.map +1 -1
  39. package/dist/evaluators/data-sovereignty.d.ts.map +1 -1
  40. package/dist/evaluators/data-sovereignty.js +10 -10
  41. package/dist/evaluators/data-sovereignty.js.map +1 -1
  42. package/dist/evaluators/database.js +7 -7
  43. package/dist/evaluators/database.js.map +1 -1
  44. package/dist/evaluators/dependency-health.js +2 -2
  45. package/dist/evaluators/dependency-health.js.map +1 -1
  46. package/dist/evaluators/error-handling.d.ts.map +1 -1
  47. package/dist/evaluators/error-handling.js +10 -10
  48. package/dist/evaluators/error-handling.js.map +1 -1
  49. package/dist/evaluators/framework-safety.d.ts.map +1 -1
  50. package/dist/evaluators/framework-safety.js +10 -10
  51. package/dist/evaluators/framework-safety.js.map +1 -1
  52. package/dist/evaluators/iac-security.js +6 -6
  53. package/dist/evaluators/iac-security.js.map +1 -1
  54. package/dist/evaluators/internationalization.js +3 -3
  55. package/dist/evaluators/internationalization.js.map +1 -1
  56. package/dist/evaluators/logging-privacy.js +2 -2
  57. package/dist/evaluators/logging-privacy.js.map +1 -1
  58. package/dist/evaluators/observability.js +5 -5
  59. package/dist/evaluators/observability.js.map +1 -1
  60. package/dist/evaluators/performance.d.ts.map +1 -1
  61. package/dist/evaluators/performance.js +4 -4
  62. package/dist/evaluators/performance.js.map +1 -1
  63. package/dist/evaluators/portability.js +9 -9
  64. package/dist/evaluators/portability.js.map +1 -1
  65. package/dist/evaluators/project.d.ts.map +1 -1
  66. package/dist/evaluators/project.js +84 -1
  67. package/dist/evaluators/project.js.map +1 -1
  68. package/dist/evaluators/rate-limiting.d.ts.map +1 -1
  69. package/dist/evaluators/rate-limiting.js +9 -9
  70. package/dist/evaluators/rate-limiting.js.map +1 -1
  71. package/dist/evaluators/reliability.js +4 -4
  72. package/dist/evaluators/reliability.js.map +1 -1
  73. package/dist/evaluators/scalability.d.ts.map +1 -1
  74. package/dist/evaluators/scalability.js +10 -10
  75. package/dist/evaluators/scalability.js.map +1 -1
  76. package/dist/evaluators/shared.d.ts +48 -0
  77. package/dist/evaluators/shared.d.ts.map +1 -1
  78. package/dist/evaluators/shared.js +197 -0
  79. package/dist/evaluators/shared.js.map +1 -1
  80. package/dist/evaluators/software-practices.js +3 -3
  81. package/dist/evaluators/software-practices.js.map +1 -1
  82. package/dist/evaluators/testing.d.ts.map +1 -1
  83. package/dist/evaluators/testing.js +6 -5
  84. package/dist/evaluators/testing.js.map +1 -1
  85. package/dist/evaluators/ux.d.ts.map +1 -1
  86. package/dist/evaluators/ux.js +19 -19
  87. package/dist/evaluators/ux.js.map +1 -1
  88. package/package.json +1 -1
  89. package/server.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../src/evaluators/testing.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAE9C,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,QAAgB;IAC3D,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,CAAC;IACtB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAEtC,wDAAwD;IACxD,uEAAuE;IACvE,2EAA2E;IAC3E,MAAM,aAAa,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAC9G,OAAO,CACR,CAAC,MAAM,CAAC;IACT,MAAM,gBAAgB,GACpB,aAAa,IAAI,CAAC;QAClB,4FAA4F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1G,IAAI,gBAAgB,EAAE,CAAC;QACrB,wCAAwC;QACxC,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;QAExE,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,IACE,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBACnB,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;gBACvB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EACtB,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7D,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,UAAU;gBACpB,KAAK,EAAE,+BAA+B;gBACtC,WAAW,EACT,mHAAmH;gBACrH,WAAW,EAAE,cAAc;gBAC3B,cAAc,EACZ,uGAAuG;gBACzG,SAAS,EAAE,6BAA6B;gBACxC,YAAY,EACV,8IAA8I;gBAChJ,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;QAED,iCAAiC;QACjC,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,IAAI,2FAA2F,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3G,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EACT,8HAA8H;gBAChI,WAAW,EAAE,cAAc;gBAC3B,cAAc,EACZ,qHAAqH;gBACvH,SAAS,EAAE,yBAAyB;gBACpC,YAAY,EACV,mJAAmJ;gBACrJ,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;QAED,mDAAmD;QACnD,MAAM,kBAAkB,GAAa,EAAE,CAAC;QACxC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,IAAI,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpF,kBAAkB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,0BAA0B;gBACjC,WAAW,EAAE,2FAA2F;gBACxG,WAAW,EAAE,kBAAkB;gBAC/B,cAAc,EACZ,6GAA6G;gBAC/G,SAAS,EAAE,8CAA8C;gBACzD,YAAY,EACV,gKAAgK;gBAClK,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;QAED,2DAA2D;QAC3D,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,oFAAoF;YACpF,IAAI,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO;YAC/D,2EAA2E;YAC3E,kGAAkG;YAClG,IAAI,oFAAoF,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO;YAC5G,gFAAgF;YAChF,IAAI,wCAAwC,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO;YACnE,uEAAuE;YACvE,IAAI,gDAAgD,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC3G,OAAO;YACT,IACE,uIAAuI,CAAC,IAAI,CAC1I,IAAI,CACL;gBACD,CAAC,4DAA4D,CAAC,IAAI,CAAC,IAAI,CAAC,EACxE,CAAC;gBACD,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,uCAAuC;gBAC9C,WAAW,EACT,oIAAoI;gBACtI,WAAW,EAAE,gBAAgB;gBAC7B,cAAc,EACZ,oKAAoK;gBACtK,SAAS,EAAE,uCAAuC;gBAClD,YAAY,EACV,gJAAgJ;gBAClJ,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;QAED,yCAAyC;QACzC,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,IACE,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC1C,CAAC,4CAA4C,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAC/D,CAAC;gBACD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9D,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnF,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,oCAAoC;gBAC3C,WAAW,EACT,gIAAgI;gBAClI,WAAW,EAAE,gBAAgB;gBAC7B,cAAc,EACZ,gGAAgG;gBAClG,SAAS,EAAE,+BAA+B;gBAC1C,YAAY,EACV,gIAAgI;gBAClI,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;QAED,2CAA2C;QAC3C,MAAM,aAAa,GACjB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,mEAAmE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7G,IAAI,aAAa,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,6BAA6B;gBACpC,WAAW,EACT,0GAA0G;gBAC5G,cAAc,EACZ,8HAA8H;gBAChI,SAAS,EAAE,4BAA4B;gBACvC,YAAY,EACV,0HAA0H;gBAC5H,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;QAED,8CAA8C;QAC9C,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,IACE,mHAAmH,CAAC,IAAI,CACtH,IAAI,CACL,EACD,CAAC;gBACD,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,gCAAgC;gBACvC,WAAW,EACT,mHAAmH;gBACrH,WAAW,EAAE,UAAU;gBACvB,cAAc,EACZ,yHAAyH;gBAC3H,SAAS,EAAE,iDAAiD;gBAC5D,YAAY,EACV,qKAAqK;gBACvK,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;QAED,iCAAiC;QACjC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACzD,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,yBAAyB;gBAChC,WAAW,EAAE,iBAAiB,KAAK,CAAC,MAAM,yGAAyG;gBACnJ,cAAc,EACZ,4HAA4H;gBAC9H,SAAS,EAAE,kCAAkC;gBAC7C,YAAY,EACV,8JAA8J;gBAChK,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC;gBAAE,OAAO;YAChC,IAAI,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACvD,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,oCAAoC;gBAC3C,WAAW,EACT,gIAAgI;gBAClI,WAAW,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtC,cAAc,EACZ,oHAAoH;gBACtH,SAAS,EAAE,iCAAiC;gBAC5C,YAAY,EACV,+JAA+J;gBACjK,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,8EAA8E;QAC9E,8EAA8E;QAC9E,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACpF,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;QACtC,2EAA2E;QAC3E,+EAA+E;QAC/E,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,iBAAiB,GACrB,gLAAgL,CAAC,IAAI,CACnL,UAAU,CACX,CAAC;QACJ,MAAM,oBAAoB,GACxB,sDAAsD,CAAC,IAAI,CAAC,IAAI,CAAC;YACjE,CAAC,2CAA2C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;QACjG,8FAA8F;QAC9F,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACjE,MAAM,gBAAgB,GAAG,cAAc,IAAI,CAAC,CAAC;QAC7C,IACE,YAAY;YACZ,WAAW;YACX,eAAe;YACf,CAAC,iBAAiB;YAClB,CAAC,oBAAoB;YACrB,CAAC,gBAAgB,EACjB,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBACvD,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,uCAAuC;gBAC9C,WAAW,EACT,yGAAyG;gBAC3G,cAAc,EACZ,2HAA2H;gBAC7H,SAAS,EAAE,2CAA2C;gBACtD,YAAY,EACV,iKAAiK;gBACnK,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../src/evaluators/testing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ux.d.ts","sourceRoot":"","sources":["../../src/evaluators/ux.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,CAsQnE"}
1
+ {"version":3,"file":"ux.d.ts","sourceRoot":"","sources":["../../src/evaluators/ux.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,CAmRnE"}
@@ -1,4 +1,4 @@
1
- import { getLineNumbers, getLangFamily } from "./shared.js";
1
+ import { getLineNumbers, getLangFamily, testCode } from "./shared.js";
2
2
  export function analyzeUx(code, language) {
3
3
  const findings = [];
4
4
  let ruleNum = 1;
@@ -25,8 +25,8 @@ export function analyzeUx(code, language) {
25
25
  }
26
26
  // No loading/disabled state for forms
27
27
  // Require actual HTML form elements or submit handlers, not just keyword mentions
28
- const hasForm = /<form\b|<button\b|onSubmit\s*=|handleSubmit|formik|useForm|<input[^>]*type=["']submit/gi.test(code);
29
- const hasLoadingState = /loading|isLoading|submitting|isSubmitting|disabled|pending|spinner|skeleton/gi.test(code);
28
+ const hasForm = testCode(code, /<form\b|<button\b|onSubmit\s*=|handleSubmit|formik|useForm|<input[^>]*type=["']submit/gi);
29
+ const hasLoadingState = testCode(code, /loading|isLoading|submitting|isSubmitting|disabled|pending|spinner|skeleton/gi);
30
30
  if (hasForm && !hasLoadingState && code.split("\n").length > 15) {
31
31
  findings.push({
32
32
  ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
@@ -74,7 +74,7 @@ export function analyzeUx(code, language) {
74
74
  // No placeholder/label on inputs
75
75
  const _inputNoLabelPattern = /<input[^>]*(?!.*(?:aria-label|placeholder|id=))[^>]*>/gi;
76
76
  const inputLines = getLineNumbers(code, /<input\b/gi);
77
- const hasLabels = /<label|aria-label|placeholder/gi.test(code);
77
+ const hasLabels = testCode(code, /<label|aria-label|placeholder/gi);
78
78
  if (inputLines.length > 0 && !hasLabels) {
79
79
  findings.push({
80
80
  ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
@@ -90,8 +90,8 @@ export function analyzeUx(code, language) {
90
90
  }
91
91
  // Confirmation for destructive actions
92
92
  const _destructivePattern = /delete|remove|destroy|drop|purge|erase/gi;
93
- const hasConfirmation = /confirm|modal|dialog|are you sure|confirmation/gi.test(code);
94
- const hasDestructiveEndpoint = /app\.(delete|post)\s*\([^)]*(?:delete|remove|destroy)/gi.test(code);
93
+ const hasConfirmation = testCode(code, /confirm|modal|dialog|are you sure|confirmation/gi);
94
+ const hasDestructiveEndpoint = testCode(code, /app\.(delete|post)\s*\([^)]*(?:delete|remove|destroy)/gi);
95
95
  if (hasDestructiveEndpoint && !hasConfirmation) {
96
96
  findings.push({
97
97
  ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
@@ -105,9 +105,9 @@ export function analyzeUx(code, language) {
105
105
  });
106
106
  }
107
107
  // No pagination
108
- const hasListEndpoint = /app\.get\s*\([^)]*(?:list|all|users|items|posts|products|orders)/gi.test(code);
109
- const hasPagination = /page|limit|offset|cursor|skip|take|per_?page|pageSize/gi.test(code);
110
- const hasDbFind = /db\.find\s*\(\s*(?:\{\s*\}|\))/gi.test(code);
108
+ const hasListEndpoint = testCode(code, /app\.get\s*\([^)]*(?:list|all|users|items|posts|products|orders)/gi);
109
+ const hasPagination = testCode(code, /page|limit|offset|cursor|skip|take|per_?page|pageSize/gi);
110
+ const hasDbFind = testCode(code, /db\.find\s*\(\s*(?:\{\s*\}|\))/gi);
111
111
  if ((hasListEndpoint || hasDbFind) && !hasPagination) {
112
112
  findings.push({
113
113
  ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
@@ -121,14 +121,14 @@ export function analyzeUx(code, language) {
121
121
  });
122
122
  }
123
123
  // No empty state handling
124
- const hasEmptyCheck = /(?:\.length\s*===?\s*0|isEmpty|no\s*(?:results|data|items)|empty.?state|emptyState|NoData|NoResults)/gi.test(code);
125
- const hasListRendering = /\.map\s*\(|\.forEach\s*\(|v-for|ngFor|\*ngFor|\.render\s*\(/gi.test(code);
124
+ const hasEmptyCheck = testCode(code, /(?:\.length\s*===?\s*0|isEmpty|no\s*(?:results|data|items)|empty.?state|emptyState|NoData|NoResults)/gi);
125
+ const hasListRendering = testCode(code, /\.map\s*\(|\.forEach\s*\(|v-for|ngFor|\*ngFor|\.render\s*\(/gi);
126
126
  // Only flag when the file has UI rendering context — pure backend modules
127
127
  // use .map()/.forEach() for data processing, not list rendering.
128
128
  const hasUIRenderingContext = isReactOrJsx ||
129
- /<[a-z][a-z0-9]*[\s>]/i.test(code) || // HTML/JSX tags
130
- /innerHTML|appendChild|createElement|document\.|window\.|\$\(|v-for|ngFor|template\s*:/i.test(code) ||
131
- /from\s+['"](?:vue|@angular|svelte|lit|preact|solid)/i.test(code);
129
+ testCode(code, /<[a-z][a-z0-9]*[\s>]/i) || // HTML/JSX tags
130
+ testCode(code, /innerHTML|appendChild|createElement|document\.|window\.|\$\(|v-for|ngFor|template\s*:/i) ||
131
+ testCode(code, /from\s+['"](?:vue|@angular|svelte|lit|preact|solid)/i);
132
132
  if (hasListRendering && hasUIRenderingContext && !hasEmptyCheck && code.split("\n").length > 30) {
133
133
  findings.push({
134
134
  ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
@@ -142,7 +142,7 @@ export function analyzeUx(code, language) {
142
142
  });
143
143
  }
144
144
  // Missing success feedback
145
- const hasMutation = /\.post\s*\(|\.put\s*\(|\.delete\s*\(|\.patch\s*\(|fetch\s*\([^)]*(?:POST|PUT|DELETE|PATCH)/gi.test(code);
145
+ const hasMutation = testCode(code, /\.post\s*\(|\.put\s*\(|\.delete\s*\(|\.patch\s*\(|fetch\s*\([^)]*(?:POST|PUT|DELETE|PATCH)/gi);
146
146
  const hasSuccessFeedback = /toast|snackbar|notification|alert\s*\(\s*['"].*(?:success|saved|created|updated|deleted)|showMessage|showSuccess|feedback/gi.test(code);
147
147
  if (hasMutation && !hasSuccessFeedback && code.split("\n").length > 30) {
148
148
  findings.push({
@@ -157,9 +157,9 @@ export function analyzeUx(code, language) {
157
157
  });
158
158
  }
159
159
  // No progress indicator for long operations
160
- const hasAsyncOp = /async\s+function|await\s+fetch|\.then\s*\(|Promise\./gi.test(code);
161
- const hasProgress = /progress|spinner|loading|isLoading|setLoading|skeleton|placeholder/gi.test(code);
162
- const hasFileProcessing = /readFile|writeFile|stream|pipe\s*\(|transform/gi.test(code);
160
+ const hasAsyncOp = testCode(code, /async\s+function|await\s+fetch|\.then\s*\(|Promise\./gi);
161
+ const hasProgress = testCode(code, /progress|spinner|loading|isLoading|setLoading|skeleton|placeholder/gi);
162
+ const hasFileProcessing = testCode(code, /readFile|writeFile|stream|pipe\s*\(|transform/gi);
163
163
  if (hasFileProcessing && hasAsyncOp && !hasProgress) {
164
164
  findings.push({
165
165
  ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
@@ -191,7 +191,7 @@ export function analyzeUx(code, language) {
191
191
  // Form submission without validation
192
192
  const formPattern = /onSubmit|handleSubmit|form\.submit|\.submit\s*\(/gi;
193
193
  const formLines = getLineNumbers(code, formPattern);
194
- const hasValidation = /validate|validator|yup|zod|joi|schema|required|minLength|maxLength|pattern\s*=/gi.test(code);
194
+ const hasValidation = testCode(code, /validate|validator|yup|zod|joi|schema|required|minLength|maxLength|pattern\s*=/gi);
195
195
  if (formLines.length > 0 && !hasValidation) {
196
196
  findings.push({
197
197
  ruleId: `${prefix}-${String(ruleNum).padStart(3, "0")}`,
@@ -1 +1 @@
1
- {"version":3,"file":"ux.js","sourceRoot":"","sources":["../../src/evaluators/ux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ux.js","sourceRoot":"","sources":["../../src/evaluators/ux.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kevinrabun/judges",
3
- "version": "3.18.3",
3
+ "version": "3.19.0",
4
4
  "description": "35 specialized judges that evaluate AI-generated code for security, cost, and quality.",
5
5
  "mcpName": "io.github.KevinRabun/judges",
6
6
  "type": "module",
package/server.json CHANGED
@@ -7,12 +7,12 @@
7
7
  "url": "https://github.com/kevinrabun/judges",
8
8
  "source": "github"
9
9
  },
10
- "version": "3.18.3",
10
+ "version": "3.19.0",
11
11
  "packages": [
12
12
  {
13
13
  "registryType": "npm",
14
14
  "identifier": "@kevinrabun/judges",
15
- "version": "3.18.3",
15
+ "version": "3.19.0",
16
16
  "transport": {
17
17
  "type": "stdio"
18
18
  }