Commit Graph
225 Commits
Author SHA1 Message Date
Codex Integration aa5109a6cb Merge remote-tracking branch 'origin/pr/559' into codex/pr-561-562-559 2026-09-12 15:53:45 -06:00
Codex Integration 726d1ef8b6 Merge remote-tracking branch 'origin/pr/562' into codex/pr-561-562-559 2026-09-12 15:53:44 -06:00
C3B2W23andClaude Fable 5.1 9eee300b97 fix(filters): keep the filter dialog responsive on very long option lists
The vessel name list runs to tens of thousands of entries and every one
was mounted as a button when the dialog opened, so the Maritime dialog
took several seconds to appear. Because the dialog centres itself in an
effect after the first paint, that delay also showed it flashing at the
top-left before jumping to the middle.

Mount at most 300 rows until the search narrows the list, say how many
are hidden, and centre in a layout effect so the first paint is already
in place.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-11 16:15:30 -07:00
C3B2W23andClaude Fable 5.1 9df81bf636 fix(map): apply vessel data filters to the carrier layer
Carrier icons and labels are built on the main thread from the raw ship
array, separately from the worker that draws every other vessel, so the
Data Filters vessel name / type selection never reached them. Filtering
to yachts left the aircraft carriers on the map.

Move the ship filter predicate into a shared helper used by both the
worker and the carrier builder so all ship sources honour the same
selection.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-11 16:02:31 -07:00
C3B2W23andClaude Fable 5.1 ce77612d42 fix(filters): surface disabled layers inside the data filter dialog
Each Data Filters section acts on one or more map layers, but the panel
never knew the layer state, so a filter could target a layer that was
switched off and silently do nothing. Four of the five sections build
their option lists from live data, so with the layer off the dialog was
also empty and unsearchable, with no hint why.

