lastlight-evals 0.14.0 → 0.15.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 (51) hide show
  1. package/dashboard/dist/assets/index-CcEkcmk_.css +1 -0
  2. package/dashboard/dist/assets/index-CvhUJzAp.js +113 -0
  3. package/dashboard/dist/index.html +2 -2
  4. package/dist/fake-github.js +33 -0
  5. package/dist/fake-github.js.map +1 -1
  6. package/dist/judge.js +45 -7
  7. package/dist/judge.js.map +1 -1
  8. package/dist/labels-node.js +258 -0
  9. package/dist/labels-node.js.map +1 -0
  10. package/dist/labels.js +388 -0
  11. package/dist/labels.js.map +1 -0
  12. package/dist/labels.test.js +299 -0
  13. package/dist/labels.test.js.map +1 -0
  14. package/dist/mechanism.test.js +84 -13
  15. package/dist/mechanism.test.js.map +1 -1
  16. package/dist/micro-survey-node.js +21 -93
  17. package/dist/micro-survey-node.js.map +1 -1
  18. package/dist/phase-replay-node.js +321 -0
  19. package/dist/phase-replay-node.js.map +1 -0
  20. package/dist/phase-replay.js +147 -0
  21. package/dist/phase-replay.js.map +1 -0
  22. package/dist/phase-replay.test.js +104 -0
  23. package/dist/phase-replay.test.js.map +1 -0
  24. package/dist/pr-context.js +5 -1
  25. package/dist/pr-context.js.map +1 -1
  26. package/dist/report.js +78 -0
  27. package/dist/report.js.map +1 -1
  28. package/dist/run-instance.js +1 -0
  29. package/dist/run-instance.js.map +1 -1
  30. package/dist/schema.js.map +1 -1
  31. package/dist/serve.js +87 -1
  32. package/dist/serve.js.map +1 -1
  33. package/dist/site-review.js +43 -0
  34. package/dist/site-review.js.map +1 -0
  35. package/dist/site-review.test.js +125 -0
  36. package/dist/site-review.test.js.map +1 -0
  37. package/dist/site-summary.js +273 -0
  38. package/dist/site-summary.js.map +1 -0
  39. package/dist/site-summary.test.js +198 -0
  40. package/dist/site-summary.test.js.map +1 -0
  41. package/dist/unit-survey-index.js +180 -0
  42. package/dist/unit-survey-index.js.map +1 -0
  43. package/dist/unit-survey-index.test.js +221 -0
  44. package/dist/unit-survey-index.test.js.map +1 -0
  45. package/dist/unit-survey-replay.js +439 -0
  46. package/dist/unit-survey-replay.js.map +1 -0
  47. package/dist/unit-survey-replay.test.js +286 -0
  48. package/dist/unit-survey-replay.test.js.map +1 -0
  49. package/package.json +7 -8
  50. package/dashboard/dist/assets/index-CpwdOaLn.js +0 -111
  51. package/dashboard/dist/assets/index-DyUARjkE.css +0 -1
@@ -28,8 +28,8 @@
28
28
  rel="stylesheet"
29
29
  />
30
30
  <title>Last Light — Eval Dashboard</title>
31
- <script type="module" crossorigin src="/assets/index-CpwdOaLn.js"></script>
32
- <link rel="stylesheet" crossorigin href="/assets/index-DyUARjkE.css">
31
+ <script type="module" crossorigin src="/assets/index-CvhUJzAp.js"></script>
32
+ <link rel="stylesheet" crossorigin href="/assets/index-CcEkcmk_.css">
33
33
  </head>
34
34
  <body>
35
35
  <div id="root"></div>
@@ -132,6 +132,7 @@ export async function startFakeGitHub(opts) {
132
132
  path: c.path,
133
133
  line: c.line,
134
134
  body: c.body,
135
+ ...(c.resolved ? { resolved: true } : {}),
135
136
  created_at: NOW,
136
137
  })),
137
138
  submitted: [],
@@ -379,6 +380,38 @@ export async function startFakeGitHub(opts) {
379
380
  });
