v4.7.0 β Findings you can trust, and a judge that proves it
Findings are now identified by the content they point at, so dismissals stick β backed by an offline evaluation harness that keeps Conflict and Drift precision from regressing.
Galileo 4.7.0 is about earning your trust in what the analysis publishes. A Finding is now identified by where its claim lives rather than by the exact words the model quoted, so dismissing one makes it stay dismissed. Behind that sits an offline evaluation harness that replays a labeled corpus against the real prompts and refuses to let precision or recall quietly regress.
New
- A judge for the judge β a versioned corpus of labeled Conflict and Drift verdicts replays through the same prompts and validators production uses, and every change is compared against an accepted baseline. Precision and recall can no longer drift without someone noticing.
- Real-time Analysis coverage β the Sources page updates Processing, Partial, and Complete states and generation changes live, instead of waiting for a reload.
- Observability and spend visibility β every AI call is recorded with cache-aware token accounting, exported as metrics, and watched against service-level objectives that notify admins on breach.
- Browser end-to-end coverage β a real browser now exercises the interface on every change, catching the interactive behavior that server-rendered tests cannot see.
Improved
- Dismissing a Finding sticks β a claim is identified by the content it points at, not by the sentence fragment the model happened to quote, so the same issue no longer comes back reworded on the next analysis.
- Fewer wasted analyses β a single fabricated quote used to discard the correct findings that came back with it; the grounded ones are now kept.
- Rate limits pause analysis instead of sacrificing it β a provider throttling window now backs off and resumes rather than permanently degrading the pairs it touched.
- Clearer coverage reporting β per-Source details explain what was analyzed, what was skipped, and why, in plain language.
Fixed
- Interrupted analysis recovers on its own β deploys and restarts no longer strand or duplicate long-running reasoning work.
- Coverage no longer reads Complete too early β a Source added to an existing generation reopens the semantic axes instead of inheriting a finished badge.
- Deleting a Source no longer live-locks analysis β stale plans are pruned in the delete, so budget is not burned in a loop against a generation that no longer exists.
- Export links survive delivery β long download URLs no longer overflow the notification field and lose the requester's only pointer to the export.