Audit trail explorer
Every track traces back to one sealed physiological session
Append-only rows in Postgres map a physiological_prescription_id to the rendered audio, its watermark payload and its Content ID asset. Rows are hash-chained: altering one breaks every row after it.
AI-GENERATED AUDIOComposed by a generative model from your physiological data. Not a medical device — fitness guidance only.
FTC 16 CFR §255 · EU AI Act Art. 505 of 5 recordsappend-only
| physiological_prescription_id | generated_at (UTC) | session | zone | channel | |
|---|---|---|---|---|---|
| rx_14611c3157a5 | 2026-08-12T07:32:00.000Z | ses_4f7c3547 | Zone 2 — Aerobic base | UC_vo2max_lab | |
| rx_7ddf2cf6deac | 2026-08-12T14:34:00.000Z | ses_e94ef7dc | Zone 4 — Threshold | UC_vo2max_lab | |
| rx_4a957e3ca9b7 | 2026-08-12T19:55:00.000Z | ses_7027b97a | Zone 1 — Recovery | UC_cardiac_rehab | |
| rx_677cc6e2404a | 2026-08-12T11:09:00.000Z | ses_1e152eac | Zone 5 — VO₂max | UC_vo2max_lab | |
| rx_8152cb036fd4 | 2026-08-13T03:34:00.000Z | ses_9f90c4dd | Zone 3 — Tempo | UC_sleepfm_clinical |
Session → audio mapping
- physiological_prescription_id
- rx_14611c3157a5
- session_id
- ses_4f7c3547
- generated_at
- 2026-08-12T07:32:00.000Z
- source_device
- Apple Watch S10
- hr_target_range_bpm
- 132–144
- audio_object
- s3://vo2max-renders/rx_14611c3157a5.flac
- watermark_payload
- RX_14611C3157A5:SES_4F7C3547
- content_id_asset
- A-VO2-14611C3157A5
- youtube_channel
- UC_vo2max_lab
Immutability proof
prev_row_hash
00000000000000000000000000000000
chained
row_hash
aa8e370febe1422aeae14097e9e13f04
Row 1 of 5 in the chain. Writes are INSERT-only; UPDATE and DELETE are revoked at the role level, and a nightly job re-verifies the chain.
verify chain
select verify_audit_chain(
prescription_id => 'rx_14611c3157a5'
);
-- row_hash = sha256(
-- prev_row_hash || prescription_id ||
-- session_id || generated_at ||
-- audio_sha256 || watermark_payload
-- )
-- => chain_valid: trueWant to generate your own record? Run the prescription demo →