﻿# Vigie — finite source chancellery (v0)
# Niche: Quebec City. Nest: city → province → linked world.
# Rule: every source is named. Cuts are logged. No single court owns the fog.
# Voice = institution (not RSS feed). Sister feeds share one institution_id.
# Last updated: 2026-09-17
# Owner: Onesphore Ombinos + co-founders

version: 1
niche:
  primary_geo: quebec-city
  nest: [quebec-city, quebec, linked]

# How to cut a source: set enabled: false, add cut_reason + cut_at, never delete history silently.
# source_kind: media | official — official = primary document / government / crown corp.
# institution: voice identity for silence map + fight gate (≥2 institutions).
# max_items: optional hard cap after fetch (RENT.md thin wallet).

sources:
  # --- Quebec City / Capitale-Nationale primary ---
  - id: radio-canada-quebec
    name: Radio-Canada — Québec
    institution: radio-canada
    institution_name: Radio-Canada
    language: fr
    geo: quebec-city
    nest_role: primary
    source_kind: media
    type: rss
    url: https://ici.radio-canada.ca/rss/6104
    homepage: https://ici.radio-canada.ca/info/quebec
    notes: Official regional RSS (id 6104). Verified HTTP 200.
    enabled: true
    license_note: Personal/non-commercial RSS use per Radio-Canada terms; contact them before commercial reuse.

  - id: journal-de-quebec
    name: Le Journal de Québec
    institution: journal-de-quebec
    institution_name: Le Journal de Québec
    language: fr
    geo: quebec-city
    nest_role: primary
    source_kind: media
    type: rss
    url: https://www.journaldequebec.com/rss.xml
    homepage: https://www.journaldequebec.com
    notes: Local tabloid/daily. Verified HTTP 200. Weight carefully — high volume, strong editorial voice.
    enabled: true
    license_note: Check publisher ToS before commercial redistribution.

  - id: le-soleil
    name: Le Soleil
    institution: le-soleil
    institution_name: Le Soleil
    language: fr
    geo: quebec-city
    nest_role: primary
    source_kind: media
    type: rss
    url: https://www.lesoleil.com/arc/outboundfeeds/rss/category/actualites/?outputType=xml
    homepage: https://www.lesoleil.com
    max_items: 40
    notes: Paper of record. Arc outboundfeeds actualites probed 2026-09-16 (usable, 53 then capped). Not government.
    enabled: true
    enabled_at: 2026-09-16
    license_note: Check Coops de l'information / Le Soleil ToS before commercial redistribution.

  - id: ville-quebec
    name: Ville de Québec — Communiqués
    institution: ville-quebec
    institution_name: Ville de Québec
    language: fr
    geo: quebec-city
    nest_role: primary
    source_kind: official
    type: rss
    url: https://www.ville.quebec.qc.ca/Rss/rss.aspx?f=gen
    homepage: https://www.ville.quebec.qc.ca/apropos/espace-presse/actualites/
    max_items: 30
    notes: City hall communiqués (f=gen). Borough feeds cite/sfoy also exist; v0 keeps one thin official voice.
    enabled: true
    enabled_at: 2026-09-16
    license_note: Public municipal information; verify reuse terms for commercial products.

  - id: wzdx-quebec
    name: Ville de Québec — Entraves à la circulation (WZDX)
    institution: ville-quebec
    institution_name: Ville de Québec
    language: fr
    geo: quebec-city
    nest_role: primary
    source_kind: official
    type: wzdx
    url: https://quebec.gewi.com/wzdx/pull
    homepage: https://www.donneesquebec.ca/recherche/dataset/entraves-a-la-circulation-en-temps-reel-de-la-ville-de-quebec
    notes: Real-time WZDX GeoJSON of road obstructions, probed 2026-09-17 (902 features, continuous updates). Not RSS - outside the 12-feed RSS ceiling, invisible to the article pipeline and the silence map; rendered in the dedicated Travaux-et-entraves brief section with attribution, source timestamps, collection diffs and the official map link.
    enabled: true
    enabled_at: 2026-09-17
    license_note: CC-BY 4.0 - attribution required (Ville de Québec, Entraves à la circulation en temps réel, via Données Québec).

  # --- Province (Quebec) ---
  - id: le-devoir
    name: Le Devoir
    institution: le-devoir
    institution_name: Le Devoir
    language: fr
    geo: quebec
    nest_role: province
    source_kind: media
    type: rss
    url: https://www.ledevoir.com/rss/manchettes.xml
    homepage: https://www.ledevoir.com
    notes: Province-wide independent daily. Manchettes RSS verified HTTP 200.
    enabled: true
    license_note: Check publisher ToS.

  - id: la-presse
    name: La Presse
    institution: la-presse
    institution_name: La Presse
    language: fr
    geo: quebec
    nest_role: province
    source_kind: media
    type: rss
    url: https://www.lapresse.ca/actualites/rss
    homepage: https://www.lapresse.ca
    notes: Montreal-based; province impact. Actualités RSS verified HTTP 200. Filter to Quebec City relevance in enrich.
    enabled: true
    license_note: Check publisher ToS.

  - id: radio-canada-national
    name: Radio-Canada — Grands titres
    institution: radio-canada
    institution_name: Radio-Canada
    language: fr
    geo: quebec
    nest_role: province
    source_kind: media
    type: rss
    url: https://ici.radio-canada.ca/rss/4159
    homepage: https://ici.radio-canada.ca
    notes: National headlines. Use as province/linked signal; enrich must drop non-QC-relevant items.
    enabled: true
    license_note: Same as Radio-Canada regional.

  - id: gouv-quebec
    name: Gouvernement du Québec — Fil de presse
    institution: gouv-quebec
    institution_name: Gouvernement du Québec
    language: fr
    geo: quebec
    nest_role: province
    source_kind: official
    type: rss
    url: https://www.quebec.ca/fil-de-presse.rss
    homepage: https://www.quebec.ca/nouvelles
    max_items: 30
    notes: Province fil-de-presse.rss probed 2026-09-16 (usable, ~10 items). Law/bylaw impacts start here.
    enabled: true
    enabled_at: 2026-09-16
    license_note: Crown copyright / quebec.ca reuse terms apply.

  - id: hydro-quebec
    name: Hydro-Québec — Salle de nouvelles
    institution: hydro-quebec
    institution_name: Hydro-Québec
    language: fr
    geo: quebec
    nest_role: province
    source_kind: official
    type: rss
    url: https://nouvelles.hydroquebec.com/nouvelles/rss/5/salle-de-nouvelles
    homepage: https://nouvelles.hydroquebec.com/
    max_items: 40
    notes: Crown corp newsroom RSS. Probed 2026-09-16 (~379 raw) — HARD CAP 40 (RENT.md). Price/outage/scar voice.
    enabled: true
    enabled_at: 2026-09-16
    license_note: Hydro-Québec terms; personal lookout use first.

  # --- Linked (thin allowlist — only when it hits Quebec City) ---
  - id: cbc-montreal
    name: CBC News — Montreal
    institution: cbc
    institution_name: CBC
    language: en
    geo: linked
    nest_role: linked
    source_kind: media
    type: rss
    url: https://rss.cbc.ca/lineup/canada-montreal.xml
    homepage: https://www.cbc.ca/news/canada/montreal
    notes: English regional. Verified HTTP 200. Keep thin — bilingual tension, not a second empire.
    enabled: true
    license_note: CBC RSS personal use; commercial needs permission.

  - id: cbc-politics
    name: CBC News — Politics
    institution: cbc
    institution_name: CBC
    language: en
    geo: linked
    nest_role: linked
    source_kind: media
    type: rss
    url: https://rss.cbc.ca/lineup/politics.xml
    homepage: https://www.cbc.ca/news/politics
    notes: Federal politics that may hit QC (transfers, law, trade). Enrich must require QC impact or drop.
    enabled: true
    license_note: Same as CBC.

  - id: radio-canada-ottawa
    name: Radio-Canada — Ottawa-Gatineau
    institution: radio-canada
    institution_name: Radio-Canada
    language: fr
    geo: linked
    nest_role: linked
    source_kind: media
    type: rss
    url: https://ici.radio-canada.ca/rss/6102
    homepage: https://ici.radio-canada.ca/info/ottawa-gatineau
    notes: Federal capital lens. Thin linked only — enrich requires Quebec City / Quebec impact.
    enabled: true
    license_note: Same as Radio-Canada.

