Pular para o conteúdo

Mapa de Interfaces

No canna-br a surface primaria nao e uma aplicacao web standalone — e o chat Open WebUI com ferramentas MCP e MCP Apps inline. Uma “tela” tradicional de CRUD vira:

  • MCP Tool (nivel 1-3): acao com ou sem confirmacao humana
  • MCP App (ext-apps): componente UI interativo inline no chat (React/Svelte compilado, sem deploy separado)
  • MCP Resource: dados read-only consultados pelo agente

Isso elimina 80+ telas CRUD sem perder capacidade operacional.

Rota / Chat ContextAcessoCapacidades cobertas
Chat aberto (agente livre)Todos os roles autenticadosConsultas C2, C5, C9 via Resources
Dispensation flowDISPENSADORTool C4 nivel 3 → DispensationFormApp
Quota card inlineMEMBRO, DISPENSADORMCP App MemberQuotaCardApp
Traceability timelineAUDITOR, RTMCP App TraceabilityTimelineApp
Compliance reviewRT, ADMINMCP App RipdReviewApp

Cada MCP App e um componente autonomo sem pagina propria:

AppCapabilityStatus
MemberQuotaCardAppExibe quota restante + proxima renovacao + prescricoes vigentesv0.2.1 parcial
DispensationFormAppFormulario de dispensacao com confirmacao em 2 passosv0.2.1 parcial
TraceabilityTimelineAppTimeline visual cultivation → dispensation para um lote ou membrov0.3
RipdReviewAppRevisao e assinatura de BSPO / RIPD pelo RTv0.4
InventoryDashboardAppVisao de lotes AVAILABLE / QUARANTINED / RECALLEDv0.5
ToolDescricao
get_member_quota_summaryRetorna quota restante e prescricoes vigentes de um membro
get_inventory_summaryResume lotes por status (AVAILABLE, QUARANTINED, RECALLED)
get_dispensation_historyHistorico de dispensacoes por membro ou lote com filtros de data
ToolDescricao
draft_dispensationPrepara dispensacao, calcula quota consumida, retorna preview para confirmacao humana

Nivel 3 — Escrita Operacional (requer RBAC + confirmacao)

Seção intitulada “Nivel 3 — Escrita Operacional (requer RBAC + confirmacao)”
ToolDescricao
request_record_dispensationCria PendingAction; confirmacao via DispensationFormApp
register_memberCria membro com consentimento + prescricao
advance_plant_stageAvanca estagio de planta (forward-only)

Nivel 4 — Alto Risco (REST TOTP direto — fora do MCP)

Seção intitulada “Nivel 4 — Alto Risco (REST TOTP direto — fora do MCP)”
EndpointDescricao
POST /api/lab-samples/:id/approveRT aprova laudo COA; hash gravado imutavelmente
POST /api/members/:id/anonymizeAnonimizacao LGPD Art. 18
POST /api/rolesCriacao e atribuicao de roles
POST /api/crypto/deleteDestruicao de chave (recall de lote)

Camada HTTP Fastify 5 — usada por integradores, automacoes e endpoints nivel 4. Nenhuma regra de negocio aqui; tudo passa por app-services.

Documentacao: GET /api/docs (Swagger UI gerado por Zod schemas).

Em modo dev o stack completo roda localmente:

ServicoPortaDescricao
Open WebUI3000Chat host com MCP sidecar
MCP Server3001Tools + Resources + Apps
API REST3002Fastify 5
WorkerBullMQ consumer (background)
PostgreSQL5432Event store + projections
Redis6379Cache + filas
MinIO9000Object storage (laudos, PDFs)

Para producao via Kamal: Stack e Interfaces.

VersaoNovidade de superficie
v0.3LGPD hardening; CSV import via MCP App; Auditor + Federation roles
v0.4RipdReviewApp; DPO view completa; BSPO assinado
v0.5SNGPC + SNCR real; REST API publica v1
v1.0Cultivation + Processing + Lab completos; multi-tenant; billing