Add CISA-KEV and Cloudflare Radar source adapters
CISA Known Exploited Vulnerabilities catalog — tracks CVEs actively exploited in the wild. No auth required. Provides vendor breakdown, ransomware linkage, recent additions, and actionable signals. Cloudflare Radar — internet outages, traffic anomalies, and DDoS attack trends. Requires a free API token (CLOUDFLARE_API_TOKEN). Monitors watchlist countries (RU, UA, CN, IR, KP, etc.) for internet shutdowns and sustained disruptions. Both sources slot into Tier 6: Cyber & Infrastructure. Source count updated from 27 to 29.
This commit is contained in:
@@ -43,6 +43,10 @@ import { briefing as space } from './sources/space.mjs';
|
||||
// === Tier 5: Live Market Data ===
|
||||
import { briefing as yfinance } from './sources/yfinance.mjs';
|
||||
|
||||
// === Tier 6: Cyber & Infrastructure ===
|
||||
import { briefing as cisaKev } from './sources/cisa-kev.mjs';
|
||||
import { briefing as cloudflareRadar } from './sources/cloudflare-radar.mjs';
|
||||
|
||||
const SOURCE_TIMEOUT_MS = 30_000; // 30s max per individual source
|
||||
|
||||
export async function runSource(name, fn, ...args) {
|
||||
@@ -63,7 +67,7 @@ export async function runSource(name, fn, ...args) {
|
||||
}
|
||||
|
||||
export async function fullBriefing() {
|
||||
console.error('[Crucix] Starting intelligence sweep — 27 sources...');
|
||||
console.error('[Crucix] Starting intelligence sweep — 29 sources...');
|
||||
const start = Date.now();
|
||||
|
||||
const allPromises = [
|
||||
@@ -103,6 +107,10 @@ export async function fullBriefing() {
|
||||
|
||||
// Tier 5: Live Market Data
|
||||
runSource('YFinance', yfinance),
|
||||
|
||||
// Tier 6: Cyber & Infrastructure
|
||||
runSource('CISA-KEV', cisaKev),
|
||||
runSource('Cloudflare-Radar', cloudflareRadar),
|
||||
];
|
||||
|
||||
// Each runSource has its own 30s timeout, so allSettled will resolve
|
||||
|
||||
Reference in New Issue
Block a user