# Cut / deferred — keep history; do not delete silently
deferred:
  - id: ville-quebec-borough-feeds
    name: Ville de Québec — borough RSS (cite, sfoy, …)
    homepage: https://www.ville.quebec.qc.ca/apropos/espace-presse/abonnement/rss.aspx
    reason: v0 uses f=gen only; enable boroughs when Near me needs finer grain without doubling wallet fetch.

rules:
  max_enabled_rss_v0: 12
  linked_must_be_thin: true
  on_poison_or_death: set enabled false, log cut_reason and cut_at, keep raw history
  balance_note: >
    v0 mixes public broadcaster (RC/CBC), local daily (JdQ), paper of record (Le Soleil),
    independent (Le Devoir), Montreal major (La Presse), plus official primary documents
    (Ville, Gouv QC, Hydro). 12 enabled RSS = ceiling; fewer institutions when sister feeds
    share one voice (CBC, Radio-Canada). Not perfect balance — publish; adjust with scars.
  official_change_feeds: >
    Non-RSS official feeds (type: wzdx, ...) are structured change data, not articles.
    They never enter the article pipeline, the RSS ceiling, the ranking, or the silence
    map. They render in dedicated finite brief sections with attribution, source
    timestamps, collection diffs, and links to the official service. Removed from a
    collection is never reported as ended or resolved.
