Repository navigation
v2.18.0 — Hírgerinc / News backbone
v2.18.0 — Hírgerinc: 52 szintezett RSS-forrás, magyar hírek és forrásszint-jelvények / News backbone: 52 tiered RSS feeds, Hungarian news and source-tier badges
Magyar
A worldmonitor (AGPL-3.0) elemzéséből (lásd a memóriajegyzetet és a v2.17.0 utáni terv első lépését) az első kiadás: a hírcsatorna 19-ről 52 RSS-forrásra nő, minden forrás megbízhatósági szintet kap, és a magyar sajtó is bekerül.
Mi változott
- Szintezett forrás-regiszter (apis/utils/news-feeds.mjs): 52 forrás, mindegyik URL-jét 2026-10-08-án Magyarországról megmértem (HTTP 200). Szintek (a worldmonitor olvasata szerint): 1 hivatalos szerv/hírügynökség (UN News, IAEA, WHO), 2 nagy hírforrás (33), 3 szakmai, regionális, agytröszt (15), 4 összegyűjtő/blog (1). A szint a forrást rangsorolja, nem azt mondja, hogy egy cím igaz.
- 7 magyar forrás: Telex, Index.hu, HVG, 444.hu, 24.hu, Portfolio.hu, ATV. A címek nem fordítódnak; a „HU” jelvény jelzi a nyelvet. Mindegyik forrásnak foglalt helye van a válogatásban, hogy a nagy külföldi csatornák ne szorítsák ki.
- Új külföldi források: Guardian, UN News, Meduza, Moscow Times, Balkan Insight, ERR, Jerusalem Post, The National, Daily Sabah, ABC Australia, CNA, The Diplomat, Dawn, Mexico News Daily, InSight Crime, Defense One, The War Zone, Breaking Defense, War on the Rocks, Foreign Policy, Crisis Group, Oryx, IAEA, WHO, Krebs, OilPrice. A korábbi 19 forrás neve és szerepe változatlan.
- Állami tulajdonú/finanszírozású forrás külön jelvényt kap (jelenleg Al Jazeera és Daily Sabah). A lista szándékosan szűk: csak az egyértelmű eset kerül bele.
- Jelvények a hírcsatornában:
T1–T4(forrásszint), nyelv (HU),STATE. A magyarázat a jelvénytitleszövegében van, magyarul, angolul és franciául. - Új RSS-értelmező (apis/utils/rss.mjs): RSS 2.0, RDF (DW) és Atom, ugyanazzal a megerősített XML-értelmezővel, mint a többi adapter (DOCTYPE tiltva, 2 MiB felső korlát); amit az értelmező elutasít, azt a régi elemmintás olvasás kezeli, így egy furcsa feed nem viszi el a címeit. Forrásonként legfeljebb 15 fejléc, a címek 2000 karakterre vágva.
- Válogatás: összesen 60 cím (volt 50); a foglalt helyek (regionális 2-2, magyar 1-1, hivatalos 1-1) után egy forrás legfeljebb 5 helyet tölthet be. Mérés: egy valódi lekérdezés 1,5 s alatt lefut, 60 cím, 29 különböző forrás (a korlát előtt a CNA egymaga 14 helyet foglalt).
Ami nem változott, és miért
- A hírek továbbra sincs súlyosságuk (a Crucix nem osztályoz kulcsszóval), ezért a worldmonitor „zajszűrői” (régi cím eldobása, 3. szint alatti források külön kapuja) itt nem érnek el semmit; a szint most megjelenítési és válogatási jelzés. Ha később a hírek súlyosságot kapnak, a szint a kapu természetes bemenete.
- Az események nem hordozzák a szintet (az esemény-séma változatlan): a jelvény a hírcsatornában van. A rekordböngésző változatlan.
Ellenőrzés
- Új teszt: 4 (
test/rss-feeds.test.mjs: az értelmező RSS/RDF/Atom/levágás, a DOCTYPE-tartalék, a regiszter épsége, a szint-/nyelv-/állapot-jelvény és a forrásonkénti korlát). Futtatva: ez a fájl és adata-integrity.test.mjs(a hírek régi tesztje): 14 teszt, 0 hibás.npm run checkrendben. Nem a teljes csomag futott. - Egy hibát a saját tesztem fogott el: az egyéni feed-lista URL-jét a regiszter felülírta; javítva (a regiszter-bejegyzés alá kerül az egyéni URL).
English
From the worldmonitor (AGPL-3.0) analysis, the first release of the follow-up plan after v2.17.0: the news feed grows from 19 to 52 RSS feeds, every feed gets a reliability tier, and the Hungarian press joins.
What changed
- Tiered feed registry (apis/utils/news-feeds.mjs): 52 feeds, each URL measured from Hungary on 2026-10-08 (HTTP 200). Tiers, as World Monitor reads them: 1 official body or wire (UN News, IAEA, WHO), 2 major outlet (33), 3 specialist, regional, think tank (15), 4 aggregator or blog (1). A tier ranks the source; it does not say a headline is true.
- 7 Hungarian feeds: Telex, Index.hu, HVG, 444.hu, 24.hu, Portfolio.hu, ATV. Headlines are not translated; an "HU" tag shows the language. Each has a reserved slot in the selection so the large foreign feeds cannot crowd it out.
- New foreign feeds: Guardian, UN News, Meduza, Moscow Times, Balkan Insight, ERR, Jerusalem Post, The National, Daily Sabah, ABC Australia, CNA, The Diplomat, Dawn, Mexico News Daily, InSight Crime, Defense One, The War Zone, Breaking Defense, War on the Rocks, Foreign Policy, Crisis Group, Oryx, IAEA, WHO, Krebs, OilPrice. The name and role of the earlier 19 are unchanged.
- State-owned or state-funded outlets get their own tag (currently Al Jazeera and Daily Sabah). The list is deliberately narrow: only the clear cases.
- Tags in the ticker:
T1–T4(source tier), language (HU),STATE. The explanation is in each tag'stitle, in Hungarian, English and French. - New feed parser (apis/utils/rss.mjs): RSS 2.0, RDF (DW) and Atom, with the same hardened XML parser as the other adapters (DOCTYPE refused, 2 MiB cap); a feed it refuses is read with the older item pattern, so an odd feed does not cost its headlines. At most 15 headlines per feed, titles cut to 2000 characters.
- Selection: 60 headlines in all (was 50); after the reserved slots (regional 2 each, Hungarian 1 each, official 1 each) one feed may hold at most 5. Measured: a real sweep takes 1.5 s, 60 headlines from 29 different sources (before the cap, CNA alone held 14).
What did not change, and why
- News still has no severity (Crucix does not classify by keyword), so World Monitor's "noise gates" (drop old items, a separate gate for sources below tier 3) would achieve nothing here; the tier is a display and selection signal for now. If news gets a severity later, the tier is the natural input of such a gate.
- Events do not carry the tier (the event schema is unchanged): the tag is in the ticker. The record browser is unchanged.
Validation
- New tests: 4 (
test/rss-feeds.test.mjs: the parser RSS/RDF/Atom/truncation, the DOCTYPE fallback, registry integrity, the tier/language/state tags and the per-source cap). Run: this file anddata-integrity.test.mjs(the old news test): 14 tests, 0 failed.npm run checkpasses. The whole suite did not run. - My own test caught one bug: a custom feed list's URL was overwritten by the registry entry; fixed (the custom URL now goes over the registry entry).