Consent
Internal meetings transcribe by default. Client calls do not. The ruling is Ryan's.
Consent
This page needs a human ruling, not a research finding. What follows is the proposed rule and the mechanism that enforces it.
Internal meetings
Recording-consent law is jurisdiction-dependent — one-party in some places, all-party in others. The right move is a house rule, not a statute.
Proposed, needs sign-off: every internal meeting is transcribed by default. The Zoom recording disclaimer is on and locked. Anyone can say “don’t transcribe this one” and the host turns it off.
Zoom’s mechanism already exists. The Recording disclaimer setting prompts every participant to consent or leave when recording or transcription starts. Turn it on account-wide and lock it — see Zoom settings. That makes consent a thing the product does instead of a thing people forget.
[UNVERIFIED] Whether that prompt fires for AI-Companion-only meetings, where there is no recording object, is undocumented. Check the console before relying on it.
Client calls are contract, not policy
An MSA or NDA may prohibit recording, require notice, require deletion on request, or be silent — which is not the same as permission.
transcripts/internal/2026/08/… ◀── agents glob this freely
transcripts/client/acme-corp/2026/08/… ◀── separate tree, explicit
opt-in per agent
| Internal | Client | |
|---|---|---|
| Transcribe by default | yes | no — host opts in per meeting |
| Notice on the call | disclaimer prompt | prompt and say it out loud |
| Storage prefix | transcripts/internal/ |
transcripts/client/<slug>/ |
| Agent access | default | only agents pointed at that path |
confidentiality frontmatter |
internal |
client |
The separate tree is the load-bearing part. A general-purpose agent globbing
transcripts/internal/** cannot accidentally read a client call, and “delete
everything for ACME Corp” is one prefix delete.
Deletion has to actually work
This is why the record lives in S3 and not a git repo. delete-object removes a
transcript and its versions. Removing content from git history needs
filter-repo, which CLAUDE.md forbids without explicit permission. See
Storage.
Deleting our copy is not enough. The Zoom-side copy goes too, from Recording and Transcript Management. Two places, one request. Write that runbook before the first client call is transcribed, not after the first deletion request lands.
The question nobody here can answer
Does a client call transcript in a private S3 bucket satisfy what the MSA says about where client data lives? Nobody in this repo can answer that. It is open and it is Ryan’s.
Until it is answered, the safe default holds: client calls are not transcribed. The internal pipeline ships without them.