QIS Component Series — Step 1 of 5
Step 1: Data Aggregation →
Step 2: Defining Similarity →
Steps 3 & 4: Routing + Outcome Packets →
Step 5: Synthesis →
Capstone: Every Component Exists
Before routing. Before synthesis. Before any insight can flow.
Something has to capture what actually happened to you—and distill it into a packet small enough to share.
That's data aggregation. The quiet first step.
QIS starts here: on your device, right now, pulling what matters from whatever feeds you have—without ever sending raw data out.
This isn't extraction. It's distillation.
Raw chaos → tiny packet.
Your phone, watch, tablet, laptop, clinic Pi—whatever runs the agent—does one job: collect, curate locally, output the outcome. 512 bytes max.
// Example QIS Outcome Packet { "condition": "nsclc-3a-egfr+", "tx": "osimertinib_80mg", "months_pfs": 38, "side_effects": ["nausea:2", "fatigue:4"], "alive": 1 }
No chart. No genome. No name. No photo.
Just: what happened to someone exactly like me?
Here's every way it happens today. All local. All proven. All boring—until you realize no one's aiming it at survival.
Sources: Everything Your Life Already Produces
The agent hooks whatever you give it permission for. No central vacuum. No breach.
⌚ Wearables & IoT
Apple HealthKit, Google Health Connect, Garmin, Oura, Fitbit APIs—already aggregate steps, HRV, sleep, SpO₂, ECG on-device.
Agent pulls summaries (e.g., average HRV last 30 days). No raw waveform leaves.
📱 Apps & Manual Input
Patient apps (MyChart, custom QIS app). Voice notes → Whisper transcription on-device. Manual sliders: "nausea level 1-10".
All local. Raw data never leaves—only the structured packet.
🏥 EHR & Clinical Feeds
21st Century Cures Act mandates API access (FHIR standard). Agent pulls discrete fields (lab values, meds, progression scans) via patient-authorized OAuth.
Only curated outcomes stored locally. Raw notes stay in hospital silo.
🔬 Lab & Imaging Results
FHIR bundles or direct PDF parse (on-device OCR if needed). Extract: tumor size change, mutation status.
No full scan shared—only numeric outcome.
🎙️ Voice & Ambient
Phone mic → on-device speech-to-text (Apple/Google models). "Feeling tired today, nausea mild." → structured fields.
📄 Legacy & Low-Tech
Manual entry for paper records. Photo → on-device OCR. Spreadsheet import.
Apple Health aggregates from hundreds of sources without cloud round-trip. Android Health Connect does the same. FHIR clients pull EHR data without bulk export. This isn't future tech—it's infrastructure that's been running for years.
The Numbers
Local Curation: Expert Template Decides What Matters
Expert team defines the packet schema per condition.
Agent matches local data to template: fill what you have, leave blanks.
No guessing. No LLM hallucination. Just: does this field exist? Yes → include. No → null.
Privacy: raw data never leaves. Only the structured packet gets indexed and shared.
Expert Defines Template
Oncologist specifies: stage, biomarkers, treatment, outcome metrics. These fields—and only these—matter for similarity.
Agent Maps Local Data
Device pulls from available sources (HealthKit, FHIR, manual input). Maps to template fields. No interpretation—just data presence.
Packet Generated
Compact JSON with outcome data. Indexed by semantic fingerprint—so when similar cases query, they find you.
Packet Birth: One-Time, Lightweight
| Metric | Specification |
|---|---|
| Trigger | On change (new lab, treatment update) or schedule (monthly check-in) |
| Compute | <50 ms on modern smartphone |
| Battery Impact | Minimal—comparable to a background app refresh |
| Storage | One packet per condition per milestone. <10 KB lifetime typical. |
| Data Sources | Any API, IoT device, database, sensor, wearable, EHR, or manual input—if it produces data, it can feed a packet. |
Why Aggregation Isn't Saving Lives Already
Your watch aggregates sleep without asking.
Your hospital aggregates labs without sharing.
Your app aggregates symptoms without insight.
No one connects the aggregation to the swarm.
Because "privacy" means isolate.
Because outcomes mean liability.
Because no one noticed the packet was already forming.
QIS noticed.
The more people aggregate, the richer packets get—buckets fill faster, insights sharpen.
The infrastructure exists. The data flows. The aggregation happens millions of times per second across billions of devices.
What's missing is the question.
Show me the source that can't feed a template.
Show me the phone that chokes on local pulls.
Show me the packet too big (512 bytes).
Show me the aggregation that needs a server.
Can't?
Then data aggregation isn't hard.
It's happening.
We just haven't asked it the right question.
Yet.