Skip to content

[TRNF-6304] Add CLI signup, device flow login, and server-side logout#1

Draft
aenrione wants to merge 2 commits intomainfrom
trnf-6304-cli-oauth-setup
Draft

[TRNF-6304] Add CLI signup, device flow login, and server-side logout#1
aenrione wants to merge 2 commits intomainfrom
trnf-6304-cli-oauth-setup

Conversation

@aenrione
Copy link
Collaborator

@aenrione aenrione commented Mar 4, 2026

Contexto

Soporte del flujo completo de autenticación en el CLI: signup → login (device flow) → logout con revocación server-side.

Que hay de nuevo?

  • Cliente OAuth device flow con polling, slow_down handling y retry
  • fintoc auth signup con validación interactiva (email, password strength 3/4 clases, re-prompting)
  • fintoc auth login refactorizado: device flow default, --with-key fallback
  • fintoc auth logout: revoca live key vía POST /v1/cli/logout antes de limpiar credenciales locales
  • Paquete de validación compartido y cliente HTTP signup

Tests

  • Tests unitarios para device flow, validadores, signup client
  • Tests e2e con mock server para signup y logout (incluyendo degradación graceful)

Rollback

Seguro. Solo agrega nuevos comandos/paquetes.

Created with Claude Code /create-pr command

Implement device authorization flow with request, poll, and
polling loop methods. Includes graceful slow_down handling,
context cancellation, and retry logic for transient errors.
Add 'fintoc auth signup' for full CLI-only account registration:
collects email, password, name, country, and org name, then calls
the backend to create an Auth0 user, local records, organization,
and API keys in a single step.

Refactor 'fintoc auth login' to use device flow as default with
--with-key fallback. Both test and live keys are provisioned in
one step. Login now suggests signup for users without accounts.
@aenrione aenrione self-assigned this Mar 4, 2026
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