Security check request from rulesets: tracked tooling vs public reachability. Background: .emacs.d found its entire tooling layer (CLAUDE.md + .claude/ — 22 files, including rules with personal data) tracked in git and mirrored to PUBLIC GitHub by a server-side post-receive hook on its cjennings.net bare repo. The mirror was invisible from the client; the history is now scrubbed. The sweep script that should have caught it silently skipped any project using the anchored /.ai/ gitignore style — that bug is fixed as of rulesets 909b21b. Action for this project's next session: 1. Check whether .ai/, .claude/, CLAUDE.md, or AGENTS.md is tracked: git ls-files .ai .claude CLAUDE.md AGENTS.md 2. Check reachability: git remote -v. A non-cjennings.net remote with tracked tooling is an exposure — gitignore the set, git rm --cached the paths (files stay on disk), and consider a history scrub (see .emacs.d's 2026-06-30 filter-repo precedent). 3. Even with only a cjennings.net remote, a server-side mirror hook can republish invisibly. If this project might be mirrored, ask Craig to check the bare repo's hooks/ on the server. Convention update (protocols.org): any repo whose remotes include a non-cjennings.net host gitignores the tooling set; a deliberate, explicitly-decided team-shared config is the only exception. Track-mode on the private server (history-is-the-project repos) is unchanged. The fixed sweep has already backfilled missing ignore lines across gitignore-mode projects (2026-07-01 run). No reply needed unless you find tracked tooling with public reach.