Declare the layer keys per section, badge sections whose layers are all
off, and show a banner in the dialog with an ENABLE control per disabled
layer. Enabling from the dialog refetches within a few seconds and the
list fills in place. The empty list now says whether the layer is off,
data is still loading, or the search simply has no match. APPLY stays a
plain apply. Callers that do not pass layer state keep the old behaviour.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-11 15:20:18 -07:00
dependabot[bot] bdcd6aabaf chore(deps-dev): bump concurrently from 9.2.3 to 10.0.5 in /frontend
Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 9.2.3 to 10.0.5.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v9.2.3...v10.0.5)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-version: 10.0.5
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-10 07:23:58 +00:00
BigBodyCobain cd6395f5ee fix: complete intelligence layer refreshes and UAP fallback 2026-08-23 20:14:07 -06:00
BigBodyCobain 2461756da4 fix: restore CCTV and Telegram map visibility 2026-08-23 19:28:40 -06:00
Shadowbroker 108e0a49e5 fix(layers): make restart repair passive and always-on 2026-08-20 21:09:50 -06:00
Shadowbroker ae237eb2b4 test(search): cover visible supplemental map assets 2026-08-20 21:00:12 -06:00
Shadowbroker 7f5b4c089e test(layers): cover backend restart reconciliation 2026-08-20 21:00:00 -06:00
Shadowbroker b130656cd1 fix(search): locate assets from visible map layers 2026-08-20 20:58:35 -06:00
Shadowbroker f9ae967580 fix(layers): reconcile saved toggles after backend restarts 2026-08-20 20:57:46 -06:00
Shadowbroker 0956b68b11 fix(security): protect LiveUAMap operator routes from cross-site requests 2026-08-18 16:12:56 -06:00
Shadowbroker ed97e9e4bc fix(liveuamap): make enrichment resilient and non-blocking 2026-08-18 15:52:46 -06:00
Shadowbroker 28bcdf61e4 test(security): preserve reverse-proxy origin semantics 2026-08-17 01:13:08 -06:00
Shadowbroker 616d358601 fix(security): preserve hardened reverse-proxy origin handling 2026-08-17 01:12:39 -06:00
Shadowbroker cfae066140 test(security): update API matcher security expectation 2026-08-17 01:11:38 -06:00
Shadowbroker 054528edab test(security): cover privileged API proxy boundary 2026-08-17 01:11:15 -06:00
Shadowbroker 21df433103 fix(security): cover privileged API root routes 2026-08-17 01:09:53 -06:00
Shadowbroker 6ab3ca3957 fix(security): reject cross-origin privileged API requests 2026-08-17 01:06:08 -06:00
Ethan Morchy 6112dab21a Merge branch 'BigBodyCobain:main' into feature/locate-auto-zoom 2026-08-11 15:03:13 -07:00
Ethan Morchy eeb4509565 Size the LOCATE camera from typed precision and place extent 2026-08-11 00:40:48 -07:00
Ethan Morchy 474cf89141 Fly the map to a bounding box when one is supplied 2026-08-11 00:40:48 -07:00
Ethan Morchy 664f218a6f Add bounds-sizing helpers for LOCATE camera moves 2026-08-11 00:40:47 -07:00
BigBodyCobainandCursor dc0f69a0b9 Expose AISHub as an optional ships-layer backup when AISStream is silent.
Wire AISHUB_USERNAME into API Keys and onboarding, and surface backup status on the AIS outage banner so operators can keep vessel coverage without changing the AISStream proxy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 18:56:30 -06:00
Ethan Morchy add75b4973 tests 2026-08-08 17:08:24 -07:00
Ethan Morchy b9d8be146d Add zoom to agent fly to location 2026-08-08 17:08:13 -07:00
Ethan Morchy 3ef45508b2 Let agents temporarily override native map layer visibility. 2026-08-08 02:04:20 -07:00
BigBodyCobain 8676a98945 Release v0.9.84 with GT analytics, Telegram translate, full telemetry, and saved dashboard layout.
Bump version across frontend, backend, and desktop shell; update changelog modal, release digests, and updater manifest filtering for the current version only.
2026-08-05 13:20:59 -06:00
BigBodyCobain f81cf88ecb Persist dashboard layer, filter, style, and panel UI preferences in localStorage.
Hydrate saved toggles after client mount so SSR does not reset operator layer layouts on refresh, and store map style, filters, and section expand state alongside layer visibility.
2026-08-05 10:33:24 -06:00
BigBodyCobainandCursor 4c461a2ccd Wire Persian into Telegram OSINT translate labels and locale docs.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 11:05:25 -06:00
Shadowbroker cbd94f25c1 Merge pull request #472 from esmaeelE/feat/Persian
Feat/persian
2026-08-03 10:58:04 -06:00
esmaeelE 227f3d2d0f change some little translatation 2026-08-03 12:15:01 +03:30
esmaeelE 3c37ec570e translate to Persian 2026-08-03 12:15:01 +03:30
BigBodyCobainandCursor 5ae1e5b272 perf: live-data deltas, payload caps, and map render polish
Cut fast-tier payload cost with zoom-aware sampling, row deltas, CCTV bbox columns, and MapLibre/motion polish; force viewport snapshot refetches so regional pans refill aircraft immediately.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 19:40:11 -06:00
BigBodyCobain d38c886af9 Harden mesh bootstrap defaults 2026-07-10 20:27:56 -06:00
anntr1k3 4b463f2e46 Update frontend README runtime API config 2026-07-03 22:43:45 +04:00
BigBodyCobainandCursor 47faa1e488 Migrate CSP middleware to Next.js proxy convention.
Renames src/middleware.ts to src/proxy.ts per Next.js 16 deprecation guidance. CSP nonce behavior is unchanged; build no longer emits the middleware warning.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 22:40:43 -06:00
BigBodyCobainandCursor 8c4619179e Add multi-airline ACARS summarizer for readable datalink dossiers.
Parse common position, OOOI, performance, and ops formats across major carriers while hiding VDL binary fragments and duplicate frames from the dossier feed.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 22:52:00 -06:00
BigBodyCobainandCursor 9ad0a5ffce Add Airframes ACARS datalink on plane dossiers and Meshtastic planet scan.
Bulk-ingest Airframes messages on a rate-limited staggered queue with instant cache lookups and priority per-aircraft refresh when opening a dossier; add Meshtastic manual SCAN PLANET control in the SIGINT panel.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 22:15:50 -06:00
BigBodyCobainandCursor a0c79c2044 data: sync plane-alert VIP tracking with real names only
Import oligarchs, royals, and curated celebrities from plane-alert-db while excluding joke tag labels from tracked_names. Sync plane_alert_db.json metadata, add import scripts, and map oligarch/royal/celebrity colors in the legend.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 20:02:03 -06:00
BigBodyCobain 0690d94c37 fix(ui): SAR credential setup in Settings and async layer toggles.
Add Earthdata token entry on the SAR tab with accurate Mode B status, expose optional FIRMS_MAP_KEY in API settings, and remove the frontend operator-unlock gate that blocked localhost saves. Run network-heavy layer-enable fetches on a background executor with frontend retry polling so FIRMS toggles no longer freeze the single API worker.
2026-06-23 01:31:16 -06:00
BigBodyCobain 53ed63ffcf perf: UX-safe fetch trimming and instant layer-enable refresh.
Drop duplicate slow-tier weather/ukraine jobs, gate correlations when off, slim health probes, keyed layer-panel subscriptions, align backend layer defaults with the dashboard, and fetch CCTV/FIRMS/PSK/etc. synchronously on enable so toggles stay responsive without background prefetch waste.
2026-06-23 00:16:48 -06:00
ShadowbrokerandCursor 91c76ad1bd security: agent-shell WS tokens and dependency audit fixes (#409)
Replace spoofable Host/Origin WebSocket auth with short-lived bootstrap
tokens minted over the existing local-operator HTTP path. Docker/browser
shell sessions prefetch a token before connecting; loopback peers remain
unchanged.

Also bump backend ws to 8.21.0 and refresh frontend lockfile to clear
npm audit findings (dev toolchain only for frontend).

Fixes #405, #406, #407

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 16:40:36 -06:00
ShadowbrokerandCursor 013849ad1f fix(ui): keep Settings Infonet tab indicator inside panel border (#404)
The five-tab settings bar overflowed the 480px drawer, so the Infonet
active underline painted past the right edge. Use a clipped grid layout
with truncated labels and min-h-0 scrolling on the Infonet tab.

Fixes #395

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 11:52:25 -06:00
cfbeabda1e Feat/gt analytics openclaw (#392)
* feat(telegram): auto-translate OSINT channel posts to English

Cherry-picked from @Bobpick PR #391 (telegram-only slice): server-side translation during fetch, SHOW ORIGINAL toggle in TelegramOsintPopup, and on-demand /api/telegram-feed?lang=.

Co-authored-by: Robert Pickett <bobpickettsr@yahoo.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

* feat(gt): experimental Derived OSINT analytics with lean-node safeguards

Cherry-picked from @Bobpick PR #391 (GT + OpenClaw slice): Bayesian strategic-risk engine, map overlay, OpenClaw commands, and telegram_rhetoric watchdog. Off by default (GT_ANALYTICS_ENABLED=false, gt_risk layer false). 1 vCPU nodes get cgroup detection, UI warning on layer toggle, and lean profile that skips scheduled ingest/Louvain unless GT_ANALYTICS_ACK_LOW_CPU=true. Backtest HUD removed from dashboard (OpenClaw/API regression only).

Co-authored-by: Robert Pickett <bobpickettsr@yahoo.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Robert Pickett <bobpickettsr@yahoo.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 17:05:46 -06:00
BigBodyCobain 51f377f03d fix: sync Data Layers toggle-all icon and improve RSS feed saves
Unify toggle-all exclusions for Earth imagery overlays so the icon matches layer state, and let Docker operators save news feeds via the proxy without a misleading network error.
2026-06-15 16:21:38 -06:00
BigBodyCobain 5ede669a12 Ship ShadowBroker v0.9.83 with live Infonet gate messaging and DM protocols.
Gate hashchain replication, Tor/SOCKS transport hardening, terminal session teardown, v0.9.83 UI/changelog, and release digest pins for seamless updater verification.
2026-06-15 15:37:29 -06:00
BigBodyCobainandCursor 52a0968092 Fix MessagesView first-contact test for allowLegacyAgentId lookup option.
fetchDmPublicKey now passes allowLegacyAgentId: false for short-address
contact requests; update the assertion to match the new call signature.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 02:21:25 -06:00