compliance-diff
Skill2 starsChanged 25 days agoApache-2.0View on GitHub
Use when reviewing a pull request, branch, or release for launch and privacy impact: new vendors or third-party hosts, new personal-data fields or forms, new routes, changed consent or email behavior, new storage. It reads the change and lists what it introduces and which ReadyVibe specialists should recheck. Do not use it as a substitute for a full review or to approve a release as compliant.
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 18
Not for a first full review (use launch-all).
- Very specific: line 48
If you can run the branch, do a targeted runtime pass on the affected routes rather than guessing: node scripts/observe-runtime.mjs --url …
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
compliance-diff
Launch readiness decays. A month after a clean review, someone adds a session-replay tool, a signup field, or a /admin route. This skill reads a change and says what it re-opens.
Activate when
- A PR, branch, or release diff is under review, or the user asks "what does this change do to our launch/privacy posture?"
- A context note (
.readyvibe/context.md), if one exists, has "NOT APPLICABLE" items whose recheck triggers might have fired. - Not for a first full review (use
launch-all).
Inspect
Get the diff (git diff <base>...HEAD, or the PR files). Look for these introductions, in order of consequence:
| In the diff | Re-opens |
| new dependency or script tag for analytics, ads, replay, tag manager, chat, maps, fonts, embeds, captcha, payments | checks 3–5 (analytics-privacy, third-party-privacy, cookie-and-storage-audit) and the privacy disclosure |
| new form field, DB column, or API route accepting personal data (email, name, phone, location, DOB, IDs) | 1, 5, 6, 7 (data-flow-mapping, privacy-policy, data-rights) |
| new auth, account, role, or admin route | 7, 38 (data-rights, web-security, admin-authorization) |
| new email send, newsletter form, template, or list | 36–37 (email-compliance) |
| price, checkout, subscription, refund copy, billing code | consumer-protection-readiness, subscription-readiness, payments-readiness |
| new locale, currency, country selector, or shipping region | jurisdiction-applicability, multilingual-readiness |
| new public route, changed canonical/robots/sitemap, changed metadata | 9–18 (seo-readiness) |
| removed or changed legal/contact/footer links or pages | legal-navigation, public-support |
| changed consent code, cookie names, storage keys | consent-management, cookie-and-storage-audit |
| AI/model calls, prompts with user data | ai-features-readiness |
| user-generated content features | user-content-safety |
| age/DOB fields or child-oriented copy or features | minors-readiness, regulated-domain-triggers |
| new environment variable with a client prefix | web-security |
| removed features (data no longer collected) | disclosure may now overstate; policy-consistency |
Also look for deletions that reduce protection: removed consent gating, removed unsubscribe route, dropped auth check.
Evidence that counts
Label each claim OBSERVED, SOURCE-INDICATED, DECLARED, INFERRED, UNKNOWN, or REVIEW REQUIRED. UNKNOWN is never a pass and never a failure.
- A diff shows SOURCE-INDICATED behavior. "This adds PostHog" is fact; "PostHog loads before consent" is unproven until the change is run.
- If you can run the branch, do a targeted runtime pass on the affected routes rather than guessing:
node scripts/observe-runtime.mjs --url <local-url>/<route> --block-third-party(path relative to this skill's folder).
May change
Nothing in the product. Produce a short review note (in the reply, or .readyvibe/diff-review.md if asked).
Changes with launch/privacy impact
1. New third party: posthog-js (analytics + replay-capable). Runtime timing unproven. -> analytics-privacy, cookie-and-storage-audit; privacy notice does not mention it.
2. New field: phone on /signup. Stored in profiles.phone. -> data-flow-mapping, privacy-policy, data-rights (deletion covers it?)
No impact found in: routes, metadata, email, payments.Must not claim
That the change is "approved", "compliant", or "safe to ship". Say what it introduces, what is unverified, and what to recheck.
Verify
Confirm each listed introduction by locating the code (file and line), and confirm each "no impact" claim by searching for the corresponding patterns. For anything you can run, run it.
Escalate
Regulated-domain or child-directed features appearing in a diff; exposure of credentials in the diff (report at once and do not copy the value); changes that silently contradict the published privacy notice or terms.
No change is valid when
The diff is refactoring, styling, or copy that touches none of the surfaces above. Say "no launch or privacy impact found" and name the patterns you searched.
In this repository54 other files it gives its agents.
- wcag-readinessSkill
- admin-audit-logSkill
- admin-authorizationSkill
- admin-dashboardSkill
- payments-readinessSkill
- subscription-readinessSkill
- ai-features-readinessSkill
- analytics-privacySkill
- consent-managementSkill
- consumer-protection-readinessSkill
- cookie-and-storage-auditSkill
- data-flow-mappingSkill
- data-rightsSkill
- email-complianceSkill
- jurisdiction-applicabilitySkill
- legal-identity-noticesSkill
- minors-readinessSkill
- policy-consistencySkill
- privacy-policySkill
- privacy-readinessSkill
- regulated-domain-triggersSkill
- terms-of-serviceSkill
- third-party-privacySkill
- user-content-safetySkill
- compliance-allSkill
- design-system-reconnaissanceSkill
- discoverability-allSkill
- launch-allSkill
- launch-verificationSkill
- production-allSkill
- quality-allSkill
- site-reconnaissanceSkill
- trust-allSkill
- search-console-readinessSkill
- seo-readinessSkill
- social-sharingSkill
- structured-dataSkill
- multilingual-readinessSkill
- rtl-readinessSkill
- content-trustSkill
- error-pagesSkill
- failure-resilienceSkill
- faq-readinessSkill
- forms-readinessSkill
- launch-identitySkill
- legal-navigationSkill
- link-integritySkill
- mobile-readinessSkill
- performance-readinessSkill
- public-supportSkill
- dependency-securitySkill
- deployment-cleanupSkill
- security-headersSkill
- web-securitySkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

