Skip to content

Privacy policy: credential custody, transfer mechanisms, sharing clause - #119

Merged
aterga merged 3 commits into
mainfrom
claude/privacy-transfers-p4el4n
Aug 6, 2026
Merged

Privacy policy: credential custody, transfer mechanisms, sharing clause#119
aterga merged 3 commits into
mainfrom
claude/privacy-transfers-p4el4n

Conversation

@aterga

@aterga aterga commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adopts the wording corrections from the legal review rounds of 2026-08-03/04, in both the served page and the source text. The reviews' engineering items are tracked as issues (#120, #121, #122) — the policy keeps describing current behaviour honestly until they ship.

1. Credential custody

"Your long-term authentication credentials never leave Internet Identity" implied Internet Identity stores them. Adopted the review's correction: they are never sent to the Service, and each lives where it actually lives — passkey private keys with your authenticator, recovery material with you, linked-account credentials with their respective providers. The follow-on custody paragraph's "your credentials stay with Internet Identity" is aligned ("stay where they already live") so the corrected claim isn't contradicted two sentences later.

2. International transfers

  • The paragraph no longer says the global processing is "not a transfer we arrange" — the Service submits requests deliberately, at the user's direction, and the text now says so, factually and completely: worldwide nodes whose locations are set by the network's governance (including countries without an adequacy finding), and exactly what travels. Its wording is maintained together with DFINITY legal.
  • The AWS residual-access sentence names the concrete mechanism: the AWS Data Processing Addendum incorporating the EU Standard Contractual Clauses, extended to Swiss transfers in line with FDPIC guidance.

3. Sharing clause de-contradicted

"We do not share it with third parties for their own purposes" conflicted with section 2's recipient disclosures. Adopted the review's replacement: no sale, no disclosure for advertising, disclosure only to the recipients described above as necessary to perform requests, secure the Service, or comply with law — plus (Copilot round) a "Public authorities, where the law requires it" recipient category in section 2, so the "only … comply with law" clause actually has a covered recipient.

Related issues

Changes

  • src/assets/privacy-policy.html: the corrections above.
  • docs/icp-mcp-privacy-policy-draft.md: same corrections, plus maintenance notes recording the review rounds.

Testing

  • cargo build --locked --bin imcp2 — page compiles in via include_str!
  • Asserted the new phrases render in the served page text, all replaced phrasings are gone, and zero em-dashes
  • cargo test --locked --all-targets — n/a beyond build; no code paths changed
  • npm test --prefix monitoring/mcp-status — n/a, dashboard unchanged

Checklist

  • I have read the Contributing guidelines.
  • Docs (README / comments) updated for any user-visible change.
  • No secrets, credentials, or internal-only information are included.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TGhwpdTbUqQbR5AiiN8Ljw

@aterga
aterga requested a balanced review from Copilot August 3, 2026 16:28
@aterga
aterga marked this pull request as ready for review August 3, 2026 16:30
@aterga
aterga requested a review from a team August 3, 2026 16:30

This comment was marked as resolved.

Copilot AI review requested due to automatic review settings August 3, 2026 16:34

This comment was marked as resolved.

Copilot AI review requested due to automatic review settings August 4, 2026 10:47

This comment was marked as resolved.

Copilot AI review requested due to automatic review settings August 5, 2026 08:16
@aterga
aterga force-pushed the claude/privacy-transfers-p4el4n branch from 5d63983 to 4dd179e Compare August 5, 2026 08:16

This comment was marked as resolved.

Copilot AI review requested due to automatic review settings August 5, 2026 08:30
@aterga
aterga force-pushed the claude/privacy-transfers-p4el4n branch from 4dd179e to d440428 Compare August 5, 2026 08:30

This comment was marked as resolved.

Wording updates to the served privacy policy and its source text, from
the review rounds of 2026-08-03/04:

- Credential custody: the long-term credentials are never sent to the
  Service; passkey private keys remain with the authenticator, recovery
  material with the user, and linked-account credentials with their
  providers. The follow-on custody paragraph is aligned.

- International transfers: the network paragraph describes the
  processing factually. The Service submits requests deliberately at
  the user's direction; node locations are set by the network's
  governance and can include countries without an adequacy finding; the
  text names what travels. The AWS residual-access sentence names the
  concrete mechanism (the AWS Data Processing Addendum incorporating
  the EU Standard Contractual Clauses, with the Swiss extension).

- Sharing: no sale, no disclosure for advertising, disclosure only to
  the recipients section 2 describes, and section 2 now includes the
  public-authorities recipient category so the comply-with-law clause
  has a covered recipient.

- The source doc's header notes are updated to neutral maintenance
  notes recording the rounds; engineering follow-ups are tracked in
  issues #120, #121, and #122.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TGhwpdTbUqQbR5AiiN8Ljw
@aterga
aterga force-pushed the claude/privacy-transfers-p4el4n branch from d440428 to aa4c3d1 Compare August 5, 2026 12:27
Copilot AI review requested due to automatic review settings August 5, 2026 12:27

This comment was marked as resolved.

…eads

The transfer paragraph said every request travels under a pseudonymous
per-application identifier, but public reads made without signing in
run through the shared anonymous agent and carry no user identifier
(canister_query permits omitting derivation_origin). The sentence now
separates the two cases. Also record both halves of issue #121 in the
source doc's follow-ups note.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TGhwpdTbUqQbR5AiiN8Ljw
Copilot AI review requested due to automatic review settings August 5, 2026 16:02

This comment was marked as resolved.

Adopt the reviewer's transfer sentence: authenticated requests carry
the section-6 pseudonymous per-application identifier; unauthenticated
public reads use the network's shared anonymous principal, which
identifies no one.

The source document now contains the synchronization notice and the
policy text only. Operational and review notes are maintained outside
this repository.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TGhwpdTbUqQbR5AiiN8Ljw
Copilot AI review requested due to automatic review settings August 5, 2026 16:14

This comment was marked as resolved.

@aterga
aterga merged commit dbf9f84 into main Aug 6, 2026
8 checks passed
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.

4 participants