Refresh product strategy, code review, User's Guide, and Dashboard after latest tallyflow-assets-iot pull: Edge optional toggle, tag decode sheet, Locate hit indicator, Collect clear/sort, SDG RAIN CIN filter fix.
3.6 KiB
3.6 KiB
TallyFlow Scout Review (repo: tallyflow-assets-iot)
Product name: TallyFlow Scout
Package: tallyflow_scout
Version reviewed: 0.6.2+14 (master 0e37633, 2026-07-30)
Prior review: 0.5.3+10 (2c479fb, 2026-07-27)
Tech stack: Flutter (Material 3), flutter_hardware_scanner ^0.14 prerelease, camera barcode (ML Kit), sgtin (path), HTTP client to Edge
Role in platform
Handheld Collect / Verify / Locate app for TallyFlow Edge.
Not a replacement for TallyFlow Assets (tallyflow_mobile → Core).
Destinations
- Collect (nav key still
navUpdatein l10n → “Collect”) — scan list, submit to Edge remote reader API or export CSV - Verify — GS1 barcode identity vs RFID EPC encodings (
gs1_verify_match); optional auto-confirm - Locate — offline seek-and-find / geiger (
locate_screen, RSSI colors aligned with Assets pick-list palette); continuous hit indicator when any tags are in field
Delta since 0.5.3 (marketing-relevant)
| Area | Change |
|---|---|
| Edge optional | Settings useTallyFlowEdge — when off, no health checks / submits; CSV & floor tools only (edgeActive) |
| Tag decode sheet | Tap row → GS1 EPC-96 / SDG RAIN CIN / barcode GS1 AIs; RFID can open Locate |
| Collect list | Overflow menu: clear list; sort by value or RSSI (plus default recent) |
| Locate UX | Hit counter/lamp stays visible while tags are in the field (not only focused finds) |
| Audio | RfidBeepGate serializes driver beep vs Locate geiger mute |
| Decode/filter | SDG RAIN CIN filter fixed (D3C4C753 EPC prefix) |
| Branding | Simpler app icon / splash assets |
| Settings UX | Sheet height capped (~80%); shorter help copy |
| Hardware | Stronger URFID vs ATID AAR conflict handling note in tree |
Integration
- Client:
lib/services/tallyflow_iot_client.dart→{baseUrl}/api/v1/health,/reader/barcode,/reader/rfid - Remote reader must exist on Edge (
type = remote, enabled); reader name must match Settings - Offline / Edge-off: Collect + CSV + Locate without server; banner only when Edge enabled and unreachable / unconfigured
Hardware
- Android industrial devices via hardware scanner plugin (XR2, ATID AARs, SEUIC, URFID noted in tree)
- Camera barcode fallback when no hardware scanner / init failure
- Desktop: simulator always on
- applicationId:
com.tallyflow.scout
Notable modules
tag_decode_sheet.dart— decode UI +TagDecodeDetails.resolveRfid/resolveBarcodeepc_mask.dart,sdg_rain_decode.dart— EPC type / Internal part decode (CIN filter fix)rfid_beep_gate.dart— Locate mute vs inventory beepscan_csv_exporter.dart/scan_csv_export.dart— CSV share/saverssi_display.dart— shared RSSI presentationl10n— English + Spanish- Tests: EPC mask, GS1 verify, locate finds, CSV, symbology, tag decode, useTallyFlowEdge, rfid beep gate, power slider
Marketing guardrails
- Say Scout works with Edge; Assets works with Core
- Three sections only: Collect, Verify, Locate
- Locate offline + optional Edge-off are real differentiators for floor find without Core
- Decode sheet is operator convenience, not a full GS1 stack / compliance product
- Do not claim full asset CRUD, zones, or scan-and-print in Scout
Follow-ups (docs/code debt)
- Repo README still under-lists Verify / decode / Edge toggle; version footer stale
part_serialassignment-match flags currently unused by decode path (reserved)- Cross-app symbology story still open (README technical debt section)