shoc-backend/docs/work-orders/phase-4/search-tier-decision.md

1.7 KiB
Raw Blame History

Search Tier Decision — Fase 4

Data: 2026-06-24
Status: Provisório (dev) — aguardando Volume Discovery staging/prod


Tier confirmado

Ambiente Tier Total WOs Decisão
Dev local S (provisório) < 25k sintético Implementar SQL filtros + paginação opcional
Staging pendente pendente acesso Executar volume-discovery-report.md
Produção pendente pendente acesso Executar queries read-only

Estratégia por tier

Tier Volume Estratégia advanced search
S < 25k SQL filtros compostos + paginação default 50, max 100
M 25k–250k Paginação obrigatória + índices covering
L 250k–1M Spike full-text SQL Server — não implementar sem spike
XL > 1M Documentar ARB; search externo — não implementar

Implementação atual (Tier S)

  • WorkOrderBoardSearchFilter — filtro textual compartilhado (board + advanced)
  • WorkOrderAdvancedSearchDataService — query composta com CountAsync + Skip/Take
  • Índices Phase 4: SiteCode, InternalWONumber, LifecycleStatus+ScheduledDate
  • Min 2 caracteres em search para evitar full-table scan

Próximos passos (gate staging)

  1. Executar scripts/volume-discovery.ps1 contra staging read-only
  2. Preencher tabela §3 do volume report
  3. Atualizar este documento com tier real
  4. Repetir load test k6 em staging; ajustar pageSize max se tier = M

Referências