ai-model-verifier 2.0.3 → 3.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.
- package/README.md +16 -4
- package/dist/engine/context.d.ts +8 -8
- package/dist/engine/context.d.ts.map +1 -1
- package/dist/engine/context.js.map +1 -1
- package/dist/engine/probe-runner.js +4 -4
- package/dist/engine/probe-runner.js.map +1 -1
- package/dist/highlight.d.ts +5 -2
- package/dist/highlight.d.ts.map +1 -1
- package/dist/highlight.js +30 -9
- package/dist/highlight.js.map +1 -1
- package/dist/identity/patterns.d.ts +0 -8
- package/dist/identity/patterns.d.ts.map +1 -1
- package/dist/identity/patterns.js +0 -24
- package/dist/identity/patterns.js.map +1 -1
- package/dist/identity/signals.d.ts +12 -5
- package/dist/identity/signals.d.ts.map +1 -1
- package/dist/identity/signals.js +20 -11
- package/dist/identity/signals.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/makers/index.d.ts +6 -0
- package/dist/makers/index.d.ts.map +1 -0
- package/dist/makers/index.js +4 -0
- package/dist/makers/index.js.map +1 -0
- package/dist/makers/resolve.d.ts +8 -0
- package/dist/makers/resolve.d.ts.map +1 -0
- package/dist/makers/resolve.js +35 -0
- package/dist/makers/resolve.js.map +1 -0
- package/dist/makers/table.d.ts +136 -0
- package/dist/makers/table.d.ts.map +1 -0
- package/dist/makers/table.js +175 -0
- package/dist/makers/table.js.map +1 -0
- package/dist/makers/types.d.ts +35 -0
- package/dist/makers/types.d.ts.map +1 -0
- package/dist/makers/types.js +2 -0
- package/dist/makers/types.js.map +1 -0
- package/dist/models/catalog.d.ts +5 -2
- package/dist/models/catalog.d.ts.map +1 -1
- package/dist/models/catalog.js +11 -6
- package/dist/models/catalog.js.map +1 -1
- package/dist/models/facts.d.ts +9 -13
- package/dist/models/facts.d.ts.map +1 -1
- package/dist/models/facts.js +8 -6
- package/dist/models/facts.js.map +1 -1
- package/dist/models/index.d.ts +1 -1
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +1 -1
- package/dist/models/index.js.map +1 -1
- package/dist/probes/table.d.ts +6 -6
- package/dist/probes/table.d.ts.map +1 -1
- package/dist/probes/table.js +10 -10
- package/dist/probes/table.js.map +1 -1
- package/dist/registry.d.ts +11 -8
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +6 -4
- package/dist/registry.js.map +1 -1
- package/dist/rules/probe-ladder.d.ts.map +1 -1
- package/dist/rules/probe-ladder.js +7 -7
- package/dist/rules/probe-ladder.js.map +1 -1
- package/dist/rules/token-truth.d.ts +1 -1
- package/dist/rules/token-truth.d.ts.map +1 -1
- package/dist/rules/token-truth.js.map +1 -1
- package/dist/rules/tokenizer-fingerprint.d.ts.map +1 -1
- package/dist/rules/tokenizer-fingerprint.js +3 -3
- package/dist/rules/tokenizer-fingerprint.js.map +1 -1
- package/dist/types.d.ts +4 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/vendors/anthropic.d.ts +1 -8
- package/dist/vendors/anthropic.d.ts.map +1 -1
- package/dist/vendors/anthropic.js +1 -11
- package/dist/vendors/anthropic.js.map +1 -1
- package/dist/vendors/gemini.d.ts +1 -8
- package/dist/vendors/gemini.d.ts.map +1 -1
- package/dist/vendors/gemini.js +1 -9
- package/dist/vendors/gemini.js.map +1 -1
- package/dist/vendors/openai.d.ts +1 -8
- package/dist/vendors/openai.d.ts.map +1 -1
- package/dist/vendors/openai.js +1 -9
- package/dist/vendors/openai.js.map +1 -1
- package/dist/vendors/table.d.ts +3 -24
- package/dist/vendors/table.d.ts.map +1 -1
- package/dist/vendors/table.js +1 -0
- package/dist/vendors/table.js.map +1 -1
- package/dist/vendors/types.d.ts +3 -15
- package/dist/vendors/types.d.ts.map +1 -1
- package/dist/vendors/types.js.map +1 -1
- package/dist/verify.d.ts +8 -5
- package/dist/verify.d.ts.map +1 -1
- package/dist/verify.js +17 -11
- package/dist/verify.js.map +1 -1
- package/package.json +8 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/vendors/table.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/vendors/table.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIyB,CAAC;AAE9C,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAMtD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EACxC,OAAO,EAAE,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,EACpC,EAAE,EAAE,MAAM,GACT,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAE9B"}
|
package/dist/vendors/table.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/vendors/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/vendors/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAIxC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,eAAe;IACf,YAAY;IACZ,YAAY;CAC+B,CAAC;AAI9C,gFAAgF;AAChF,KAAM,OAAoE,CAAC;AAC3E,KAAM,OAAuD,CAAC;AAE9D,MAAM,UAAU,SAAS,CACvB,OAAoC,EACpC,EAAU;IAEV,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC1C,CAAC"}
|
package/dist/vendors/types.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ export type WireCtx = {
|
|
|
30
30
|
apiKey: string;
|
|
31
31
|
/** The request leaves a browser: some vendors want an opt-in header. */
|
|
32
32
|
direct: boolean;
|
|
33
|
-
facts: ModelFacts
|
|
33
|
+
facts: ModelFacts<string>;
|
|
34
34
|
};
|
|
35
35
|
export type BuiltRequest = {
|
|
36
36
|
url: string;
|
|
@@ -51,17 +51,6 @@ export type ReasoningUsage = {
|
|
|
51
51
|
completion: number | null;
|
|
52
52
|
reasoning: number | null;
|
|
53
53
|
};
|
|
54
|
-
export type VendorIdentity = {
|
|
55
|
-
/** Words a genuine model uses for its maker. */
|
|
56
|
-
home: readonly string[];
|
|
57
|
-
/** Words that name a competitor. */
|
|
58
|
-
foreign: readonly string[];
|
|
59
|
-
homeModelNames: readonly string[];
|
|
60
|
-
/** Model names a cloud host sells under its own badge (Amazon Q over Claude). */
|
|
61
|
-
cloudModelNames: readonly string[];
|
|
62
|
-
/** A cloud host named as the maker still counts as home (Bedrock is Claude). */
|
|
63
|
-
acceptsCloudHost: boolean;
|
|
64
|
-
};
|
|
65
54
|
/**
|
|
66
55
|
* One wire format. Every request the engine makes goes through `ops`, every
|
|
67
56
|
* reply is read through `read`, so a rule never knows a URL or a header name.
|
|
@@ -85,9 +74,8 @@ export type VendorAdapter<Id extends string = string> = {
|
|
|
85
74
|
reasoningUsage?(data: unknown): ReasoningUsage | null;
|
|
86
75
|
countedTokens?(data: unknown): number | null;
|
|
87
76
|
};
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
tiers: readonly string[] | null;
|
|
77
|
+
/** Maker whose vocabulary judges a model the facts table does not know. */
|
|
78
|
+
defaultMaker: string;
|
|
91
79
|
};
|
|
92
80
|
export declare const defineVendor: <const V extends VendorAdapter>(vendor: V) => V;
|
|
93
81
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vendors/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,wDAAwD;AACxD,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE1E,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,gFAAgF;IAChF,OAAO,EAAE,MAAM,GAAG,SAAS,OAAO,EAAE,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vendors/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/vendors/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/vendors/types.ts"],"names":[],"mappings":"AA4FA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAgC,MAAS,EAAK,EAAE,CAC1E,MAAM,CAAC"}
|
package/dist/verify.d.ts
CHANGED
|
@@ -1,27 +1,30 @@
|
|
|
1
1
|
import { callWire } from "./engine/context";
|
|
2
2
|
import { type FactsEntry } from "./models/facts";
|
|
3
|
+
import { type MakerId } from "./makers/table";
|
|
4
|
+
import type { Maker } from "./makers/types";
|
|
3
5
|
import { type RuleId } from "./rules/table";
|
|
4
6
|
import type { Rule } from "./rules/types";
|
|
5
7
|
import type { RuleRun, VerifyOptions, VerifyResult } from "./types";
|
|
6
8
|
import { type VendorId } from "./vendors/table";
|
|
7
9
|
import type { VendorAdapter } from "./vendors/types";
|
|
8
|
-
export type Registry<V extends string = VendorId, R extends string = RuleId> = {
|
|
10
|
+
export type Registry<V extends string = VendorId, R extends string = RuleId, M extends string = MakerId> = {
|
|
9
11
|
vendors: readonly VendorAdapter<V>[];
|
|
10
12
|
rules: readonly Rule<R>[];
|
|
11
|
-
facts: readonly FactsEntry[];
|
|
13
|
+
facts: readonly FactsEntry<M>[];
|
|
14
|
+
makers: readonly Maker<M>[];
|
|
12
15
|
};
|
|
13
16
|
export declare const DEFAULT_REGISTRY: Registry;
|
|
14
17
|
/** Handshake, probes, every enabled rule, verdict. */
|
|
15
|
-
export declare function verifyWith<V extends string, R extends string>(registry: Registry<V, R>, opts: VerifyOptions<V>): Promise<VerifyResult<V, R>>;
|
|
18
|
+
export declare function verifyWith<V extends string, R extends string, M extends string = MakerId>(registry: Registry<V, R, M>, opts: VerifyOptions<V>): Promise<VerifyResult<V, R, M>>;
|
|
16
19
|
/**
|
|
17
20
|
* Judge chosen rules on a wire the caller already knows works: no handshake,
|
|
18
21
|
* no verdict, only the evidence those rules ask for. A rule named here runs
|
|
19
22
|
* whether or not its `checks` switch is on; `checks` still carries options.
|
|
20
23
|
*/
|
|
21
|
-
export declare function runRulesWith<V extends string, R extends string>(registry: Registry<V, R>, opts: VerifyOptions<V> & {
|
|
24
|
+
export declare function runRulesWith<V extends string, R extends string, M extends string = MakerId>(registry: Registry<V, R, M>, opts: VerifyOptions<V> & {
|
|
22
25
|
only: readonly R[];
|
|
23
26
|
}): Promise<RuleRun<R>>;
|
|
24
|
-
export declare const verify: (opts: VerifyOptions) => Promise<VerifyResult<"anthropic" | "gemini" | "openai", "cjk-leak" | "coding-tool" | "envelope" | "foreign" | "mux" | "quorum" | "scam" | "served-model-mismatch" | "signature" | "substituted" | "thinking-floor" | "throughput" | "tier-self-report" | "token-truth" | "tokenizer-fingerprint">>;
|
|
27
|
+
export declare const verify: (opts: VerifyOptions) => Promise<VerifyResult<"anthropic" | "gemini" | "openai", "cjk-leak" | "coding-tool" | "envelope" | "foreign" | "mux" | "quorum" | "scam" | "served-model-mismatch" | "signature" | "substituted" | "thinking-floor" | "throughput" | "tier-self-report" | "token-truth" | "tokenizer-fingerprint", "alibaba" | "anthropic" | "deepseek" | "google" | "meta" | "minimax" | "mistral" | "moonshot" | "openai" | "tencent" | "xai" | "xiaomi" | "zhipu">>;
|
|
25
28
|
export declare const runRules: (opts: VerifyOptions & {
|
|
26
29
|
only: readonly RuleId[];
|
|
27
30
|
}) => Promise<RuleRun<"cjk-leak" | "coding-tool" | "envelope" | "foreign" | "mux" | "quorum" | "scam" | "served-model-mismatch" | "signature" | "substituted" | "thinking-floor" | "throughput" | "tier-self-report" | "token-truth" | "tokenizer-fingerprint">>;
|
package/dist/verify.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAA8B,MAAM,kBAAkB,CAAC;AAMxE,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAA8B,MAAM,kBAAkB,CAAC;AAMxE,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAU,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAS,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAoB,IAAI,EAAW,MAAM,eAAe,CAAC;AAErE,OAAO,KAAK,EAGV,OAAO,EACP,aAAa,EACb,YAAY,EACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAsB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIjE,MAAM,MAAM,QAAQ,CAClB,CAAC,SAAS,MAAM,GAAG,QAAQ,EAC3B,CAAC,SAAS,MAAM,GAAG,MAAM,EACzB,CAAC,SAAS,MAAM,GAAG,OAAO,IACxB;IACF,OAAO,EAAE,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,KAAK,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1B,KAAK,EAAE,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,MAAM,EAAE,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,QAK9B,CAAC;AA4JF,sDAAsD;AACtD,wBAAsB,UAAU,CAC9B,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,GAAG,OAAO,EAE1B,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC3B,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,GACrB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CA4ChC;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,GAAG,OAAO,EAE1B,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC3B,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GAC9C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAYrB;AAED,eAAO,MAAM,MAAM,SAAU,aAAa,0bACN,CAAC;AAErC,eAAO,MAAM,QAAQ,SAAU,aAAa,GAAG;IAAE,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,+PACpC,CAAC;AAEvC,sGAAsG;AACtG,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
package/dist/verify.js
CHANGED
|
@@ -4,6 +4,8 @@ import { runHandshake } from "./engine/handshake";
|
|
|
4
4
|
import { foldVerdict } from "./engine/verdict";
|
|
5
5
|
import { hostOf } from "./internal/utils";
|
|
6
6
|
import { normalizeModelId, resolveModelFacts, } from "./models/facts";
|
|
7
|
+
import { MAKERS } from "./makers/table";
|
|
8
|
+
import { resolveMaker } from "./makers/resolve";
|
|
7
9
|
import { makeNonce } from "./probes/prompts";
|
|
8
10
|
import { RULES } from "./rules/table";
|
|
9
11
|
import { browserTransport, directTransport } from "./transport";
|
|
@@ -13,6 +15,7 @@ export const DEFAULT_REGISTRY = {
|
|
|
13
15
|
vendors: VENDORS,
|
|
14
16
|
rules: RULES,
|
|
15
17
|
facts: [],
|
|
18
|
+
makers: MAKERS,
|
|
16
19
|
};
|
|
17
20
|
function buildCtx(registry, opts) {
|
|
18
21
|
const wire = vendorFor(registry.vendors, opts.vendor);
|
|
@@ -26,7 +29,7 @@ function buildCtx(registry, opts) {
|
|
|
26
29
|
alwaysThinks: true,
|
|
27
30
|
})),
|
|
28
31
|
...registry.facts,
|
|
29
|
-
]);
|
|
32
|
+
], registry.makers);
|
|
30
33
|
const transport = opts.transport ??
|
|
31
34
|
(opts.mode === "server"
|
|
32
35
|
? opts.serverProxyUrl
|
|
@@ -35,16 +38,12 @@ function buildCtx(registry, opts) {
|
|
|
35
38
|
: directTransport);
|
|
36
39
|
if (!transport)
|
|
37
40
|
throw new TypeError("server mode needs a transport or a serverProxyUrl");
|
|
38
|
-
const home = facts.vendor
|
|
39
|
-
? vendorFor(registry.vendors, facts.vendor)
|
|
40
|
-
: undefined;
|
|
41
41
|
return {
|
|
42
42
|
model: opts.model,
|
|
43
43
|
facts,
|
|
44
44
|
requestedVendor: opts.vendor,
|
|
45
45
|
wire,
|
|
46
|
-
|
|
47
|
-
tiers: (home ?? wire).tiers,
|
|
46
|
+
maker: makerOf(registry, facts.maker, wire),
|
|
48
47
|
mode: opts.mode,
|
|
49
48
|
direct: opts.mode === "direct",
|
|
50
49
|
baseUrl: opts.baseUrl,
|
|
@@ -57,6 +56,13 @@ function buildCtx(registry, opts) {
|
|
|
57
56
|
checks: resolveChecks(opts.checks),
|
|
58
57
|
};
|
|
59
58
|
}
|
|
59
|
+
/** The model's own maker, or the wire's default when the tables know no maker. */
|
|
60
|
+
function makerOf(registry, maker, wire) {
|
|
61
|
+
const id = maker ?? wire.defaultMaker;
|
|
62
|
+
if (!maker && !registry.makers.some((m) => m.id === id))
|
|
63
|
+
throw new TypeError(`wire "${wire.id}" names unknown maker "${id}"`);
|
|
64
|
+
return resolveMaker(registry.makers, id);
|
|
65
|
+
}
|
|
60
66
|
/**
|
|
61
67
|
* Collect what the applicable rules need, in canonical order, then judge them
|
|
62
68
|
* in table order so the findings carry their precedence.
|
|
@@ -114,9 +120,10 @@ function sumUsage(usages) {
|
|
|
114
120
|
total: add("total"),
|
|
115
121
|
};
|
|
116
122
|
}
|
|
117
|
-
function connectivityResult(opts, error, corsBlocked, startedAt) {
|
|
123
|
+
function connectivityResult(opts, maker, error, corsBlocked, startedAt) {
|
|
118
124
|
return {
|
|
119
125
|
vendor: opts.vendor,
|
|
126
|
+
maker,
|
|
120
127
|
model: opts.model,
|
|
121
128
|
baseUrlHost: hostOf(opts.baseUrl),
|
|
122
129
|
verdict: "unverified",
|
|
@@ -141,13 +148,11 @@ export async function verifyWith(registry, opts) {
|
|
|
141
148
|
const requested = buildCtx(registry, opts);
|
|
142
149
|
const hs = await runHandshake(requested, registry.vendors);
|
|
143
150
|
if (!hs.ok)
|
|
144
|
-
return connectivityResult(opts, hs.reason, hs.corsBlocked, started);
|
|
145
|
-
const home = requested.facts.vendor !== null;
|
|
151
|
+
return connectivityResult(opts, requested.facts.maker, hs.reason, hs.corsBlocked, started);
|
|
146
152
|
const ctx = {
|
|
147
153
|
...requested,
|
|
148
154
|
wire: hs.wire,
|
|
149
|
-
|
|
150
|
-
tiers: home ? requested.tiers : hs.wire.tiers,
|
|
155
|
+
maker: makerOf(registry, requested.facts.maker, hs.wire),
|
|
151
156
|
};
|
|
152
157
|
const rules = registry.rules.filter((r) => !r.check || ctx.checks[r.check]);
|
|
153
158
|
const run = await runRuleSet(ctx, rules);
|
|
@@ -156,6 +161,7 @@ export async function verifyWith(registry, opts) {
|
|
|
156
161
|
return {
|
|
157
162
|
...run.reports,
|
|
158
163
|
vendor: opts.vendor,
|
|
164
|
+
maker: requested.facts.maker,
|
|
159
165
|
model: opts.model,
|
|
160
166
|
baseUrlHost: hostOf(opts.baseUrl),
|
|
161
167
|
verdict: folded.verdict,
|
package/dist/verify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAe,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAe,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAQhE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAC;AAGpE,MAAM,kBAAkB,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-model-verifier",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Verify an AI API endpoint really serves the model it claims: a vendor adapter per wire, a rule table over shared evidence, and per model facts. Model substitution, Claude thinking signatures, token billing accuracy, envelope and throughput evidence.",
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"description": "Verify an AI API endpoint really serves the model it claims: a vendor adapter per wire, a maker table for who trained what, a rule table over shared evidence, and per model facts. Model substitution, Claude thinking signatures, token billing accuracy, envelope and throughput evidence.",
|
|
5
5
|
"license": "AGPL-3.0-only",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"repository": {
|
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
"claude",
|
|
22
22
|
"openai",
|
|
23
23
|
"gemini",
|
|
24
|
+
"deepseek",
|
|
25
|
+
"qwen",
|
|
24
26
|
"token-billing",
|
|
25
27
|
"rule-engine",
|
|
26
28
|
"adapter"
|
|
@@ -46,6 +48,10 @@
|
|
|
46
48
|
"types": "./dist/models/index.d.ts",
|
|
47
49
|
"default": "./dist/models/index.js"
|
|
48
50
|
},
|
|
51
|
+
"./makers": {
|
|
52
|
+
"types": "./dist/makers/index.d.ts",
|
|
53
|
+
"default": "./dist/makers/index.js"
|
|
54
|
+
},
|
|
49
55
|
"./transport": {
|
|
50
56
|
"types": "./dist/transport.d.ts",
|
|
51
57
|
"default": "./dist/transport.js"
|