7 Commits

Author SHA1 Message Date
Brent Perteet
1aa3f30fce test(sync): keep contract fixture with app tests 2026-08-24 19:14:59 -05:00
Brent Perteet
36f583169c feat: complete UM Trace iOS and field UI integration 2026-08-23 20:54:03 -05:00
Brent Perteet
5e87d81bb6 feat(sprint-3): apply Survey Teal field UI 2026-08-20 22:00:31 -05:00
Brent Perteet
71fcb9b63f feat(S2-b): connect durable MQTT sync to capture workflow 2026-08-20 15:22:29 -05:00
Brent Perteet
a788cebea3 test(S1-b): add IF-LOC codec boundary/edge-case vectors
QA-owned boundary coverage for the frozen IF-LOC v1.0 codec, complementing
app-owner's nominal round-trip suite. Pins min/max/resolution limits per wire
field via the pure Encode/Decode seam, staying clear of the no-value sentinels,
and characterises the two sentinel-collision edges (depth -327.68 m, current
0xFFFF) so the contract's documented ranges are enforceable.

40/40 green; full QA gate green (app 43 + server 2). Trace: SRS §3.1, Risk R-3.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-20 13:13:49 -05:00
Brent Perteet
0b4fb83546 S1-b: IF-LOC v1.0 locator simulator + round-trip test
Reference implementation of the frozen IF-LOC v1.0 contract
(meta/contracts/ble-device-interface.md): byte-accurate codec for the
telemetry, capture-trigger, and capture-result frames, plus a
LocatorSimulator that replays a canned locate session over a
transport-agnostic loopback link. Unblocks App development without
firmware (Risk R-3, SRS S3.1).

Plain net9.0 (not a MAUI head) so it builds/runs headless under the QA
gate without the Android/iOS workloads; qa-gate.sh auto-discovers
*.Tests.csproj under app/tests/. Round-trip test asserts field-level
fidelity (every SRS S3.1 telemetry + capture-result field), sentinels,
endianness (incl. RFC 4122 big-endian pointId), the REJECTED path, and
exactly-once capture correlation (no silent drop, SRS-LOG-7). 8/8 green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-20 13:10:24 -05:00
Brent Perteet
dc3a45e699 test: stand up xUnit harness for QA gate (S1-f)
Standalone net9.0 xUnit project at tests/FieldLogger.Tests (no MAUI workload)
so `dotnet test` runs fast in the QA gate. Smoke suite only for now; real app
logic tests land once codec/sim are factored into a workload-free library.

Trace: SRS §6 gate, NFR-8.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-20 12:53:34 -05:00