2a9c49e2a9
- Briefs now fill from a rolling window (prefer today, backfill up to window_days) and exclude anything featured in the last 7 days of briefs, so slow days still produce five items without stories lingering day to day. - New 'check-feeds' command fetches and parses every feed to catch dead ones. - Added 16 validated sources (science, environment, animals, culture), expanding coverage from 12 to 28 feeds to reduce staleness. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
265 lines
7.0 KiB
TOML
265 lines
7.0 KiB
TOML
[[sources]]
|
|
name = "Good News Network"
|
|
homepage_url = "https://www.goodnewsnetwork.org/"
|
|
feed_url = "https://www.goodnewsnetwork.org/feed/"
|
|
default_category = "constructive"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Explicit good-news source; useful for early calibration."
|
|
|
|
[[sources]]
|
|
name = "Positive News"
|
|
homepage_url = "https://www.positive.news/"
|
|
feed_url = "https://www.positive.news/feed/"
|
|
default_category = "constructive"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 180
|
|
notes = "Constructive journalism source."
|
|
|
|
[[sources]]
|
|
name = "Reasons to be Cheerful"
|
|
homepage_url = "https://reasonstobecheerful.world/"
|
|
feed_url = "https://reasonstobecheerful.world/feed/"
|
|
default_category = "constructive"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 180
|
|
notes = "Solutions-oriented reporting."
|
|
|
|
[[sources]]
|
|
name = "Happy Eco News"
|
|
homepage_url = "https://happyeconews.com/"
|
|
feed_url = "https://happyeconews.com/feed/"
|
|
default_category = "environment"
|
|
trust_score = 5
|
|
pr_risk_score = 4
|
|
poll_interval_minutes = 180
|
|
notes = "Environmental good-news candidate source."
|
|
|
|
[[sources]]
|
|
name = "Mongabay"
|
|
homepage_url = "https://news.mongabay.com/"
|
|
feed_url = "https://news.mongabay.com/feed/"
|
|
default_category = "environment"
|
|
trust_score = 8
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 120
|
|
notes = "Environmental reporting; not always low-cortisol, but often constructive."
|
|
|
|
[[sources]]
|
|
name = "ScienceDaily Top Science"
|
|
homepage_url = "https://www.sciencedaily.com/"
|
|
feed_url = "https://www.sciencedaily.com/rss/top/science.xml"
|
|
default_category = "science"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Science discovery feed."
|
|
|
|
[[sources]]
|
|
name = "ScienceDaily Health"
|
|
homepage_url = "https://www.sciencedaily.com/news/health_medicine/"
|
|
feed_url = "https://www.sciencedaily.com/rss/health_medicine.xml"
|
|
default_category = "health-progress"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Health and medicine research feed."
|
|
|
|
[[sources]]
|
|
name = "ScienceDaily Environment"
|
|
homepage_url = "https://www.sciencedaily.com/news/earth_climate/environmental_science/"
|
|
feed_url = "https://www.sciencedaily.com/rss/earth_climate/environmental_science.xml"
|
|
default_category = "environment"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Environment research feed."
|
|
|
|
[[sources]]
|
|
name = "NPR Science"
|
|
homepage_url = "https://www.npr.org/sections/science/"
|
|
feed_url = "https://feeds.npr.org/1007/rss.xml"
|
|
default_category = "science"
|
|
trust_score = 8
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 90
|
|
notes = "Mainstream science feed; mix of constructive and general coverage."
|
|
|
|
[[sources]]
|
|
name = "NPR Health"
|
|
homepage_url = "https://www.npr.org/sections/health/"
|
|
feed_url = "https://feeds.npr.org/1128/rss.xml"
|
|
default_category = "health-progress"
|
|
trust_score = 8
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 90
|
|
notes = "Health feed; needs cortisol filtering."
|
|
|
|
[[sources]]
|
|
name = "BBC Science and Environment"
|
|
homepage_url = "https://www.bbc.com/news/science_and_environment"
|
|
feed_url = "https://feeds.bbci.co.uk/news/science_and_environment/rss.xml"
|
|
default_category = "science"
|
|
trust_score = 8
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 90
|
|
notes = "Broad science/environment feed; needs filtering."
|
|
|
|
[[sources]]
|
|
name = "Futurity"
|
|
homepage_url = "https://www.futurity.org/"
|
|
feed_url = "https://www.futurity.org/feed/"
|
|
default_category = "science"
|
|
trust_score = 6
|
|
pr_risk_score = 4
|
|
poll_interval_minutes = 120
|
|
notes = "University research stories; watch PR framing."
|
|
|
|
|
|
[[sources]]
|
|
name = "Phys.org"
|
|
feed_url = "https://phys.org/rss-feed/"
|
|
default_category = "science"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Broad science aggregator."
|
|
|
|
[[sources]]
|
|
name = "Nature News"
|
|
feed_url = "https://www.nature.com/nature.rss"
|
|
default_category = "science"
|
|
trust_score = 9
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 180
|
|
notes = "Top-tier science journal news."
|
|
|
|
[[sources]]
|
|
name = "Ars Technica Science"
|
|
feed_url = "https://feeds.arstechnica.com/arstechnica/science"
|
|
default_category = "science"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Science/tech reporting."
|
|
|
|
[[sources]]
|
|
name = "The Guardian Science"
|
|
feed_url = "https://www.theguardian.com/science/rss"
|
|
default_category = "science"
|
|
trust_score = 8
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Mainstream science; needs filtering."
|
|
|
|
[[sources]]
|
|
name = "The Guardian Environment"
|
|
feed_url = "https://www.theguardian.com/environment/rss"
|
|
default_category = "environment"
|
|
trust_score = 8
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Environment; needs filtering."
|
|
|
|
[[sources]]
|
|
name = "ScienceDaily Plants & Animals"
|
|
feed_url = "https://www.sciencedaily.com/rss/plants_animals.xml"
|
|
default_category = "animals"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Animal/biology discoveries."
|
|
|
|
[[sources]]
|
|
name = "ScienceDaily Space & Time"
|
|
feed_url = "https://www.sciencedaily.com/rss/space_time.xml"
|
|
default_category = "science"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Space discoveries."
|
|
|
|
[[sources]]
|
|
name = "Smithsonian Magazine"
|
|
feed_url = "https://www.smithsonianmag.com/rss/latest_articles/"
|
|
default_category = "culture"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 180
|
|
notes = "Culture, history, science human-interest."
|
|
|
|
[[sources]]
|
|
name = "Yale Environment 360"
|
|
feed_url = "https://e360.yale.edu/feed.xml"
|
|
default_category = "environment"
|
|
trust_score = 8
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 180
|
|
notes = "In-depth environment/solutions."
|
|
|
|
[[sources]]
|
|
name = "Anthropocene Magazine"
|
|
feed_url = "https://www.anthropocenemagazine.org/feed/"
|
|
default_category = "environment"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 180
|
|
notes = "Sustainability solutions journalism."
|
|
|
|
[[sources]]
|
|
name = "The Conversation (US)"
|
|
feed_url = "https://theconversation.com/us/articles.atom"
|
|
default_category = "science"
|
|
trust_score = 7
|
|
pr_risk_score = 2
|
|
poll_interval_minutes = 120
|
|
notes = "Academic-authored explainers."
|
|
|
|
[[sources]]
|
|
name = "Colossal"
|
|
feed_url = "https://www.thisiscolossal.com/feed/"
|
|
default_category = "culture"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 240
|
|
notes = "Art and visual culture."
|
|
|
|
[[sources]]
|
|
name = "Atlas Obscura"
|
|
feed_url = "https://www.atlasobscura.com/feeds/latest"
|
|
default_category = "culture"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 240
|
|
notes = "Curiosities, places, culture."
|
|
|
|
[[sources]]
|
|
name = "New Scientist"
|
|
feed_url = "https://www.newscientist.com/feed/home/"
|
|
default_category = "science"
|
|
trust_score = 7
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 120
|
|
notes = "Science weekly."
|
|
|
|
[[sources]]
|
|
name = "ScienceAlert"
|
|
feed_url = "https://www.sciencealert.com/feed"
|
|
default_category = "science"
|
|
trust_score = 6
|
|
pr_risk_score = 4
|
|
poll_interval_minutes = 120
|
|
notes = "Pop science; watch hype."
|
|
|
|
[[sources]]
|
|
name = "Grist"
|
|
feed_url = "https://grist.org/feed/"
|
|
default_category = "environment"
|
|
trust_score = 6
|
|
pr_risk_score = 3
|
|
poll_interval_minutes = 180
|
|
notes = "Climate solutions reporting."
|