Skip to content

Apply neutral language framing across documentation and code comments - #767

Draft
jwrosewell wants to merge 1 commit into
IABTechLab:mainfrom
jwrosewell:doc-neutral-privacy
Draft

Apply neutral language framing across documentation and code comments#767
jwrosewell wants to merge 1 commit into
IABTechLab:mainfrom
jwrosewell:doc-neutral-privacy

Conversation

@jwrosewell

Copy link
Copy Markdown
Contributor

Background

Privacy is a spectrum, not a binary. Trusted Server is technology, and it is neutral on policy. Different deployers operate under different laws and run different policies, and it is the deployer who decides how to configure the stack accordingly. Trusted Server's role is to give deployers the flexibility to make those choices and to respect those choices when made, rather than to limit them in the deployer's name. This change updates documentation and code comments to reflect that framing.

Wording such as "privacy-preserving" identifiers, "built-in GDPR compliance", and "privacy-first" design presents privacy as a property of the technology itself. That overstates what software can promise, understates the role of the deployer, and asks the reader to accept a policy position in order to accept a technical description.

What changed

  • Loaded terms are replaced with factual descriptions of behavior. Compliance capability claims become descriptions of the consent signals read (TCF v2 format, GPP, US Privacy, GPC) and the configuration the publisher controls.
  • Consent frameworks are described neutrally. TCF is one framework among others, and "TCF v2 format" is used when the encoded string schema is meant rather than the policy framework.
  • Code comments and string literals receive the same treatment, covering the ec module, integration modules, auction types, settings, and TOML comments. Client TLS and H2 values are named for what they are (probabilistic identifier, JA4 string, H2 SETTINGS string). Third-party SDK function names are unchanged.
  • Statements that did not match the code are corrected. The architecture page claimed user data is never persisted while EC identity state is persisted in KV stores. The edge cookie page described x-ts-ec as an inbound transport when it is a response header. The placeholder secret causes a settings load failure rather than a logged warning. Consent gating is built in per jurisdiction, with configuration tuning jurisdiction lists, GPC interpretation, and conflict resolution.

Scope

No runtime behavior changes. Code edits are limited to comments, doc comments, and test assertion message strings.

An audit worksheet and a followups plan under docs/superpowers/plans/ record the findings, the rewrites, and the items intentionally deferred to a separate code cycle (behavior questions and symbol renames that are out of scope for a wording change).

@jwrosewell
jwrosewell force-pushed the doc-neutral-privacy branch from 85d46be to f3bd521 Compare July 30, 2026 06:07
- TCF (Transparency & Consent Framework)
- Custom consent signals
- TCF v2 format (the IAB Transparency and Consent Framework encoded string)
- Global Privacy Platform (GPP)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update to Global Privacy Protocol

- Custom consent signals
- TCF v2 format (the IAB Transparency and Consent Framework encoded string)
- Global Privacy Platform (GPP)
- US Privacy String

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we should include this since support for this is deprecated

//!
//! Proxies GTM scripts and Google Analytics beacons through the publisher's
//! domain, improving tracking accuracy and ad-blocker resistance.
//! domain, improving measurement accuracy and ad-blocker resistance.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps change "ad-block resistance" as well to "integrity"?

@@ -46,7 +46,7 @@ pub const HEADER_REFERER: HeaderName = HeaderName::from_static("referer");
///
/// These headers are used internally by Trusted Server for identity, geo-enrichment,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe change "identity" to "identification"?

/// These headers are used internally by Trusted Server for identity, geo-enrichment,
/// debugging, and compression hints. Leaking them to external origins could expose
/// user tracking data and internal implementation details.
/// user identity, geo data, and internal implementation details.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe instead of "user identity, geo data," just "data"?


- **Revenue Optimization**: Identify underperforming exchanges, timeout issues, and bid density gaps
- **Compliance Assurance**: Detect unauthorized calls, consent violations, and policy breaches
- **Policy Monitoring**: Detect calls outside the configured allowlist, consent mismatches, and policy breaches

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change "policy breaches" to "policy issues"?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants