Skip to content

feat(profile): endpoint mobile de leitura do perfil (Feature 3) - #3

Open
tecrodrigocastro wants to merge 1 commit into
story/531-api-mobile-auth-jwtfrom
story/531-api-mobile-profile
Open

tecrodrigocastro wants to merge 1 commit into
story/531-api-mobile-auth-jwtfrom
story/531-api-mobile-profile

Conversation

@tecrodrigocastro

Copy link
Copy Markdown
Owner

Depende da he4rt#565

Base desta PR é story/531-api-mobile-auth-jwt (não 4.x), porque o endpoint depende do guard JWT api e da configuração de resposta JSON (bootstrap/app.php) introduzidos na he4rt#565 — sem isso, auth:api não tem como autenticar nem devolver 401 corretamente.

Fluxo esperado: a he4rt#565 mergeia em 4.x primeiro (upstream); depois esta PR é re-targetada (ou reaberta) contra 4.x pra mergear em seguida. Só deve ser mergeada depois da he4rt#565.

Summary

Feature 3 do plano (docs/plans/2026-09-22-api-mobile-jwt.md): endpoint de leitura do perfil do usuário autenticado para o app mobile.

  • GET /api/mobile/profile (atrás de auth:api) retorna o perfil via ProfileResource: dados profissionais (nickname, headline, seniority, anos de experiência, about, social_links), disponibilidade/preferências, skills e experiências profissionais.
  • v1 é só leitura, conforme o PRD ("visualização do próprio perfil").
  • MobileProfileController reaproveita Profile::ensureExists(auth()->id()), já usado no resto do domínio.
  • Corrigido um detalhe do ResourceResponse padrão do Laravel: quando o profile é criado na hora (primeiro acesso), ele devolveria 201 numa rota GET — forçado 200 explicitamente.

Test plan

  • vendor/bin/pint --dirty
  • vendor/bin/phpstan analyse app-modules/profile/src --memory-limit=1G (0 erros)
  • vendor/bin/pest app-modules/profile/tests (73 testes passando, incluindo os 3 novos do endpoint)
  • Testado manualmente via tinker (payload do ProfileResource conferido)

GET /api/mobile/profile retorna o perfil do usuário autenticado
(profissional, skills e experiências), via ProfileResource. v1
só leitura, conforme o PRD.

Depende da story/531-api-mobile-auth-jwt (guard JWT `api`).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant