Objetivo

Estudar e desenvolver uma biblioteca, escrita prioritariamente em TL++, capaz de produzir especificações OpenAPI para APIs REST do Protheus.

O projeto combina uma necessidade real de documentação com uma jornada pública de aprendizado. A proposta é entender os recursos nativos disponíveis, registrar seus limites e investigar uma representação uniforme para endpoints modernos em TL++ e implementações baseadas em WSRESTFUL no AdvPL.

Estado atual

  • Endpoints equivalentes em TL++ e AdvPL compilados e validados no ambiente de laboratório
  • Geração nativa investigada com tlpp.doc.generate(), incluindo limites de descoberta, encoding e paths duplicados
  • Normalizador conservador do YAML nativo coberto por 15 testes automatizados
  • Núcleo mínimo concluído com seis classes para representar, validar e serializar OpenAPI 3.0.3 em JSON
  • Testes TL++ executados com PROBAT e contratos estáticos mantidos em PowerShell
  • Endpoint de demonstração publicado sem dependência de tlpp.doc.generate()

Próximas etapas

  • Descobrir progressivamente endpoints TL++ com annotations
  • Interpretar fontes AdvPL baseados em WSRESTFUL
  • Acrescentar schemas, exemplos, respostas, segurança e extensões x-totvs
  • Automatizar testes, validação e uma demonstração com Swagger UI

Limites

O projeto é experimental, independente e não oficial. Ele não pretende substituir componentes da TOTVS, extrair fontes de RPOs compilados nem inferir com precisão absoluta payloads construídos dinamicamente.