Skip to content

feat(squads): DecideApplication (capitão) → membership + evento join #361

Description

@danielhe4rt

Parent

#342

O que construir

A decisão da candidatura: o capitão aprova/recusa.

  • Action DecideApplication (capitão/sub via SquadPolicy).
  • Aprovar: cria squad_members (member) em transação com joined_at + evento join + marca a application approved.
  • Recusar: marca rejected, sem membership.
  • A exclusividade é checada na aprovação (enforce completo em {{S7}}).

Critérios de aceite

  • Aprovar cria membership (member) transacional + joined_at + evento join + application approved
  • Recusar marca rejected sem criar membership
  • Autorização via SquadPolicy (capitão/sub do squad)
  • Teste (aprovação e recusa)

BDD

# language: pt
Funcionalidade: Decisão da candidatura
  Cenário: Capitão aprova a candidatura
    Dado uma candidatura pending de um usuário APTO
    Quando o capitão aprova
    Então o usuário vira member do squad com joined_at
    E um evento join é gravado
    E a candidatura fica approved

  Cenário: Capitão recusa a candidatura
    Dado uma candidatura pending
    Quando o capitão recusa
    Então a candidatura fica rejected
    E nenhuma membership é criada

Bloqueada por

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions