SPB Git forge

spb/websensor

Public
33commits 1branches 0releases
3.4 MBsize
maindefault branch
10 days agolast push
TypeScript 55.4% Python 43.2% SQL 1.2%
64.4 KB · 1,543 lines yaml
Raw Blame History
1# config/sources.d/12-energy-climate-weather.yaml — energy agencies & regulators, grid/system operators,2# oil & gas, pipelines, utilities, renewables & equipment, nuclear & new energy, weather & hazard agencies,3# climate bodies & analysts. Written 2026-09-08; every sensor below passed apps/engine/src/validate.ts.4# Blocked organizations (403 bot management, client-rendered news, no feed) are kept only with `notes:`.5sources:6  # ───────────────────────── A · Energy agencies & regulators ─────────────────────────7  - id: eia8    name: U.S. Energy Information Administration9    domain: eia.gov10    homepage: https://www.eia.gov11    categories: [energy, statistics, government]12    tier: A13    weight: 1.414    aliases: [eia, energy information administration]15    products:16      - { name: Today in Energy, type: product }17      - { name: Short-Term Energy Outlook, type: product, aliases: [steo] }18      - { name: Weekly Petroleum Status Report, type: product, aliases: [wpsr] }19    discover: { rss: true, sitemap: false }20    sensors:21      - { name: today in energy feed, url: "https://www.eia.gov/rss/todayinenergy.xml", type: RSS, connector: rss, tier: A }22      - { name: press releases feed, url: "https://www.eia.gov/rss/press_rss.xml", type: RSS, connector: rss, tier: B }23      - { name: this week in petroleum feed, url: "https://www.eia.gov/petroleum/weekly/includes/week_in_petroleum_rss.xml", type: RSS, connector: rss, tier: B }24  - id: iea25    name: International Energy Agency26    domain: iea.org27    homepage: https://www.iea.org28    categories: [energy, international]29    tier: B30    weight: 1.331    aliases: [iea]32    products:33      - { name: World Energy Outlook, type: product, aliases: [weo] }34      - { name: Oil Market Report, type: product, aliases: [omr] }35    discover: { rss: false, sitemap: false, pages: true }36    notes: "news.rss and sitemap.xml return 403 (bot management); only the server-rendered news index is reachable."37    sensors:38      - { name: news index, url: "https://www.iea.org/news", type: HTML, connector: http, tier: B }39  - id: opec40    name: OPEC41    domain: opec.org42    homepage: https://www.opec.org43    categories: [energy, international]44    tier: B45    weight: 1.346    aliases: [organization of the petroleum exporting countries, opec+]47    products:48      - { name: Monthly Oil Market Report, type: product, aliases: [momr] }49    discover: { rss: false, sitemap: false }50    notes: "press_releases.rss, sitemap.xml and every HTML page answer 403 to non-browser clients — kept for entity linking only."51  - id: irena52    name: International Renewable Energy Agency53    domain: irena.org54    homepage: https://www.irena.org55    categories: [energy, international]56    tier: C57    aliases: [irena]58    discover: { rss: false, sitemap: true }59    notes: "No RSS; /News answers 403 to bots. Sitemap only."60    sensors:61      - { name: sitemap, url: "https://www.irena.org/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }62  - id: ferc63    name: Federal Energy Regulatory Commission64    domain: ferc.gov65    homepage: https://www.ferc.gov66    categories: [energy, government]67    tier: B68    weight: 1.269    aliases: [ferc]70    discover: { rss: false, sitemap: false }71    notes: "rss.xml, sitemap.xml and news pages return 403 (Akamai) even with a browser UA — no sensor possible without a fallback budget."72  - id: nerc73    name: North American Electric Reliability Corporation74    domain: nerc.com75    homepage: https://www.nerc.com76    categories: [energy, standards]77    tier: B78    weight: 1.179    aliases: [nerc]80    discover: { rss: false, sitemap: true }81    sensors:82      - { name: sitemap, url: "https://www.nerc.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 4000 } }83      - { name: newsroom, url: "https://www.nerc.com/newsroom", type: HTML, connector: http, tier: B }84  - id: us-nrc85    name: U.S. Nuclear Regulatory Commission86    domain: nrc.gov87    homepage: https://www.nrc.gov88    categories: [energy, government]89    tier: B90    weight: 1.291    aliases: [nrc, nuclear regulatory commission]92    discover: { rss: false, sitemap: false }93    notes: "All feeds (public-involve/rss) and news pages return 403 to non-browser clients — kept for entity linking only."94  - id: cer95    name: Canada Energy Regulator96    domain: cer-rec.gc.ca97    homepage: https://www.cer-rec.gc.ca98    categories: [energy, government]99    tier: B100    aliases: [cer, régie de l'énergie du canada, rec]101    discover: { rss: false, sitemap: false, pages: true }102    notes: "rss/news-eng.xml returns 403; the What's New archive is server-rendered."103    sensors:104      - { name: what's new, url: "https://www.cer-rec.gc.ca/en/about/news-room/whats-new/", type: HTML, connector: http, tier: B }105  - id: regie-energie-quebec106    name: Régie de l'énergie du Québec107    domain: regie-energie.qc.ca108    homepage: https://www.regie-energie.qc.ca109    categories: [energy, government]110    tier: B111    aliases: [régie de l'énergie, regie de l'energie]112    discover: { rss: true, sitemap: true, pages: true }113    sensors:114      - { name: nouvelles et décisions, url: "https://www.regie-energie.qc.ca/fr/nouvelles", type: HTML, connector: http, tier: B }115      - { name: communiqués de presse, url: "https://www.regie-energie.qc.ca/fr/la-regie/publications-documentation/communiques-de-presse-de-la-regie", type: HTML, connector: http, tier: C }116  - id: ofgem117    name: Ofgem118    domain: ofgem.gov.uk119    homepage: https://www.ofgem.gov.uk120    categories: [energy, government]121    tier: B122    aliases: [office of gas and electricity markets]123    discover: { rss: false, sitemap: true }124    notes: "rss.xml is empty and the news index is client-rendered; the paginated sitemap is the usable endpoint."125    sensors:126      - { name: sitemap, url: "https://www.ofgem.gov.uk/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 4000, maxChildren: 10 } }127  - id: acer-energy128    name: ACER — EU Agency for the Cooperation of Energy Regulators129    domain: acer.europa.eu130    homepage: https://www.acer.europa.eu131    categories: [energy, government, international]132    tier: B133    aliases: [acer]134    discover: { rss: true, sitemap: true }135    sensors:136      - { name: news feed, url: "https://www.acer.europa.eu/rss.xml", type: RSS, connector: rss, tier: B }137  - id: bundesnetzagentur138    name: Bundesnetzagentur139    domain: bundesnetzagentur.de140    homepage: https://www.bundesnetzagentur.de141    categories: [energy, telecom, government]142    tier: B143    aliases: [bnetza, federal network agency]144    discover: { rss: true }145    sensors:146      - { name: aktuelles feed, url: "https://bundesnetzagentur.de/rss/news", type: RSS, connector: rss, tier: B, config: { maxItems: 50 } }147  - id: cre-france148    name: Commission de régulation de l'énergie149    domain: cre.fr150    homepage: https://www.cre.fr151    categories: [energy, government]152    tier: B153    aliases: [cre]154    discover: { rss: false, sitemap: true, pages: true }155    sensors:156      - { name: actualités, url: "https://www.cre.fr/actualites/toute-lactualite.html", type: HTML, connector: http, tier: B }157      - { name: sitemap, url: "https://www.cre.fr/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }158  - id: aer-alberta159    name: Alberta Energy Regulator160    domain: aer.ca161    homepage: https://www.aer.ca162    categories: [energy, government]163    tier: B164    aliases: [aer, alberta energy regulator]165    discover: { rss: false, sitemap: false }166    notes: "Every path (including /rss) answers 403 to non-browser clients — no sensor."167168  # ───────────────────────── B · Grid & system operators ─────────────────────────169  - id: ercot170    name: ERCOT171    domain: ercot.com172    homepage: https://www.ercot.com173    categories: [energy, infrastructure]174    tier: A175    weight: 1.2176    aliases: [electric reliability council of texas, texas grid]177    discover: { rss: false, sitemap: true, pages: true }178    sensors:179      - { name: news releases, url: "https://www.ercot.com/news/releases", type: HTML, connector: http, tier: A }180      - { name: sitemap, url: "https://www.ercot.com/static-assets/data/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 5000 } }181  - id: caiso182    name: California ISO183    domain: caiso.com184    homepage: https://www.caiso.com185    categories: [energy, infrastructure]186    tier: A187    weight: 1.2188    aliases: [caiso, california independent system operator]189    discover: { rss: false, sitemap: true, pages: true }190    sensors:191      - { name: news, url: "https://www.caiso.com/about/news", type: HTML, connector: http, tier: A }192  - id: pjm193    name: PJM Interconnection194    domain: pjm.com195    homepage: https://www.pjm.com196    categories: [energy, infrastructure]197    tier: A198    weight: 1.2199    aliases: [pjm]200    products:201      - { name: Inside Lines, type: product }202    discover: { rss: true, sitemap: true }203    sensors:204      - { name: inside lines feed, url: "https://insidelines.pjm.com/feed/", type: RSS, connector: rss, tier: A }205      - { name: sitemap, url: "https://www.pjm.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }206  - id: miso207    name: MISO — Midcontinent Independent System Operator208    domain: misoenergy.org209    homepage: https://www.misoenergy.org210    categories: [energy, infrastructure]211    tier: B212    aliases: [miso]213    discover: { rss: false, sitemap: false }214    notes: "Cloudflare bot management: every path answers 403 to non-browser clients."215  - id: nyiso216    name: New York ISO217    domain: nyiso.com218    homepage: https://www.nyiso.com219    categories: [energy, infrastructure]220    tier: B221    aliases: [nyiso, new york independent system operator]222    discover: { rss: false, sitemap: true, pages: true }223    sensors:224      - { name: press releases, url: "https://www.nyiso.com/press", type: HTML, connector: http, tier: B }225  - id: iso-ne226    name: ISO New England227    domain: iso-ne.com228    homepage: https://www.iso-ne.com229    categories: [energy, infrastructure]230    tier: B231    aliases: [iso-ne, iso new england]232    products:233      - { name: ISO Newswire, type: product }234    discover: { rss: true, sitemap: true, pages: true }235    sensors:236      - { name: iso newswire feed, url: "https://isonewswire.com/feed/", type: RSS, connector: rss, tier: B }237      - { name: press releases, url: "https://www.iso-ne.com/about/news-media/press-releases", type: HTML, connector: http, tier: B }238  - id: spp239    name: Southwest Power Pool240    domain: spp.org241    homepage: https://www.spp.org242    categories: [energy, infrastructure]243    tier: B244    aliases: [spp]245    discover: { rss: false, sitemap: true, pages: true }246    sensors:247      - { name: newsroom, url: "https://www.spp.org/newsroom", type: HTML, connector: http, tier: B }248  - id: ieso249    name: IESO — Independent Electricity System Operator (Ontario)250    domain: ieso.ca251    homepage: https://www.ieso.ca252    categories: [energy, infrastructure]253    tier: B254    weight: 1.1255    aliases: [ieso, ontario grid operator]256    discover: { rss: false, sitemap: true, pages: true }257    sensors:258      - { name: news releases, url: "https://www.ieso.ca/en/Corporate-IESO/Media/News-Releases", type: HTML, connector: http, tier: B }259      - { name: news sitemap, url: "https://ieso.ca/news-sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 4000 } }260  - id: aeso261    name: Alberta Electric System Operator262    domain: aeso.ca263    homepage: https://www.aeso.ca264    categories: [energy, infrastructure]265    tier: B266    aliases: [aeso]267    discover: { rss: true, sitemap: true, pages: true }268    sensors:269      - { name: news feed, url: "https://www.aeso.ca/rss/", type: RSS, connector: rss, tier: B }270      - { name: newsroom, url: "https://www.aeso.ca/aeso/newsroom/", type: HTML, connector: http, tier: B }271  - id: hydro-quebec272    name: Hydro-Québec273    domain: hydroquebec.com274    homepage: https://www.hydroquebec.com275    categories: [energy, infrastructure]276    tier: A277    weight: 1.3278    aliases: [hydro quebec, hydro-québec, hq]279    discover: { rss: true, sitemap: true, pages: true }280    sensors:281      - { name: newsroom feed, url: "https://news.hydroquebec.com/news/rss/5/salle-de-nouvelles", type: RSS, connector: rss, tier: A, config: { maxItems: 50 } }282      - { name: sitemap, url: "https://hydroquebec.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 4000 } }283  - id: neso284    name: NESO — National Energy System Operator (GB)285    domain: neso.energy286    homepage: https://www.neso.energy287    categories: [energy, infrastructure]288    tier: A289    weight: 1.1290    aliases: [neso, national energy system operator, national grid eso]291    discover: { rss: true, sitemap: true, pages: true }292    sensors:293      - { name: news feed, url: "https://www.neso.energy/rss.xml", type: RSS, connector: rss, tier: A }294      - { name: news and events, url: "https://www.neso.energy/news", type: HTML, connector: http, tier: B }295  - id: national-grid296    name: National Grid297    domain: nationalgrid.com298    homepage: https://www.nationalgrid.com299    categories: [energy, infrastructure]300    tier: B301    weight: 1.1302    aliases: [national grid plc]303    discover: { rss: false, sitemap: false }304    notes: "rss.xml answers 403 to the engine fetcher (bot management) — no sensor."305  - id: rte306    name: RTE — Réseau de Transport d'Électricité307    domain: rte-france.com308    homepage: https://www.rte-france.com309    categories: [energy, infrastructure]310    tier: B311    weight: 1.1312    aliases: [rte, rte france]313    discover: { rss: false, sitemap: true, pages: true }314    sensors:315      - { name: newsroom, url: "https://www.rte-france.com/newsroom", type: HTML, connector: http, tier: B }316      - { name: sitemap, url: "https://www.rte-france.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }317  - id: entsoe318    name: ENTSO-E319    domain: entsoe.eu320    homepage: https://www.entsoe.eu321    categories: [energy, infrastructure, international]322    tier: B323    weight: 1.2324    aliases: [entso-e, european network of transmission system operators for electricity]325    discover: { rss: true, sitemap: true }326    sensors:327      - { name: news feed, url: "https://www.entsoe.eu/rss/news.xml", type: RSS, connector: rss, tier: B }328      - { name: position papers feed, url: "https://www.entsoe.eu/rss/positions.xml", type: RSS, connector: rss, tier: C }329  - id: aemo330    name: AEMO — Australian Energy Market Operator331    domain: aemo.com.au332    homepage: https://www.aemo.com.au333    categories: [energy, infrastructure]334    tier: B335    aliases: [aemo]336    discover: { rss: false, sitemap: false }337    notes: "403 (bot management) on every path including /newsroom and /rss — no sensor."338  - id: elia339    name: Elia Group340    domain: elia.be341    homepage: https://www.elia.be342    categories: [energy, infrastructure]343    tier: C344    aliases: [elia]345    discover: { rss: false, sitemap: false }346    notes: "403 on every path to non-browser clients — no sensor."347  - id: tennet348    name: TenneT349    domain: tennet.eu350    homepage: https://www.tennet.eu351    categories: [energy, infrastructure]352    tier: B353    aliases: [tennet tso]354    discover: { rss: false, sitemap: true, pages: true }355    notes: "/rss returns 403; the news index is server-rendered."356    sensors:357      - { name: news, url: "https://www.tennet.eu/news", type: HTML, connector: http, tier: B }358  - id: 50hertz359    name: 50Hertz360    domain: 50hertz.com361    homepage: https://www.50hertz.com362    categories: [energy, infrastructure]363    tier: C364    aliases: [50 hertz]365    discover: { rss: false, sitemap: false }366    notes: "Site redirected every probe to a maintenance error page (wartung.50hertz.com) on 2026-09-08 — no sensor; re-probe later."367  - id: amprion368    name: Amprion369    domain: amprion.net370    homepage: https://www.amprion.net371    categories: [energy, infrastructure]372    tier: C373    discover: { rss: false, sitemap: true }374    sensors:375      - { name: sitemap (en), url: "https://www.amprion.net/Sitemap-EN.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }376  - id: terna377    name: Terna378    domain: terna.it379    homepage: https://www.terna.it380    categories: [energy, infrastructure]381    tier: B382    aliases: [terna spa]383    discover: { rss: false, sitemap: false }384    notes: "Press-release index is client-rendered (thin) and no feed or sitemap was found — no sensor."385  - id: red-electrica386    name: Red Eléctrica (Redeia)387    domain: ree.es388    homepage: https://www.ree.es389    categories: [energy, infrastructure]390    tier: B391    aliases: [ree, redeia, red electrica]392    discover: { rss: true, sitemap: true }393    sensors:394      - { name: noticias feed, url: "https://www.ree.es/es/rss.xml", type: RSS, connector: rss, tier: B }395  - id: energinet396    name: Energinet397    domain: energinet.dk398    homepage: https://energinet.dk399    categories: [energy, infrastructure]400    tier: C401    discover: { rss: false, sitemap: true, pages: true }402    notes: "News index is client-rendered (thin); sitemap only."403    sensors:404      - { name: sitemap, url: "https://www.energinet.dk/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }405  - id: statnett406    name: Statnett407    domain: statnett.no408    homepage: https://www.statnett.no409    categories: [energy, infrastructure]410    tier: C411    discover: { rss: true, sitemap: true }412    sensors:413      - { name: news feed, url: "https://www.statnett.no/rss", type: RSS, connector: rss, tier: B, config: { maxItems: 50 } }414  - id: svenska-kraftnat415    name: Svenska kraftnät416    domain: svk.se417    homepage: https://www.svk.se418    categories: [energy, infrastructure]419    tier: C420    aliases: [svk, svenska kraftnat]421    discover: { rss: false, sitemap: true }422    sensors:423      - { name: sitemap, url: "https://www.svk.se/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }424  - id: fingrid425    name: Fingrid426    domain: fingrid.fi427    homepage: https://www.fingrid.fi428    categories: [energy, infrastructure]429    tier: C430    discover: { rss: false, sitemap: true, pages: true }431    sensors:432      - { name: news (en), url: "https://www.fingrid.fi/en/news/", type: HTML, connector: http, tier: B }433      - { name: sitemap, url: "https://www.fingrid.fi/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }434435  # ───────────────────────── C · Oil & gas, pipelines, utilities, renewables ─────────────────────────436  - id: exxonmobil437    name: ExxonMobil438    domain: exxonmobil.com439    homepage: https://corporate.exxonmobil.com440    categories: [energy, finance]441    tier: A442    weight: 1.3443    aliases: [exxon, exxon mobil, xom]444    discover: { rss: true, sitemap: true }445    sensors:446      - { name: newsroom feed, url: "https://corporate.exxonmobil.com/feed.xml", type: ATOM, connector: rss, tier: A }447  - id: chevron448    name: Chevron449    domain: chevron.com450    homepage: https://www.chevron.com451    categories: [energy, finance]452    tier: B453    weight: 1.2454    aliases: [cvx]455    discover: { rss: false, sitemap: false }456    notes: "Every path (newsroom, sitemap) answers 403 to non-browser clients — kept for entity linking only."457  - id: shell458    name: Shell459    domain: shell.com460    homepage: https://www.shell.com461    categories: [energy, finance]462    tier: B463    weight: 1.3464    aliases: [shell plc, royal dutch shell]465    discover: { rss: false, sitemap: true, pages: true }466    notes: "Newsroom index is client-rendered (thin); sitemap only."467    sensors:468      - { name: sitemap, url: "https://www.shell.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }469  - id: bp470    name: BP471    domain: bp.com472    homepage: https://www.bp.com473    categories: [energy, finance]474    tier: B475    weight: 1.2476    aliases: [bp plc, british petroleum]477    discover: { rss: false, sitemap: false }478    notes: "Press-release pages answer 403 (Akamai) to non-browser clients and no feed exists — kept for entity linking only."479  - id: totalenergies480    name: TotalEnergies481    domain: totalenergies.com482    homepage: https://totalenergies.com483    categories: [energy, finance]484    tier: B485    weight: 1.2486    aliases: [total, total energies]487    discover: { rss: false, sitemap: true, pages: true }488    sensors:489      - { name: news, url: "https://totalenergies.com/news", type: HTML, connector: http, tier: B }490      - { name: sitemap, url: "https://totalenergies.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }491  - id: equinor492    name: Equinor493    domain: equinor.com494    homepage: https://www.equinor.com495    categories: [energy, finance]496    tier: B497    weight: 1.1498    aliases: [statoil]499    discover: { rss: false, sitemap: true, pages: true }500    notes: "News index is client-rendered (thin); sitemap only."501    sensors:502      - { name: sitemap, url: "https://www.equinor.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }503  - id: eni504    name: Eni505    domain: eni.com506    homepage: https://www.eni.com507    categories: [energy, finance]508    tier: C509    aliases: [eni spa]510    discover: { rss: false, sitemap: true }511    sensors:512      - { name: sitemap (en), url: "https://www.eni.com/en-IT/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }513  - id: saudi-aramco514    name: Saudi Aramco515    domain: aramco.com516    homepage: https://www.aramco.com517    categories: [energy, finance]518    tier: B519    weight: 1.3520    aliases: [aramco]521    discover: { rss: false, sitemap: true, pages: true }522    sensors:523      - { name: news and media, url: "https://www.aramco.com/en/news-media", type: HTML, connector: http, tier: B }524      - { name: sitemap, url: "https://www.aramco.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }525  - id: petrobras526    name: Petrobras527    domain: petrobras.com.br528    homepage: https://petrobras.com.br529    categories: [energy, finance]530    tier: C531    aliases: [petróleo brasileiro]532    discover: { rss: false, sitemap: true }533    sensors:534      - { name: sitemap, url: "https://petrobras.com.br/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }535  - id: suncor536    name: Suncor Energy537    domain: suncor.com538    homepage: https://www.suncor.com539    categories: [energy, finance]540    tier: B541    aliases: [suncor, petro-canada]542    discover: { rss: false, sitemap: false }543    notes: "newsroom pages answer 403 (Akamai) and the investor RSS host does not resolve — kept for entity linking only."544  - id: cenovus545    name: Cenovus Energy546    domain: cenovus.com547    homepage: https://www.cenovus.com548    categories: [energy, finance]549    tier: B550    aliases: [cenovus]551    discover: { rss: false, sitemap: true, pages: true }552    sensors:553      - { name: news and stories, url: "https://www.cenovus.com/News-and-Stories", type: HTML, connector: http, tier: B }554  - id: cnrl555    name: Canadian Natural Resources556    domain: cnrl.com557    homepage: https://www.cnrl.com558    categories: [energy, finance]559    tier: B560    aliases: [cnrl, canadian natural]561    discover: { rss: false, sitemap: true, pages: true }562    sensors:563      - { name: news alert, url: "https://www.cnrl.com/news-alert/", type: HTML, connector: http, tier: B }564  - id: imperial-oil565    name: Imperial Oil566    domain: imperialoil.ca567    homepage: https://www.imperialoil.ca568    categories: [energy, finance]569    tier: B570    aliases: [imperial, esso canada]571    discover: { rss: true, sitemap: true }572    sensors:573      - { name: news feed, url: "https://www.imperialoil.ca/feed.xml", type: ATOM, connector: rss, tier: B }574  - id: enbridge575    name: Enbridge576    domain: enbridge.com577    homepage: https://www.enbridge.com578    categories: [energy, infrastructure, finance]579    tier: B580    weight: 1.2581    aliases: [enbridge inc]582    discover: { rss: false, sitemap: true, pages: true }583    sensors:584      - { name: news releases, url: "https://www.enbridge.com/news", type: HTML, connector: http, tier: B }585      - { name: sitemap, url: "https://www.enbridge.com/sitemap-enbridge.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }586  - id: tc-energy587    name: TC Energy588    domain: tcenergy.com589    homepage: https://www.tcenergy.com590    categories: [energy, infrastructure, finance]591    tier: B592    weight: 1.1593    aliases: [transcanada, tc energy]594    discover: { rss: false, sitemap: true, pages: true }595    sensors:596      - { name: newsroom, url: "https://www.tcenergy.com/newsroom", type: HTML, connector: http, tier: B }597      - { name: sitemap, url: "https://www.tcenergy.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } }598  - id: kinder-morgan599    name: Kinder Morgan600    domain: kindermorgan.com601    homepage: https://www.kindermorgan.com602    categories: [energy, infrastructure, finance]603    tier: C604    aliases: [kmi]605    discover: { rss: false, sitemap: true }606    notes: "Investor RSS (ir.kindermorgan.com) answers 403; sitemap only."607    sensors:608      - { name: sitemap, url: "https://kindermorgan.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }609  - id: williams610    name: Williams Companies611    domain: williams.com612    homepage: https://www.williams.com613    categories: [energy, infrastructure, finance]614    tier: C615    aliases: [williams, wmb]616    discover: { rss: true, sitemap: true }617    sensors:618      - { name: news feed, url: "https://www.williams.com/feed/", type: RSS, connector: rss, tier: B }619  - id: duke-energy620    name: Duke Energy621    domain: duke-energy.com622    homepage: https://www.duke-energy.com623    categories: [energy, finance]624    tier: B625    weight: 1.1626    aliases: [duke]627    discover: { rss: true }628    sensors:629      - { name: news releases feed, url: "https://news.duke-energy.com/releases.xml", type: RSS, connector: rss, tier: B }630      - { name: storms and outages feed, url: "https://news.duke-energy.com/cats/storms_and_outages.xml", type: RSS, connector: rss, tier: A }631  - id: nextera-energy632    name: NextEra Energy633    domain: nexteraenergy.com634    homepage: https://www.nexteraenergy.com635    categories: [energy, finance]636    tier: B637    weight: 1.2638    aliases: [nextera, nee, florida power & light, fpl]639    discover: { rss: true, sitemap: true }640    sensors:641      - { name: investor news feed, url: "https://www.investor.nexteraenergy.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B }642      - { name: newsroom feed, url: "https://newsroom.nexteraenergy.com/news-releases?pagetemplate=rss", type: RSS, connector: rss, tier: B }643  - id: southern-company644    name: Southern Company645    domain: southerncompany.com646    homepage: https://www.southerncompany.com647    categories: [energy, finance]648    tier: C649    aliases: [southern co, georgia power]650    discover: { rss: false, sitemap: true, pages: true }651    sensors:652      - { name: newsroom, url: "https://www.southerncompany.com/newsroom.html", type: HTML, connector: http, tier: B }653      - { name: sitemap, url: "https://www.southerncompany.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }654  - id: exelon655    name: Exelon656    domain: exeloncorp.com657    homepage: https://www.exeloncorp.com658    categories: [energy, finance]659    tier: C660    aliases: [exelon corporation, comed, peco, bge]661    discover: { rss: true, sitemap: true, pages: true }662    sensors:663      - { name: investor news feed, url: "https://investors.exeloncorp.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B }664      - { name: newsroom, url: "https://www.exeloncorp.com/newsroom", type: HTML, connector: http, tier: B }665  - id: dominion-energy666    name: Dominion Energy667    domain: dominionenergy.com668    homepage: https://www.dominionenergy.com669    categories: [energy, finance]670    tier: C671    aliases: [dominion]672    discover: { rss: false, sitemap: true }673    sensors:674      - { name: news sitemap, url: "https://www.dominionenergy.com/news-sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } }675  - id: aep676    name: American Electric Power677    domain: aep.com678    homepage: https://www.aep.com679    categories: [energy, finance]680    tier: C681    aliases: [aep]682    discover: { rss: true, sitemap: true }683    sensors:684      - { name: news feed, url: "https://www.aep.com/news/rss/", type: RSS, connector: rss, tier: B }685  - id: fortis686    name: Fortis Inc.687    domain: fortisinc.com688    homepage: https://www.fortisinc.com689    categories: [energy, finance]690    tier: C691    aliases: [fortis, fortisbc, fortisalberta]692    discover: { rss: false, sitemap: true, pages: true }693    sensors:694      - { name: news releases, url: "https://fortisinc.com/news", type: HTML, connector: http, tier: B }695  - id: emera696    name: Emera697    domain: emera.com698    homepage: https://www.emera.com699    categories: [energy, finance]700    tier: C701    aliases: [emera inc, nova scotia power]702    discover: { rss: false, sitemap: true, pages: true }703    notes: "emera.com/news redirects to a client-rendered Q4 investor page (75 chars of text); no feed — no sensor."704  - id: hydro-one705    name: Hydro One706    domain: hydroone.com707    homepage: https://www.hydroone.com708    categories: [energy, infrastructure]709    tier: C710    aliases: [hydro one]711    discover: { rss: true, sitemap: true, pages: true }712    notes: "No feed, sitemap or server-rendered news index found (media-centre paths 404; investors host does not resolve)."713  - id: bc-hydro714    name: BC Hydro715    domain: bchydro.com716    homepage: https://www.bchydro.com717    categories: [energy, infrastructure]718    tier: B719    aliases: [bc hydro]720    discover: { rss: false, sitemap: true, pages: true }721    sensors:722      - { name: press centre, url: "https://www.bchydro.com/news/press_centre.html", type: HTML, connector: http, tier: B }723      - { name: sitemap, url: "https://www.bchydro.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 4000 } }724  - id: opg725    name: Ontario Power Generation726    domain: opg.com727    homepage: https://www.opg.com728    categories: [energy, infrastructure]729    tier: B730    aliases: [opg, ontario power generation]731    discover: { rss: false, sitemap: false }732    notes: "WordPress /feed/ and /news/ answer 403 to the engine fetcher (bot management) — no sensor."733  - id: energir734    name: Énergir735    domain: energir.com736    homepage: https://energir.com737    categories: [energy, infrastructure]738    tier: C739    aliases: [energir, gaz métro, gaz metro]740    discover: { rss: false, sitemap: true, pages: true }741    sensors:742      - { name: news, url: "https://energir.com/en/about/media/news", type: HTML, connector: http, tier: B }743      - { name: sitemap (fr), url: "https://energir.com/fr/sitemaps-1-sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }744  - id: iberdrola745    name: Iberdrola746    domain: iberdrola.com747    homepage: https://www.iberdrola.com748    categories: [energy, finance]749    tier: B750    weight: 1.1751    aliases: [scottishpower, avangrid]752    discover: { rss: false, sitemap: false }753    notes: "Press room and /rss answer 403 to non-browser clients — kept for entity linking only."754  - id: enel755    name: Enel756    domain: enel.com757    homepage: https://www.enel.com758    categories: [energy, finance]759    tier: B760    weight: 1.1761    aliases: [enel group, endesa]762    discover: { rss: false, sitemap: true }763    notes: "Press pages redirect to the homepage for non-browser clients; the large sitemap is the usable endpoint."764    sensors:765      - { name: sitemap, url: "https://www.enel.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 4000 } }766  - id: edf767    name: EDF768    domain: edf.fr769    homepage: https://www.edf.fr770    categories: [energy, finance]771    tier: B772    weight: 1.2773    aliases: [électricité de france, electricite de france]774    discover: { rss: false, sitemap: false, pages: true }775    notes: "rss.xml answers 403; the press-release index is server-rendered."776    sensors:777      - { name: communiqués de presse, url: "https://www.edf.fr/groupe-edf/espaces-dedies/journalistes/tous-les-communiques-de-presse", type: HTML, connector: http, tier: B }778  - id: engie779    name: Engie780    domain: engie.com781    homepage: https://www.engie.com782    categories: [energy, finance]783    tier: C784    aliases: [gdf suez]785    discover: { rss: false, sitemap: true }786    sensors:787      - { name: sitemap, url: "https://www.engie.com/sitemap_index.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }788  - id: eon789    name: E.ON790    domain: eon.com791    homepage: https://www.eon.com792    categories: [energy, finance]793    tier: C794    aliases: [e.on, eon se]795    discover: { rss: false, sitemap: false }796    notes: "Press pages and RSS answer 403 to non-browser clients — kept for entity linking only."797  - id: rwe798    name: RWE799    domain: rwe.com800    homepage: https://www.rwe.com801    categories: [energy, finance]802    tier: B803    aliases: [rwe ag]804    discover: { rss: false, sitemap: true, pages: true }805    sensors:806      - { name: press, url: "https://www.rwe.com/en/press/", type: HTML, connector: http, tier: B }807      - { name: sitemap, url: "https://www.rwe.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }808  - id: orsted809    name: Ørsted810    domain: orsted.com811    homepage: https://orsted.com812    categories: [energy, finance]813    tier: B814    aliases: [orsted, dong energy]815    discover: { rss: false, sitemap: false }816    notes: "Company-announcement list and /rss answer 403 to non-browser clients — kept for entity linking only."817  - id: vattenfall818    name: Vattenfall819    domain: vattenfall.com820    homepage: https://group.vattenfall.com821    categories: [energy, finance]822    tier: C823    discover: { rss: false, sitemap: true, pages: true }824    sensors:825      - { name: newsroom, url: "https://group.vattenfall.com/press-and-media/newsroom", type: HTML, connector: http, tier: B }826      - { name: sitemap, url: "https://group.vattenfall.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }827  - id: sse828    name: SSE plc829    domain: sse.com830    homepage: https://www.sse.com831    categories: [energy, finance]832    tier: C833    aliases: [sse, scottish and southern energy]834    discover: { rss: false, sitemap: true, pages: true }835    sensors:836      - { name: news and views, url: "https://www.sse.com/news-and-views/", type: HTML, connector: http, tier: B }837      - { name: sitemap, url: "https://www.sse.com/xmlsitemap", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }838  - id: centrica839    name: Centrica840    domain: centrica.com841    homepage: https://www.centrica.com842    categories: [energy, finance]843    tier: C844    aliases: [british gas]845    discover: { rss: false, sitemap: false }846    notes: "Media-centre pages answer 403 to the engine fetcher — no sensor."847  - id: vestas848    name: Vestas849    domain: vestas.com850    homepage: https://www.vestas.com851    categories: [energy, technology, finance]852    tier: B853    weight: 1.1854    aliases: [vestas wind systems]855    discover: { rss: false, sitemap: true, pages: true }856    notes: "Company-news index is client-rendered; sitemap only."857    sensors:858      - { name: sitemap, url: "https://www.vestas.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }859  - id: siemens-energy860    name: Siemens Energy861    domain: siemens-energy.com862    homepage: https://www.siemens-energy.com863    categories: [energy, technology, finance]864    tier: B865    weight: 1.1866    aliases: [siemens energy ag]867    discover: { rss: false, sitemap: true, pages: true }868    notes: "Press index is client-rendered (thin); sitemap only."869    sensors:870      - { name: sitemap, url: "https://www.siemens-energy.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }871  - id: siemens-gamesa872    name: Siemens Gamesa873    domain: siemensgamesa.com874    homepage: https://www.siemensgamesa.com875    categories: [energy, technology]876    tier: C877    aliases: [gamesa]878    discover: { rss: false, sitemap: true }879    sensors:880      - { name: sitemap, url: "https://www.siemensgamesa.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }881  - id: ge-vernova882    name: GE Vernova883    domain: gevernova.com884    homepage: https://www.gevernova.com885    categories: [energy, technology, finance]886    tier: B887    weight: 1.2888    aliases: [ge vernova, gev, ge power]889    discover: { rss: false, sitemap: true, pages: true }890    notes: "rss.xml, news/rss.xml and news/sitemap.xml all answer 500 to the engine fetcher (200 to curl); only the server-rendered news index is usable."891    sensors:892      - { name: news, url: "https://www.gevernova.com/news", type: HTML, connector: http, tier: B }893  - id: first-solar894    name: First Solar895    domain: firstsolar.com896    homepage: https://www.firstsolar.com897    categories: [energy, technology, finance]898    tier: C899    aliases: [fslr]900    discover: { rss: false, sitemap: true }901    notes: "Investor RSS (investor.firstsolar.com) answers 403; the news sitemap is the usable endpoint."902    sensors:903      - { name: news sitemap, url: "https://www.firstsolar.com/news-sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 1000 } }904  - id: enphase905    name: Enphase Energy906    domain: enphase.com907    homepage: https://enphase.com908    categories: [energy, technology, finance]909    tier: C910    aliases: [enphase, enph]911    discover: { rss: true, sitemap: true, pages: true }912    sensors:913      - { name: investor news feed, url: "https://investor.enphase.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B }914      - { name: blog, url: "https://enphase.com/blog", type: HTML, connector: http, tier: C }915  - id: solaredge916    name: SolarEdge917    domain: solaredge.com918    homepage: https://www.solaredge.com919    categories: [energy, technology, finance]920    tier: C921    aliases: [sedg]922    discover: { rss: true, sitemap: true }923    sensors:924      - { name: investor news feed, url: "https://investors.solaredge.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B }925  - id: fluence926    name: Fluence Energy927    domain: fluenceenergy.com928    homepage: https://fluenceenergy.com929    categories: [energy, technology, finance]930    tier: C931    aliases: [fluence, flnc]932    discover: { rss: true, sitemap: true }933    sensors:934      - { name: investor news feed, url: "https://ir.fluenceenergy.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B }935  - id: brookfield-renewable936    name: Brookfield Renewable937    domain: brookfieldrenewable.com938    homepage: https://bep.brookfield.com939    categories: [energy, finance]940    tier: C941    aliases: [bep, brookfield renewable partners]942    discover: { rss: false, sitemap: false }943    notes: "bep.brookfield.com (press releases, Q4 RSS) answers 403 to non-browser clients — kept for entity linking only."944  - id: northland-power945    name: Northland Power946    domain: northlandpower.com947    homepage: https://northlandpower.com948    categories: [energy, finance]949    tier: C950    aliases: [npi]951    discover: { rss: true, sitemap: true }952    sensors:953      - { name: newsroom feed, url: "https://northlandpower.com/newsroom/feed/", type: RSS, connector: rss, tier: B }954  - id: boralex955    name: Boralex956    domain: boralex.com957    homepage: https://www.boralex.com958    categories: [energy, finance]959    tier: C960    aliases: [blx]961    discover: { rss: false, sitemap: true, pages: true }962    sensors:963      - { name: news, url: "https://www.boralex.com/en/news", type: HTML, connector: http, tier: B }964  - id: innergex965    name: Innergex Renewable Energy966    domain: innergex.com967    homepage: https://www.innergex.com968    categories: [energy, finance]969    tier: C970    aliases: [innergex, ine]971    discover: { rss: false, sitemap: true }972    notes: "Single-page app (client-rendered, no feed, /en/news 404) — no sensor."973974  # ───────────────────────── D · Nuclear & new energy ─────────────────────────975  - id: westinghouse976    name: Westinghouse Electric Company977    domain: westinghousenuclear.com978    homepage: https://www.westinghousenuclear.com979    categories: [energy, technology]980    tier: B981    weight: 1.1982    aliases: [westinghouse nuclear, ap1000, ap300]983    discover: { rss: true, sitemap: true }984    sensors:985      - { name: news feed, url: "https://info.westinghousenuclear.com/news/rss.xml", type: RSS, connector: rss, tier: B }986      - { name: sitemap, url: "https://westinghousenuclear.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }987  - id: cameco988    name: Cameco989    domain: cameco.com990    homepage: https://www.cameco.com991    categories: [energy, finance]992    tier: B993    weight: 1.1994    aliases: [ccj, cco]995    discover: { rss: true, sitemap: true }996    sensors:997      - { name: news feed, url: "https://www.cameco.com/rss/news", type: RSS, connector: rss, tier: B }998  - id: nuscale999    name: NuScale Power1000    domain: nuscalepower.com1001    homepage: https://www.nuscalepower.com1002    categories: [energy, technology, finance]1003    tier: C1004    aliases: [nuscale, smr]1005    discover: { rss: true, sitemap: true }1006    sensors:1007      - { name: press releases feed, url: "https://www.nuscalepower.com/press-releases/rss.xml", type: RSS, connector: rss, tier: B }1008  - id: terrapower1009    name: TerraPower1010    domain: terrapower.com1011    homepage: https://www.terrapower.com1012    categories: [energy, technology]1013    tier: C1014    aliases: [natrium]1015    discover: { rss: false, sitemap: true, pages: true }1016    sensors:1017      - { name: news, url: "https://www.terrapower.com/news", type: HTML, connector: http, tier: B }1018      - { name: sitemap, url: "https://www.terrapower.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 1000 } }1019  - id: commonwealth-fusion1020    name: Commonwealth Fusion Systems1021    domain: cfs.energy1022    homepage: https://cfs.energy1023    categories: [energy, technology, science]1024    tier: C1025    aliases: [cfs, sparc, arc]1026    discover: { rss: false, sitemap: true, pages: true }1027    sensors:1028      - { name: news and media, url: "https://cfs.energy/news-and-media/", type: HTML, connector: http, tier: B }1029      - { name: sitemap, url: "https://cfs.energy/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 1000 } }1030  - id: iter1031    name: ITER Organization1032    domain: iter.org1033    homepage: https://www.iter.org1034    categories: [energy, science, international]1035    tier: C1036    aliases: [iter, iter fusion]1037    discover: { rss: true, sitemap: true }1038    sensors:1039      - { name: newsline feed, url: "https://www.iter.org/rss.xml", type: RSS, connector: rss, tier: B }1040  - id: x-energy1041    name: X-energy1042    domain: x-energy.com1043    homepage: https://x-energy.com1044    categories: [energy, technology]1045    tier: C1046    aliases: [x energy, xe-100]1047    discover: { rss: true, sitemap: true }1048    sensors:1049      - { name: news feed, url: "https://x-energy.com/news/feed/", type: RSS, connector: rss, tier: B }1050  - id: helion1051    name: Helion Energy1052    domain: helionenergy.com1053    homepage: https://www.helionenergy.com1054    categories: [energy, technology]1055    tier: C1056    aliases: [helion, polaris]1057    discover: { rss: false, sitemap: true, pages: true }1058    sensors:1059      - { name: newsroom, url: "https://www.helionenergy.com/newsroom", type: HTML, connector: http, tier: B }1060  - id: oklo1061    name: Oklo1062    domain: oklo.com1063    homepage: https://oklo.com1064    categories: [energy, technology, finance]1065    tier: C1066    aliases: [oklo inc, aurora powerhouse]1067    discover: { rss: false, sitemap: false }1068    notes: "Newsroom answers 403 to non-browser clients and the Q4 investor host does not resolve — kept for entity linking only."1069  - id: kairos-power1070    name: Kairos Power1071    domain: kairospower.com1072    homepage: https://kairospower.com1073    categories: [energy, technology]1074    tier: C1075    aliases: [kairos, hermes reactor]1076    discover: { rss: false, sitemap: true }1077    notes: "No feed and /news 404; sitemap only."1078    sensors:1079      - { name: sitemap, url: "https://www.kairospower.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 1000 } }1080  - id: general-fusion1081    name: General Fusion1082    domain: generalfusion.com1083    homepage: https://generalfusion.com1084    categories: [energy, technology]1085    tier: C1086    aliases: [general fusion, lm26]1087    discover: { rss: true, sitemap: true }1088    sensors:1089      - { name: news feed, url: "https://generalfusion.com/feed/", type: RSS, connector: rss, tier: B }1090  - id: world-nuclear-news1091    name: World Nuclear News (World Nuclear Association)1092    domain: world-nuclear-news.org1093    homepage: https://www.world-nuclear-news.org1094    categories: [energy, news, international]1095    tier: B1096    weight: 1.11097    aliases: [wnn, world nuclear association, wna]1098    discover: { rss: true, sitemap: true }1099    llm: false1100    notes: "world-nuclear.org itself exposes no feed or sitemap; WNN is the association's news service."1101    sensors:1102      - { name: news feed, url: "https://world-nuclear-news.org/rss", type: RSS, connector: rss, tier: B, config: { maxItems: 60 } }1103  - id: nei1104    name: Nuclear Energy Institute1105    domain: nei.org1106    homepage: https://www.nei.org1107    categories: [energy, ngo]1108    tier: C1109    aliases: [nei]1110    discover: { rss: false, sitemap: false }1111    notes: "Every path answers 403 to non-browser clients — kept for entity linking only."1112  - id: cnsc1113    name: Canadian Nuclear Safety Commission1114    domain: nuclearsafety.gc.ca1115    homepage: https://www.cnsc-ccsn.gc.ca1116    categories: [energy, government]1117    tier: B1118    aliases: [cnsc, ccsn, commission canadienne de sûreté nucléaire]1119    discover: { rss: false, sitemap: true, pages: true }1120    sensors:1121      - { name: news feed (canada.ca), url: "https://api.io.canada.ca/io-server/gc/news/en/v2?dept=canadiannuclearsafetycommission&sort=publishedDate&orderBy=desc&pick=50&format=atom&atomtitle=CNSC", type: ATOM, connector: rss, tier: B }1122      - { name: news room, url: "https://www.cnsc-ccsn.gc.ca/eng/resources/news-room/", type: HTML, connector: http, tier: B }11231124  # ───────────────────────── E · Weather & hazards ─────────────────────────1125  - id: nws1126    name: National Weather Service1127    domain: weather.gov1128    homepage: https://www.weather.gov1129    categories: [weather, government]1130    tier: S1131    weight: 1.41132    aliases: [nws, national weather service, api.weather.gov]1133    discover: { rss: false, sitemap: false, pages: true }1134    llm: false1135    sensors:1136      - { name: active alerts (extreme/severe), url: "https://api.weather.gov/alerts/active?status=actual&severity=Extreme,Severe", type: REST_API, connector: jsonlist, tier: S, config: { itemsPath: features, keyField: id, titleField: properties.headline, summaryField: properties.description, dateField: properties.sent, urlField: id, headers: { "User-Agent": "WebSensorBot/0.1 (contact@websensor.io)", Accept: "application/geo+json" }, maxItems: 100 } }1137      - { name: news, url: "https://www.weather.gov/news", type: HTML, connector: http, tier: B }1138  - id: noaa1139    extend: true1140    products:1141      - { name: National Hurricane Center, type: service, aliases: [nhc] }1142      - { name: Space Weather Prediction Center, type: service, aliases: [swpc] }1143    sensors:1144      - { name: nhc eastern pacific advisories, url: "https://www.nhc.noaa.gov/index-ep.xml", type: RSS, connector: rss, tier: A }1145      - { name: nhc tropical weather outlooks, url: "https://www.nhc.noaa.gov/gtwo.xml", type: RSS, connector: rss, tier: A }1146      - { name: climate.gov feed, url: "https://www.climate.gov/rss.xml", type: RSS, connector: rss, tier: B }1147  - id: usgs1148    extend: true1149    sensors:1150      - { name: earthquakes m4.5+ past day, url: "https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_day.atom", type: ATOM, connector: rss, tier: A, config: { maxItems: 50 } }1151  - id: eccc1152    extend: true1153    products:1154      - { name: Weather alerts, type: service, aliases: [weather.gc.ca, meteo.gc.ca] }1155    sensors:1156      - { name: weather alerts montréal, url: "https://weather.gc.ca/rss/alerts/45.508_-73.587_e.xml", type: ATOM, connector: rss, tier: A }1157      - { name: weather alerts toronto, url: "https://weather.gc.ca/rss/alerts/43.653_-79.383_e.xml", type: ATOM, connector: rss, tier: A }1158      - { name: weather alerts vancouver, url: "https://weather.gc.ca/rss/alerts/49.283_-123.121_e.xml", type: ATOM, connector: rss, tier: A }1159  - id: met-office1160    name: Met Office1161    domain: metoffice.gov.uk1162    homepage: https://www.metoffice.gov.uk1163    categories: [weather, government]1164    tier: B1165    weight: 1.11166    aliases: [uk met office]1167    discover: { rss: false, sitemap: true, pages: true }1168    notes: "Warning RSS feeds (WarningsRSS/Region/UK) are empty when no warning is in force, so they cannot be validated as list sensors."1169    sensors:1170      - { name: news blog, url: "https://www.metoffice.gov.uk/blog", type: HTML, connector: http, tier: B }1171      - { name: sitemap, url: "https://www.metoffice.gov.uk/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }1172  - id: meteo-france1173    name: Météo-France1174    domain: meteofrance.com1175    homepage: https://meteofrance.com1176    categories: [weather, government]1177    tier: B1178    aliases: [meteo france, météo france]1179    discover: { rss: true, sitemap: false }1180    sensors:1181      - { name: actualités feed, url: "https://meteofrance.com/rss.xml", type: RSS, connector: rss, tier: B }1182  - id: dwd1183    name: Deutscher Wetterdienst1184    domain: dwd.de1185    homepage: https://www.dwd.de1186    categories: [weather, government]1187    tier: B1188    aliases: [dwd, german weather service]1189    discover: { rss: true, sitemap: true }1190    sensors:1191      - { name: pressemitteilungen feed, url: "https://www.dwd.de/SiteGlobals/Functions/RSSFeed/DE/pressemitteilungen/rssfeeds_pm.xml", type: RSS, connector: rss, tier: B }1192  - id: jma1193    name: Japan Meteorological Agency1194    domain: jma.go.jp1195    homepage: https://www.jma.go.jp1196    categories: [weather, government]1197    tier: A1198    weight: 1.21199    aliases: [jma, 気象庁]1200    discover: { rss: false, sitemap: false }1201    llm: false1202    notes: "High-volume official Atom feeds (extra.xml ~870 entries/day); only the earthquake & volcano feed is curated."1203    sensors:1204      - { name: earthquake and volcano feed, url: "https://www.data.jma.go.jp/developer/xml/feed/eqvol.xml", type: ATOM, connector: rss, tier: A, config: { maxItems: 50 } }1205  - id: bom1206    name: Australian Bureau of Meteorology1207    domain: bom.gov.au1208    homepage: http://www.bom.gov.au1209    categories: [weather, government]1210    tier: B1211    aliases: [bom, bureau of meteorology]1212    discover: { rss: false, sitemap: false }1213    notes: "All RSS/warning feeds answer 403 to non-browser clients — kept for entity linking only."1214  - id: ecmwf1215    name: ECMWF1216    domain: ecmwf.int1217    homepage: https://www.ecmwf.int1218    categories: [weather, science, international]1219    tier: B1220    aliases: [european centre for medium-range weather forecasts]1221    discover: { rss: true, sitemap: true }1222    sensors:1223      - { name: news feed, url: "https://www.ecmwf.int/rss.xml", type: RSS, connector: rss, tier: B }1224  - id: copernicus1225    name: Copernicus (C3S · CAMS · EMS)1226    domain: copernicus.eu1227    homepage: https://www.copernicus.eu1228    categories: [climate, weather, science, international]1229    tier: B1230    weight: 1.21231    aliases: [copernicus climate change service, c3s, copernicus atmosphere monitoring service, cams, copernicus emergency management service, ems]1232    products:1233      - { name: Copernicus Climate Bulletin, type: product, aliases: [climate bulletin] }1234      - { name: ERA5, type: product }1235    discover: { rss: true, sitemap: true }1236    sensors:1237      - { name: c3s news feed, url: "https://climate.copernicus.eu/rss.xml", type: RSS, connector: rss, tier: B }1238      - { name: cams news feed, url: "https://atmosphere.copernicus.eu/rss.xml", type: RSS, connector: rss, tier: B }1239      - { name: ems sitemap, url: "https://emergency.copernicus.eu/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } }1240  - id: gdacs1241    name: GDACS — Global Disaster Alert and Coordination System1242    domain: gdacs.org1243    homepage: https://www.gdacs.org1244    categories: [weather, international]1245    tier: A1246    weight: 1.21247    aliases: [gdacs]1248    discover: { rss: true }1249    sensors:1250      - { name: alerts feed, url: "https://www.gdacs.org/xml/rss.xml", type: RSS, connector: rss, tier: A, config: { maxItems: 100 } }1251  - id: reliefweb1252    name: ReliefWeb (UN OCHA)1253    domain: reliefweb.int1254    homepage: https://reliefweb.int1255    categories: [international, ngo]1256    tier: B1257    aliases: [reliefweb, ocha]1258    discover: { rss: false, sitemap: false }1259    notes: "API v1 is decommissioned (410) and v2 rejects non-approved appnames (403); the site itself has no feed. Request an appname before adding a jsonlist sensor."1260  - id: pdc1261    name: Pacific Disaster Center1262    domain: pdc.org1263    homepage: https://www.pdc.org1264    categories: [weather, international]1265    tier: C1266    aliases: [pdc, disasteraware]1267    discover: { rss: false, sitemap: false }1268    notes: "WordPress /feed/ and /news/ answer 403 to non-browser clients — no sensor."1269  - id: smithsonian-gvp1270    name: Smithsonian Global Volcanism Program1271    domain: volcano.si.edu1272    homepage: https://volcano.si.edu1273    categories: [science, weather]1274    tier: B1275    aliases: [gvp, global volcanism program, weekly volcanic activity report]1276    discover: { rss: true }1277    sensors:1278      - { name: weekly volcanic activity report feed, url: "https://volcano.si.edu/news/WeeklyVolcanoRSS.xml", type: RSS, connector: rss, tier: B, config: { maxItems: 40 } }1279  - id: emsc1280    name: EMSC — European-Mediterranean Seismological Centre1281    domain: emsc-csem.org1282    homepage: https://www.emsc-csem.org1283    categories: [science, weather]1284    tier: A1285    weight: 1.11286    aliases: [emsc, seismicportal, csem]1287    discover: { rss: false, sitemap: false }1288    llm: false1289    sensors:1290      - { name: earthquakes m5+, url: "https://www.seismicportal.eu/fdsnws/event/1/query?format=json&limit=50&minmag=5", type: REST_API, connector: jsonlist, tier: A, config: { itemsPath: features, keyField: properties.source_id, titleTemplate: "M{properties.mag} {properties.flynn_region}", dateField: properties.time, urlTemplate: "https://www.emsc-csem.org/Earthquake_information/earthquake.php?id={key}", compareFields: [properties.mag, properties.depth], maxItems: 50 } }1291  - id: earthquakes-canada1292    name: Earthquakes Canada (Natural Resources Canada)1293    domain: earthquakescanada.nrcan.gc.ca1294    homepage: https://www.earthquakescanada.nrcan.gc.ca1295    categories: [science, weather, government]1296    tier: A1297    aliases: [earthquakes canada, séismes canada, nrcan earthquakes]1298    discover: { rss: false, sitemap: false }1299    llm: false1300    sensors:1301      - { name: recent earthquakes feed, url: "https://www.earthquakescanada.nrcan.gc.ca/cache/earthquakes/canada-en.atom", type: ATOM, connector: rss, tier: A, config: { maxItems: 50 } }13021303  # ───────────────────────── F · Climate bodies & analysts ─────────────────────────1304  - id: ipcc1305    name: IPCC1306    domain: ipcc.ch1307    homepage: https://www.ipcc.ch1308    categories: [climate, science, international]1309    tier: B1310    weight: 1.31311    aliases: [intergovernmental panel on climate change]1312    products:1313      - { name: Assessment Report, type: product, aliases: [ar6, ar7] }1314    discover: { rss: true, pages: true }1315    sensors:1316      - { name: news feed, url: "https://www.ipcc.ch/feed/", type: RSS, connector: rss, tier: B }1317  - id: unfccc1318    name: UNFCCC1319    domain: unfccc.int1320    homepage: https://unfccc.int1321    categories: [climate, international]1322    tier: B1323    weight: 1.21324    aliases: [un climate change, cop, paris agreement]1325    discover: { rss: false, sitemap: true }1326    notes: "News index is client-rendered (thin); sitemap only."1327    sensors:1328      - { name: sitemap, url: "https://unfccc.int/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 4000 } }1329  - id: carbon-brief1330    name: Carbon Brief1331    domain: carbonbrief.org1332    homepage: https://www.carbonbrief.org1333    categories: [climate, news]1334    tier: B1335    weight: 1.11336    discover: { rss: true, sitemap: true }1337    sensors:1338      - { name: articles feed, url: "https://www.carbonbrief.org/feed", type: RSS, connector: rss, tier: B }1339  - id: global-carbon-project1340    name: Global Carbon Project1341    domain: globalcarbonproject.org1342    homepage: https://www.globalcarbonproject.org1343    categories: [climate, science]1344    tier: C1345    aliases: [global carbon budget]1346    discover: { rss: false, sitemap: false }1347    notes: "Static site without feed or sitemap — kept for entity linking only."1348  - id: climate-action-tracker1349    name: Climate Action Tracker1350    domain: climateactiontracker.org1351    homepage: https://climateactiontracker.org1352    categories: [climate, ngo]1353    tier: C1354    aliases: [cat]1355    discover: { rss: false, sitemap: false, pages: true }1356    sensors:1357      - { name: blog, url: "https://climateactiontracker.org/blog/", type: HTML, connector: http, tier: C }1358  - id: ember1359    name: Ember1360    domain: ember-energy.org1361    homepage: https://ember-energy.org1362    categories: [energy, climate, ngo]1363    tier: C1364    aliases: [ember climate, ember energy]1365    discover: { rss: false, sitemap: true, pages: true }1366    sensors:1367      - { name: latest insights, url: "https://ember-energy.org/latest-insights/", type: HTML, connector: http, tier: B }1368      - { name: sitemap, url: "https://ember-energy.org/sitemap_index.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }1369  - id: carbon-tracker1370    name: Carbon Tracker Initiative1371    domain: carbontracker.org1372    homepage: https://carbontracker.org1373    categories: [climate, finance, ngo]1374    tier: C1375    aliases: [carbon tracker]1376    discover: { rss: true, sitemap: true }1377    sensors:1378      - { name: news feed, url: "https://carbontracker.org/feed/", type: RSS, connector: rss, tier: C }1379  - id: cdp1380    name: CDP1381    domain: cdp.net1382    homepage: https://www.cdp.net1383    categories: [climate, finance, ngo]1384    tier: C1385    aliases: [carbon disclosure project]1386    discover: { rss: false, sitemap: true }1387    sensors:1388      - { name: sitemap, url: "https://www.cdp.net/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }1389  - id: sbti1390    name: Science Based Targets initiative1391    domain: sciencebasedtargets.org1392    homepage: https://sciencebasedtargets.org1393    categories: [climate, finance, ngo]1394    tier: C1395    aliases: [sbti, science based targets]1396    discover: { rss: false, sitemap: true, pages: true }1397    sensors:1398      - { name: news, url: "https://sciencebasedtargets.org/news", type: HTML, connector: http, tier: C }1399  - id: ifrs-issb1400    name: IFRS Foundation / ISSB1401    domain: ifrs.org1402    homepage: https://www.ifrs.org1403    categories: [finance, climate, standards]1404    tier: B1405    weight: 1.11406    aliases: [ifrs, issb, international sustainability standards board, iasb]1407    products:1408      - { name: IFRS S1, type: standard }1409      - { name: IFRS S2, type: standard }1410    discover: { rss: false, sitemap: true, pages: true }1411    sensors:1412      - { name: news, url: "https://www.ifrs.org/news-and-events/news/", type: HTML, connector: http, tier: B }1413      - { name: sitemap, url: "https://www.ifrs.org/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 4000 } }1414  - id: nsidc1415    name: National Snow and Ice Data Center1416    domain: nsidc.org1417    homepage: https://nsidc.org1418    categories: [climate, science]1419    tier: C1420    aliases: [nsidc, arctic sea ice news]1421    discover: { rss: true, sitemap: false }1422    sensors:1423      - { name: arctic sea ice news feed, url: "https://nsidc.org/arcticseaicenews/feed/", type: RSS, connector: rss, tier: B }1424  - id: berkeley-earth1425    name: Berkeley Earth1426    domain: berkeleyearth.org1427    homepage: https://berkeleyearth.org1428    categories: [climate, science]1429    tier: C1430    discover: { rss: true, sitemap: true }1431    sensors:1432      - { name: news feed, url: "https://berkeleyearth.org/feed/", type: RSS, connector: rss, tier: C }1433  - id: climate-central1434    name: Climate Central1435    domain: climatecentral.org1436    homepage: https://www.climatecentral.org1437    categories: [climate, science, ngo]1438    tier: C1439    discover: { rss: true, sitemap: true }1440    sensors:1441      - { name: news feed, url: "https://feeds.feedburner.com/climatecentral/djOO", type: RSS, connector: rss, tier: C }1442  - id: canadian-climate-institute1443    name: Canadian Climate Institute1444    domain: climateinstitute.ca1445    homepage: https://climateinstitute.ca1446    categories: [climate, ngo]1447    tier: C1448    aliases: [institut climatique du canada]1449    discover: { rss: true, sitemap: true }1450    sensors:1451      - { name: news feed, url: "https://climateinstitute.ca/news/feed/", type: RSS, connector: rss, tier: C }1452  - id: ouranos1453    name: Ouranos1454    domain: ouranos.ca1455    homepage: https://www.ouranos.ca1456    categories: [climate, science]1457    tier: C1458    discover: { rss: false, sitemap: true }1459    sensors:1460      - { name: sitemap, url: "https://www.ouranos.ca/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }1461  - id: iisd1462    name: International Institute for Sustainable Development1463    domain: iisd.org1464    homepage: https://www.iisd.org1465    categories: [climate, ngo, international]1466    tier: C1467    aliases: [iisd, earth negotiations bulletin]1468    discover: { rss: false, sitemap: true, pages: true }1469    sensors:1470      - { name: press, url: "https://www.iisd.org/press", type: HTML, connector: http, tier: C }1471      - { name: articles, url: "https://www.iisd.org/articles", type: HTML, connector: http, tier: C }1472  - id: pembina-institute1473    name: Pembina Institute1474    domain: pembina.org1475    homepage: https://www.pembina.org1476    categories: [energy, climate, ngo]1477    tier: C1478    aliases: [pembina]1479    discover: { rss: true, sitemap: true }1480    sensors:1481      - { name: all news feed, url: "https://www.pembina.org/rss/all", type: RSS, connector: rss, tier: C }1482  - id: clean-energy-canada1483    name: Clean Energy Canada1484    domain: cleanenergycanada.org1485    homepage: https://cleanenergycanada.org1486    categories: [energy, climate, ngo]1487    tier: C1488    discover: { rss: true, sitemap: true }1489    sensors:1490      - { name: news feed, url: "https://cleanenergycanada.org/feed/", type: RSS, connector: rss, tier: C }1491  - id: rmi1492    name: RMI1493    domain: rmi.org1494    homepage: https://rmi.org1495    categories: [energy, climate, ngo]1496    tier: C1497    aliases: [rocky mountain institute]1498    discover: { rss: true, sitemap: true }1499    sensors:1500      - { name: news sitemap, url: "https://rmi.org/news-sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 1000 } }1501  - id: bloombergnef1502    name: BloombergNEF1503    domain: bnef.com1504    homepage: https://about.bnef.com1505    categories: [energy, climate, finance]1506    tier: B1507    weight: 1.11508    aliases: [bnef, bloomberg new energy finance]1509    discover: { rss: true, sitemap: true }1510    sensors:1511      - { name: insights feed, url: "https://about.bnef.com/feed/", type: RSS, connector: rss, tier: B }1512  - id: wood-mackenzie1513    name: Wood Mackenzie1514    domain: woodmac.com1515    homepage: https://www.woodmac.com1516    categories: [energy, finance]1517    tier: C1518    aliases: [woodmac]1519    discover: { rss: false, sitemap: true, pages: true }1520    sensors:1521      - { name: press releases, url: "https://www.woodmac.com/press-releases/", type: HTML, connector: http, tier: B }1522      - { name: sitemap, url: "https://www.woodmac.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 3000 } }1523  - id: rystad-energy1524    name: Rystad Energy1525    domain: rystadenergy.com1526    homepage: https://www.rystadenergy.com1527    categories: [energy, finance]1528    tier: C1529    aliases: [rystad]1530    discover: { rss: false, sitemap: true, pages: true }1531    sensors:1532      - { name: news, url: "https://www.rystadenergy.com/news", type: HTML, connector: http, tier: B }1533      - { name: sitemap, url: "https://www.rystadenergy.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 2000 } }1534  - id: sp-global-commodity-insights1535    name: S&P Global Commodity Insights1536    domain: spglobal.com1537    homepage: https://www.spglobal.com/commodity-insights1538    categories: [energy, finance]1539    tier: C1540    aliases: [platts, s&p global platts, commodity insights]1541    discover: { rss: false, sitemap: false }1542    notes: "spglobal.com answers 403 to non-browser clients on every path (including the RSS feed list) — kept for entity linking only."1543