380
381
  return true;
381
382
  }
383
+ // The PR's prior conversation (`GitHubClient.getPullRequestDiscussion`,
384
+ // read by core's `resolveSpecContext` for `select`). Served from the
385
+ // seeded reviews, review comments (one thread each) and the shadow
386
+ // issue's comments — plus whatever the run itself posts, as GitHub would.
387
+ if (q.includes("reviewThreads")) {
388
+ const num = Number(vars.number ?? 0);
389
+ const pr = pulls.find((p) => p.number === num);
390
+ const author = (login) => ({ __typename: /\[bot\]$/.test(login) ? "Bot" : "User", login: login.replace(/\[bot\]$/, "") });
391
+ const inline = pr ? [...pr.reviewComments, ...pr.reviews.flatMap((r) => r.comments)] : [];
392
+ json(200, {
393
+ data: {
394
+ repository: {
395
+ pullRequest: pr
396
+ ? {
397
+ reviews: { nodes: pr.reviews.map((r) => ({ author: author(r.user.login), state: r.state, body: r.body, submittedAt: r.submitted_at })) },
398
+ reviewThreads: {
399
+ nodes: inline.map((c) => ({
400
+ path: c.path,
401
+ line: c.line ?? null,
402
+ isResolved: c.resolved === true,
403
+ isOutdated: false,
404
+ comments: { nodes: [{ author: author(c.user.login), body: c.body }] },
405
+ })),
406
+ },
407
+ comments: { nodes: (issues.get(num)?.comments ?? []).map((c) => ({ author: author(c.user.login), body: c.body, createdAt: c.created_at })) },
408
+ }
409
+ : null,
410
+ },
411
+ },
412
+ });
413
+ return true;
414
+ }
382
415
  json(200, { data: null, errors: [{ message: `fake-github: unsupported GraphQL operation` }] });
383
416
  return true;
