gohorsejobs/docs/TASKS.md
root e1c61289af feat(config): Add MCP JSON bootstrap and unify docs
Enable backend fallback to MCP JSON for database connection when DATABASE_URL is absent.\nAdd credentials bootstrap support from JSON for cloud/external services.\n\nConsolidate documentation with MCP integration guide and unified status.\nUpdate backlog to move video interviews endpoint out of current sprint.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-09 20:39:16 +01:00

3.3 KiB

📋 GoHorse Jobs - Tarefas

Lista detalhada de tarefas para evitar retrabalho.

Last Updated: 2026-02-16


Recentemente Concluído

2024-12-26

  • Email System

    • Backend: EmailService (LavinMQ producer)
    • NestJS: Email consumer + Nodemailer
    • Migrations: email_settings, email_templates
  • Email Templates Admin UI

    • Frontend: /dashboard/admin/email-templates
    • CRUD: List, Create, Edit, Delete
  • Avatar Upload

    • Backend: StorageService (pre-signed URLs)
    • Migration: avatar_url column
    • Frontend: profileApi.uploadAvatar
  • Public Job Posting

    • Frontend: /jobs/new page
    • 3-step wizard (Company + Job + Confirm)
  • Documentation

    • BACKEND.md reescrito completo
    • BACKOFFICE.md reescrito completo
    • API_SECURITY.md atualizado
    • ROADMAP.md atualizado

2024-12-25

  • Profile page fixes (500 error)
  • Type mismatches resolved
  • Comprehensive logging added

2024-12-24

  • Ticket system integration
  • Settings page (Theme, Logo)
  • Chat tables (Appwrite)
  • System settings table

🔥 Sprint Atual

Backend

  • AI matching algorithm
  • Webhook sistema

Frontend

  • PWA manifest
  • Service worker
  • Offline support

Backoffice

  • Revenue reports
  • User analytics
  • Export features

Adiado (fora do escopo por enquanto)

  • Video interviews endpoint

🚧 Não Fazer (Evitar Retrabalho)

⚠️ IMPORTANTE: Estas tarefas NÃO devem ser feitas pois já foram resolvidas.

Tarefa Motivo
Criar core_companies REMOVIDO - Usar companies
Criar core_users REMOVIDO - Usar users
Email via API direta REMOVIDO - Usar LavinMQ queue
Avatar upload direto REMOVIDO - Usar pre-signed URLs
psql para migrations REMOVIDO - Usar go run ./cmd/manual_migrate

📝 Notas de Implementação

IDs do Banco

  • UUID v7: users, companies, jobs, applications, notifications, tickets
  • SERIAL: regions, cities, job_posting_prices

Autenticação

  • Backend: JWT em HttpOnly cookie OU Authorization header
  • Frontend: Usa cookies automaticamente
  • Backoffice: Suporta ambos (Bearer e Cookie)

Senhas

  • BCrypt com 10 rounds
  • PASSWORD_PEPPER obrigatório em produção
  • Hash: bcrypt.hash(password + PEPPER, 10)

Uploads

  • Pre-signed URLs via /api/v1/storage/upload-url
  • Direct upload to S3/R2
  • Update profile with key via PATCH

Emails

Go Backend → Publish to LavinMQ (mail_queue)
                    ↓
NestJS → Consume → Fetch template → Render → Send

🔗 Referências


Verificação de Pendências (2026-03-09)

Status conferido na branch dev:

  • Sprint atual permanece em aberto:
    • AI matching algorithm
    • Webhook sistema
    • PWA manifest
    • Service worker
    • Offline support
    • Revenue reports
    • User analytics
    • Export features
  • Itens adiados:
    • Video interviews endpoint