2026-04-09 — Play Card: link público de partilha
Documentação KOLOS

2026-04-09 — Play Card: link público de partilha

O quê

  • Coluna players.public_card_token (UUID, único, nullable).
  • Rota pública guest GET /p/{token} (play-card.public, whereUuid) → PublicPlayCard (layout components.layouts.app): nome, apelido, nível, elo — sem email, sem Academy.
  • PlayerPolicy::sharePlayCard + EnsurePlayerPublicCardShareUrlAction (cria token se faltar, devolve URL absoluta).
  • MyCard: botão Compartilhar abre painel com URL, copiar (clipboard via Alpine), fechar.
  • PHPDoc BelongsTo<User, $this> em Player::user().

Por quê

Fechar o fluxo «viral» do card com link opaco (não expõe user_id).

Riscos / próximos passos

  • Revogar link (novo token) e noindex em meta podem ser acrescentados depois.

Validação

  • vendor/bin/sail artisan migrate
  • vendor/bin/sail artisan test tests/Feature/Player/PublicPlayCardRouteTest.php
  • Manual: Meu Card → Compartilhar → abrir link em janela anónima.