Preserve exact candidate f0bc8f11eb and its reviewed 8a4f31b5 ancestor. Reconcile the independently repaired documentation-link guard by retaining main implementation and all controls, adding candidate controls and its exact URL boundary matching. Administrative guide and mirror bytes remain exactly as qualified; no runtime frontend source changes.
Change-source: pulse-maintainer
The complete documentation suite rejected the PR template current-policy anchor as a shipped runtime link. Permit only that exact file and anchor, while retaining rejection of runtime links, other templates and changed paths, queries or anchors. Preserve the reviewed RBAC safety candidate and finish its existing qualification on this additive source.
Contract-Neutral: Repository documentation-link classification and regression tests only; no shipped runtime, administrative recipe, authentication, RBAC, API or frontend behaviour changes.
Change-source: pulse-maintainer
The complete current smoke suite rejected the contributor template's deliberate current-process link and buffered browser log controls. Limit the link exception to the exact template and fragment, keep runtime links pinned, and check the complete display-only helper chain with adverse controls. No frontend, backend or safety guidance is changed.
Contract-Neutral: Test-only reconciliation of existing contribution and log-display controls; all product, installer and shipped documentation bytes and subsystem contracts are unchanged.
Change-source: pulse-maintainer
The docs link drift guard (test_repo_docs_link_drift.py) fails CI because
render_release_body.py links docs/CODE_SIGNING_POLICY.md at blob/main.
Release bodies must reference the docs snapshot of the release they
describe, so the installation section now links blob/v{version}, matching
how the rest of the body pins to the version being cut. The unit test pin
follows. Also skip .claude/ in the drift guard so local runs on a shared
tree are not polluted by stale agent worktrees under .claude/worktrees
that CI never checks out.