| R4.1 — Recovery bypasses empty-bucket safeguard | **Fixed:** §2 applies the tripwire to absence-based finalization. |
4
| R4.2 — Trash UI/API promises 30 days | **Fixed:** §5 specifies one effective deadline across displays. |
5
| R5.1 — Route-only permanent service can become temporary | **Fixed for the reported paths:** §3 requires namespace enforcement before fleet inspection and enablement. |
6
| R5.2 — Expiry markers defeat the tripwire | **Fixed:** markers do not establish nonempty-bucket evidence. |
7
| R6.1 — Local inventory misses remote routes | **Fixed:** rollout requires fleet-wide enforcement and inspection. |
8
| R6.2 — Reconciliation can reassign permanent routes | **Fixed for the reported counterexample:** the reserved namespace excludes its conflicting permanent route. |
9
| R7.1 — Older writers invalidate the rollout scan | **Fixed within the stated scope:** upgrade every box before scanning and enabling; deliberately retained old binaries remain excluded. |
10
| R7.2 — Grant/backfill bypasses reservation | **Fixed:** grant refuses reserved names; backfill skips them; rollout checks both tables. |