Retire the advisory claim ledger. master
tools/claim.sh and .agents/claims/ are deleted; agent-scale.md slice A is retired rather than amended. Every claim in the repo at decision time was stale — two records held by dead pids, one of which a session had to --force past. The ledger also never decided anything: overlap always warned and proceeded because worktrees isolate edits, while the collisions that actually cost time (save.rs, SAVE_VERSION, the state fingerprint, generated indexes) were in files no declared key covered. Concurrency now comes from records that cannot outlive their work. A worktree exists only while the work does, and project-status reports each one's real touched paths from its diff against origin/main — the actual edit surface rather than a guess made before starting. Heartbeat runs already sat beside every claim status change task.sh made, which is the clearest sign the ledger was a duplicate. Unchanged: overlap is not ownership, worktrees isolate, landings reconcile semantically, and only the Rust gate and final landing phase serialize. worktree-new.sh still accepts --class/--key so existing dispatch lines keep working; it records neither and says so. Defense: agent-scale.md slice A owns this and is retired here with a replacement criterion its landing meets; AGENT.md, workflows.md, env.md, ROADMAP P1, and the two prompts that told agents to declare themselves are updated in the same commit. project-status consistency drops the rules that required an activity record and keeps the run/worktree linkage; fixtures were rewritten to assert the derived truth rather than deleted. No crates/ change.