Commit Graph

37 Commits

Author SHA1 Message Date
MrSphay
83c55df3a9 feat: add scenario watchlist
All checks were successful
Codex Template Compliance / template-compliance (pull_request) Successful in 5s
Build / test-and-image (pull_request) Successful in 51s
2026-05-17 14:49:05 +02:00
53470cc701 fix: load live dashboard data and add terminal actions
All checks were successful
Release Dry Run / release-dry-run (push) Successful in 8s
Codex Template Compliance / template-compliance (push) Successful in 5s
Build / test-and-image (push) Successful in 38s
2026-05-17 13:13:38 +02:00
42b7fc2024 docs: add registry dockge and dashboard operations
All checks were successful
Build / test-and-image (push) Successful in 2m39s
2026-05-16 21:18:51 +02:00
85f97bb2a6 feat: harden intelligence runtime and llm providers 2026-05-16 21:18:34 +02:00
Calesthio
7a5015e430 Merge pull request #89 from calesthio/codex/fix-live-market-indexes
Fix live market index symbols
2026-04-03 09:27:19 -07:00
calesthio
ef2c5ed28e Fix live market index symbols 2026-04-03 09:25:56 -07:00
calesthio
1b80539cdc feat(markets): surface gold and silver across dashboard and briefs 2026-03-28 22:53:23 -07:00
Calesthio
2d040cbe85 Merge pull request #65 from NearInfinity999/fix-mobile-control-panel
fix: resolve horizontal overflow on mobile control panel
2026-03-21 09:47:36 -07:00
calesthio
171510839d Move Sweep Delta panel to right sidebar below Signal Core 2026-03-21 09:42:48 -07:00
NearInfinity999
c49db838e5 fix: resolve horizontal overflow on mobile control panel 2026-03-21 11:30:07 +05:30
calesthio
44dd7fcdd8 Rename dashboard performance toggle to visuals 2026-03-20 15:12:56 -07:00
calesthio
4ce2e7f1e3 Add regional RSS sources to dashboard 2026-03-20 06:32:42 -07:00
calesthio
7e3ead0e96 Fix dashboard map regressions and OpenSky fallback 2026-03-19 11:57:22 -07:00
Ketchalegend
a8ff837834 fix: tighten source badge mapping per review
- NYT Africa, DW Africa → Africa badge (check before generic nyt/dw)
- NPR → USA badge (was incorrectly grouped with Africa)
- RFI → Africa (Africa/Cameroon region per PR)
- Add .tk-src.us style for USA sources
2026-03-19 08:01:20 -07:00
Ketchalegend
ba9e93679f feat: add news sources, 30-day filter, and fix ticker performance
- Fix Al Jazeera RSS URL (feeds.aljazeera.com is dead, moved to www.aljazeera.com)
- Add 8 new RSS sources: DW, France 24, Euronews, DW Africa, RFI, Africa News,
  NYT Africa, NPR — covering Germany, Europe, Africa, Cameroon region, and USA
- Filter WHO outbreak news and ticker feed to last 30 days (drops stale alerts
  like 733-day-old WHO DONs)
- Fix ticker causing Chrome to crash: add will-change:transform and
  contain:layout style for GPU compositing, reduce DOM nodes from 80 to 40
