- New action `remove_machine` releasing a single (license_id, machine_id) slot.
- Pre-fetches all machines in one query and groups by license_id (no N+1).
- Machines column "X / Y" is now clickable: opens an inline expandable row
showing each machine on that license — truncated SHA-256 ID with full hash
in tooltip, machine_label, first_seen, last_seen with a "stale" warning
badge for slots not seen in >30 days, plus a per-row "Libérer" button.
- Existing "Libérer machines" button kept but renamed "Libérer toutes" with
a beefier confirmation that hints at the per-row alternative.
Replaces the all-or-nothing reset workflow with surgical control: when one
user changed PCs you can free their old slot without touching their colleagues'.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>