Methodology
How Hetzner OSINT findings are collected, graded, written and corrected — version 2026-08-18.v4.
Version 2026-08-18.v4. This page is linked from every finding. It changes rarely; changes are dated.
What is read
Public Telegram channels from the register : Russian milbloggers, war correspondents, state media and officials (the object of study), Ukrainian units, officials, volunteers and media (read because the language barrier otherwise hides that information), and a few Western or independent aggregators used as cross-checks. Only the public web preview of each channel is read; no accounts, no private groups. Posts older than 21 days are not ingested. Nothing is ever hot-linked or re-published from channels that monetise atrocity footage.
What is kept
Every post that is read is stored in full with its date, its forward header (“forwarded from”), the SHA-256 hash of its text and, once it is cited, an archived snapshot on the Wayback Machine. Telegram lets authors delete posts retroactively; the archive link on each finding is there so a citation can still be checked later.
How a finding is made
- Relevance and cards. Each post is judged relevant or not (military drones, robots, autonomy and AI in warfare, electronic warfare, the defence-tech market, and any Dutch or German involvement). Relevant posts get English tags, a one-line blurb and a compact analyst card. Named systems, units, companies, places and officials are extracted; private individuals, rank-and-file soldiers and prisoners are never named.
- Synthesis. Recent cards are read together and turned into findings — a headline, a bottom line, a summary in plain NATO English, a “why it matters” line, and every source id used. Claims are attributed to their side; when a Ukrainian or Western source contradicts a Russian claim, the finding says so.
- Grading — rule-based, not written by the model.
- Source reliability A–F comes from the register, per channel, and is reviewed monthly.
- Information credibility 1–6 is computed from how many independent origins support the finding: forwards and reposts of the same original post count once. Two or more origins from both sides → 1; two or more origins → 2; a single fairly reliable source → 3; a single not-usually-reliable source → 4; unreliable → 5; cannot be judged → 6.
- Likelihood (how likely the claim is true) and confidence (how good the evidence is) are stated from closed vocabularies — a single Russian claim can be “likely” with “low” confidence.
- What gets its own page. Findings graded 1–3 that carry a bottom line get a permanent address; the rest stay on the list only. A page, once given, is kept: when a finding passes out of the current feed it is marked archived and its address keeps working.
- The China watch. One subject is read for separately: reports of Chinese people — soldiers, officers, advisers, instructors, technical specialists servicing equipment, observers — in Russia, occupied Ukraine or Belarus. Chinese components, deliveries and statements are a different question and are not this. Because personnel reports rarely come with the drone or AI detail the rest of the feed requires, they are published even when they carry none, and they are published across the whole grade range rather than the usual 1–3: single, unconfirmed claims appear, with their grade shown, and are meant to be read as claims. These findings are never aged out, and they collect at China watch .
- Trend watch and country lens. The Russian-milblogger trend watch and the Netherlands / Germany panels are written from the same cards, on fixed dimensions, with the previous assessment fed back so direction can be stated.
What the model does and does not do
The relevance verdicts, cards, summaries, bottom lines, trend watch and lens texts are written by an open-weight language model served from Hetzner’s inference API in Germany. Grades, source roles (origin / repost), archives, hashes, dates and the register are rule-based or human-maintained. Model and prompt versions are stored with every finding.
Corrections
Findings are never silently edited. A substantive change bumps the version and the “last substantive update” date shown on the page; a retraction keeps the page online, marked as retracted, and is listed on the corrections page . Tips and objections: use the tip form .
Limits
This is open-source reading of adversary and partisan channels. It reports what those channels claim and how their tone moves; it does not confirm claims. Geolocation is not performed here; place names come from the posts and are labelled as claimed. Coverage depends on which channels are in the register and on the public preview Telegram exposes.