Adds path filter to test.yml so the 6-lane matrix only runs on code
changes. New test-skip.yml fires on the inverse paths and emits
noop jobs with identical names so the required status checks
(lint-tests + 6x test (...)) are satisfied regardless of which
workflow ran. Doc-only PRs now complete CI in <30s.
Canonical code-paths list mirrors changeset-required.yml; keep
them in sync (documented in docs/branch-protection.md).
Closes#108
Refs #107
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Checks in JSON specs for three rulesets (main-protection,
release-branches, tag-immutability), a CODEOWNERS file (advisory),
and scripts/sync-rulesets.sh to apply them.
Enforcement is `disabled` in all three files — PR-2 will apply with
`evaluate` for a 1-week dry-run, PR-3 will flip to `active`.
See docs/branch-protection.md for the full rollout plan.