summaryrefslogtreecommitdiff
path: root/SESSION_STATE.md
AgeCommit message (Collapse)Author
6 dayschore: unify and centralize agent configuration in .agent/Peter Stone
13 daysfeat: add VHW boat speed parser, BoatSpeedData, and PerformanceViewModelPeter Stone
- NmeaParser: add parseVhw() for NMEA VHW (water speed) sentences, returning BoatSpeedData - NmeaStreamManager: expose nmeaBoatSpeedData SharedFlow for VHW emissions - BoatSpeedData: new sensor data class (bspKnots, timestampMs) - PerformanceViewModel + factory: new ViewModel for performance metrics - Preserve orig copies of MapFragment and UI tests for reference - Update SESSION_STATE.md and allowed tool settings Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
13 daysfeat: add AIS repository, AISHub API service, and AisHubSourceClaude Sonnet
- AisRepository: processes NMEA sentences, upserts by MMSI, merges type-5 static data, evicts stale - AisHubApiService + AisHubVessel: Retrofit/Moshi model for AISHub REST polling API - AisHubSource: converts AisHubVessel REST responses to AisVessel domain objects - 11 JUnit 5 tests all GREEN via /tmp/ais-repo-test-runner/ JVM harness Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
13 daysfeat: add AIS data model, CPA calculator, and NMEA VDM parserClaudomator Agent
- AisVessel data class (mmsi, name, callsign, lat, lon, sog, cog, heading, vesselType, timestampMs) - CpaCalculator: flat-earth CPA/TCPA algorithm (nm, min) - AisVdmParser: !AIVDM/!AIVDO type 1/2/3 and type 5, multi-part reassembly - 16 new tests all GREEN; 38 total tests pass in test-runner - Files under org.terst.nav.ais/nmea (com dir was root-owned) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
14 daysfeat: implement NMEA stream management, sensor data models, and power modesPeter Stone
- Added NmeaStreamManager for TCP connection and sentence parsing. - Extended NmeaParser to support MWV (wind), DBT (depth), and HDG/HDM (heading) sentences. - Added sensor data models: WindData, DepthData, HeadingData. - Introduced PowerMode enum to manage GPS update intervals. - Integrated NmeaStreamManager and PowerMode into LocationService. - Added test-runner, a standalone JVM-only Gradle project for verifying GPS/NMEA logic. Co-Authored-By: Gemini CLI <noreply@google.com>
2026-03-14Add GpsPosition data class and NMEA RMC parser with testsClaudomator Agent
- NmeaParser: parses $GPRMC (and any *RMC) sentence → GpsPosition - Null for void status (V), malformed input, non-RMC sentence - SOG/COG default to 0.0 when empty; S/W give negative lat/lon - Timestamp from HHMMSS + DDMMYY fields as Unix epoch millis UTC - No Android dependencies - GpsPositionTest: value holding and data-class equality (2 tests) - NmeaParserTest: 11 tests covering valid parse, void/malformed/empty, hemisphere signs, decimal precision - All 22 unit tests verified GREEN via kotlinc + JUnitCore Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-14Add GpsProvider interface and DeviceGpsProvider (FusedLocation)Claudomator Agent
- GpsPosition: lat/lon/sog (knots)/cog (degrees true)/timestampMs - GpsProvider + GpsListener interfaces for provider abstraction - DeviceGpsProvider wraps LocationManager GPS_PROVIDER (1 Hz default) SOG: m/s × 1.94384 knots; fix-lost timeout 10s - FakeGpsProvider + 9 passing JVM unit tests (no Android deps) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>