run.veric.dev
run.veric.devproof · read-only

Verifier output

Reconstructed from a content-addressed share link. The same SQL + schema replayed through the in-browser WASM verifier; no data leaves your tab.

model.sqlread-only
-- public_heatmap.sql
-- Aggregate fitness traces into a public-facing heat-map.
-- Each row is one (lat_bucket, lon_bucket) cell with a session count.
-- The grouping resolution is fine enough that some buckets only
-- contain one or two users — sensitivity survives the aggregation.

select
    floor(latitude  * 1000) / 1000.0  as lat_bucket,   -- ~110m resolution
    floor(longitude * 1000) / 1000.0  as lon_bucket,
    count(*)                           as session_count
from {{ ref('gps_traces') }}
group by 1, 2
schema.yml
version: 2

models:
  - name: gps_traces
    description: Per-session GPS points uploaded by app users.
    meta:
      pii_label: pii.geo
    columns:
      - name: user_id
        data_type: bigint
        meta:
          pii_label: pii.user
      - name: session_id
        data_type: bigint
      - name: latitude
        data_type: double
        meta:
          pii_label: pii.geo
      - name: longitude
        data_type: double
        meta:
          pii_label: pii.geo

  - name: public_heatmap
    description: Public-facing heat-map cell counts.
    meta:
      sink_label: public
      k_anonymity_min: 50    # declared policy: every bucket must have ≥ 50 users
    columns:
      - name: lat_bucket
        data_type: double
      - name: lon_bucket
        data_type: double
      - name: session_count
        data_type: bigint
verdictidle

Hit Verify to check your SQL.

Findings will appear here as cards.