- Add badge styles for new source categories (DW, EU, Africa)
2026-03-19 08:01:20 -07:00
Calesthio
3fed206e59 feat(i18n): Add internationalization support with English and French locales (#1)
feat(i18n): Add internationalization support with English and French locales
2026-03-19 08:00:40 -07:00
Calesthio
bed928b6ed fix: prevent infinite loading screen by adding sweep timeouts (#32)
fix: prevent infinite loading screen by adding sweep timeouts
2026-03-19 08:00:32 -07:00
David
9b395b6aa5 feat(i18n): Add internationalization support
- Add i18n module with locale loading and translation helpers
- Add English (en) and French (fr) locale files with comprehensive translations
- Inject locale data into dashboard HTML via server
- Add /api/locales endpoint for locale info
- Add t() translation function to dashboard

Translated elements:
- Boot sequence (initialization, connecting, sweep complete)
- Header pills (sweep, sources, delta, risk indicators)
- Left rail panels (sensor grid, nuclear watch, risk gauges, space watch)
- Layer names and descriptions
- Map legend items
- Lower panels (news ticker, sweep delta, macro+markets, trade ideas)
- Right rail (OSINT stream)
- Badges and status indicators

Supported languages: English (default), French
Set CRUCIX_LANG=fr to switch to French
2026-03-18 21:43:57 +01:00
calesthio
c29ec93350 Add dashboard signal guide glossary (#42) 2026-03-18 12:01:04 -07:00
calesthio
26a6471269 Improve mobile globe loading and perf mode (#44) 2026-03-18 11:49:17 -07:00
calesthio
d570ca6887 Improve mobile dashboard layout and map defaults 2026-03-18 10:52:04 -07:00
calesthio
a8682c50d0 Add zoom-aware symbology, fix globe popovers, expand geo coverage (#34)
* Add zoom-aware symbology, fix globe popovers, expand geo coverage

Map rendering improvements based on user feedback:
- Globe markers now scale with camera altitude (onZoom hook)
- Priority-based visibility culls low-priority markers at world view
- Globe popovers use getScreenCoords for accurate positioning
- Flat map labels hidden at low zoom, revealed progressively
- Default globe altitude lowered from 2.5 to 1.8 for better fill
- Americas region zoom tightened to CONUS focus

Geographic coverage expansion:
- 4 new OpenSky air theaters: Caribbean, Gulf of Guinea, Cape Route, Horn of Africa
- Flight corridors now span Americas and Africa
- NOAA alerts extract centroid lat/lon from GeoJSON geometry
- EPA RadNet stations geocoded with hardcoded coords for 10 US cities
- ISS + Tiangong positions estimated from TLE orbital elements
- GDELT geoEvents() now called in briefing for mapped event points
- New legend entries: Weather Alert, EPA RadNet, Space Station, GDELT Event

* Fix null-safe coordinate checks and remove injected data blob

- Use `!= null` instead of truthy checks for lat/lon in noaa.mjs
  and inject.mjs so valid 0-coordinates (equator/prime meridian)
  are not silently dropped
- Reset jarvis.html `let D` back to null placeholder so generated
  runtime data is not part of the PR diff

* Remove re-injected data blob from jarvis.html

Reset let D back to null — previous commit was correct but
inject.mjs build verification re-injected the payload.
2026-03-17 19:34:08 -07:00
calesthio
d63c69bb05 Merge pull request #26 from trisk/aljazeera-url
Fix Al Jazeera RSS feed URL
2026-03-17 14:38:26 -07:00
calesthio
54bbcd4b04 Fix static dashboard injection flow 2026-03-17 13:47:55 -07:00
Firdavs
d22f36e158 fix: prevent infinite loading screen by adding sweep timeouts
The dashboard would hang indefinitely on the loading screen because:

1. `bls.mjs` used a raw `fetch()` without any timeout/AbortSignal —
   if the BLS API was slow or unresponsive, it would block forever.

2. `runSource()` in `briefing.mjs` had no per-source timeout, so a
   single hanging API could stall the entire sweep indefinitely.

3. `server.mjs` loaded cached `latest.json` via a fire-and-forget
   promise (`.then()`) instead of `await`, meaning the dashboard
   never received the cached data before the sweep started.

4. `loading.html` relied solely on SSE for redirect — if the SSE
   connection missed the update event, the page would never redirect.

Changes:
- Add 15s AbortController timeout to BLS `getSeries()` fetch call
- Add 30s per-source timeout via `Promise.race()` in `runSource()`
- Await `synthesize()` when loading cached data so the dashboard
  serves instantly on restart when `runs/latest.json` exists
- Add 5s fallback polling to loading page alongside SSE

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 21:56:08 +03:00
Albert Lee
cf941e1d87 Fix Al Jazeera RSS feed URL 2026-03-17 06:11:16 -04:00
calesthio
183702e688 Merge pull request #5 from The-R4V3N/feat/clickable-ticker-articles
Add clickable article links to Live News Ticker
2026-03-15 23:00:26 -07:00
calesthio
ee552dddef fix: restrict ticker article links to http(s) 2026-03-15 17:27:07 -07:00
R4V3N
6b4deea96b Add visual link icon to clickable ticker items
Shows a ↗ arrow on ticker cards that have article URLs,
highlighted cyan on hover to indicate clickability.
2026-03-15 22:24:56 +01:00
R4V3N
8bbc9058f2 Add clickable article links to Live News Ticker
RSS and GDELT ticker items now open the source article in a new tab
when clicked. Telegram/WHO items without URLs remain non-clickable.

Changes:
- Extract <link> from RSS feed items in inject.mjs
- Carry url field through fetchAllNews() and buildNewsFeed()
- Add data-url attribute and pointer cursor to clickable ticker cards
- Add delegated click listener to open articles in new tab
2026-03-15 19:49:18 +01:00
calesthio
9eb9a0afa3 fix: Docker dashboard not loading — remove localhost hostname check
The isServer detection required location.hostname === 'localhost', which
fails in Docker containers where the hostname is the container ID.
Now any non-file: protocol correctly triggers API fetch and SSE.

Fixes #3
2026-03-15 09:27:15 -07:00
calesthio
cfa9515e4c feat: add 3D WebGL globe, CelesTrak space tracking, and switch to AGPLv3
- Add interactive 3D globe (Globe.gl) with atmosphere, star field, and smooth rotation
- Add animated flight corridor arcs between air traffic hotspots and global hubs
- Add flat map toggle for classic D3 view
- Add CelesTrak as 27th intelligence source (satellite tracking, ISS, military constellations)
- Add Space Watch panel to dashboard
- Switch license from MIT to AGPL-3.0-only
- Update README with 3D globe screenshots, new source count, and license badge

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 09:17:05 -07:00
calesthio
debc44fee0 feat: add Space/CelesTrak as 27th intelligence source
- New source: apis/sources/space.mjs (no API key required)
- Tracks: recent launches, ISS, military sats, Starlink/OneWeb constellations
- Wired into briefing.mjs (27 sources), inject.mjs synthesis, and dashboard
- New Space Watch panel in left rail with military breakdown and signals
- New Satellites layer in Sensor Grid
2026-03-15 08:19:23 -07:00
Virgílio Santos
4c601ed142 Added countdown timer to loading page — progress bar with sweep ETA 2026-03-14 15:56:31 -03:00
Virgílio Santos
1933e063ae Added loading page — SSE-driven splash screen for first-run UX 2026-03-14 15:56:31 -03:00
calesthio
3674fcb4f7 Crucix — agent with dashboard, delta engine, Telegram/Discord bots 2026-03-14 00:35:31 -07:00
calesthio
ef2c6470fb Initial release — Crucix Intelligence Engine v2.0.0
26-source OSINT intelligence engine with live Jarvis dashboard,
auto-refresh via SSE, optional LLM layer (4 providers), delta/memory
system, and Telegram breaking news alerts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 23:45:46 -07:00