Diff: infrastructure/sovereign-telemetry
From 1911223 to 1911223
+0 / −0 lines
| Before | After |
|---|---|
| --- | --- |
| schema: foundry-doc-v1 | schema: foundry-doc-v1 |
| title: "Zero-state telemetry architecture" | title: "Zero-state telemetry architecture" |
| slug: sovereign-telemetry | slug: sovereign-telemetry |
| category: infrastructure | category: infrastructure |
| type: topic | type: topic |
| quality: stub | quality: stub |
| short_description: "The zero-state telemetry architecture describes how the platform's V4 Intent Beacon collects behavioural and hardware signals from edge clients without cookies, session identifiers, or third-party analytics, using client-side compilation and asynchronous beacon transmission." | short_description: "The zero-state telemetry architecture describes how the platform's V4 Intent Beacon collects behavioural and hardware signals from edge clients without cookies, session identifiers, or third-party analytics, using client-side compilation and asynchronous beacon transmission." |
| status: active | status: active |
| bcsc_class: public-disclosure-safe | bcsc_class: public-disclosure-safe |
| last_edited: 2026-04-30 | last_edited: 2026-04-30 |
| editor: pointsav-engineering | editor: pointsav-engineering |
| cites: [] | cites: [] |
| paired_with: sovereign-telemetry.es.md | paired_with: sovereign-telemetry.es.md |
| --- | --- |
| > The zero-state telemetry architecture collects behavioural and hardware signals from edge clients using only native browser APIs — no cookies, no session identifiers, no third-party analytics aggregators — and transmits the compiled payload asynchronously at tab-close. | > The zero-state telemetry architecture collects behavioural and hardware signals from edge clients using only native browser APIs — no cookies, no session identifiers, no third-party analytics aggregators — and transmits the compiled payload asynchronously at tab-close. |
| The **zero-state telemetry architecture** is the platform approach | The **zero-state telemetry architecture** is the platform approach |
| to understanding user behaviour without accumulating persistent | to understanding user behaviour without accumulating persistent |
| client state. The current implementation, codename **V4 Intent | client state. The current implementation, codename **V4 Intent |
| Beacon**, enforces a strict no-cookie, no-session-ID posture. Data | Beacon**, enforces a strict no-cookie, no-session-ID posture. Data |
| is compiled entirely on the client side using native browser APIs | is compiled entirely on the client side using native browser APIs |
| and transmitted asynchronously via `navigator.sendBeacon` on the | and transmitted asynchronously via `navigator.sendBeacon` on the |
| `visibilitychange` event. No tracking pixels, session identifiers, | `visibilitychange` event. No tracking pixels, session identifiers, |
| or third-party analytics providers are involved. The result is a | or third-party analytics providers are involved. The result is a |
| telemetry signal that is both privacy-preserving by structure and | telemetry signal that is both privacy-preserving by structure and |
| operationally independent of external analytics platforms. | operationally independent of external analytics platforms. |
| ## Payload structure | ## Payload structure |
| The V4 Intent Beacon payload captures distinct signals, each drawn | The V4 Intent Beacon payload captures distinct signals, each drawn |
| from a native browser API: | from a native browser API: |
| | Field | Source | Notes | | | Field | Source | Notes | |
| |---|---|---| | |---|---|---| |
| | `user_agent` | `navigator.userAgent` | Device and browser identification | | | `user_agent` | `navigator.userAgent` | Device and browser identification | |
| | `viewport` | `window.innerWidth` / `innerHeight` | Rendering geometry | | | `viewport` | `window.innerWidth` / `innerHeight` | Rendering geometry | |
| | `timezone` | `Intl.DateTimeFormat().resolvedOptions().timeZone` | Regional mapping without IP geolocation | | | `timezone` | `Intl.DateTimeFormat().resolvedOptions().timeZone` | Regional mapping without IP geolocation | |
| | `device_memory` | `navigator.deviceMemory` | Estimated device RAM range | | | `device_memory` | `navigator.deviceMemory` | Estimated device RAM range | |
| | `hardware_cores` | `navigator.hardwareConcurrency` | CPU thread count | | | `hardware_cores` | `navigator.hardwareConcurrency` | CPU thread count | |
| | `dwell_seconds` | DOM load to tab-close delta (milliseconds) | Time-on-page signal | | | `dwell_seconds` | DOM load to tab-close delta (milliseconds) | Time-on-page signal | |
| | `scroll_depth` | Maximum vertical scroll percentage | Engagement depth | | | `scroll_depth` | Maximum vertical scroll percentage | Engagement depth | |
| | `intent_clicks` | Array of interaction targets | High-value click events (e.g., Fleet Manifest links, contact initiations) | | | `intent_clicks` | Array of interaction targets | High-value click events (e.g., Fleet Manifest links, contact initiations) | |
| No field captures personally identifiable information. The | No field captures personally identifiable information. The |
| `timezone` field provides regional resolution without requiring IP | `timezone` field provides regional resolution without requiring IP |
| geolocation. | geolocation. |
| ## Graceful degradation | ## Graceful degradation |
| The receiving Rust daemon (`telemetry-daemon`) uses `Option<T>` | The receiving Rust daemon (`telemetry-daemon`) uses `Option<T>` |
| serialisation for all V4 parameters. This ensures backward | serialisation for all V4 parameters. This ensures backward |
| compatibility with clients that have cached an older payload | compatibility with clients that have cached an older payload |
| format. When a legacy payload arrives, the daemon ingests the | format. When a legacy payload arrives, the daemon ingests the |
| available fields and writes `unknown` or `0` to the absent columns. | available fields and writes `unknown` or `0` to the absent columns. |
| The immutable ledger record is written in either case, maintaining | The immutable ledger record is written in either case, maintaining |
| alignment across all fleet deployments without requiring a | alignment across all fleet deployments without requiring a |
| coordinated client-side rollout. | coordinated client-side rollout. |
| ## Chronological synthesis | ## Chronological synthesis |
| The `telemetry-synthesizer` binary parses the CSV ledger and | The `telemetry-synthesizer` binary parses the CSV ledger and |
| generates executive-grade Markdown reports partitioned into | generates executive-grade Markdown reports partitioned into |
| standard financial reporting windows: 1D, 1W, 30D, 60D, 90D, | standard financial reporting windows: 1D, 1W, 30D, 60D, 90D, |
| year-to-date, and inception-to-date. | year-to-date, and inception-to-date. |
| ## See also | ## See also |
| - [[ontological-governance|Ontological Governance]] | - [[ontological-governance|Ontological Governance]] |
| - [[verification-surveyor|Verification Surveyor]] | - [[verification-surveyor|Verification Surveyor]] |
| - [[message-courier|Message Courier Service]] | - [[message-courier|Message Courier Service]] |
| - [[customer-hostability|Customer Hostability]] | - [[customer-hostability|Customer Hostability]] |