Merge remote-tracking branch 'origin/main' into codex/overpass-admission-review-fixes

# Conflicts:
#	README.md
#	SECURITY.md
#	scripts/format-scope.json
#	server/providers/overpass.js
This commit is contained in:
Said Turksever committed 2026-10-26 14:21:39 +00:00
commit 0ac32f82ba
545 files changed
+29995 -2293

No files matched your search

+3
View File
@@ -0,0 +1,3 @@
- Keyless standalone startup answers an unavailable Google tile-token endpoint
with uncached 204 instead of a browser-visible 404. Existing providers take
precedence, and unrelated API routes behave as before. (dvilrgamerz, #1066)
@@ -0,0 +1,3 @@
- Keep NASA FIRMS fire and ALPR camera labels English in voice tool results
(`track_entity`, `get_entity_context`, pointer context); the voice card still
shows them in the interface language (daikaginza, #1207).
@@ -0,0 +1,3 @@
- Open God's Eye View from Pinokio in the system browser using the supported
`popout` menu option. The application's framing policy is unchanged
(NukeThemAII, #1222).
+2
View File
@@ -0,0 +1,2 @@
- Add continuous globe rotation with direction and speed controls and a globe-fit
check before starting (manjunath22466, #1225).
@@ -0,0 +1,4 @@
- The first-run card can be closed on a phone or tablet. "ESC to dismiss" is
now a button that closes the card the same way ESC does; touch screens read
DISMISS, and phones no longer hide it, so choosing a mission is not the only
way out (KnottyDyes, #1226).
+8
View File
@@ -0,0 +1,8 @@
- OpenSky sign-in matches what OpenSky accepts since 2026-03-18. The server
now reads `OPENSKY_CREDENTIALS_FILE` (the `credentials.json` OpenSky's
account page downloads) on every platform, not only through the macOS
launcher, and no longer sends retired username/password Basic auth:
`OPENSKY_AUTH_MODE=basic` loads anonymously with one warning saying what to
set instead (quanticsoul4772, #1229).
- Credential-file warnings omit parser excerpts and filesystem error details;
the path example also works with the macOS launchers.
@@ -0,0 +1,3 @@
- Skip bike-share stations with missing, blank or invalid coordinates instead
of placing them at coerced zero coordinates or accepting out-of-range values.
Explicit zero coordinates and numeric strings remain supported (Bortlesboat, #1232).
+3
View File
@@ -0,0 +1,3 @@
- `get_traffic_flow` flags stale cached TomTom tiles and reports the oldest
tile fetch time (`stale`, `oldest_tile_at`), with pending freshness metadata
released on failed or cancelled tile reads (quanticsoul4772, #1239).
+5
View File
@@ -0,0 +1,5 @@
- Replace the blocky JPEG sky around the globe with the 9,096 stars of the
Yale Bright Star Catalogue, drawn as sharp points where they are at the
scene time, over a soft Milky Way from ESO/S. Brunier (CC BY 4.0). The Sun
and Moon stay; the anime style hides the Milky Way. Assets: 296 kB (gekh,
#1243).
@@ -0,0 +1,4 @@
- The terrain-heights bounds tests no longer read the checkout's
`.gev-cache/terrain-heights.json`. Each test gets a cache file of its own, so
`npm test` no longer fails after the dev server has cached terrain near
Austin (KnottyDyes, #1244).
+3
View File
@@ -0,0 +1,3 @@
- Honor Docker Compose trusted-peer and allowed-host settings from the shell
or project `.env`, and let `GEV_KEY_SETUP_TRUSTED_PEERS=none` disable gateway
access to Provider Settings before Vite starts (asturksever, #1265).
+2
View File
@@ -0,0 +1,2 @@
- Normalize station tags and retain valid mixed rows; skipped malformed rows still report degraded coverage (asturksever, #1268).
- Correct Radio QA push-to-talk setup to target the mounted voice controller (asturksever, #1268).
+1
View File
@@ -0,0 +1 @@
- Coalesce refreshes and cool down opensky failures (asturksever, #1269).
+1
View File
@@ -0,0 +1 @@
- Respect provider cooldowns and bound tle groups (asturksever, #1270).
+1
View File
@@ -0,0 +1 @@
- Reject inherited style keys during restore (asturksever, #1271).
+1
View File
@@ -0,0 +1 @@
- Normalize geocoder bias across the antimeridian (asturksever, #1272).
+1
View File
@@ -0,0 +1 @@
- Retire unavailable history and keep local trails (asturksever, #1273).
+1
View File
@@ -0,0 +1 @@
- Scan the kml root delimiter in bounded time (asturksever, #1274).
+3
View File
@@ -0,0 +1,3 @@
- Preserve enable during first-load replacement (asturksever, #1275).
- Release disabled weather camera listeners and make teardown resource leaks fail the browser probe (asturksever, #1275).
- Keep visible-page weather teardown probes focused through the browser testing API (asturksever, #1275).
+1
View File
@@ -0,0 +1 @@
- Bound each height request to one upstream chunk (asturksever, #1276).
+1
View File
@@ -0,0 +1 @@
- Reserve singleflight before disk cache reads (asturksever, #1278).
+1
View File
@@ -0,0 +1 @@
- Throttle mission hover picks with a trailing check for the last pointer position, and clear stale cursors (asturksever, #1279).
+8
View File
@@ -0,0 +1,8 @@
- Hold rendering only for animated content (asturksever, #1281).
- Exercise current vector road sources and published camera bounds in Traffic fixture QA (asturksever, #1281).
- Establish browser-level foreground visibility for Traffic QA and reject hidden-page samples (asturksever, #1281).
- Supply CORS headers on cross-origin traffic fixtures and report browser exceptions without disabling browser security (asturksever, #1281).
- Isolate the Traffic keyless browser scenario from the keyed page’s workers and intercepted cache (asturksever, #1281).
- Restore minimized test windows before screenshots so native compositor pauses cannot stall browser acceptance (asturksever, #1281).
- Intercept only Traffic provider URLs, leaving Cesium worker and module loading untouched (asturksever, #1281).
- Settle an unfinished Traffic height correction when the last animated point leaves, so the layer stops reporting loading once its render hold is released (asturksever, #1281).
+7
View File
@@ -0,0 +1,7 @@
- Pause periodic network updates in hidden tabs; the overdue update on return restarts the polling schedule, so the next poll follows one interval later even when that update fails (asturksever, #1282).
- Report and guard browser visibility during Transit QA so hidden-page polling pauses cannot masquerade as playback regressions (asturksever, #1282).
- Require each live city to supply its own feed vehicles in Transit QA; retained vehicles cannot qualify another city (asturksever, #1282).
- Bound the Transit card-anchor probe by observed poll coverage instead of a fixed 20-second window (asturksever, #1282).
- Keep visible-page Transit probes focused through the browser testing API (asturksever, #1282).
- Add a real-browser regression gate for hidden-tab periodic work, explicit refresh, resume and teardown (asturksever, #1282).
- Restore minimized test windows before screenshots so native compositor pauses cannot stall browser acceptance (asturksever, #1282).
+4
View File
@@ -0,0 +1,4 @@
- A Street Level provider whose `zoomFor` still answers `{zoom, kind}`, the
shape before the core went slim, draws its lines again instead of a silent
blank; an overview level or any answer that is not a whole zoom shows the
zoom-in hint (asturksever, #1288).
+4
View File
@@ -0,0 +1,4 @@
- Add Simplified Chinese (zh-CN) to the language picker, with localized dates
and readable Chinese labels. Based on translations by @abiyeenzo (#914)
and @EDIT-Aeterna (#979).
(German, @gekh, #1298).
+2
View File
@@ -0,0 +1,2 @@
- `get_wind` flags stale forecasts (`stale`) when the wind proxy serves a
cached model run (quanticsoul4772, #1303).
@@ -0,0 +1,2 @@
- Point distances wrap longitude differences across the antimeridian, in voice
proximity checks and `places_nearby` (quanticsoul4772, #1304).
@@ -0,0 +1,3 @@
- Clarify shared field CSS ownership: CCTV owns calibration editor sizing,
while Radio and Cyber supply explicit field palettes without changing the
current appearance or native control behavior (mazy1998, #1309).
@@ -0,0 +1 @@
- Validate provider response formats, strengthen camera source checks, and apply consistent API response protections (samehkhamis, #1317).
+6
View File
@@ -0,0 +1,6 @@
- Remove dead code across the repository: three modules nothing imports
(`src/ui.js`, `src/standalone/ui.js`, `src/data/localLayers.js`), exports
and locals nothing reads, a duplicate copy of the bundled dams data and an
unused ship model. The app no longer builds an unused default wind layer
and Bhote Koshi locator layer when it loads. Package exports are unchanged
(samehkhamis, #1321).
@@ -0,0 +1,8 @@
- Export the KartaView and Panoramax Street Level providers, so a host composing
its own provider list can offer the keyless providers without Mapillary
(samehkhamis, #1324).
- A Mapillary source can take a `graphEndpoint`, a Graph API base that adds the
token itself (such as a same-origin proxy). Its sequence lookups go there
through the source's transport, and the photo viewer uses MapillaryJS's
Graph provider at that endpoint, so no client token is needed in the page
(samehkhamis, #1324).
+4
View File
@@ -0,0 +1,4 @@
- Add a phone layout for viewports 720px and narrower: the globe stays full
screen and a bottom tab bar (Layers, Cameras, Context, Search, More) opens one
panel sheet at a time, keeping attribution visible and scene STOP reachable.
Adapted from the phone tab-shell in #203 by blearymoth (samehkhamis, #1325).
@@ -0,0 +1,3 @@
- Evict terrain-height cache entries in fetch-time order without repeatedly
sorting the full cache, while keeping refreshed points newest and ordering
restored entries by their fetch time (daikaginza, #1326).
@@ -0,0 +1,4 @@
- Improve touch selection of aircraft and vessels through the shared contact
picker, reveal tracked aircraft details when opening Context, support downward
swipe dismissal of phone drawers while preserving scrolling and controls, and
enlarge the phone logo (samehkhamis, #1338).
+3
View File
@@ -0,0 +1,3 @@
- Carry HUD LAT/LON seconds that round up to 60.00" into the minutes and
degrees, so longitude -122.35 reads `122°21'00.00"W` instead of
`122°20'60.00"W` (rudycelekli, #1339).
@@ -0,0 +1,3 @@
- Read a hemisphere letter that is separated from its number, so a search for
`40.7128 N 74.0060 W` flies there instead of falling through to the geocoders
(Rudy Celekli, @rudycelekli, #1340).
@@ -0,0 +1,3 @@
- Reject impossible KartaView photo timestamps, so 31 February is unknown
instead of rolling forward into March and passing the imagery date filter
(Rudy Celekli, @rudycelekli, #1341).
@@ -0,0 +1,3 @@
- Keep an impossible wildfire acquisition date off the detection clock, so a
fire is not labeled with a later day it did not happen
(Rudy Celekli, @rudycelekli, #1342).
@@ -0,0 +1,4 @@
- Phrase slight and sharp ramps as directions, so a ramp reads "slightly left"
instead of "on the slightly left", and a lane names its side in both
the proxy response and localized browser instructions
(Rudy Celekli, @rudycelekli, #1343).
+3
View File
@@ -0,0 +1,3 @@
- Wake staged weather imagery on a 150 ms timer while waiting for readiness,
avoiding a continuous render loop and cancelling the wake when work ends
(@nu-stats, #1345).
@@ -0,0 +1,3 @@
- Label NHC cyclone classifications by their published meanings: `PTC` is a
post-tropical cyclone, `PC` a potential tropical cyclone, and subtropical
systems arrive as `STS` and `STD` (rudycelekli, #1349).
@@ -0,0 +1,3 @@
- Convert NHC cyclone movement speed from miles per hour to knots, so
`movement.speedKt` in cyclone query results is no longer about 15% high
(rudycelekli, #1350).
@@ -0,0 +1,6 @@
- Keep a tracked vessel's speed, course, heading and fix time when AISStream
static data arrives; the static message only merges name, type, destination
and IMO (rudycelekli, #1351).
- Apply changed static metadata immediately, retaining known fields when a
later static report omits them, without refreshing the vessel's position
(samehkhamis, #1351).
@@ -0,0 +1,3 @@
- Read a destination heading that rounds to north as 000. 359.6° was shown as
360° on the destination bearing while the compass tape already uses 000
(Rudy Celekli, @rudycelekli, #1352).
@@ -0,0 +1,3 @@
- Count a transit report that is 90 seconds old as one minute. The card kept
seconds through 89s, then rounded 90s up to "Reported 2 min ago"
(Rudy Celekli, @rudycelekli, #1353).
@@ -0,0 +1,3 @@
- Drop the decimal when fire radiative power rounds to 10 MW. A 9.96 MW
detection was labeled 10.0 MW because the one-decimal cutoff ran before
rounding (Rudy Celekli, @rudycelekli, #1354).
@@ -0,0 +1,5 @@
- Aircraft 3D models (Flights, Military Flights, Local ADS-B) skip Cesium's
dynamic environment map, a sky render and GPU readback per model. With
~150 models in the scene at Atlanta on Google 3D, GPU time per frame at
rest falls from 14.3-14.8 ms to 12.1-12.5 ms; a same-model comparison
showed no visible change (quanticsoul4772, #1366).
@@ -0,0 +1,4 @@
- Turning a layer off frees the memory its entities held. Cesium kept
removed layers' draw commands in reused per-pass arrays, so Data Centers
kept 116 MiB after it was switched off, submarine cables 74 MiB and dams
30 MiB; they now keep 13, 9 and 9 MiB (quanticsoul4772, #1367).
@@ -0,0 +1,5 @@
- Increase touch-first globe zoom sensitivity to three times the default while
retaining Cesium collision and distance limits.
- Reuse one delayed display timestamp per civil-aircraft fleet update and cache
extrapolation coordinate frames until their fix coordinates change. Preserve
contact counts, movement cadence, tracked motion and ground corrections.
@@ -0,0 +1,4 @@
- Reduce repeated work in aircraft detection candidates by caching unchanged
callsign/registration text and reusing resolved fleet models. Metadata updates,
live positions and tracked-aircraft/model handoffs remain immediate
(samehkhamis, #1379).
+4
View File
@@ -0,0 +1,4 @@
- The HUD's AI place summary drops a reply that arrives after the camera has
started moving, so a summary asked for before a flight no longer names the
old place mid-flight. Cancelled or partially typed summaries retry even if the place
context stays the same (quanticsoul4772, #1384).
@@ -0,0 +1,3 @@
- Show a route leg of 59.5 seconds or more as 1 min. The route summary and step
cards kept seconds below 60, then rounded 59.6 s up to "60 s"
(Rudy Celekli, @rudycelekli, #1385).
@@ -0,0 +1,3 @@
- Show a route leg of 995 m or more as 1.0 km. The route summary and step
cards kept meters below 1000, then rounded 996 m up to "1000 m"
(Rudy Celekli, @rudycelekli, #1386).
@@ -0,0 +1,3 @@
- Show a Contacts entry 999.5 m or more away as 1.0 km. The panel kept meters
below 1000, then rounded 999.6 m up to "1000 m"
(Rudy Celekli, @rudycelekli, #1387).
+3
View File
@@ -0,0 +1,3 @@
- Show a drawn line of 999.5 m or more as 1.0 km. The draw hint kept metres
below 1000, then rounded 999.6 m up to "1000 m"
(Rudy Celekli, @rudycelekli, #1388).
+3
View File
@@ -0,0 +1,3 @@
- Show cockpit wind from 359.5° or more as 0°, not 360°. Rounding 359.6°
printed "N · 360°" on the local wind direction
(Rudy Celekli, @rudycelekli, #1389).
@@ -0,0 +1,2 @@
- Render awareness-overlay bearings and courses that round through north as
`000°`, rather than `360°` (Rudy Celekli, #1390).
+4
View File
@@ -0,0 +1,4 @@
- Start the Docker install on SELinux hosts such as Fedora and RHEL. Compose now
mounts the checkout with `:z`; without it the container could not read `/app`
and stopped with "Cannot find module '/app/scripts/docker-start.mjs'"
(Anıl Güvenç, @anilguvenc, #1391).
+2
View File
@@ -0,0 +1,2 @@
- Report Docker container health with a local HTTP check using Node, with the
same port parsing as the launcher (John Rogers, @14traits, #1394).
@@ -0,0 +1,6 @@
- Report a fire detection's acquisition time as a UTC timestamp in
`get_active_fires`. The tool joined FIRMS's unpadded date and time, so a
00:45 UTC detection read "2026-01-01 45"; it now reads
`2026-01-01T00:45:00.000Z`. Missing or invalid dates and times remain
unknown rather than rolling into another calendar day
(Rudy Celekli, @rudycelekli, #1395).
@@ -0,0 +1,3 @@
- Show a locally heard aircraft tracking 359.5° or more as TRK 0°. The Local
ADS-B card rounded the track without wrapping, so 359.7° read "TRK 360°"
(Rudy Celekli, @rudycelekli, #1396).
+2
View File
@@ -0,0 +1,2 @@
- The Sharpen slider at 0 now turns the sharpen pass off instead of still
sharpening at a low amount (quanticsoul4772, #1398).
@@ -0,0 +1,3 @@
- Aircraft on the ground keep getting ground-height samples after the
computer's clock steps back, instead of waiting for it to catch up
(quanticsoul4772, #1399).
@@ -0,0 +1,5 @@
- Remove four modules nothing in the app imports: `src/app/sourceSlot.js`,
`src/data/flowTiles.js`, `src/data/issPass.js` and `src/data/localGeojson.js`.
The local GeoJSON layer tests now build layers the way the catalog does, so
they keep covering `localGeojsonCore.js`. Package exports are unchanged
(samehkhamis, #1403).
@@ -0,0 +1,8 @@
- Add a Scope checkbox and extend feathering to 200%, retaining scope settings
across HUD layouts, share links and scenes. First run opens with Scope ON at
100% feather; explicit settings and historical links retain their values. Give
Tactical, Operator and Minimal text black backplates only when Scope is OFF,
including vertical metadata, without changing the original HUD text color, glow or
opacity. Scope ON retains its original HUD presentation (bilawalsidhu, #1410).
Keep title and tagline positions stable when toggling Scope, include the eye
in the title backing, and brighten the two secondary labels only with Scope OFF.
+4
View File
@@ -0,0 +1,4 @@
- Harden Vite's filesystem deny list for local-only artifacts: repo `dist/`,
`.gev-logs/`, and `.gev-cache/` are denied without blocking dependency
`dist/` directories, and checkout paths containing glob metacharacters are
escaped before building the root-anchored pattern (blowing-a-raspberry, #948).