@attest-ai/vitest 0.5.0 → 0.6.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/dist/fixtures.d.ts.map +1 -1
- package/dist/fixtures.js +20 -9
- package/dist/fixtures.js.map +1 -1
- package/dist/plugin.d.ts +1 -0
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +8 -3
- package/dist/plugin.js.map +1 -1
- package/package.json +5 -5
package/dist/fixtures.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../src/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../src/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAKhB,WAAW,EACX,YAAY,EAKb,MAAM,iBAAiB,CAAC;AAEzB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,OAAO,CAA2B;gBAE9B,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAS1D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,IAAI,MAAM,IAAI,YAAY,CAKzB;IAEK,QAAQ,CACZ,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5B,OAAO,CAAC,WAAW,CAAC;CAqCxB;AAED,wBAAgB,SAAS,IAAI,mBAAmB,CAiB/C;AAED,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5B,OAAO,CAAC,WAAW,CAAC,CAGtB"}
|
package/dist/fixtures.js
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
import { AgentResult, AttestClient, EngineManager, STATUS_SOFT_FAIL, } from "@attest-ai/core";
|
|
1
|
+
import { AgentResult, AttestClient, EngineManager, isSimulationMode, simulationEvaluateBatch, STATUS_SOFT_FAIL, } from "@attest-ai/core";
|
|
2
2
|
export class AttestEngineFixture {
|
|
3
3
|
manager;
|
|
4
4
|
_client;
|
|
5
5
|
constructor(options) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
if (!isSimulationMode()) {
|
|
7
|
+
this.manager = new EngineManager({
|
|
8
|
+
enginePath: options?.enginePath,
|
|
9
|
+
logLevel: options?.logLevel ?? "warn",
|
|
10
|
+
});
|
|
11
|
+
}
|
|
10
12
|
}
|
|
11
13
|
async start() {
|
|
14
|
+
if (isSimulationMode())
|
|
15
|
+
return;
|
|
12
16
|
if (this.manager === undefined) {
|
|
13
17
|
throw new Error("AttestEngineFixture already stopped.");
|
|
14
18
|
}
|
|
@@ -23,13 +27,19 @@ export class AttestEngineFixture {
|
|
|
23
27
|
}
|
|
24
28
|
}
|
|
25
29
|
get client() {
|
|
26
|
-
if (this._client === undefined) {
|
|
30
|
+
if (this._client === undefined && !isSimulationMode()) {
|
|
27
31
|
throw new Error("Engine not started. Call start() first.");
|
|
28
32
|
}
|
|
29
33
|
return this._client;
|
|
30
34
|
}
|
|
31
35
|
async evaluate(chain, options) {
|
|
32
|
-
|
|
36
|
+
let result;
|
|
37
|
+
if (isSimulationMode()) {
|
|
38
|
+
result = simulationEvaluateBatch(chain.assertions);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
result = await this.client.evaluateBatch(chain.trace, chain.assertions);
|
|
42
|
+
}
|
|
33
43
|
globalThis.__attest_session_cost__ =
|
|
34
44
|
(globalThis.__attest_session_cost__ ?? 0) + (result.total_cost ?? 0);
|
|
35
45
|
const softFailCount = (result.results ?? []).filter((r) => r.status === STATUS_SOFT_FAIL).length;
|
|
@@ -45,14 +55,15 @@ export class AttestEngineFixture {
|
|
|
45
55
|
}
|
|
46
56
|
}
|
|
47
57
|
export function useAttest() {
|
|
58
|
+
if (isSimulationMode() || globalThis.__attest_simulation_mode__) {
|
|
59
|
+
return new AttestEngineFixture();
|
|
60
|
+
}
|
|
48
61
|
const client = globalThis.__attest_client__;
|
|
49
62
|
const engine = globalThis.__attest_engine__;
|
|
50
63
|
if (client === undefined || engine === undefined) {
|
|
51
64
|
throw new Error("Attest engine not available. Configure attestGlobalSetup() in vitest.config.ts globalSetup.");
|
|
52
65
|
}
|
|
53
|
-
// Return a fixture wrapper around the existing global engine
|
|
54
66
|
const fixture = new AttestEngineFixture();
|
|
55
|
-
// Override the internal state to use the global instance
|
|
56
67
|
Object.defineProperty(fixture, "client", { get: () => client });
|
|
57
68
|
return fixture;
|
|
58
69
|
}
|
package/dist/fixtures.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../src/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../src/fixtures.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ declare global {
|
|
|
8
8
|
var __attest_client__: AttestClient | undefined;
|
|
9
9
|
var __attest_session_cost__: number;
|
|
10
10
|
var __attest_session_soft_failures__: number;
|
|
11
|
+
var __attest_simulation_mode__: boolean;
|
|
11
12
|
}
|
|
12
13
|
export declare function attestGlobalSetup(options?: AttestGlobalSetupOptions): {
|
|
13
14
|
setup(): Promise<void>;
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoB,MAAM,iBAAiB,CAAC;AAKhF,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,iBAAiB,EAAE,aAAa,GAAG,SAAS,CAAC;IAEjD,IAAI,iBAAiB,EAAE,YAAY,GAAG,SAAS,CAAC;IAEhD,IAAI,uBAAuB,EAAE,MAAM,CAAC;IAEpC,IAAI,gCAAgC,EAAE,MAAM,CAAC;IAE7C,IAAI,0BAA0B,EAAE,OAAO,CAAC;CACzC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,wBAAwB;;;EAmCnE"}
|
package/dist/plugin.js
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import { EngineManager, AttestClient } from "@attest-ai/core";
|
|
1
|
+
import { EngineManager, AttestClient, isSimulationMode } from "@attest-ai/core";
|
|
2
2
|
let engineManager;
|
|
3
3
|
let attestClient;
|
|
4
4
|
export function attestGlobalSetup(options) {
|
|
5
5
|
return {
|
|
6
6
|
async setup() {
|
|
7
|
+
globalThis.__attest_session_cost__ = 0;
|
|
8
|
+
globalThis.__attest_session_soft_failures__ = 0;
|
|
9
|
+
if (isSimulationMode()) {
|
|
10
|
+
globalThis.__attest_simulation_mode__ = true;
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
7
13
|
engineManager = new EngineManager({
|
|
8
14
|
enginePath: options?.enginePath,
|
|
9
15
|
logLevel: options?.logLevel ?? "warn",
|
|
@@ -12,8 +18,6 @@ export function attestGlobalSetup(options) {
|
|
|
12
18
|
attestClient = new AttestClient(engineManager);
|
|
13
19
|
globalThis.__attest_engine__ = engineManager;
|
|
14
20
|
globalThis.__attest_client__ = attestClient;
|
|
15
|
-
globalThis.__attest_session_cost__ = 0;
|
|
16
|
-
globalThis.__attest_session_soft_failures__ = 0;
|
|
17
21
|
},
|
|
18
22
|
async teardown() {
|
|
19
23
|
if (engineManager) {
|
|
@@ -23,6 +27,7 @@ export function attestGlobalSetup(options) {
|
|
|
23
27
|
}
|
|
24
28
|
globalThis.__attest_engine__ = undefined;
|
|
25
29
|
globalThis.__attest_client__ = undefined;
|
|
30
|
+
globalThis.__attest_simulation_mode__ = false;
|
|
26
31
|
},
|
|
27
32
|
};
|
|
28
33
|
}
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,IAAI,aAAwC,CAAC;AAC7C,IAAI,YAAsC,CAAC;AAoB3C,MAAM,UAAU,iBAAiB,CAAC,OAAkC;IAClE,OAAO;QACL,KAAK,CAAC,KAAK;YACT,UAAU,CAAC,uBAAuB,GAAG,CAAC,CAAC;YACvC,UAAU,CAAC,gCAAgC,GAAG,CAAC,CAAC;YAEhD,IAAI,gBAAgB,EAAE,EAAE,CAAC;gBACvB,UAAU,CAAC,0BAA0B,GAAG,IAAI,CAAC;gBAC7C,OAAO;YACT,CAAC;YAED,aAAa,GAAG,IAAI,aAAa,CAAC;gBAChC,UAAU,EAAE,OAAO,EAAE,UAAU;gBAC/B,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,MAAM;aACtC,CAAC,CAAC;YAEH,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;YAC5B,YAAY,GAAG,IAAI,YAAY,CAAC,aAAa,CAAC,CAAC;YAE/C,UAAU,CAAC,iBAAiB,GAAG,aAAa,CAAC;YAC7C,UAAU,CAAC,iBAAiB,GAAG,YAAY,CAAC;QAC9C,CAAC;QAED,KAAK,CAAC,QAAQ;YACZ,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;gBAC3B,aAAa,GAAG,SAAS,CAAC;gBAC1B,YAAY,GAAG,SAAS,CAAC;YAC3B,CAAC;YAED,UAAU,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACzC,UAAU,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACzC,UAAU,CAAC,0BAA0B,GAAG,KAAK,CAAC;QAChD,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@attest-ai/vitest",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "Attest vitest integration — global setup, fixtures, cost reporter, tier filtering",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -42,10 +42,10 @@
|
|
|
42
42
|
"vitest": ">=2.0.0"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
|
-
"@types/node": "^25.
|
|
46
|
-
"typescript": "^5.
|
|
47
|
-
"vitest": "^4.
|
|
48
|
-
"@attest-ai/core": "0.
|
|
45
|
+
"@types/node": "^25.6.0",
|
|
46
|
+
"typescript": "^5.9.3",
|
|
47
|
+
"vitest": "^4.1.4",
|
|
48
|
+
"@attest-ai/core": "0.6.0"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {
|
|
51
51
|
"build": "tsc",
|