@prismatic-io/lux 0.0.1 → 0.0.2-preview.3
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/lib/assertions/authoring.d.ts +14 -0
- package/lib/assertions/authoring.d.ts.map +1 -0
- package/lib/assertions/authoring.js +3 -0
- package/lib/assertions/authoring.js.map +1 -0
- package/lib/authoring.d.ts +1 -0
- package/lib/authoring.d.ts.map +1 -1
- package/lib/authoring.js +1 -0
- package/lib/authoring.js.map +1 -1
- package/lib/core/assertion.d.ts +7 -9
- package/lib/core/assertion.d.ts.map +1 -1
- package/lib/core/assertion.js +13 -0
- package/lib/core/assertion.js.map +1 -1
- package/lib/core/case-authoring-state.d.ts +12 -0
- package/lib/core/case-authoring-state.d.ts.map +1 -0
- package/lib/core/case-authoring-state.js +43 -0
- package/lib/core/case-authoring-state.js.map +1 -0
- package/lib/core/case.d.ts +29 -1
- package/lib/core/case.d.ts.map +1 -1
- package/lib/core/case.js +14 -6
- package/lib/core/case.js.map +1 -1
- package/lib/core/driver.d.ts +3 -0
- package/lib/core/driver.d.ts.map +1 -1
- package/lib/core/driver.js.map +1 -1
- package/lib/core/lifecycle-fixtures.d.ts +3 -1
- package/lib/core/lifecycle-fixtures.d.ts.map +1 -1
- package/lib/core/lifecycle-fixtures.js +4 -2
- package/lib/core/lifecycle-fixtures.js.map +1 -1
- package/lib/core/lifecycle-hooks.d.ts +9 -0
- package/lib/core/lifecycle-hooks.d.ts.map +1 -1
- package/lib/core/lifecycle-hooks.js +8 -2
- package/lib/core/lifecycle-hooks.js.map +1 -1
- package/lib/drivers/subprocess/index.d.ts.map +1 -1
- package/lib/drivers/subprocess/index.js +6 -0
- package/lib/drivers/subprocess/index.js.map +1 -1
- package/lib/index.d.ts +4 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -3
- package/lib/index.js.map +1 -1
- package/lib/orchestrator/annotation-store.d.ts.map +1 -1
- package/lib/orchestrator/annotation-store.js +6 -2
- package/lib/orchestrator/annotation-store.js.map +1 -1
- package/lib/orchestrator/case-extensions.d.ts +6 -0
- package/lib/orchestrator/case-extensions.d.ts.map +1 -0
- package/lib/orchestrator/case-extensions.js +28 -0
- package/lib/orchestrator/case-extensions.js.map +1 -0
- package/lib/orchestrator/doctor.d.ts.map +1 -1
- package/lib/orchestrator/doctor.js +5 -3
- package/lib/orchestrator/doctor.js.map +1 -1
- package/lib/orchestrator/loader.d.ts.map +1 -1
- package/lib/orchestrator/loader.js +2 -0
- package/lib/orchestrator/loader.js.map +1 -1
- package/lib/orchestrator/orchestrator.d.ts.map +1 -1
- package/lib/orchestrator/orchestrator.js +39 -14
- package/lib/orchestrator/orchestrator.js.map +1 -1
- package/lib/orchestrator/owned-lock.d.ts.map +1 -1
- package/lib/orchestrator/owned-lock.js +52 -38
- package/lib/orchestrator/owned-lock.js.map +1 -1
- package/lib/orchestrator/regrade.d.ts.map +1 -1
- package/lib/orchestrator/regrade.js +8 -4
- package/lib/orchestrator/regrade.js.map +1 -1
- package/lib/orchestrator/run-execution.d.ts +2 -1
- package/lib/orchestrator/run-execution.d.ts.map +1 -1
- package/lib/orchestrator/run-execution.js +1 -0
- package/lib/orchestrator/run-execution.js.map +1 -1
- package/package.json +1 -1
- package/skills/lux-answerer/SKILL.md +1 -1
- package/src/assertions/authoring.ts +79 -0
- package/src/authoring.ts +1 -0
- package/src/core/assertion.ts +26 -22
- package/src/core/case-authoring-state.ts +65 -0
- package/src/core/case.ts +57 -6
- package/src/core/driver.ts +3 -0
- package/src/core/lifecycle-fixtures.ts +7 -2
- package/src/core/lifecycle-hooks.ts +16 -2
- package/src/drivers/subprocess/index.ts +6 -0
- package/src/index.ts +10 -1
- package/src/orchestrator/annotation-store.ts +5 -1
- package/src/orchestrator/case-extensions.ts +44 -0
- package/src/orchestrator/doctor.ts +5 -3
- package/src/orchestrator/loader.ts +2 -0
- package/src/orchestrator/orchestrator.ts +80 -40
- package/src/orchestrator/owned-lock.ts +54 -34
- package/src/orchestrator/regrade.ts +8 -7
- package/src/orchestrator/run-execution.ts +3 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-execution.js","sourceRoot":"","sources":["../../src/orchestrator/run-execution.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-execution.js","sourceRoot":"","sources":["../../src/orchestrator/run-execution.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prismatic-io/lux",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2-preview.3",
|
|
4
4
|
"description": "Coding-agent evaluation and improvement with deterministic assertions, optional LLM judges, and first-class human-in-the-loop runs.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/prismatic-io/lux",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: lux-answerer
|
|
3
|
-
version: 0.0.
|
|
3
|
+
version: 0.0.2-preview.3
|
|
4
4
|
description: Play the persona for a running Lux orchestrator that uses the claude-code answerer. Read structured events on stdout, decide answers from persona + context, write JSON to its answer channel.
|
|
5
5
|
user-invocable: false
|
|
6
6
|
allowed-tools: Bash, Read
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { z } from "zod";
|
|
2
|
+
import { createEvalCaseDefinition } from "../core/case.js";
|
|
3
|
+
import type {
|
|
4
|
+
ArtifactBytesUnderConfigSchema,
|
|
5
|
+
CommandExitsZeroConfigSchema,
|
|
6
|
+
ContainsConfigSchema,
|
|
7
|
+
CostUnderConfigSchema,
|
|
8
|
+
FileContainsConfigSchema,
|
|
9
|
+
FileExistsConfigSchema,
|
|
10
|
+
FileMatchesConfigSchema,
|
|
11
|
+
FileRegexCountConfigSchema,
|
|
12
|
+
FileRegexSetConfigSchema,
|
|
13
|
+
GlobCountConfigSchema,
|
|
14
|
+
InterruptCountConfigSchema,
|
|
15
|
+
JsonPointerEqualsConfigSchema,
|
|
16
|
+
LatencyUnderConfigSchema,
|
|
17
|
+
NoErrorResultsConfigSchema,
|
|
18
|
+
NotContainsConfigSchema,
|
|
19
|
+
PredicateConfigSchema,
|
|
20
|
+
RegexConfigSchema,
|
|
21
|
+
RunSucceededConfigSchema,
|
|
22
|
+
TokensUnderConfigSchema,
|
|
23
|
+
ToolCallCountConfigSchema,
|
|
24
|
+
ToolCalledConfigSchema,
|
|
25
|
+
ToolCalledWithConfigSchema,
|
|
26
|
+
ToolInvocationConfigSchema,
|
|
27
|
+
ToolResultContainsConfigSchema,
|
|
28
|
+
ToolResultIsErrorConfigSchema,
|
|
29
|
+
ToolResultJsonPointerEqualsConfigSchema,
|
|
30
|
+
} from "./core/index.js";
|
|
31
|
+
import type {
|
|
32
|
+
CapabilityAbsentConfigSchema,
|
|
33
|
+
ServerInfoEqualsConfigSchema,
|
|
34
|
+
ToolListedConfigSchema,
|
|
35
|
+
ToolsListedCountConfigSchema,
|
|
36
|
+
} from "./mcp/index.js";
|
|
37
|
+
import type { RubricConfigSchema } from "./rubric/index.js";
|
|
38
|
+
|
|
39
|
+
type BuiltinAssertionSchema =
|
|
40
|
+
| typeof ArtifactBytesUnderConfigSchema
|
|
41
|
+
| typeof CapabilityAbsentConfigSchema
|
|
42
|
+
| typeof CommandExitsZeroConfigSchema
|
|
43
|
+
| typeof ContainsConfigSchema
|
|
44
|
+
| typeof CostUnderConfigSchema
|
|
45
|
+
| typeof FileContainsConfigSchema
|
|
46
|
+
| typeof FileExistsConfigSchema
|
|
47
|
+
| typeof FileMatchesConfigSchema
|
|
48
|
+
| typeof FileRegexCountConfigSchema
|
|
49
|
+
| typeof FileRegexSetConfigSchema
|
|
50
|
+
| typeof GlobCountConfigSchema
|
|
51
|
+
| typeof InterruptCountConfigSchema
|
|
52
|
+
| typeof JsonPointerEqualsConfigSchema
|
|
53
|
+
| typeof LatencyUnderConfigSchema
|
|
54
|
+
| typeof NoErrorResultsConfigSchema
|
|
55
|
+
| typeof NotContainsConfigSchema
|
|
56
|
+
| typeof PredicateConfigSchema
|
|
57
|
+
| typeof RegexConfigSchema
|
|
58
|
+
| typeof RubricConfigSchema
|
|
59
|
+
| typeof RunSucceededConfigSchema
|
|
60
|
+
| typeof ServerInfoEqualsConfigSchema
|
|
61
|
+
| typeof TokensUnderConfigSchema
|
|
62
|
+
| typeof ToolCalledConfigSchema
|
|
63
|
+
| typeof ToolCalledWithConfigSchema
|
|
64
|
+
| typeof ToolCallCountConfigSchema
|
|
65
|
+
| typeof ToolInvocationConfigSchema
|
|
66
|
+
| typeof ToolListedConfigSchema
|
|
67
|
+
| typeof ToolResultContainsConfigSchema
|
|
68
|
+
| typeof ToolResultIsErrorConfigSchema
|
|
69
|
+
| typeof ToolResultJsonPointerEqualsConfigSchema
|
|
70
|
+
| typeof ToolsListedCountConfigSchema;
|
|
71
|
+
|
|
72
|
+
export type BuiltinAssertion = z.input<BuiltinAssertionSchema> & {
|
|
73
|
+
id?: string;
|
|
74
|
+
name?: string;
|
|
75
|
+
weight?: number;
|
|
76
|
+
threshold?: number;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
export const defineEvalCase = createEvalCaseDefinition<BuiltinAssertion>();
|
package/src/authoring.ts
CHANGED
package/src/core/assertion.ts
CHANGED
|
@@ -42,34 +42,23 @@ export interface AssertionImpl<C extends Assertion = Assertion> {
|
|
|
42
42
|
* `AssertionImpl`, plugins must describe their case configuration so Lux can
|
|
43
43
|
* reject invalid plans before starting a subject run.
|
|
44
44
|
*/
|
|
45
|
-
export type AssertionPlugin<
|
|
45
|
+
export type AssertionPlugin<
|
|
46
|
+
C extends Assertion = Assertion,
|
|
47
|
+
Input extends Assertion = C,
|
|
48
|
+
> = AssertionImpl<C> & {
|
|
46
49
|
configSchema: z.ZodObject & z.ZodType<C>;
|
|
50
|
+
/** Type-only input accepted while authoring before schema defaults apply. */
|
|
51
|
+
readonly __input?: Input;
|
|
47
52
|
/** Author-maintained identity for evaluator/schema behavior. */
|
|
48
53
|
pluginVersion: string;
|
|
49
54
|
};
|
|
50
55
|
|
|
51
56
|
type SchemaAssertion<S extends z.ZodObject> = z.output<S> extends Assertion ? z.output<S> : never;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
type SingleStringLiteral<T> = T extends string
|
|
56
|
-
? string extends T
|
|
57
|
-
? never
|
|
58
|
-
: true extends IsUnion<T>
|
|
59
|
-
? never
|
|
60
|
-
: T
|
|
61
|
-
: never;
|
|
57
|
+
type SchemaAssertionInput<S extends z.ZodObject> =
|
|
58
|
+
z.input<S> extends Assertion ? z.input<S> : never;
|
|
62
59
|
|
|
63
60
|
type LiteralAssertionType<S extends z.ZodObject> =
|
|
64
|
-
|
|
65
|
-
? z.input<S> extends { type: infer InputType }
|
|
66
|
-
? SingleStringLiteral<OutputType> extends infer Literal extends string
|
|
67
|
-
? [InputType, Literal] extends [Literal, InputType]
|
|
68
|
-
? Literal
|
|
69
|
-
: never
|
|
70
|
-
: never
|
|
71
|
-
: never
|
|
72
|
-
: never;
|
|
61
|
+
S["shape"]["type"] extends z.ZodLiteral<infer Literal extends string> ? Literal : never;
|
|
73
62
|
|
|
74
63
|
export type AssertionPluginDefinition<S extends z.ZodObject> = {
|
|
75
64
|
type: LiteralAssertionType<S>;
|
|
@@ -113,10 +102,25 @@ export const assertionPluginIssue = (definition: {
|
|
|
113
102
|
*/
|
|
114
103
|
export const defineAssertion = <S extends z.ZodObject>(
|
|
115
104
|
definition: AssertionPluginDefinition<S>,
|
|
116
|
-
): AssertionPlugin<SchemaAssertion<S>> => {
|
|
105
|
+
): AssertionPlugin<SchemaAssertion<S>, SchemaAssertionInput<S>> => {
|
|
117
106
|
const issue = assertionPluginIssue(definition);
|
|
118
107
|
if (issue) throw new TypeError(issue);
|
|
119
|
-
return definition as unknown as AssertionPlugin<SchemaAssertion<S>>;
|
|
108
|
+
return definition as unknown as AssertionPlugin<SchemaAssertion<S>, SchemaAssertionInput<S>>;
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
export const defineAssertionRegistry = <const Plugins extends readonly AssertionPlugin[]>(
|
|
112
|
+
...plugins: Plugins
|
|
113
|
+
): Plugins => {
|
|
114
|
+
const types = new Set<string>();
|
|
115
|
+
for (const plugin of plugins) {
|
|
116
|
+
const issue = assertionPluginIssue(plugin);
|
|
117
|
+
if (issue) throw new TypeError(issue);
|
|
118
|
+
if (types.has(plugin.type)) {
|
|
119
|
+
throw new TypeError(`assertion registry has duplicate type '${plugin.type}'`);
|
|
120
|
+
}
|
|
121
|
+
types.add(plugin.type);
|
|
122
|
+
}
|
|
123
|
+
return plugins;
|
|
120
124
|
};
|
|
121
125
|
|
|
122
126
|
export const GradingAssertionEntrySchema = z.object({
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { AssertionPlugin } from "./assertion.js";
|
|
2
|
+
import type { EvalCase } from "./case.js";
|
|
3
|
+
import type { LifecycleHooksPlugin } from "./lifecycle-hooks.js";
|
|
4
|
+
|
|
5
|
+
export type EvalCaseExtensions = {
|
|
6
|
+
assertions: readonly AssertionPlugin[];
|
|
7
|
+
fixtures: readonly LifecycleHooksPlugin[];
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const CASE_EXTENSIONS_KEY = Symbol.for("@prismatic-io/lux/eval-case-extensions");
|
|
11
|
+
const extensionState = globalThis as typeof globalThis & { [key: symbol]: unknown };
|
|
12
|
+
const sharedCaseExtensions = extensionState[CASE_EXTENSIONS_KEY];
|
|
13
|
+
// A project-local package and the CLI can load separate Lux module instances.
|
|
14
|
+
const caseExtensions =
|
|
15
|
+
sharedCaseExtensions instanceof WeakMap
|
|
16
|
+
? (sharedCaseExtensions as WeakMap<object, EvalCaseExtensions>)
|
|
17
|
+
: new WeakMap<object, EvalCaseExtensions>();
|
|
18
|
+
extensionState[CASE_EXTENSIONS_KEY] = caseExtensions;
|
|
19
|
+
|
|
20
|
+
const uniqueBy = <T>(values: readonly T[], keyOf: (value: T) => string, kind: string): T[] => {
|
|
21
|
+
const unique = new Map<string, T>();
|
|
22
|
+
for (const value of values) {
|
|
23
|
+
const key = keyOf(value);
|
|
24
|
+
const existing = unique.get(key);
|
|
25
|
+
if (existing && existing !== value) {
|
|
26
|
+
throw new TypeError(`case has conflicting ${kind} definitions for '${key}'`);
|
|
27
|
+
}
|
|
28
|
+
unique.set(key, value);
|
|
29
|
+
}
|
|
30
|
+
return [...unique.values()];
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export const collectEvalCaseExtensions = (
|
|
34
|
+
input: EvalCase,
|
|
35
|
+
assertions: readonly AssertionPlugin[] = [],
|
|
36
|
+
fixtures: readonly LifecycleHooksPlugin[] = [],
|
|
37
|
+
): EvalCaseExtensions => {
|
|
38
|
+
const availableAssertions = uniqueBy(assertions, (plugin) => plugin.type, "assertion");
|
|
39
|
+
const byType = new Map(availableAssertions.map((plugin) => [plugin.type, plugin]));
|
|
40
|
+
return {
|
|
41
|
+
assertions: uniqueBy(
|
|
42
|
+
(input.assertions ?? []).flatMap((assertion) => {
|
|
43
|
+
const plugin = byType.get(assertion.type);
|
|
44
|
+
return plugin ? [plugin] : [];
|
|
45
|
+
}),
|
|
46
|
+
(plugin) => plugin.type,
|
|
47
|
+
"assertion",
|
|
48
|
+
),
|
|
49
|
+
fixtures: uniqueBy(fixtures, (fixture) => fixture.name, "fixture"),
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export const setEvalCaseExtensions = (evalCase: EvalCase, extensions: EvalCaseExtensions): void => {
|
|
54
|
+
if (extensions.assertions.length > 0 || extensions.fixtures.length > 0) {
|
|
55
|
+
caseExtensions.set(evalCase, extensions);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export const evalCaseExtensions = (evalCase: EvalCase): EvalCaseExtensions =>
|
|
60
|
+
caseExtensions.get(evalCase) ?? { assertions: [], fixtures: [] };
|
|
61
|
+
|
|
62
|
+
export const transferEvalCaseExtensions = (source: EvalCase, target: EvalCase): void => {
|
|
63
|
+
const extensions = caseExtensions.get(source);
|
|
64
|
+
if (extensions) caseExtensions.set(target, extensions);
|
|
65
|
+
};
|
package/src/core/case.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import type { AssertionPlugin } from "./assertion.js";
|
|
3
|
+
import { collectEvalCaseExtensions, setEvalCaseExtensions } from "./case-authoring-state.js";
|
|
4
|
+
import type { LifecycleHooksPlugin } from "./lifecycle-hooks.js";
|
|
2
5
|
import { formatZodIssues } from "./zod.js";
|
|
3
6
|
|
|
4
7
|
export const FixturesRefSchema = z.union([
|
|
@@ -67,14 +70,62 @@ export const EvalCaseSchema = EvalCaseObjectSchema
|
|
|
67
70
|
});
|
|
68
71
|
export type EvalCase = z.infer<typeof EvalCaseSchema>;
|
|
69
72
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
type AssertionPlanFields = Pick<Assertion, "id" | "name" | "threshold" | "weight">;
|
|
74
|
+
type AssertionInputOf<Plugin> =
|
|
75
|
+
Plugin extends AssertionPlugin<Assertion, infer Input> ? Input & AssertionPlanFields : never;
|
|
76
|
+
|
|
77
|
+
export type EvalCaseInput<AllowedAssertion extends Assertion = Assertion> = Omit<
|
|
78
|
+
EvalCase,
|
|
79
|
+
"assertions"
|
|
80
|
+
> & {
|
|
81
|
+
assertions?: AllowedAssertion[];
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export type EvalCaseAuthoringOptions<
|
|
85
|
+
Plugins extends readonly AssertionPlugin[] = readonly AssertionPlugin[],
|
|
86
|
+
> = {
|
|
87
|
+
assertions?: Plugins;
|
|
88
|
+
fixtures?: readonly LifecycleHooksPlugin[];
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
export type EvalCaseDefinition<AllowedAssertion extends Assertion = Assertion> = {
|
|
92
|
+
(input: EvalCaseInput<AllowedAssertion>): EvalCase;
|
|
93
|
+
/**
|
|
94
|
+
* Create a case definition with selectively activated lifecycle fixtures.
|
|
95
|
+
* Further calls to `extend` append fixtures in setup order.
|
|
96
|
+
*/
|
|
97
|
+
extend<const Plugins extends readonly AssertionPlugin[] = readonly []>(
|
|
98
|
+
options: EvalCaseAuthoringOptions<Plugins>,
|
|
99
|
+
): EvalCaseDefinition<AllowedAssertion | AssertionInputOf<Plugins[number]>>;
|
|
76
100
|
};
|
|
77
101
|
|
|
102
|
+
export const createEvalCaseDefinition = <AllowedAssertion extends Assertion = Assertion>(
|
|
103
|
+
inheritedAssertions: readonly AssertionPlugin[] = [],
|
|
104
|
+
inheritedFixtures: readonly LifecycleHooksPlugin[] = [],
|
|
105
|
+
): EvalCaseDefinition<AllowedAssertion> => {
|
|
106
|
+
const define = ((input: EvalCaseInput<AllowedAssertion>): EvalCase => {
|
|
107
|
+
const parsed = EvalCaseSchema.safeParse(input);
|
|
108
|
+
if (!parsed.success) {
|
|
109
|
+
throw new Error(`Invalid eval case: ${formatZodIssues(parsed.error)}`);
|
|
110
|
+
}
|
|
111
|
+
const extensions = collectEvalCaseExtensions(
|
|
112
|
+
parsed.data,
|
|
113
|
+
inheritedAssertions,
|
|
114
|
+
inheritedFixtures,
|
|
115
|
+
);
|
|
116
|
+
setEvalCaseExtensions(parsed.data, extensions);
|
|
117
|
+
return parsed.data;
|
|
118
|
+
}) as EvalCaseDefinition<AllowedAssertion>;
|
|
119
|
+
define.extend = (({ assertions = [], fixtures = [] }: EvalCaseAuthoringOptions) =>
|
|
120
|
+
createEvalCaseDefinition(
|
|
121
|
+
[...inheritedAssertions, ...assertions],
|
|
122
|
+
[...inheritedFixtures, ...fixtures],
|
|
123
|
+
)) as EvalCaseDefinition<AllowedAssertion>["extend"];
|
|
124
|
+
return define;
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
export const defineEvalCase = createEvalCaseDefinition();
|
|
128
|
+
|
|
78
129
|
const PersistedFixturesRefSchema = z.union([
|
|
79
130
|
z.string(),
|
|
80
131
|
z.looseObject({ kind: z.literal("dir"), path: z.string() }),
|
package/src/core/driver.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import type { EventHandler } from "./emitter.js";
|
|
3
3
|
import type { Answer, Done, ErrorEvent, Interrupt, Progress, ReadyState } from "./events.js";
|
|
4
|
+
import type { FixtureValueBinding } from "./lifecycle-hooks.js";
|
|
4
5
|
|
|
5
6
|
export const ArtifactSchema = z.object({
|
|
6
7
|
path: z.string(),
|
|
@@ -28,6 +29,8 @@ export type StartContext = {
|
|
|
28
29
|
caseId?: string;
|
|
29
30
|
prompt: string;
|
|
30
31
|
fixtures?: ResolvedFixtures | undefined;
|
|
32
|
+
/** Authored fixture values selected for this case. */
|
|
33
|
+
fixtureValues?: readonly FixtureValueBinding[] | undefined;
|
|
31
34
|
/** Root containing persisted runs. Drivers may use it as an isolation boundary. */
|
|
32
35
|
runsRoot?: string | undefined;
|
|
33
36
|
runDir: string;
|
|
@@ -2,6 +2,7 @@ import { valueHash } from "./hash.js";
|
|
|
2
2
|
import {
|
|
3
3
|
type CaseLifecycleHookContext,
|
|
4
4
|
defineLifecycleHooks,
|
|
5
|
+
type FixtureValue,
|
|
5
6
|
type LifecycleHookCleanup,
|
|
6
7
|
type LifecycleHooksPlugin,
|
|
7
8
|
type SuiteLifecycleHookContext,
|
|
@@ -22,6 +23,8 @@ export type LifecycleFixturesDefinition = {
|
|
|
22
23
|
* to execution identity.
|
|
23
24
|
*/
|
|
24
25
|
identity?: unknown;
|
|
26
|
+
/** Public, serializable data made available to the selected case's driver. */
|
|
27
|
+
value?: FixtureValue;
|
|
25
28
|
suite?: LifecycleFixture<SuiteLifecycleHookContext>;
|
|
26
29
|
case?: LifecycleFixture<CaseLifecycleHookContext>;
|
|
27
30
|
};
|
|
@@ -109,8 +112,8 @@ const activateFixture = async <Context extends SuiteLifecycleHookContext>(
|
|
|
109
112
|
* Setup belongs before `use`; teardown belongs after it.
|
|
110
113
|
*/
|
|
111
114
|
export const defineFixtures = (definition: LifecycleFixturesDefinition): LifecycleHooksPlugin => {
|
|
112
|
-
if (!definition.suite && !definition.case) {
|
|
113
|
-
throw new TypeError("fixtures plugin must define suite or case");
|
|
115
|
+
if (!definition.suite && !definition.case && definition.value === undefined) {
|
|
116
|
+
throw new TypeError("fixtures plugin must define value, suite, or case");
|
|
114
117
|
}
|
|
115
118
|
if (definition.suite !== undefined && typeof definition.suite !== "function") {
|
|
116
119
|
throw new TypeError("fixtures plugin suite must be a function");
|
|
@@ -123,8 +126,10 @@ export const defineFixtures = (definition: LifecycleFixturesDefinition): Lifecyc
|
|
|
123
126
|
return defineLifecycleHooks({
|
|
124
127
|
name: definition.name,
|
|
125
128
|
pluginVersion: definition.pluginVersion,
|
|
129
|
+
...(definition.value === undefined ? {} : { value: definition.value }),
|
|
126
130
|
...(definition.identity === undefined ? {} : { identity: definition.identity }),
|
|
127
131
|
implementationHash: valueHash({
|
|
132
|
+
value: definition.value,
|
|
128
133
|
identity: definition.identity,
|
|
129
134
|
suite: definition.suite,
|
|
130
135
|
case: definition.case,
|
|
@@ -1,7 +1,15 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
1
2
|
import { valueHash } from "./hash.js";
|
|
2
3
|
|
|
3
4
|
export type LifecycleHookCleanup = () => void | Promise<void>;
|
|
4
5
|
export type LifecycleHookSetupResult = LifecycleHookCleanup | undefined;
|
|
6
|
+
export const FixtureValueSchema = z.json();
|
|
7
|
+
export type FixtureValue = z.infer<typeof FixtureValueSchema>;
|
|
8
|
+
|
|
9
|
+
export type FixtureValueBinding = {
|
|
10
|
+
name: string;
|
|
11
|
+
value: FixtureValue;
|
|
12
|
+
};
|
|
5
13
|
|
|
6
14
|
export type SuiteLifecycleHookItem = {
|
|
7
15
|
id: string;
|
|
@@ -27,6 +35,8 @@ export type LifecycleHooksPlugin = {
|
|
|
27
35
|
name: string;
|
|
28
36
|
/** Author-maintained identity for setup and teardown behavior. */
|
|
29
37
|
pluginVersion: string;
|
|
38
|
+
/** Public, serializable data made available to the selected case's driver. */
|
|
39
|
+
value?: FixtureValue;
|
|
30
40
|
/**
|
|
31
41
|
* Public, non-secret values captured by hook closures and relevant to
|
|
32
42
|
* execution identity. Included in the implementation hash.
|
|
@@ -75,8 +85,11 @@ export const lifecycleHooksPluginIssue = (
|
|
|
75
85
|
if (definition.setupCase !== undefined && typeof definition.setupCase !== "function") {
|
|
76
86
|
return "lifecycle hooks plugin setupCase must be a function";
|
|
77
87
|
}
|
|
78
|
-
if (
|
|
79
|
-
return "lifecycle hooks plugin must
|
|
88
|
+
if (definition.value !== undefined && !FixtureValueSchema.safeParse(definition.value).success) {
|
|
89
|
+
return "lifecycle hooks plugin value must be JSON-serializable";
|
|
90
|
+
}
|
|
91
|
+
if (!definition.setupSuite && !definition.setupCase && definition.value === undefined) {
|
|
92
|
+
return "lifecycle hooks plugin must define a value, setupSuite, or setupCase";
|
|
80
93
|
}
|
|
81
94
|
return undefined;
|
|
82
95
|
};
|
|
@@ -93,6 +106,7 @@ export const defineLifecycleHooks = (definition: LifecycleHooksPlugin): Lifecycl
|
|
|
93
106
|
implementationHash:
|
|
94
107
|
definition.implementationHash ??
|
|
95
108
|
valueHash({
|
|
109
|
+
value: definition.value,
|
|
96
110
|
identity: definition.identity,
|
|
97
111
|
setupSuite: definition.setupSuite,
|
|
98
112
|
setupCase: definition.setupCase,
|
|
@@ -82,6 +82,7 @@ const KILL_GRACE_MS = 5_000;
|
|
|
82
82
|
const DEFAULT_MAX_LINE_BYTES = 10_000_000;
|
|
83
83
|
const MAX_STDERR_TAIL_CHARS = 8_192;
|
|
84
84
|
const DEFAULT_MAX_ARTIFACT_FILES = 500;
|
|
85
|
+
const MAX_FIXTURE_VALUES_BYTES = 64 * 1024;
|
|
85
86
|
const ARTIFACT_SNAPSHOT_MODULE = fileURLToPath(
|
|
86
87
|
new URL("../../core/artifact-snapshot.js", import.meta.url),
|
|
87
88
|
);
|
|
@@ -139,6 +140,10 @@ class SubprocessDriverImpl implements AgentDriver {
|
|
|
139
140
|
|
|
140
141
|
async start(ctx: StartContext): Promise<ReadyState> {
|
|
141
142
|
this.artifactsDir = ctx.artifactsDir;
|
|
143
|
+
const fixtureValues = JSON.stringify(ctx.fixtureValues ?? []);
|
|
144
|
+
if (Buffer.byteLength(fixtureValues) > MAX_FIXTURE_VALUES_BYTES) {
|
|
145
|
+
throw new Error(`subprocess fixture values exceed ${MAX_FIXTURE_VALUES_BYTES} bytes`);
|
|
146
|
+
}
|
|
142
147
|
const managed = spawnManagedProcess(this.config.command, this.config.args ?? [], {
|
|
143
148
|
cwd: this.config.cwd ?? ctx.runDir,
|
|
144
149
|
env: {
|
|
@@ -147,6 +152,7 @@ class SubprocessDriverImpl implements AgentDriver {
|
|
|
147
152
|
...(ctx.caseId ? { LUX_CASE_ID: ctx.caseId } : {}),
|
|
148
153
|
LUX_RUN_DIR: ctx.runDir,
|
|
149
154
|
LUX_ARTIFACTS_DIR: ctx.artifactsDir,
|
|
155
|
+
LUX_FIXTURE_VALUES: fixtureValues,
|
|
150
156
|
LUX_PROMPT: ctx.prompt,
|
|
151
157
|
LUX_ARTIFACT_SNAPSHOT_MODULE: ARTIFACT_SNAPSHOT_MODULE,
|
|
152
158
|
},
|
package/src/index.ts
CHANGED
|
@@ -26,6 +26,10 @@ export {
|
|
|
26
26
|
TerminalAnswererConfigSchema,
|
|
27
27
|
terminalAnswerer,
|
|
28
28
|
} from "./answerers/terminal/index.js";
|
|
29
|
+
export {
|
|
30
|
+
type BuiltinAssertion,
|
|
31
|
+
defineEvalCase,
|
|
32
|
+
} from "./assertions/authoring.js";
|
|
29
33
|
// Bundled deterministic and judge assertions.
|
|
30
34
|
export {
|
|
31
35
|
type AgentScope,
|
|
@@ -185,6 +189,7 @@ export {
|
|
|
185
189
|
type AssertionResult,
|
|
186
190
|
AssertionResultSchema,
|
|
187
191
|
defineAssertion,
|
|
192
|
+
defineAssertionRegistry,
|
|
188
193
|
type EvaluateContext,
|
|
189
194
|
type GradingAssertionEntry,
|
|
190
195
|
GradingAssertionEntrySchema,
|
|
@@ -198,8 +203,9 @@ export {
|
|
|
198
203
|
AssertionSchema,
|
|
199
204
|
type DriverRef,
|
|
200
205
|
DriverRefSchema,
|
|
201
|
-
defineEvalCase,
|
|
202
206
|
type EvalCase,
|
|
207
|
+
type EvalCaseAuthoringOptions,
|
|
208
|
+
type EvalCaseDefinition,
|
|
203
209
|
EvalCaseSchema,
|
|
204
210
|
type FixturesRef,
|
|
205
211
|
FixturesRefSchema,
|
|
@@ -300,6 +306,9 @@ export {
|
|
|
300
306
|
export {
|
|
301
307
|
type CaseLifecycleHookContext,
|
|
302
308
|
defineLifecycleHooks,
|
|
309
|
+
type FixtureValue,
|
|
310
|
+
type FixtureValueBinding,
|
|
311
|
+
FixtureValueSchema,
|
|
303
312
|
type LifecycleHookCleanup,
|
|
304
313
|
type LifecycleHookSetupResult,
|
|
305
314
|
type LifecycleHooksPlugin,
|
|
@@ -57,6 +57,7 @@ const recoverStaleLock = async (lockPath: string): Promise<boolean> => {
|
|
|
57
57
|
const acquireAnnotationLock = async (path: string): Promise<() => Promise<void>> => {
|
|
58
58
|
const lockPath = `${path}.lock`;
|
|
59
59
|
const deadline = Date.now() + LOCK_WAIT_MS;
|
|
60
|
+
let attemptedRecovery = false;
|
|
60
61
|
while (true) {
|
|
61
62
|
try {
|
|
62
63
|
const owner = await publishOwnedLock(lockPath, {
|
|
@@ -69,7 +70,10 @@ const acquireAnnotationLock = async (path: string): Promise<() => Promise<void>>
|
|
|
69
70
|
};
|
|
70
71
|
} catch (error) {
|
|
71
72
|
if ((error as NodeJS.ErrnoException).code !== "EEXIST") throw error;
|
|
72
|
-
if (
|
|
73
|
+
if (!attemptedRecovery) {
|
|
74
|
+
attemptedRecovery = true;
|
|
75
|
+
if (await recoverStaleLock(lockPath)) continue;
|
|
76
|
+
}
|
|
73
77
|
if (Date.now() >= deadline) {
|
|
74
78
|
throw new Error(`timed out waiting to update grader annotations: ${path}`);
|
|
75
79
|
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { evalCaseExtensions } from "../core/case-authoring-state.js";
|
|
2
|
+
import type {
|
|
3
|
+
EvalCase,
|
|
4
|
+
FixtureValueBinding,
|
|
5
|
+
LifecycleHooksPlugin,
|
|
6
|
+
Registry,
|
|
7
|
+
} from "../core/index.js";
|
|
8
|
+
|
|
9
|
+
export const registryForEvalCase = (registry: Registry, evalCase: EvalCase): Registry => {
|
|
10
|
+
let resolved = registry;
|
|
11
|
+
for (const plugin of evalCaseExtensions(evalCase).assertions) {
|
|
12
|
+
const existing = resolved.getAssertion(plugin.type);
|
|
13
|
+
if (existing === plugin) continue;
|
|
14
|
+
if (existing) {
|
|
15
|
+
throw new TypeError(
|
|
16
|
+
`case-local assertion '${plugin.type}' conflicts with a registered implementation`,
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
resolved = resolved.withAssertion(plugin);
|
|
20
|
+
}
|
|
21
|
+
return resolved;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export const fixturesForEvalCase = (evalCase: EvalCase): readonly LifecycleHooksPlugin[] =>
|
|
25
|
+
evalCaseExtensions(evalCase).fixtures;
|
|
26
|
+
|
|
27
|
+
export const valuesForFixtures = (
|
|
28
|
+
fixtures: readonly LifecycleHooksPlugin[],
|
|
29
|
+
): FixtureValueBinding[] =>
|
|
30
|
+
fixtures.flatMap(({ name, value }) => (value === undefined ? [] : [{ name, value }]));
|
|
31
|
+
|
|
32
|
+
export const mergeLifecycleFixtures = (
|
|
33
|
+
...groups: readonly (readonly LifecycleHooksPlugin[])[]
|
|
34
|
+
): LifecycleHooksPlugin[] => {
|
|
35
|
+
const fixtures = new Map<string, LifecycleHooksPlugin>();
|
|
36
|
+
for (const fixture of groups.flat()) {
|
|
37
|
+
const existing = fixtures.get(fixture.name);
|
|
38
|
+
if (existing && existing !== fixture) {
|
|
39
|
+
throw new TypeError(`conflicting lifecycle fixture definitions for '${fixture.name}'`);
|
|
40
|
+
}
|
|
41
|
+
fixtures.set(fixture.name, fixture);
|
|
42
|
+
}
|
|
43
|
+
return [...fixtures.values()];
|
|
44
|
+
};
|