384
417
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fake-github.js","sourceRoot":"","sources":["../src/fake-github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fake-github.js","sourceRoot":"","sources":["../src/fake-github.ts"],"names":[],"mappings":"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"}
package/dist/judge.js CHANGED
@@ -23,8 +23,9 @@ function openAiCompatible(url, apiKey) {
23
23
  return {
24
24
  url,
25
25
  headers: { authorization: `Bearer ${apiKey}`, "content-type": "application/json" },
26
- body: (model, system, user, temperature) => ({
26
+ body: (model, system, user, temperature, maxTokens) => ({
27
27
  model,
28
+ ...(maxTokens !== undefined ? { max_completion_tokens: maxTokens } : {}),
28
29
  messages: [
29
30
  { role: "system", content: system },
30
31
  { role: "user", content: user },
@@ -45,6 +46,10 @@ function openAiCompatible(url, apiKey) {
45
46
  const j = json;
46
47
  return j.choices?.[0]?.message?.content ?? "";
47
48
  },
49
+ usage: (json) => {
50
+ const u = json.usage;
51
+ return { inputTokens: u?.prompt_tokens ?? null, outputTokens: u?.completion_tokens ?? null };
52
+ },
48
53
  };
49
54
  }
50
55
  function providerFor(modelId) {
@@ -57,9 +62,9 @@ function providerFor(modelId) {
57
62
  return {
58
63
  url: "https://api.anthropic.com/v1/messages",
59
64
  headers: { "x-api-key": key, "anthropic-version": "2023-06-01", "content-type": "application/json" },
60
- body: (m, system, user, temperature) => ({
65
+ body: (m, system, user, temperature, maxTokens) => ({
61
66
  model,
62
- max_tokens: 2048,
67
+ max_tokens: maxTokens ?? 2048,
63
68
  system,
64
69
  messages: [{ role: "user", content: user }],
65
70
  ...(temperature !== undefined ? { temperature } : {}),
@@ -68,6 +73,15 @@ function providerFor(modelId) {
68
73
  const j = json;
69
74
  return (j.content ?? []).filter((b) => b.type === "text").map((b) => b.text ?? "").join("");
70
75
  },
76
+ usage: (json) => {
77
+ const u = json.usage;
78
+ if (!u)
79
+ return { inputTokens: null, outputTokens: null };
80
+ return {
81
+ inputTokens: (u.input_tokens ?? 0) + (u.cache_read_input_tokens ?? 0) + (u.cache_creation_input_tokens ?? 0),
82
+ outputTokens: u.output_tokens ?? null,
83
+ };
84
+ },
71
85
  };
72
86
  }
73
87
  if (family === "openrouter") {
@@ -76,7 +90,7 @@ function providerFor(modelId) {
76
90
  throw new Error("judge: OPENROUTER_API_KEY not set for an openrouter judge model");
77
91
  // openrouter keeps the vendor prefix (e.g. `anthropic/claude-...`).
78
92
  const or = openAiCompatible("https://openrouter.ai/api/v1/chat/completions", key);
79
- return { ...or, body: (_m, s, u, t) => or.body(model, s, u, t) };
93
+ return { ...or, body: (_m, s, u, t, mt) => or.body(model, s, u, t, mt) };
80
94
  }
81
95
  if (family === "fireworks") {
82
96
  const key = process.env.FIREWORKS_API_KEY;
@@ -113,11 +127,11 @@ export function defaultJudgeModel() {
113
127
  return "openrouter/anthropic/claude-sonnet-4.6";
114
128
  throw new Error("judge: no provider key set (ANTHROPIC_API_KEY / OPENAI_API_KEY / OPENROUTER_API_KEY)");
115
129
  }
116
- async function post(provider, model, system, user, temperature) {
130
+ async function postRaw(provider, model, system, user, temperature, maxTokens) {
117
131
  const res = await fetch(provider.url, {
118
132
  method: "POST",
119
133
  headers: provider.headers,
120
- body: JSON.stringify(provider.body(model, system, user, temperature)),
134
+ body: JSON.stringify(provider.body(model, system, user, temperature, maxTokens)),
121
135
  });
122
136
  if (!res.ok) {
123
137
  const text = await res.text().catch(() => "");
@@ -125,7 +139,10 @@ async function post(provider, model, system, user, temperature) {
125
139
  err.status = res.status;
126
140
  throw err;
127
141
  }
128
- return provider.extract(await res.json());
142
+ return res.json();
143
+ }
144
+ async function post(provider, model, system, user, temperature) {
145
+ return provider.extract(await postRaw(provider, model, system, user, temperature));
129
146
  }
130
147
  /**
131
148
  * One judge turn (system + user) returning the assistant text. Temperature 0,
@@ -144,6 +161,27 @@ export async function judge(model, system, user) {
144
161
  throw err;
145
162
  }
146
163
  }
164
+ /**
165
+ * {@link judge}'s call — same provider routing, same temperature-0-then-retry —
166
+ * returning the token usage beside the text, for a harness step that has to
167
+ * report what it spent (micro-site-review's `--leads summary`).
168
+ */
169
+ export async function complete(model, system, user, opts = {}) {
170
+ const provider = providerFor(model);
171
+ const wm = wireModel(model);
172
+ const once = async (temperature) => {
173
+ const json = await postRaw(provider, wm, system, user, temperature, opts.maxTokens);
174
+ return { text: provider.extract(json), ...provider.usage(json) };
175
+ };
176
+ try {
177
+ return await once(0);
178
+ }
179
+ catch (err) {
180
+ if (err.status === 400)
181
+ return once(undefined);
182
+ throw err;
183
+ }
184
+ }
147
185
  /** Parse a JSON object out of a judge reply, tolerating ```json fences and
148
186
  * leading/trailing prose. Returns null if nothing parseable is found. */
149
187
  export function parseJudgeJson(text) {
package/dist/judge.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"judge.js","sourceRoot":"","sources":["../src/judge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"judge.js","sourceRoot":"","sources":["../src/judge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,258 @@
1
+ /**
2
+ * The Node half of human grading (`labels.ts` holds the contract, the key rule
3
+ * and the metrics): scan the phase-replay reports for findings, read each
4
+ * finding's full text from the `findings.jsonl` the replay saved beside the
5
+ * site's session log, read a code excerpt from the fixture checkout, attach the
6
+ * case gold, and append labels.
7
+ *
8
+ * Only `site-review` reports feed it today. Their report carries a finding's
9
+ * title (cut to 200 chars) but not its mechanism/consequence, so the text is
10
+ * joined from `sessions/<report>/<case>/<site>/findings.jsonl` — matched on
11
+ * path + line + title. A finding whose text cannot be read is counted in
12
+ * `unreadable` and NOT listed, because its label key (which hashes the
13
+ * mechanism) would change once the text appeared. Falsify / adjudicate /
14
+ * posted-review findings slot in as further `collect…` functions producing
15
+ * `RawFinding`s with their own `source`.
16
+ *
17
+ * Tolerant of reports still being written (two paid replays may be running):
18
+ * a torn or partial report is skipped or read as far as it goes.
19
+ */
20
+ import { appendFileSync, existsSync, mkdirSync, readdirSync, readFileSync, statSync } from "node:fs";
21
+ import { dirname, join, resolve, sep } from "node:path";
22
+ import { agreementMetrics, dedupFindings, foldLabels, foldProposals, graderOfFile, LABELS_DIR, LABELS_FILE, parseLabelLines, parseProposalLines, prIdentity, } from "./labels.js";
23
+ import { PHASE_REPLAY_DIR, PHASE_REPLAY_VERSION } from "./phase-replay.js";
24
+ export const EXCERPT_CONTEXT = 8;
25
+ export function labelsFilePath(resultsRoot) {
26
+ return join(resultsRoot, LABELS_DIR, LABELS_FILE);
27
+ }
28
+ export function readLabels(file) {
29
+ if (!existsSync(file))
30
+ return new Map();
31
+ return foldLabels(parseLabelLines(readFileSync(file, "utf8")));
32
+ }
33
+ /**
34
+ * Every `proposals-<grader>.jsonl` in `dir` (the labels dir), folded: last
35
+ * write per (grader, key) wins. A file being written right now may end in a
36
+ * torn line — it is skipped. Never touches `findings.jsonl`.
37
+ */
38
+ export function readProposals(dir) {
39
+ const m = new Map();
40
+ let names;
41
+ try {
42
+ names = readdirSync(dir).sort();
43
+ }
44
+ catch {
45
+ return m;
46
+ }
47
+ for (const name of names) {
48
+ const grader = graderOfFile(name);
49
+ if (!grader)
50
+ continue;
51
+ try {
52
+ foldProposals(parseProposalLines(readFileSync(join(dir, name), "utf8"), grader), m);
53
+ }
54
+ catch {
55
+ /* unreadable — skip */
56
+ }
57
+ }
58
+ return m;
59
+ }
60
+ /** Append one label line (the finding text snapshotted onto it) and return it. */
61
+ export function appendLabel(file, input, finding, now = new Date()) {
62
+ const label = {
63
+ ...input,
64
+ gradedAt: now.toISOString(),
65
+ finding: {
66
+ pr: finding.pr,
67
+ path: finding.path,
68
+ line: finding.line,
69
+ title: finding.title,
70
+ mechanism: finding.mechanism,
71
+ consequence: finding.consequence,
72
+ },
73
+ };
74
+ mkdirSync(dirname(file), { recursive: true });
75
+ // One write per line: a single appendFileSync of < PIPE_BUF-ish size is not
76
+ // interleaved with another process's, and a torn tail is skipped by the parser.
77
+ appendFileSync(file, `${JSON.stringify(label)}\n`);
78
+ return label;
79
+ }
80
+ /**
81
+ * `<workspace>/evals/datasets/pr-review/instances.json`, where the workspace is
82
+ * the results root's parent (then cwd). Absent is fine: the report's own gold
83
+ * summaries are shown.
84
+ */
85
+ export function readInstanceGold(resultsRoot) {
86
+ const candidates = [
87
+ join(dirname(resolve(resultsRoot)), "evals", "datasets", "pr-review", "instances.json"),
88
+ resolve(process.cwd(), "evals", "datasets", "pr-review", "instances.json"),
89
+ ];
90
+ for (const file of candidates) {
91
+ try {
92
+ if (!existsSync(file))
93
+ continue;
94
+ const list = JSON.parse(readFileSync(file, "utf8"));
95
+ return new Map(list.map((i) => [i.instance_id, (i.review_gold ?? []).map((g) => g.description ?? "")]));
96
+ }
97
+ catch {
98
+ /* unreadable — fall through */
99
+ }
100
+ }
101
+ return new Map();
102
+ }
103
+ // ── fixture excerpts ────────────────────────────────────────────────────────
104
+ /** `<fixture>/sandboxes/<task>/<repo>` — the dir holding `.git`; `null` when absent. */
105
+ function fixtureCheckout(fixture, cache) {
106
+ if (cache.has(fixture))
107
+ return cache.get(fixture);
108
+ let out = null;
109
+ try {
110
+ const sandboxes = join(fixture, "sandboxes");
111
+ for (const task of readdirSync(sandboxes)) {
112
+ const taskDir = join(sandboxes, task);
113
+ if (!statSync(taskDir).isDirectory())
114
+ continue;
115
+ const repo = readdirSync(taskDir).find((e) => existsSync(join(taskDir, e, ".git")));
116
+ if (repo) {
117
+ out = join(taskDir, repo);
118
+ break;
119
+ }
120
+ }
121
+ }
122
+ catch {
123
+ out = null;
124
+ }
125
+ cache.set(fixture, out);
126
+ return out;
127
+ }
128
+ export function readExcerpt(checkout, path, line, context = EXCERPT_CONTEXT) {
129
+ const file = resolve(checkout, path);
130
+ if (file !== resolve(checkout) && !file.startsWith(resolve(checkout) + sep))
131
+ return null;
132
+ try {
133
+ const all = readFileSync(file, "utf8").split("\n");
134
+ const start = Math.max(1, line - context);
135
+ const end = Math.min(all.length, line + context);
136
+ if (start > all.length)
137
+ return null;
138
+ return { startLine: start, lines: all.slice(start - 1, end) };
139
+ }
140
+ catch {
141
+ return null;
142
+ }
143
+ }
144
+ function readFindingsJsonl(file) {
145
+ try {
146
+ return readFileSync(file, "utf8")
147
+ .split("\n")
148
+ .filter((l) => l.trim())
149
+ .flatMap((l) => {
150
+ try {
151
+ const v = JSON.parse(l);
152
+ return v && typeof v === "object" && !Array.isArray(v) ? [v] : [];
153
+ }
154
+ catch {
155
+ return [];
156
+ }
157
+ });
158
+ }
159
+ catch {
160
+ return [];
161
+ }
162
+ }
163
+ /** `/data/<rel>` → `<resultsRoot>/<rel>`, refusing anything outside the root. */
164
+ function dataUrlToFile(resultsRoot, url) {
165
+ if (!url.startsWith("/data/"))
166
+ return null;
167
+ const abs = resolve(resultsRoot, url.slice("/data/".length));
168
+ const base = resolve(resultsRoot);
169
+ return abs.startsWith(base + sep) ? abs : null;
170
+ }
171
+ function caseGold(c, full) {
172
+ const desc = full.get(c.instanceId);
173
+ return (c.gold ?? []).map((g, i) => ({ index: i, ...g, ...(desc?.[i] ? { description: desc[i] } : {}) }));
174
+ }
175
+ /** Every site-review finding in `<resultsRoot>/phase-replay/*.json`, one per appearance. */
176
+ export function collectSiteReviewFindings(resultsRoot) {
177
+ const dir = join(resultsRoot, PHASE_REPLAY_DIR);
178
+ const raw = [];
179
+ let unreadable = 0;
180
+ if (!existsSync(dir))
181
+ return { raw, unreadable };
182
+ const instanceGold = readInstanceGold(resultsRoot);
183
+ const checkouts = new Map();
184
+ const excerpts = new Map();
185
+ for (const name of readdirSync(dir).sort()) {
186
+ if (!name.endsWith(".json"))
187
+ continue;
188
+ let report;
189
+ try {
190
+ report = JSON.parse(readFileSync(join(dir, name), "utf8"));
191
+ }
192
+ catch {
193
+ continue; // torn or not JSON
194
+ }
195
+ if (!report || report.version !== PHASE_REPLAY_VERSION || report.kind !== "site-review" || !Array.isArray(report.cases))
196
+ continue;
197
+ const reportId = name.replace(/\.json$/, "");
198
+ for (const c of report.cases) {
199
+ const sr = c.siteReview;
200
+ if (!sr || !Array.isArray(sr.findings) || !sr.findings.length)
201
+ continue;
202
+ const gold = caseGold(c, instanceGold);
203
+ const fileCache = new Map();
204
+ for (const f of sr.findings) {
205
+ const site = sr.sites?.find((s) => s.id === f.site);
206
+ const sessionFile = site?.session ? dataUrlToFile(resultsRoot, site.session) : null;
207
+ const jsonl = sessionFile ? join(dirname(sessionFile), "findings.jsonl") : null;
208
+ if (jsonl && !fileCache.has(jsonl))
209
+ fileCache.set(jsonl, readFindingsJsonl(jsonl));
210
+ const lines = jsonl ? (fileCache.get(jsonl) ?? []) : [];
211
+ const full = lines.find((l) => l.path === f.path && l.line === f.line && typeof l.title === "string" && l.title.slice(0, 200) === f.title);
212
+ if (!full || typeof full.mechanism !== "string") {
213
+ unreadable++;
214
+ continue;
215
+ }
216
+ const checkout = c.fixture ? fixtureCheckout(c.fixture, checkouts) : null;
217
+ const exKey = `${checkout}\n${f.path}\n${f.line}`;
218
+ if (!excerpts.has(exKey))
219
+ excerpts.set(exKey, checkout ? readExcerpt(checkout, f.path, f.line) : null);
220
+ raw.push({
221
+ pr: prIdentity(c.instanceId),
222
+ path: f.path,
223
+ line: f.line,
224
+ title: full.title,
225
+ mechanism: full.mechanism,
226
+ consequence: typeof full.consequence === "string" ? full.consequence : "",
227
+ strength: f.strength,
228
+ excerpt: excerpts.get(exKey) ?? null,
229
+ gold,
230
+ appearance: {
231
+ source: "site-review",
232
+ reportId,
233
+ reportLabel: typeof report.label === "string" ? report.label : reportId,
234
+ instanceId: c.instanceId,
235
+ arm: c.arm,
236
+ repeat: c.repeat,
237
+ site: f.site,
238
+ session: site?.session ?? null,
239
+ ...(f.gold !== undefined ? { judgeGold: f.gold } : {}),
240
+ },
241
+ });
242
+ }
243
+ }
244
+ }
245
+ return { raw, unreadable };
246
+ }
247
+ /**
248
+ * `GET /api/findings`: every finding, deduplicated by label key, with its
249
+ * current human label and any machine proposals (read from the labels file's
250
+ * directory), plus per-grader agreement with the human labels.
251
+ */
252
+ export function buildFindings(resultsRoot, generatedAt, labelsFile = labelsFilePath(resultsRoot)) {
253
+ const { raw, unreadable } = collectSiteReviewFindings(resultsRoot);
254
+ const findings = dedupFindings(raw, readLabels(labelsFile), readProposals(dirname(labelsFile)));
255
+ findings.sort((a, b) => a.pr.localeCompare(b.pr) || a.path.localeCompare(b.path) || a.line - b.line);
256
+ return { generatedAt, findings, unreadable, agreement: agreementMetrics(findings) };
257
+ }
258
+ //# sourceMappingURL=labels-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"labels-node.js","sourceRoot":"","sources":["../src/labels-node.ts"],"names":[],"mappings":"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"}