Dinoer

A research campaign over a locked corpus

Two real campaigns of August 2026: what they found, the bug one of them revealed, and how a report was checked against the pages collected.

The task Dinoer is built for: explore a subject across public sources and get a report in which every claim comes from a page stored on disk, not from what the model remembers, nor from a search it was not supposed to make.

A local events listing

The question: concerts and shows within 30 km of a town, over ten days of August 2026. Sixteen discovery queries to SearXNG qualified thirteen reference domains; campagne.py collected 43 pages from them; a targeted extraction, one call per page, gave 15 positive answers, which grouped into 11 distinct events in 9 towns.

A bug found by running it. The pause between requests applied between page fetches, not between SearXNG queries. Sixteen discovery queries sent within a short time got the SearXNG instance suspended by the search engines behind it. Since that day, the pause also applies before every query.

A reputation check, and how it was verified

A second campaign, on a person and their sole-trader business, with their consent: three query targets, 28 pages kept by the light collection. The report pointed out that the sources disagreed on the registration status of the business, and set aside two businesses that were not the subject, including one whose owner has the same first name.

Checked, not taken on trust. The model’s full stream of events during the report contained exactly three events (step_start, text, step_finish) and no tool_use: nothing left the corpus while the report was written. The same kind of check had caught twelve web searches in another run. What this guarantee covers →

Getting more out of the corpus

On the events listing, an open question put to each page drew more from the same pages than the narrow extraction: whole programmes instead of single dates. The method →

Where this case stops

The automatic report is a draft: unless the manifest asks for a ranking, the pages are cut in the order they were written. And discovery has a ceiling: an unauthenticated SearXNG instance does not reach what a signed-in commercial search engine reaches, as the same reputation check measured. Both limits, measured →