Signal: Proactive Healthcare Infrastructure starting with DMEPOS suppliers dispensing CGM supplies for T1D patients. https://git.forgejo.sttilsolutions.com/sttil/Signal/
Find a file
Kisa 66dd5992ea research: FL consortium and association targets
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 19:58:04 -04:00
Projects/DMEPOS research: FL consortium and association targets 2026-04-11 19:58:04 -04:00
python-backend feat: Signal CGM Level 1 foundation — calculator, audit logger, payer rules, license 2026-04-11 19:48:31 -04:00
.gitignore init: Signal CGM Level 1 — clean start 2026-04-11 19:38:51 -04:00
CLAUDE.md init: Signal CGM Level 1 — clean start 2026-04-11 19:38:51 -04:00
LICENSE.md feat: Signal CGM Level 1 foundation — calculator, audit logger, payer rules, license 2026-04-11 19:48:31 -04:00
README.md feat: Signal CGM Level 1 foundation — calculator, audit logger, payer rules, license 2026-04-11 19:48:31 -04:00

Signal CGM powered by STTIL Solutions

B2B CGM coverage worklist tool for DMEPOS suppliers. Ingests CSV shipment data (Brightree/WellSky exports), calculates coverage expiration per patient using device wear-day rules, and produces a prioritized worklist for proactive outreach — so small DME teams act before claims deny, not after.

Self-hosted. Data never leaves the supplier network.


What It Does

Most DMEPOS suppliers manage CGM coverage reactively: a claim denies, then staff scramble to appeal. Signal CGM flips that. The system watches coverage windows continuously and surfaces patients approaching expiration before the denial condition exists.

  • Ingests shipment CSV from Brightree or WellSky
  • Calculates coverage expiration per patient per device using payer-specific wear-day rules
  • Flags each patient: REFILL_WINDOW, VISIT_DUE, OUT_OF_COVERAGE, or OK
  • Delivers a prioritized worklist to DME staff via encrypted email
  • Staff handle outreach locally — Signal CGM never contacts patients directly

Stack

Layer Technology
Backend Python / FastAPI
Database PostgreSQL (encrypted at rest)
Orchestration n8n (self-hosted, 24-hour batch trigger)
Notifications Mailcow (self-hosted SMTP — staff email only)
Hosting Hostinger VPS — data stays on-prem

PHI Architecture

Signal CGM is designed to minimize PHI surface area:

  • Sole crosswalk key: patient_id (the supplier's internal MRN or account number). No names, SSNs, DOBs, or contact information enter the system.
  • DME staff maintain the patient_id ↔ real identity mapping in their own systems (Brightree, EHR, etc.).
  • The calculation layer sees: patient_id, device_type, shipment_date, quantity, payer — nothing else.
  • All audit logs hash patient_id before storage. Raw identifiers never appear in logs.

Coverage Flag Logic

Flag Meaning
REFILL_WINDOW Patient is within the refillable window — safe to ship
VISIT_DUE Physician visit renewal is approaching (Medicare: 180 days)
OUT_OF_COVERAGE Coverage has lapsed — outreach required before next shipment
OK No action needed at this time

Directory Structure

signal-cgm/
├── python-backend/
│   ├── core/
│   │   ├── coverage_calculator.py   # Coverage clock logic
│   │   ├── audit_logger.py          # PHI-safe audit logging
│   │   └── db_models.py             # PostgreSQL models
│   └── config/
│       └── payer_rules.json         # Wear-day rules by device and payer
├── n8n-workflows/                   # n8n batch trigger exports
└── CLAUDE.md                        # Active dev context

BAA Status (Level 1)

Vendor BAA Required Status
Hostinger VPS Yes — PHI host Pending
Anthropic API Only if AI layer touches PHI Not applicable (Level 1)
All other components Self-hosted — operator is STTIL N/A

© 2026 STTIL Solutions LLC. Proprietary software — see LICENSE.md.