The nl-demo can now call a real language model -- credential isolation baked into the architecture, not bolted on.
Read MoreAn analyst types 'UK submarines'; the generator returns a CQL2 filter the existing engine evaluates to 17 plots. No UI yet, no live LLM -- just the plumbing and a CI harness that replays 12 phrases offline.
Read MoreA no-build-step React playground that lets stakeholders drive an NL catalog search offline -- no API keys, no CDN dependency, no backend.
Read MoreOne chip, one platform, multiple constraints. 'British submarines' now means exactly that — and the CQL2 round-trip is lossless.
Read MoreA deterministic 2.7 KB vocabulary bundle gives the NL-to-CQL2 prompt the exact words analysts are allowed to use, without embedding the catalog.
Read MoreBearing lines from towed-array sensors now originate at the array's real geographic position, with three calculation modes and cross-language parity.
Read MoreA single JSON registry defines the vessel class hierarchy and all known platforms, with matching Python and TypeScript loaders.
Read MoreSensor bearing lines, ambiguous bearings, and snail mode fading now render on the map via a custom Leaflet canvas layer.
Read MoreTracks with sensor data now expand to show named sensors and their contacts in the Layers panel.
Read MoreREP files with SENSOR, SENSOR2, SENSOR3, and SENSORARC lines now import as embedded sensor data on tracks.
Read More