ai-model-verifier 1.4.1 → 2.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 (222) hide show
  1. package/README.md +79 -22
  2. package/dist/engine/context.d.ts +43 -0
  3. package/dist/engine/context.d.ts.map +1 -0
  4. package/dist/engine/context.js +50 -0
  5. package/dist/engine/context.js.map +1 -0
  6. package/dist/engine/evidence.d.ts +40 -0
  7. package/dist/engine/evidence.d.ts.map +1 -0
  8. package/dist/engine/evidence.js +108 -0
  9. package/dist/engine/evidence.js.map +1 -0
  10. package/dist/engine/handshake.d.ts +16 -0
  11. package/dist/engine/handshake.d.ts.map +1 -0
  12. package/dist/{handshake.js → engine/handshake.js} +35 -63
  13. package/dist/engine/handshake.js.map +1 -0
  14. package/dist/engine/probe-runner.d.ts +14 -0
  15. package/dist/engine/probe-runner.d.ts.map +1 -0
  16. package/dist/engine/probe-runner.js +163 -0
  17. package/dist/engine/probe-runner.js.map +1 -0
  18. package/dist/engine/verdict.d.ts +15 -0
  19. package/dist/engine/verdict.d.ts.map +1 -0
  20. package/dist/engine/verdict.js +19 -0
  21. package/dist/engine/verdict.js.map +1 -0
  22. package/dist/highlight.d.ts +2 -2
  23. package/dist/highlight.d.ts.map +1 -1
  24. package/dist/highlight.js +10 -9
  25. package/dist/highlight.js.map +1 -1
  26. package/dist/{patterns.d.ts → identity/patterns.d.ts} +7 -0
  27. package/dist/identity/patterns.d.ts.map +1 -0
  28. package/dist/{patterns.js → identity/patterns.js} +7 -0
  29. package/dist/identity/patterns.js.map +1 -0
  30. package/dist/identity/signals.d.ts +15 -0
  31. package/dist/identity/signals.d.ts.map +1 -0
  32. package/dist/{signals.js → identity/signals.js} +15 -24
  33. package/dist/identity/signals.js.map +1 -0
  34. package/dist/index.d.ts +15 -5
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +12 -5
  37. package/dist/index.js.map +1 -1
  38. package/dist/internal/utils.d.ts +3 -1
  39. package/dist/internal/utils.d.ts.map +1 -1
  40. package/dist/internal/utils.js +12 -6
  41. package/dist/internal/utils.js.map +1 -1
  42. package/dist/models/catalog.d.ts +7 -0
  43. package/dist/models/catalog.d.ts.map +1 -0
  44. package/dist/models/catalog.js +23 -0
  45. package/dist/models/catalog.js.map +1 -0
  46. package/dist/models/facts.d.ts +56 -0
  47. package/dist/models/facts.d.ts.map +1 -0
  48. package/dist/models/facts.js +91 -0
  49. package/dist/models/facts.js.map +1 -0
  50. package/dist/models/index.d.ts +6 -0
  51. package/dist/models/index.d.ts.map +1 -0
  52. package/dist/models/index.js +5 -0
  53. package/dist/models/index.js.map +1 -0
  54. package/dist/{substitution.d.ts → models/substitution.d.ts} +3 -4
  55. package/dist/models/substitution.d.ts.map +1 -0
  56. package/dist/{substitution.js → models/substitution.js} +3 -4
  57. package/dist/models/substitution.js.map +1 -0
  58. package/dist/models/tiers.d.ts +14 -0
  59. package/dist/models/tiers.d.ts.map +1 -0
  60. package/dist/models/tiers.js +35 -0
  61. package/dist/models/tiers.js.map +1 -0
  62. package/dist/probes/prompts.d.ts +23 -0
  63. package/dist/probes/prompts.d.ts.map +1 -0
  64. package/dist/probes/prompts.js +31 -0
  65. package/dist/probes/prompts.js.map +1 -0
  66. package/dist/probes/table.d.ts +37 -0
  67. package/dist/probes/table.d.ts.map +1 -0
  68. package/dist/probes/table.js +57 -0
  69. package/dist/probes/table.js.map +1 -0
  70. package/dist/registry.d.ts +26 -0
  71. package/dist/registry.d.ts.map +1 -0
  72. package/dist/registry.js +23 -0
  73. package/dist/registry.js.map +1 -0
  74. package/dist/rules/index.d.ts +15 -0
  75. package/dist/rules/index.d.ts.map +1 -0
  76. package/dist/rules/index.js +8 -0
  77. package/dist/rules/index.js.map +1 -0
  78. package/dist/rules/probe-ladder.d.ts +33 -0
  79. package/dist/rules/probe-ladder.d.ts.map +1 -0
  80. package/dist/rules/probe-ladder.js +156 -0
  81. package/dist/rules/probe-ladder.js.map +1 -0
  82. package/dist/{detectors → rules}/response-metadata.d.ts +11 -14
  83. package/dist/rules/response-metadata.d.ts.map +1 -0
  84. package/dist/{detectors → rules}/response-metadata.js +32 -15
  85. package/dist/rules/response-metadata.js.map +1 -0
  86. package/dist/rules/table.d.ts +27 -0
  87. package/dist/rules/table.d.ts.map +1 -0
  88. package/dist/rules/table.js +47 -0
  89. package/dist/rules/table.js.map +1 -0
  90. package/dist/{detectors → rules}/thinking-floor.d.ts +14 -29
  91. package/dist/rules/thinking-floor.d.ts.map +1 -0
  92. package/dist/rules/thinking-floor.js +119 -0
  93. package/dist/rules/thinking-floor.js.map +1 -0
  94. package/dist/rules/thinking-signature.d.ts +43 -0
  95. package/dist/rules/thinking-signature.d.ts.map +1 -0
  96. package/dist/rules/thinking-signature.js +72 -0
  97. package/dist/rules/thinking-signature.js.map +1 -0
  98. package/dist/{detectors → rules}/throughput.d.ts +7 -10
  99. package/dist/rules/throughput.d.ts.map +1 -0
  100. package/dist/{detectors → rules}/throughput.js +32 -11
  101. package/dist/rules/throughput.js.map +1 -0
  102. package/dist/{detectors → rules}/token-truth.d.ts +7 -13
  103. package/dist/rules/token-truth.d.ts.map +1 -0
  104. package/dist/rules/token-truth.js +112 -0
  105. package/dist/rules/token-truth.js.map +1 -0
  106. package/dist/{detectors → rules}/tokenizer-fingerprint.d.ts +7 -19
  107. package/dist/rules/tokenizer-fingerprint.d.ts.map +1 -0
  108. package/dist/{detectors → rules}/tokenizer-fingerprint.js +40 -58
  109. package/dist/rules/tokenizer-fingerprint.js.map +1 -0
  110. package/dist/rules/types.d.ts +57 -0
  111. package/dist/rules/types.d.ts.map +1 -0
  112. package/dist/rules/types.js +2 -0
  113. package/dist/rules/types.js.map +1 -0
  114. package/dist/transport.d.ts +10 -2
  115. package/dist/transport.d.ts.map +1 -1
  116. package/dist/transport.js +40 -32
  117. package/dist/transport.js.map +1 -1
  118. package/dist/types.d.ts +70 -31
  119. package/dist/types.d.ts.map +1 -1
  120. package/dist/vendors/anthropic.d.ts +44 -0
  121. package/dist/vendors/anthropic.d.ts.map +1 -0
  122. package/dist/vendors/anthropic.js +114 -0
  123. package/dist/vendors/anthropic.js.map +1 -0
  124. package/dist/vendors/base-url.d.ts +3 -0
  125. package/dist/vendors/base-url.d.ts.map +1 -0
  126. package/dist/vendors/base-url.js +6 -0
  127. package/dist/vendors/base-url.js.map +1 -0
  128. package/dist/vendors/gemini.d.ts +44 -0
  129. package/dist/vendors/gemini.d.ts.map +1 -0
  130. package/dist/vendors/gemini.js +77 -0
  131. package/dist/vendors/gemini.js.map +1 -0
  132. package/dist/vendors/index.d.ts +9 -0
  133. package/dist/vendors/index.d.ts.map +1 -0
  134. package/dist/vendors/index.js +7 -0
  135. package/dist/vendors/index.js.map +1 -0
  136. package/dist/vendors/openai.d.ts +46 -0
  137. package/dist/vendors/openai.d.ts.map +1 -0
  138. package/dist/vendors/openai.js +77 -0
  139. package/dist/vendors/openai.js.map +1 -0
  140. package/dist/vendors/table.d.ts +113 -0
  141. package/dist/vendors/table.d.ts.map +1 -0
  142. package/dist/vendors/table.js +14 -0
  143. package/dist/vendors/table.js.map +1 -0
  144. package/dist/vendors/types.d.ts +93 -0
  145. package/dist/vendors/types.d.ts.map +1 -0
  146. package/dist/vendors/types.js +2 -0
  147. package/dist/vendors/types.js.map +1 -0
  148. package/dist/verify.d.ts +30 -0
  149. package/dist/verify.d.ts.map +1 -0
  150. package/dist/verify.js +185 -0
  151. package/dist/verify.js.map +1 -0
  152. package/package.json +25 -10
  153. package/dist/detectors/response-metadata.d.ts.map +0 -1
  154. package/dist/detectors/response-metadata.js.map +0 -1
  155. package/dist/detectors/thinking-floor.d.ts.map +0 -1
  156. package/dist/detectors/thinking-floor.js +0 -135
  157. package/dist/detectors/thinking-floor.js.map +0 -1
  158. package/dist/detectors/thinking-signature.d.ts +0 -70
  159. package/dist/detectors/thinking-signature.d.ts.map +0 -1
  160. package/dist/detectors/thinking-signature.js +0 -177
  161. package/dist/detectors/thinking-signature.js.map +0 -1
  162. package/dist/detectors/throughput.d.ts.map +0 -1
  163. package/dist/detectors/throughput.js.map +0 -1
  164. package/dist/detectors/token-truth.d.ts.map +0 -1
  165. package/dist/detectors/token-truth.js +0 -142
  166. package/dist/detectors/token-truth.js.map +0 -1
  167. package/dist/detectors/tokenizer-fingerprint.d.ts.map +0 -1
  168. package/dist/detectors/tokenizer-fingerprint.js.map +0 -1
  169. package/dist/handshake.d.ts +0 -23
  170. package/dist/handshake.d.ts.map +0 -1
  171. package/dist/handshake.js.map +0 -1
  172. package/dist/internal/fixed-text.d.ts +0 -13
  173. package/dist/internal/fixed-text.d.ts.map +0 -1
  174. package/dist/internal/fixed-text.js +0 -13
  175. package/dist/internal/fixed-text.js.map +0 -1
  176. package/dist/models.d.ts +0 -5
  177. package/dist/models.d.ts.map +0 -1
  178. package/dist/models.js +0 -54
  179. package/dist/models.js.map +0 -1
  180. package/dist/nonce.d.ts +0 -4
  181. package/dist/nonce.d.ts.map +0 -1
  182. package/dist/nonce.js +0 -12
  183. package/dist/nonce.js.map +0 -1
  184. package/dist/patterns.d.ts.map +0 -1
  185. package/dist/patterns.js.map +0 -1
  186. package/dist/probes.d.ts +0 -10
  187. package/dist/probes.d.ts.map +0 -1
  188. package/dist/probes.js +0 -54
  189. package/dist/probes.js.map +0 -1
  190. package/dist/providers/anthropic.d.ts +0 -3
  191. package/dist/providers/anthropic.d.ts.map +0 -1
  192. package/dist/providers/anthropic.js +0 -67
  193. package/dist/providers/anthropic.js.map +0 -1
  194. package/dist/providers/config.d.ts +0 -34
  195. package/dist/providers/config.d.ts.map +0 -1
  196. package/dist/providers/config.js +0 -14
  197. package/dist/providers/config.js.map +0 -1
  198. package/dist/providers/gemini.d.ts +0 -3
  199. package/dist/providers/gemini.d.ts.map +0 -1
  200. package/dist/providers/gemini.js +0 -58
  201. package/dist/providers/gemini.js.map +0 -1
  202. package/dist/providers/openai.d.ts +0 -3
  203. package/dist/providers/openai.d.ts.map +0 -1
  204. package/dist/providers/openai.js +0 -56
  205. package/dist/providers/openai.js.map +0 -1
  206. package/dist/rules.d.ts +0 -6
  207. package/dist/rules.d.ts.map +0 -1
  208. package/dist/rules.js +0 -28
  209. package/dist/rules.js.map +0 -1
  210. package/dist/runner.d.ts +0 -39
  211. package/dist/runner.d.ts.map +0 -1
  212. package/dist/runner.js +0 -352
  213. package/dist/runner.js.map +0 -1
  214. package/dist/signals.d.ts +0 -11
  215. package/dist/signals.d.ts.map +0 -1
  216. package/dist/signals.js.map +0 -1
  217. package/dist/substitution.d.ts.map +0 -1
  218. package/dist/substitution.js.map +0 -1
  219. package/dist/verdict.d.ts +0 -26
  220. package/dist/verdict.d.ts.map +0 -1
  221. package/dist/verdict.js +0 -84
  222. package/dist/verdict.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"token-truth.js","sourceRoot":"","sources":["../../src/detectors/token-truth.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokenizer-fingerprint.d.ts","sourceRoot":"","sources":["../../src/detectors/tokenizer-fingerprint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAOhD,iEAAiE;AACjE,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE/C,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;AAEzE,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,EAAE,cAAmB,CAAC;AAE1D,MAAM,MAAM,yBAAyB,GAAG,UAAU,GAAG,YAAY,CAAC;AAElE,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,yBAAyB,CAAC;IACjC,6DAA6D;IAC7D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,yEAAyE;IACzE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,4DAA4D;IAC5D,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAkBF,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,EACb,UAAU,GAAE,cAAwC,GACnD,MAAM,GAAG,IAAI,CAIf;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,MAAM,GAAG,IAAI,CAMf;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAOT;AAED,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IACtD,SAAS,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAoEtC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokenizer-fingerprint.js","sourceRoot":"","sources":["../../src/detectors/tokenizer-fingerprint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,YAAY,GACb,MAAM,wBAAwB,CAAC;AAOhC,wEAAwE;AACxE,MAAM,CAAC,MAAM,uBAAuB,GAAmB,EAAE,CAAC;AAiB1D,MAAM,KAAK,GAAG,CAAC,CAAU,EAAiB,EAAE,CAC1C,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAEpE,SAAS,eAAe,CAAC,IAAa,EAAE,IAAe;IACrD,MAAM,CAAC,GAAI,IAAmD,EAAE,KAAK,CAAC;IACtE,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC7C,OAAO,IAAI,KAAK,WAAW;QACzB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC1B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,eAAe,CAAC,IAAa;IACpC,MAAM,CAAC,GAAI,IAAmC,EAAE,KAAK,CAAC;IACtD,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,UAAU,GAAmB,uBAAuB;IAEpD,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;QACrD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,cAAsB,EACtB,MAAkC,EAClC,KAAwB;IAExB,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5E,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;AACvE,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAChC,KAAgC,EAChC,OAAmC;IAEnC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,CAAC,KAAK,KAAK,UAAU;QAC5B,OAAO,CAAC,KAAK,KAAK,IAAI;QACtB,OAAO,CAAC,KAAK,KAAK,KAAK,CACxB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAQjD;IACC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9C,MAAM,GAAG,GACP,IAAI,CAAC,IAAI,KAAK,WAAW;QACvB,CAAC,CAAC,GAAG,IAAI,cAAc;QACvB,CAAC,CAAC,GAAG,IAAI,sBAAsB,CAAC;IACpC,MAAM,OAAO,GACX,IAAI,CAAC,IAAI,KAAK,WAAW;QACvB,CAAC,CAAC;YACE,cAAc,EAAE,kBAAkB;YAClC,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,mBAAmB,EAAE,YAAY;SAClC;QACH,CAAC,CAAC;YACE,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;SACvC,CAAC;IACR,MAAM,GAAG,GAAG,CAAC,MAAc,EAAE,EAAE,CAC7B,IAAI,CAAC,SAAS,CAAC;QACb,IAAI,EAAE,QAAQ;QACd,GAAG;QACH,OAAO;QACP,OAAO,EAAE;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,sBAAsB;YAClC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;SAC9C;QACD,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;IAEL,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5C,GAAG,CAAC,YAAY,CAAC;QACjB,GAAG,CAAC,WAAW,CAAC;KACjB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG;QACZ,KAAK,EAAE,IAAI;QACX,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;KAClB,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;QACjC,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG;YACtC,OAAO;gBACL,KAAK,EAAE,YAAY;gBACnB,GAAG,KAAK;gBACR,MAAM,EAAE,gBAAgB,CAAC,CAAC,MAAM,IAAI,SAAS,EAAE;aAChD,CAAC;IAEN,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;QACjC,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,GAAG,KAAK;YACR,WAAW;YACX,MAAM,EAAE,mBAAmB;SAC5B,CAAC;IACJ,MAAM,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;IAC3B,OAAO;QACL,KAAK,EAAE,UAAU;QACjB,KAAK;QACL,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,IAAI;QACrB,WAAW;QACX,WAAW,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC;KAClD,CAAC;AACJ,CAAC"}
@@ -1,23 +0,0 @@
1
- import { type TransportFn } from "./transport";
2
- import type { TransportMode, VerifyProvider } from "./types";
3
- export type HandshakeOutcome = {
4
- ok: true;
5
- resolvedProvider: VerifyProvider;
6
- mode: TransportMode;
7
- status: number;
8
- } | {
9
- ok: false;
10
- reason: "cors-needs-backend" | "unreachable" | "invalid-key" | "model-rejected" | "endpoint-busy" | "no-format";
11
- status: number | null;
12
- corsBlocked: boolean;
13
- };
14
- export declare function runHandshake(opts: {
15
- provider: VerifyProvider;
16
- baseUrl: string;
17
- apiKey: string;
18
- model: string;
19
- mode: TransportMode;
20
- timeoutMs: number;
21
- transport?: TransportFn;
22
- }): Promise<HandshakeOutcome>;
23
- //# sourceMappingURL=handshake.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handshake.d.ts","sourceRoot":"","sources":["../src/handshake.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE7D,MAAM,MAAM,gBAAgB,GACxB;IACE,EAAE,EAAE,IAAI,CAAC;IACT,gBAAgB,EAAE,cAAc,CAAC;IACjC,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB,GACD;IACE,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EACF,oBAAoB,GACpB,aAAa,GACb,aAAa,GACb,gBAAgB,GAChB,eAAe,GACf,WAAW,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAuFN,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAuE5B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"handshake.js","sourceRoot":"","sources":["../src/handshake.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- /**
2
- * The fixed prompt pair every token-count detector measures against. The short
3
- * prompt anchors the count; the long one appends a known run of text, so the
4
- * difference is the endpoint's tokenizer at work on that run alone. Anything a
5
- * relay injects (a system prompt, a wrapper) is present in both and cancels.
6
- *
7
- * Do not change the text: every recorded delta was measured on exactly this
8
- * pair, and a different run of text yields a different table of signatures.
9
- */
10
- export declare const SHORT_PROMPT = "Reply with exactly: ok";
11
- export declare const LONG_PROMPT: string;
12
- export declare const COUNT_PROBE_MAX_TOKENS = 16;
13
- //# sourceMappingURL=fixed-text.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fixed-text.d.ts","sourceRoot":"","sources":["../../src/internal/fixed-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,2BAA2B,CAAC;AACrD,eAAO,MAAM,WAAW,QAA6D,CAAC;AACtF,eAAO,MAAM,sBAAsB,KAAK,CAAC"}
@@ -1,13 +0,0 @@
1
- /**
2
- * The fixed prompt pair every token-count detector measures against. The short
3
- * prompt anchors the count; the long one appends a known run of text, so the
4
- * difference is the endpoint's tokenizer at work on that run alone. Anything a
5
- * relay injects (a system prompt, a wrapper) is present in both and cancels.
6
- *
7
- * Do not change the text: every recorded delta was measured on exactly this
8
- * pair, and a different run of text yields a different table of signatures.
9
- */
10
- export const SHORT_PROMPT = "Reply with exactly: ok";
11
- export const LONG_PROMPT = `${SHORT_PROMPT}\n\nReference text:${" apple".repeat(80)}`;
12
- export const COUNT_PROBE_MAX_TOKENS = 16;
13
- //# sourceMappingURL=fixed-text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fixed-text.js","sourceRoot":"","sources":["../../src/internal/fixed-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,wBAAwB,CAAC;AACrD,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,YAAY,sBAAsB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;AACtF,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC"}
package/dist/models.d.ts DELETED
@@ -1,5 +0,0 @@
1
- import type { VerifyProvider } from "./types";
2
- export declare const CURATED_MODELS: Record<VerifyProvider, readonly string[]>;
3
- export declare function vendorForRow(provider: VerifyProvider, model?: string): string;
4
- export declare function providerForModel(model: string): VerifyProvider | null;
5
- //# sourceMappingURL=models.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAU9C,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAUpE,CAAC;AAgBF,wBAAgB,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAG7E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAerE"}
package/dist/models.js DELETED
@@ -1,54 +0,0 @@
1
- import { isOneOf } from "./internal/utils";
2
- const VERIFY_PROVIDERS = [
3
- "anthropic",
4
- "openai",
5
- "gemini",
6
- ];
7
- const isVerifyProvider = isOneOf(VERIFY_PROVIDERS);
8
- export const CURATED_MODELS = {
9
- anthropic: [
10
- "claude-opus-4-6",
11
- "claude-opus-4-7",
12
- "claude-opus-4-8",
13
- "claude-sonnet-4-6",
14
- "claude-haiku-4-5",
15
- ],
16
- openai: ["gpt-5.5", "gpt-5.4", "gpt-5.1", "o3", "o4-mini"],
17
- gemini: ["gemini-3.1-pro-preview", "gemini-3.1-flash", "gemini-2.5-pro"],
18
- };
19
- const MODEL_TO_PROVIDER = {};
20
- for (const provider of Object.keys(CURATED_MODELS)) {
21
- if (!isVerifyProvider(provider))
22
- continue;
23
- for (const model of CURATED_MODELS[provider]) {
24
- MODEL_TO_PROVIDER[model] = provider;
25
- }
26
- }
27
- const PROVIDER_VENDOR = {
28
- anthropic: "anthropic",
29
- openai: "openai",
30
- gemini: "google",
31
- };
32
- export function vendorForRow(provider, model) {
33
- const inferred = model ? providerForModel(model) : null;
34
- return PROVIDER_VENDOR[inferred ?? provider];
35
- }
36
- export function providerForModel(model) {
37
- const id = model.trim().toLowerCase();
38
- if (!id)
39
- return null;
40
- if (MODEL_TO_PROVIDER[id])
41
- return MODEL_TO_PROVIDER[id];
42
- if (id.includes("claude"))
43
- return "anthropic";
44
- if (id.includes("gemini"))
45
- return "gemini";
46
- if (id.startsWith("gpt-") ||
47
- id.startsWith("o1") ||
48
- id.startsWith("o3") ||
49
- id.startsWith("o4") ||
50
- id.startsWith("chatgpt"))
51
- return "openai";
52
- return null;
53
- }
54
- //# sourceMappingURL=models.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,MAAM,gBAAgB,GAA8B;IAClD,WAAW;IACX,QAAQ;IACR,QAAQ;CACT,CAAC;AAEF,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAEnD,MAAM,CAAC,MAAM,cAAc,GAA8C;IACvE,SAAS,EAAE;QACT,iBAAiB;QACjB,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,kBAAkB;KACnB;IACD,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC;IAC1D,MAAM,EAAE,CAAC,wBAAwB,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;CACzE,CAAC;AAEF,MAAM,iBAAiB,GAAmC,EAAE,CAAC;AAC7D,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;IACnD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;QAAE,SAAS;IAC1C,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7C,iBAAiB,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;IACtC,CAAC;AACH,CAAC;AAED,MAAM,eAAe,GAAmC;IACtD,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,QAAwB,EAAE,KAAc;IACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,OAAO,eAAe,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,IAAI,iBAAiB,CAAC,EAAE,CAAC;QAAE,OAAO,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACxD,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,WAAW,CAAC;IAC9C,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC3C,IACE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QACrB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAExB,OAAO,QAAQ,CAAC;IAClB,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/nonce.d.ts DELETED
@@ -1,4 +0,0 @@
1
- export declare function makeNonce(): string;
2
- export declare function nonceTag(nonce: string): string;
3
- export declare function echoesNonce(text: string, nonce: string): boolean;
4
- //# sourceMappingURL=nonce.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nonce.d.ts","sourceRoot":"","sources":["../src/nonce.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,IAAI,MAAM,CAIlC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhE"}
package/dist/nonce.js DELETED
@@ -1,12 +0,0 @@
1
- export function makeNonce() {
2
- const bytes = new Uint8Array(4);
3
- crypto.getRandomValues(bytes);
4
- return Array.from(bytes, (b) => b.toString(16).padStart(2, "0")).join("");
5
- }
6
- export function nonceTag(nonce) {
7
- return `Begin your reply with the tag [${nonce}] then a space, then your answer.`;
8
- }
9
- export function echoesNonce(text, nonce) {
10
- return text.includes(nonce.toLowerCase());
11
- }
12
- //# sourceMappingURL=nonce.js.map
package/dist/nonce.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"nonce.js","sourceRoot":"","sources":["../src/nonce.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS;IACvB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,kCAAkC,KAAK,mCAAmC,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,KAAa;IACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;AAC5C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../src/patterns.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,4BAA4B,UA2BxC,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAAiC,CAAC;AAEhE,eAAO,MAAM,kBAAkB,UAM9B,CAAC;AAEF,eAAO,MAAM,eAAe;aAC1B,SAAS,YAAG,WAAW,EAAE,QAAQ;aACjC,MAAM,YAAG,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;aAC5E,MAAM,YAAG,QAAQ,EAAE,UAAU,EAAE,QAAQ;aACvC,KAAK,YACH,UAAU,EACV,MAAM,EACN,UAAU,EACV,MAAM,EACN,SAAS,EACT,OAAO,EACP,MAAM,EACN,MAAM,EACN,KAAK,EACL,OAAO;CAED,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,eAAe,CAAC;AAErD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,CAK/D;AAGD,eAAO,MAAM,mBAAmB,UAA6E,CAAC;AAE9G,eAAO,MAAM,wBAAwB,UAA0B,CAAC;AAEhE,eAAO,MAAM,QAAQ,QAAuB,CAAC;AAE7C,eAAO,MAAM,kBAAkB,IAAI,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"patterns.js","sourceRoot":"","sources":["../src/patterns.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,yBAAyB;IACzB,uCAAuC;IACvC,mCAAmC;IACnC,8BAA8B;IAC9B,mCAAmC;IACnC,uCAAuC;IACvC,gCAAgC;IAChC,wBAAwB;IACxB,sCAAsC;IACtC,kCAAkC;IAClC,oCAAoC;IACpC,qCAAqC;IACrC,4CAA4C;IAC5C,sCAAsC;IACtC,6CAA6C;IAC7C,+BAA+B;IAC/B,wCAAwC;IACxC,2BAA2B;IAC3B,kBAAkB;IAClB,wBAAwB;IACxB,yBAAyB;IACzB,gCAAgC;IAChC,qBAAqB;IACrB,WAAW;IACX,qCAAqC;IACrC,iDAAiD;CAClD,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,SAAS;IACT,WAAW;IACX,SAAS;IACT,SAAS;IACT,SAAS;CACV,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;IAClC,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;IAC7E,MAAM,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC;IACxC,KAAK,EAAE;QACL,UAAU;QACV,MAAM;QACN,UAAU;QACV,MAAM;QACN,SAAS;QACT,OAAO;QACP,MAAM;QACN,MAAM;QACN,KAAK;QACL,OAAO;KACR;CACO,CAAC;AAIX,MAAM,UAAU,qBAAqB,CAAC,IAAe;IACnD,MAAM,IAAI,GAAgB,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAC3D,CAAC,CAAC,EAAkB,EAAE,CAAC,CAAC,IAAI,eAAe,CAC5C,CAAC;IACF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,kBAAkB;AAClB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAC,KAAK,EAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,SAAS,CAAC,CAAC;AAE9G,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,QAAQ,GAAG,oBAAoB,CAAC;AAE7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC"}
package/dist/probes.d.ts DELETED
@@ -1,10 +0,0 @@
1
- import type { ProviderConfig } from "./providers/config";
2
- import type { ProbeLabel } from "./types";
3
- export type ProbeDef = {
4
- label: ProbeLabel;
5
- maxTokens: number;
6
- buildPrompt: (nonce: string) => string;
7
- evaluate: (text: string, cfg: ProviderConfig) => boolean;
8
- };
9
- export declare const PROBES: readonly ProbeDef[];
10
- //# sourceMappingURL=probes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"probes.d.ts","sourceRoot":"","sources":["../src/probes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC;CAC1D,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,SAAS,QAAQ,EAkErC,CAAC"}
package/dist/probes.js DELETED
@@ -1,54 +0,0 @@
1
- import { cjkLeak, hasCodingToolRefusal, hasForeignIdentity, hasScamPage, includesAny, } from "./signals";
2
- import { CLOUD_HOST_PATTERNS, FAKE_RESPONSE_SIGNATURES } from "./patterns";
3
- import { nonceTag } from "./nonce";
4
- export const PROBES = [
5
- {
6
- label: "emotional",
7
- maxTokens: 200,
8
- buildPrompt: (n) => `Tell me a 2-sentence sad story about a lost kitten. ${nonceTag(n)}`,
9
- evaluate: (text) => !hasCodingToolRefusal(text) && !cjkLeak(text) && text.length >= 40,
10
- },
11
- {
12
- label: "creative",
13
- maxTokens: 120,
14
- buildPrompt: (n) => `Write a haiku about the ocean at sunrise. ${nonceTag(n)}`,
15
- evaluate: (text) => !hasCodingToolRefusal(text) && !cjkLeak(text) && text.length >= 25,
16
- },
17
- {
18
- label: "identity",
19
- maxTokens: 60,
20
- buildPrompt: (n) => "Which AI lab developed and trained the model you are running on? " +
21
- "Not the company hosting you, the lab that trained the model. " +
22
- `One word answer. ${nonceTag(n)}`,
23
- evaluate: (text, cfg) => {
24
- if (hasCodingToolRefusal(text) || hasScamPage(text))
25
- return false;
26
- if (hasForeignIdentity(text, cfg.foreignIdentityPatterns, cfg.cloudModelNamePatterns, "identity"))
27
- return false;
28
- if (includesAny(text, cfg.homeIdentityPatterns))
29
- return true;
30
- if (cfg.acceptsCloudHostIdentity &&
31
- includesAny(text, CLOUD_HOST_PATTERNS))
32
- return true;
33
- return false;
34
- },
35
- },
36
- {
37
- label: "model-name",
38
- maxTokens: 80,
39
- buildPrompt: (n) => `Which model are you? Reply with only your model name. ${nonceTag(n)}`,
40
- evaluate: (text, cfg) => {
41
- if (hasCodingToolRefusal(text) || hasScamPage(text))
42
- return false;
43
- if (hasForeignIdentity(text, cfg.foreignIdentityPatterns, cfg.cloudModelNamePatterns, "model-name"))
44
- return false;
45
- if (!includesAny(text, cfg.homeModelNamePatterns))
46
- return false;
47
- const stripped = text.replace(/^\s*\[[a-z0-9]{4,8}\]\s*/i, "").trim();
48
- if (FAKE_RESPONSE_SIGNATURES.includes(stripped))
49
- return false;
50
- return true;
51
- },
52
- },
53
- ];
54
- //# sourceMappingURL=probes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"probes.js","sourceRoot":"","sources":["../src/probes.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,WAAW,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAUnC,MAAM,CAAC,MAAM,MAAM,GAAwB;IACzC;QACE,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,GAAG;QACd,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CACjB,uDAAuD,QAAQ,CAAC,CAAC,CAAC,EAAE;QACtE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CACjB,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE;KACrE;IACD;QACE,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,GAAG;QACd,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CACjB,6CAA6C,QAAQ,CAAC,CAAC,CAAC,EAAE;QAC5D,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CACjB,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE;KACrE;IACD;QACE,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CACjB,mEAAmE;YACnE,+DAA+D;YAC/D,oBAAoB,QAAQ,CAAC,CAAC,CAAC,EAAE;QACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACtB,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;YAClE,IACE,kBAAkB,CAChB,IAAI,EACJ,GAAG,CAAC,uBAAuB,EAC3B,GAAG,CAAC,sBAAsB,EAC1B,UAAU,CACX;gBAED,OAAO,KAAK,CAAC;YACf,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,oBAAoB,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7D,IACE,GAAG,CAAC,wBAAwB;gBAC5B,WAAW,CAAC,IAAI,EAAE,mBAAmB,CAAC;gBAEtC,OAAO,IAAI,CAAC;YACd,OAAO,KAAK,CAAC;QACf,CAAC;KACF;IACD;QACE,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CACjB,yDAAyD,QAAQ,CAAC,CAAC,CAAC,EAAE;QACxE,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACtB,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;YAClE,IACE,kBAAkB,CAChB,IAAI,EACJ,GAAG,CAAC,uBAAuB,EAC3B,GAAG,CAAC,sBAAsB,EAC1B,YAAY,CACb;gBAED,OAAO,KAAK,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,qBAAqB,CAAC;gBAAE,OAAO,KAAK,CAAC;YAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACtE,IAAI,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;KACF;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type ProviderConfig } from "./config";
2
- export declare const anthropicConfig: ProviderConfig;
3
- //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AA6DlB,eAAO,MAAM,eAAe,EAAE,cAa7B,CAAC"}
@@ -1,67 +0,0 @@
1
- import { rec } from "../internal/utils";
2
- import { foreignPatternsExcept } from "../patterns";
3
- import { normalizeProbeBaseUrl, } from "./config";
4
- // Anthropic refuses a browser preflight unless the caller opts in with this
5
- // header, and every relay that reimplements their API inherits the rule. The
6
- // header is meaningless to endpoints that do not check it, so send it on every
7
- // direct Anthropic-format probe rather than guessing which hosts enforce it.
8
- const BROWSER_ACCESS_HEADER = "anthropic-dangerous-direct-browser-access";
9
- function buildRequest(args) {
10
- const headers = {
11
- "content-type": "application/json",
12
- "x-api-key": args.apiKey,
13
- "anthropic-version": "2023-06-01",
14
- };
15
- if (args.direct)
16
- headers[BROWSER_ACCESS_HEADER] = "true";
17
- return {
18
- url: `${normalizeProbeBaseUrl(args.baseUrl)}/v1/messages`,
19
- headers,
20
- body: {
21
- model: args.model,
22
- max_tokens: args.maxTokens,
23
- messages: [{ role: "user", content: args.prompt }],
24
- },
25
- };
26
- }
27
- function extractText(data) {
28
- const d = rec(data) ?? {};
29
- if (d.type === "error")
30
- return null;
31
- return (d.content ?? [])
32
- .filter((b) => b.type === "text")
33
- .map((b) => b.text ?? "")
34
- .join(" ")
35
- .toLowerCase();
36
- }
37
- function extractMeta(data) {
38
- const d = rec(data) ?? {};
39
- const u = d.usage;
40
- const prompt = u?.input_tokens ?? null;
41
- const completion = u?.output_tokens ?? null;
42
- return {
43
- detectedModel: d.model ?? null,
44
- usage: u
45
- ? {
46
- prompt,
47
- completion,
48
- total: prompt !== null && completion !== null ? prompt + completion : null,
49
- }
50
- : null,
51
- };
52
- }
53
- export const anthropicConfig = {
54
- provider: "anthropic",
55
- buildRequest,
56
- extractText,
57
- extractMeta,
58
- homeIdentityPatterns: ["anthropic"],
59
- foreignIdentityPatterns: foreignPatternsExcept("anthropic"),
60
- homeModelNamePatterns: ["claude", "anthropic"],
61
- cloudModelNamePatterns: ["amazon q", "q developer", "kiro"],
62
- // `fable` is load-bearing: sync catches fable lanes served as sonnet, and a
63
- // tier list missing it makes that substitution undetectable here.
64
- tiers: ["opus", "sonnet", "haiku", "fable"],
65
- acceptsCloudHostIdentity: true,
66
- };
67
- //# sourceMappingURL=anthropic.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,qBAAqB,GAItB,MAAM,UAAU,CAAC;AASlB,4EAA4E;AAC5E,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,qBAAqB,GAAG,2CAA2C,CAAC;AAE1E,SAAS,YAAY,CAAC,IAAsB;IAC1C,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;QAClC,WAAW,EAAE,IAAI,CAAC,MAAM;QACxB,mBAAmB,EAAE,YAAY;KAClC,CAAC;IACF,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC;IACzD,OAAO;QACL,GAAG,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc;QACzD,OAAO;QACP,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;SACnD;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,CAAC,GAAsB,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;SAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;SACxB,IAAI,CAAC,GAAG,CAAC;SACT,WAAW,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,CAAC,GAAsB,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,MAAM,MAAM,GAAG,CAAC,EAAE,YAAY,IAAI,IAAI,CAAC;IACvC,MAAM,UAAU,GAAG,CAAC,EAAE,aAAa,IAAI,IAAI,CAAC;IAC5C,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;QAC9B,KAAK,EAAE,CAAC;YACN,CAAC,CAAC;gBACE,MAAM;gBACN,UAAU;gBACV,KAAK,EACH,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI;aACtE;YACH,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAmB;IAC7C,QAAQ,EAAE,WAAW;IACrB,YAAY;IACZ,WAAW;IACX,WAAW;IACX,oBAAoB,EAAE,CAAC,WAAW,CAAC;IACnC,uBAAuB,EAAE,qBAAqB,CAAC,WAAW,CAAC;IAC3D,qBAAqB,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC9C,sBAAsB,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IAC3D,4EAA4E;IAC5E,kEAAkE;IAClE,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;IAC3C,wBAAwB,EAAE,IAAI;CAC/B,CAAC"}
@@ -1,34 +0,0 @@
1
- import type { ProbeUsage, VerifyProvider } from "../types";
2
- export type ProbeMeta = {
3
- detectedModel: string | null;
4
- usage: ProbeUsage | null;
5
- };
6
- export type ProbeRequestArgs = {
7
- baseUrl: string;
8
- apiKey: string;
9
- model: string;
10
- prompt: string;
11
- maxTokens: number;
12
- direct: boolean;
13
- };
14
- export type BuiltRequest = {
15
- url: string;
16
- headers: Record<string, string>;
17
- body: unknown;
18
- };
19
- /** Providers append their own version segment, so a pasted one would double it. */
20
- export declare function normalizeProbeBaseUrl(baseUrl: string): string;
21
- export type ProviderConfig = {
22
- provider: VerifyProvider;
23
- buildRequest: (args: ProbeRequestArgs) => BuiltRequest;
24
- extractText: (data: unknown) => string | null;
25
- extractMeta: (data: unknown) => ProbeMeta;
26
- homeIdentityPatterns: string[];
27
- foreignIdentityPatterns: string[];
28
- homeModelNamePatterns: string[];
29
- cloudModelNamePatterns: string[];
30
- tiers: readonly string[] | null;
31
- acceptsCloudHostIdentity: boolean;
32
- };
33
- export declare const PROVIDER_CONFIGS: Record<VerifyProvider, ProviderConfig>;
34
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/providers/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAK3D,MAAM,MAAM,SAAS,GAAG;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAIF,mFAAmF;AACnF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,YAAY,CAAC;IACvD,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,GAAG,IAAI,CAAC;IAC9C,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC;IAC1C,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAChC,wBAAwB,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,cAAc,EAAE,cAAc,CAInE,CAAC"}
@@ -1,14 +0,0 @@
1
- import { anthropicConfig } from "./anthropic";
2
- import { geminiConfig } from "./gemini";
3
- import { openaiConfig } from "./openai";
4
- const VERSION_SUFFIX = /\/(?:v\d+(?:alpha|beta)?)\/*$/i;
5
- /** Providers append their own version segment, so a pasted one would double it. */
6
- export function normalizeProbeBaseUrl(baseUrl) {
7
- return baseUrl.trim().replace(/\/+$/, "").replace(VERSION_SUFFIX, "");
8
- }
9
- export const PROVIDER_CONFIGS = {
10
- anthropic: anthropicConfig,
11
- openai: openaiConfig,
12
- gemini: geminiConfig,
13
- };
14
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/providers/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAsBxC,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAExD,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AACxE,CAAC;AAeD,MAAM,CAAC,MAAM,gBAAgB,GAA2C;IACtE,SAAS,EAAE,eAAe;IAC1B,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;CACrB,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type ProviderConfig } from "./config";
2
- export declare const geminiConfig: ProviderConfig;
3
- //# sourceMappingURL=gemini.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAyDlB,eAAO,MAAM,YAAY,EAAE,cAW1B,CAAC"}
@@ -1,58 +0,0 @@
1
- import { rec } from "../internal/utils";
2
- import { foreignPatternsExcept } from "../patterns";
3
- import { normalizeProbeBaseUrl, } from "./config";
4
- const GEMINI_MIN_OUTPUT_TOKENS = 1024;
5
- function buildRequest(args) {
6
- return {
7
- url: `${normalizeProbeBaseUrl(args.baseUrl)}/v1beta/models/${args.model}:generateContent`,
8
- headers: {
9
- "content-type": "application/json",
10
- "x-goog-api-key": args.apiKey,
11
- },
12
- body: {
13
- contents: [{ role: "user", parts: [{ text: args.prompt }] }],
14
- generationConfig: {
15
- maxOutputTokens: Math.max(args.maxTokens, GEMINI_MIN_OUTPUT_TOKENS),
16
- },
17
- },
18
- };
19
- }
20
- function extractText(data) {
21
- const d = rec(data) ?? {};
22
- if (d.error)
23
- return null;
24
- const parts = d.candidates?.[0]?.content?.parts;
25
- if (!parts)
26
- return null;
27
- return parts
28
- .map((p) => p.text ?? "")
29
- .join(" ")
30
- .toLowerCase();
31
- }
32
- function extractMeta(data) {
33
- const d = rec(data) ?? {};
34
- const u = d.usageMetadata;
35
- return {
36
- detectedModel: d.modelVersion ?? null,
37
- usage: u
38
- ? {
39
- prompt: u.promptTokenCount ?? null,
40
- completion: u.candidatesTokenCount ?? null,
41
- total: u.totalTokenCount ?? null,
42
- }
43
- : null,
44
- };
45
- }
46
- export const geminiConfig = {
47
- provider: "gemini",
48
- buildRequest,
49
- extractText,
50
- extractMeta,
51
- homeIdentityPatterns: ["google", "deepmind"],
52
- foreignIdentityPatterns: foreignPatternsExcept("google"),
53
- homeModelNamePatterns: ["gemini", "google"],
54
- cloudModelNamePatterns: [],
55
- tiers: null,
56
- acceptsCloudHostIdentity: false,
57
- };
58
- //# sourceMappingURL=gemini.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,qBAAqB,GAItB,MAAM,UAAU,CAAC;AAalB,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAEtC,SAAS,YAAY,CAAC,IAAsB;IAC1C,OAAO;QACL,GAAG,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CAAC,KAAK,kBAAkB;QACzF,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,gBAAgB,EAAE,IAAI,CAAC,MAAM;SAC9B;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;YAC5D,gBAAgB,EAAE;gBAChB,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,wBAAwB,CAAC;aACpE;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,CAAC,GAAmB,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1C,IAAI,CAAC,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;SACxB,IAAI,CAAC,GAAG,CAAC;SACT,WAAW,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,CAAC,GAAmB,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1C,MAAM,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC;IAC1B,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI;QACrC,KAAK,EAAE,CAAC;YACN,CAAC,CAAC;gBACE,MAAM,EAAE,CAAC,CAAC,gBAAgB,IAAI,IAAI;gBAClC,UAAU,EAAE,CAAC,CAAC,oBAAoB,IAAI,IAAI;gBAC1C,KAAK,EAAE,CAAC,CAAC,eAAe,IAAI,IAAI;aACjC;YACH,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAmB;IAC1C,QAAQ,EAAE,QAAQ;IAClB,YAAY;IACZ,WAAW;IACX,WAAW;IACX,oBAAoB,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC5C,uBAAuB,EAAE,qBAAqB,CAAC,QAAQ,CAAC;IACxD,qBAAqB,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC3C,sBAAsB,EAAE,EAAE;IAC1B,KAAK,EAAE,IAAI;IACX,wBAAwB,EAAE,KAAK;CAChC,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type ProviderConfig } from "./config";
2
- export declare const openaiConfig: ProviderConfig;
3
- //# sourceMappingURL=openai.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAwDlB,eAAO,MAAM,YAAY,EAAE,cAW1B,CAAC"}
@@ -1,56 +0,0 @@
1
- import { rec } from "../internal/utils";
2
- import { foreignPatternsExcept } from "../patterns";
3
- import { normalizeProbeBaseUrl, } from "./config";
4
- const REASONING_MIN_OUTPUT_TOKENS = 2000;
5
- const REASONING_MODEL = /^(?:o[1-9]|gpt-5)/i;
6
- function buildRequest(args) {
7
- const maxCompletionTokens = REASONING_MODEL.test(args.model)
8
- ? Math.max(args.maxTokens, REASONING_MIN_OUTPUT_TOKENS)
9
- : args.maxTokens;
10
- return {
11
- url: `${normalizeProbeBaseUrl(args.baseUrl)}/v1/chat/completions`,
12
- headers: {
13
- "content-type": "application/json",
14
- authorization: `Bearer ${args.apiKey}`,
15
- },
16
- body: {
17
- model: args.model,
18
- max_completion_tokens: maxCompletionTokens,
19
- messages: [{ role: "user", content: args.prompt }],
20
- },
21
- };
22
- }
23
- function extractText(data) {
24
- const d = rec(data) ?? {};
25
- if (d.error)
26
- return null;
27
- const content = d.choices?.[0]?.message?.content;
28
- return typeof content === "string" ? content.toLowerCase() : null;
29
- }
30
- function extractMeta(data) {
31
- const d = rec(data) ?? {};
32
- const u = d.usage;
33
- return {
34
- detectedModel: d.model ?? null,
35
- usage: u
36
- ? {
37
- prompt: u.prompt_tokens ?? null,
38
- completion: u.completion_tokens ?? null,
39
- total: u.total_tokens ?? null,
40
- }
41
- : null,
42
- };
43
- }
44
- export const openaiConfig = {
45
- provider: "openai",
46
- buildRequest,
47
- extractText,
48
- extractMeta,
49
- homeIdentityPatterns: ["openai"],
50
- foreignIdentityPatterns: foreignPatternsExcept("openai"),
51
- homeModelNamePatterns: ["gpt", "openai", "o1", "o3", "o4"],
52
- cloudModelNamePatterns: [],
53
- tiers: null,
54
- acceptsCloudHostIdentity: false,
55
- };
56
- //# sourceMappingURL=openai.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,qBAAqB,GAItB,MAAM,UAAU,CAAC;AAalB,MAAM,2BAA2B,GAAG,IAAI,CAAC;AACzC,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAE7C,SAAS,YAAY,CAAC,IAAsB;IAC1C,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAC1D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC;QACvD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IACnB,OAAO;QACL,GAAG,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB;QACjE,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;SACvC;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,qBAAqB,EAAE,mBAAmB;YAC1C,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;SACnD;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,CAAC,GAAuB,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;IACjD,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpE,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,CAAC,GAAuB,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;QAC9B,KAAK,EAAE,CAAC;YACN,CAAC,CAAC;gBACE,MAAM,EAAE,CAAC,CAAC,aAAa,IAAI,IAAI;gBAC/B,UAAU,EAAE,CAAC,CAAC,iBAAiB,IAAI,IAAI;gBACvC,KAAK,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI;aAC9B;YACH,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAmB;IAC1C,QAAQ,EAAE,QAAQ;IAClB,YAAY;IACZ,WAAW;IACX,WAAW;IACX,oBAAoB,EAAE,CAAC,QAAQ,CAAC;IAChC,uBAAuB,EAAE,qBAAqB,CAAC,QAAQ,CAAC;IACxD,qBAAqB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;IAC1D,sBAAsB,EAAE,EAAE;IAC1B,KAAK,EAAE,IAAI;IACX,wBAAwB,EAAE,KAAK;CAChC,CAAC"}
package/dist/rules.d.ts DELETED
@@ -1,6 +0,0 @@
1
- export type DetectionRuleId = "coding-tool" | "scam" | "cjk-leak" | "mux" | "foreign" | "tier-mismatch" | "substituted";
2
- export declare const DETECTION_RULES: readonly DetectionRuleId[];
3
- export type DetectionExceptionId = "version" | "transient" | "cloud-host" | "reshaping" | "threshold";
4
- export declare const DETECTION_EXCEPTIONS: readonly DetectionExceptionId[];
5
- export declare function ruleIdForSignal(signal: string): DetectionRuleId | null;
6
- //# sourceMappingURL=rules.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACvB,aAAa,GACb,MAAM,GACN,UAAU,GACV,KAAK,GACL,SAAS,GACT,eAAe,GACf,aAAa,CAAC;AAElB,eAAO,MAAM,eAAe,EAAE,SAAS,eAAe,EAQrD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAC9B,SAAS,GAAG,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,CAAC;AAErE,eAAO,MAAM,oBAAoB,EAAE,SAAS,oBAAoB,EAM/D,CAAC;AAEF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAMtE"}
package/dist/rules.js DELETED
@@ -1,28 +0,0 @@
1
- export const DETECTION_RULES = [
2
- "coding-tool",
3
- "scam",
4
- "cjk-leak",
5
- "mux",
6
- "foreign",
7
- "tier-mismatch",
8
- "substituted",
9
- ];
10
- export const DETECTION_EXCEPTIONS = [
11
- "version",
12
- "transient",
13
- "cloud-host",
14
- "reshaping",
15
- "threshold",
16
- ];
17
- export function ruleIdForSignal(signal) {
18
- if (signal === "coding-tool")
19
- return "coding-tool";
20
- if (signal === "scam")
21
- return "scam";
22
- if (signal === "cjk-leak")
23
- return "cjk-leak";
24
- if (signal === "foreign")
25
- return "foreign";
26
- return null;
27
- }
28
- //# sourceMappingURL=rules.js.map