Commit graph

53641 commits

Author SHA1 Message Date
Ishaan Jaff
687d94879a
feat(lens): store in-flight runs from progress and clear them when a job ends 2026-10-03 18:01:38 -07:00
Ishaan Jaff
2a05b50c55
feat(lens): add in-flight runs to jobs and worker progress 2026-10-03 18:01:38 -07:00
Ishaan Jaff
28f70ea41d
feat(lens): slide one model rectangle over the traces being read
A single rounded rectangle carrying the provider logo and model wraps the real in-flight rows from job.reading. It translates and resizes over 250ms as traces finish in place. Before job.reading arrives it sits on a top slot showing the honest progress line, and when the run completes it fades out over 400ms. Rows have a fixed height and stable execution_id keys, so polls don't cause jumps or flicker.
2026-10-03 17:58:18 -07:00
Ishaan Jaff
5724190869
feat(lens): sum up a finished live run with time taken
doneLine reads like "Reviewed 30 traces in 31s with", measured from when reading started.
2026-10-03 17:58:16 -07:00
Ishaan Jaff
b174232308
feat(lens): show what the worker is reading and make View run obvious
Each trace in flight gets a highlighted row with the model and a live timer, and becomes its completed row in place. Completed rows show the real review time. View run is an outline button next to the progress line, and clicking anywhere on the strip opens it too.
2026-10-03 17:55:12 -07:00
Ishaan Jaff
0376a8d7c6
refactor(lens): drop client-side replay in favour of real in-flight rows
Removes the playback reducer and its pacing. liveRows lists the traces the worker is reading, from job.reading, followed by completed reviews newest first, keyed by execution_id so a trace keeps its row when it finishes.
2026-10-03 17:55:10 -07:00
Ishaan Jaff
b00cb8d733
feat(lens): simplify View run to traces and conclusions
The left pane is the trace list. A soft highlighter carrying the provider and model slides to the trace being reviewed, and clicking a row shows just Lens's reasoning and verdicts. The right pane keeps one conclusion card per check.
2026-10-03 17:47:02 -07:00
Ishaan Jaff
55d9425a82
fix(lens): group live conclusions by check with short labels
There is now one group per check_id: issue traces are the main count and pattern traces a secondary note, so there are no duplicate red and grey cards. A long instruction falls back to the humanized check id. Adds briefReasoning and traceRows for the simplified trace list, and drops helpers nothing uses.
2026-10-03 17:46:52 -07:00
Ishaan Jaff
10260da169
fix(lens): split live conclusions into issues and patterns
A check could show up twice with the same label, once as an issue and once as a pattern.
2026-10-03 17:41:20 -07:00
Ishaan Jaff
7ef76eabff
fix(lens): feed the live run from the reviews endpoint and keep View run open
LiveRun now gets its reviews from useJobReviews instead of the list, which no longer carries them. View run stays clickable while a run is queued or running, and before the first trace the opened view says what the worker is doing.
2026-10-03 17:40:35 -07:00
Ishaan Jaff
2f5fb3ef44
feat(ui): add a lens reviews query that polls the index cursor while live 2026-10-03 17:40:32 -07:00
Ishaan Jaff
db0e4df4f5
feat(lens): page job reviews by index cursor
Adds api.reviews for GET /lens/{id}/runs/{job}/reviews?after=N, with a demo implementation. appendPage adds pages in arrival order and keeps the latest 200. liveJob now keys off reviewed, since the list no longer carries reviews.
2026-10-03 17:40:30 -07:00
Ishaan Jaff
73ad24f7de
chore(ui): regenerate api types for the lens reviews endpoint 2026-10-03 17:39:38 -07:00
Ishaan Jaff
c3007bb667
test(lens): cover index cursors across out-of-order and rolled-over reviews 2026-10-03 17:37:48 -07:00
Ishaan Jaff
ccc7a1b2ac
feat(lens): take an index cursor on the reviews endpoint 2026-10-03 17:37:48 -07:00
Ishaan Jaff
8ffe1222e0
fix(lens): page live reviews by index so out-of-order reviews are never skipped 2026-10-03 17:37:48 -07:00
Ishaan Jaff
89087a0202
feat(lens): add a review page model carrying the total reviewed count 2026-10-03 17:37:48 -07:00
Ishaan Jaff
a75dab2f41
feat(lens): show the queue reason and what the worker is doing in the live strip
The progress header and the strip replace "Queued for your worker" with the concrete reason. While waiting, the strip lists the busy worker's investigations; click one to open it.
2026-10-03 17:36:52 -07:00
Ishaan Jaff
12738b0d79
feat(lens): explain why a queued investigation is waiting
Works out whether no worker is connected, the worker is busy (with its running investigations and an estimated start time), or it is just being picked up.
2026-10-03 17:36:49 -07:00
Ishaan Jaff
15e570e4c7
test(lens): cover list summaries, review polling and review access 2026-10-03 17:34:13 -07:00
Ishaan Jaff
8737002ce6
perf(lens): strip reviews and run attributes from the lens list and serve reviews separately 2026-10-03 17:34:13 -07:00
Ishaan Jaff
a8a5d41644
feat(lens): add list summaries and an incremental review filter 2026-10-03 17:34:13 -07:00
Ishaan Jaff
183d07c73e
feat(lens): add worker slot and poll interval settings 2026-10-03 17:33:08 -07:00
Ishaan Jaff
fab6291929
fix(lens): run several investigations per worker and poll every two seconds 2026-10-03 17:33:00 -07:00
Ishaan Jaff
c4fcd4b457
feat(lens): show the live run as a two-pane trace and conclusions view
Left pane: the trace being reviewed as a readable timeline, followed by Lens's reasoning and the verdict. Right pane: ranked conclusion groups with share bars, plus a trace list you can filter.
2026-10-03 17:31:34 -07:00
Ishaan Jaff
1dfcdf223e
feat(lens): keep the live run ambient until View run is clicked
The drawer no longer opens on Run or when entering a running investigation. LiveRun takes reviews as a prop so it can move to a dedicated reviews endpoint.
2026-10-03 17:31:32 -07:00
Ishaan Jaff
7494885093
feat(lens): pace live playback so each trace stays readable
Every trace now stays up for at least 1.5s. A backlog is cleared by skipping to the newest few instead of flickering through them. Conclusions count traces per check and kind, and new helpers cover share bars, group filters and flashes.
2026-10-03 17:28:28 -07:00
Ishaan Jaff
2cffbdbc95
fix(lens): list recorded agents in the run now dialog
The run now agent field used a native datalist, whose suggestions do not show inside the modal dialog, so the agent list looked empty even though /lens/agents returned names. Use the same Combobox as investigation setup.
2026-10-03 17:24:04 -07:00
Ishaan Jaff
7de044b71e
feat(lens): read review spans as a conversation timeline
Turns spans into the user's ask, tool calls with args and results, and the agent's reply, dropping system prompts. Also handles a preview cut that lands inside the Output header.
2026-10-03 17:22:13 -07:00
Ishaan Jaff
b3b7159393
style(lens): format repository contention tests 2026-10-03 17:11:30 -07:00
Ishaan Jaff
5b89b1384a
fix(lens): wait out provider rate limits and retry model calls four times 2026-10-03 17:11:24 -07:00
Ishaan Jaff
68cc5484d1
feat(lens): add an ambient live strip that opens the drawer 2026-10-03 17:04:54 -07:00
Ishaan Jaff
8e473ade78
feat(lens): put the live strip under the progress bar and drop the inline panel 2026-10-03 17:04:45 -07:00
Ishaan Jaff
09ac1663b8
feat(lens): add a live trace results drawer with readable spans 2026-10-03 17:04:40 -07:00
Ishaan Jaff
b4ef33b7a1
feat(lens): track active jobs before their first review 2026-10-03 17:04:37 -07:00
Ishaan Jaff
d16b0d7132
feat(lens): derive strip status, honest issue counts and drawer focus from a job 2026-10-03 17:00:31 -07:00
Ishaan Jaff
af1c2f1a95
feat(lens): format review span previews as readable messages 2026-10-03 17:00:29 -07:00
Ishaan Jaff
616c59c8d0
fix(ui): crop the cerebras logo viewBox to its mark so it reads at icon size 2026-10-03 16:49:55 -07:00
Ishaan Jaff
1fb70ff6be
feat(lens): collapse the live run to an ambient line with show work 2026-10-03 16:49:53 -07:00
Ishaan Jaff
d2e96c41f2
feat(lens): add a reading ticker line and replay for finished runs 2026-10-03 16:49:50 -07:00
Ishaan Jaff
9669c2454d
fix(lens): retry contended investigation updates with jittered backoff 2026-10-03 16:45:46 -07:00
Ishaan Jaff
ac4d11abbc
refactor(lens): restyle the live run as the native progress panel 2026-10-03 16:44:49 -07:00
Ishaan Jaff
25c417d8ba
fix(lens): show the live run only for real reviews and keep fixtures test-only 2026-10-03 16:44:45 -07:00
Ishaan Jaff
cac908783a
feat(lens): stream large review backlogs at 150ms or less and list newest first 2026-10-03 16:42:51 -07:00
Ishaan Jaff
d77bdf8fa4
feat(lens): show the live run on investigations and open it from run now 2026-10-03 16:36:40 -07:00
Ishaan Jaff
97225a7143
feat(lens): add live run layout with queue, reading trace and conclusions 2026-10-03 16:36:38 -07:00
Ishaan Jaff
5a68f71bfa
feat(lens): add sample reviews for previewing the live run 2026-10-03 16:36:34 -07:00
Ishaan Jaff
53275517cb
feat(lens): pick the analysis model and slow single-review pacing 2026-10-03 16:36:32 -07:00
Ishaan Jaff
e8f49b18ca
feat(lens): add live review playback model 2026-10-03 16:23:29 -07:00
Ishaan Jaff
a3bd0a6613
feat(lens): type job reviews and fill them in lens fixtures 2026-10-03 16:23:28 -07:00