✨ feat(admin): concluir fluxo governado de tools na fase 5
parent
3dcf80eaaa
commit
2e3a695878
@ -0,0 +1,13 @@
|
|||||||
|
from admin_app.catalogs.tool_governance_catalog import (
|
||||||
|
BOOTSTRAP_TOOL_CATALOG,
|
||||||
|
INTAKE_DOMAIN_OPTIONS,
|
||||||
|
BootstrapToolCatalogEntry,
|
||||||
|
ToolIntakeDomainOption,
|
||||||
|
)
|
||||||
|
|
||||||
|
__all__ = [
|
||||||
|
"BOOTSTRAP_TOOL_CATALOG",
|
||||||
|
"INTAKE_DOMAIN_OPTIONS",
|
||||||
|
"BootstrapToolCatalogEntry",
|
||||||
|
"ToolIntakeDomainOption",
|
||||||
|
]
|
||||||
@ -0,0 +1,172 @@
|
|||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
from dataclasses import dataclass
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass(frozen=True)
|
||||||
|
class BootstrapToolCatalogEntry:
|
||||||
|
tool_name: str
|
||||||
|
display_name: str
|
||||||
|
description: str
|
||||||
|
domain: str
|
||||||
|
parameter_count: int
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass(frozen=True)
|
||||||
|
class ToolIntakeDomainOption:
|
||||||
|
value: str
|
||||||
|
label: str
|
||||||
|
description: str
|
||||||
|
|
||||||
|
|
||||||
|
BOOTSTRAP_TOOL_CATALOG: tuple[BootstrapToolCatalogEntry, ...] = (
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="consultar_estoque",
|
||||||
|
display_name="Consultar estoque",
|
||||||
|
description="Consulta veiculos disponiveis no estoque comercial.",
|
||||||
|
domain="vendas",
|
||||||
|
parameter_count=4,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="validar_cliente_venda",
|
||||||
|
display_name="Validar cliente para venda",
|
||||||
|
description="Avalia elegibilidade de credito para operacoes de venda.",
|
||||||
|
domain="vendas",
|
||||||
|
parameter_count=2,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="avaliar_veiculo_troca",
|
||||||
|
display_name="Avaliar veiculo de troca",
|
||||||
|
description="Estima o valor de entrada de um veiculo usado.",
|
||||||
|
domain="vendas",
|
||||||
|
parameter_count=3,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="agendar_revisao",
|
||||||
|
display_name="Agendar revisao",
|
||||||
|
description="Abre um agendamento de revisao ou manutencao.",
|
||||||
|
domain="revisao",
|
||||||
|
parameter_count=6,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="listar_agendamentos_revisao",
|
||||||
|
display_name="Listar agendamentos de revisao",
|
||||||
|
description="Consulta a fila de agendamentos de revisao do cliente.",
|
||||||
|
domain="revisao",
|
||||||
|
parameter_count=3,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="cancelar_agendamento_revisao",
|
||||||
|
display_name="Cancelar agendamento de revisao",
|
||||||
|
description="Cancela um agendamento existente por protocolo.",
|
||||||
|
domain="revisao",
|
||||||
|
parameter_count=2,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="editar_data_revisao",
|
||||||
|
display_name="Editar data de revisao",
|
||||||
|
description="Remarca uma revisao para um novo horario.",
|
||||||
|
domain="revisao",
|
||||||
|
parameter_count=2,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="realizar_pedido",
|
||||||
|
display_name="Realizar pedido",
|
||||||
|
description="Efetiva um pedido de compra com o veiculo escolhido.",
|
||||||
|
domain="vendas",
|
||||||
|
parameter_count=2,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="listar_pedidos",
|
||||||
|
display_name="Listar pedidos",
|
||||||
|
description="Consulta pedidos ja abertos pelo cliente.",
|
||||||
|
domain="vendas",
|
||||||
|
parameter_count=3,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="cancelar_pedido",
|
||||||
|
display_name="Cancelar pedido",
|
||||||
|
description="Cancela um pedido existente com motivo registrado.",
|
||||||
|
domain="vendas",
|
||||||
|
parameter_count=2,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="consultar_frota_aluguel",
|
||||||
|
display_name="Consultar frota de aluguel",
|
||||||
|
description="Lista veiculos disponiveis para locacao.",
|
||||||
|
domain="locacao",
|
||||||
|
parameter_count=6,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="abrir_locacao_aluguel",
|
||||||
|
display_name="Abrir locacao de aluguel",
|
||||||
|
description="Inicia um contrato de locacao de veiculo.",
|
||||||
|
domain="locacao",
|
||||||
|
parameter_count=7,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="registrar_devolucao_aluguel",
|
||||||
|
display_name="Registrar devolucao de aluguel",
|
||||||
|
description="Fecha uma locacao e devolve o veiculo para a frota.",
|
||||||
|
domain="locacao",
|
||||||
|
parameter_count=4,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="registrar_pagamento_aluguel",
|
||||||
|
display_name="Registrar pagamento de aluguel",
|
||||||
|
description="Registra comprovantes e pagamentos de contratos de locacao.",
|
||||||
|
domain="locacao",
|
||||||
|
parameter_count=7,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="limpar_contexto_conversa",
|
||||||
|
display_name="Limpar contexto de conversa",
|
||||||
|
description="Reinicia o contexto operacional atual do atendimento.",
|
||||||
|
domain="orquestracao",
|
||||||
|
parameter_count=1,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="continuar_proximo_pedido",
|
||||||
|
display_name="Continuar proximo pedido",
|
||||||
|
description="Retoma o proximo pedido pendente do fluxo atual.",
|
||||||
|
domain="orquestracao",
|
||||||
|
parameter_count=0,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="descartar_pedidos_pendentes",
|
||||||
|
display_name="Descartar pedidos pendentes",
|
||||||
|
description="Descarta apenas a fila pendente de pedidos do contexto.",
|
||||||
|
domain="orquestracao",
|
||||||
|
parameter_count=1,
|
||||||
|
),
|
||||||
|
BootstrapToolCatalogEntry(
|
||||||
|
tool_name="cancelar_fluxo_atual",
|
||||||
|
display_name="Cancelar fluxo atual",
|
||||||
|
description="Interrompe o fluxo corrente sem apagar todo o contexto.",
|
||||||
|
domain="orquestracao",
|
||||||
|
parameter_count=1,
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
|
INTAKE_DOMAIN_OPTIONS: tuple[ToolIntakeDomainOption, ...] = (
|
||||||
|
ToolIntakeDomainOption(
|
||||||
|
value="vendas",
|
||||||
|
label="Vendas",
|
||||||
|
description="Ferramentas para estoque, negociacao, pedido e conversao comercial.",
|
||||||
|
),
|
||||||
|
ToolIntakeDomainOption(
|
||||||
|
value="revisao",
|
||||||
|
label="Revisao",
|
||||||
|
description="Ferramentas para agendamento, remarcacao e operacao da oficina.",
|
||||||
|
),
|
||||||
|
ToolIntakeDomainOption(
|
||||||
|
value="locacao",
|
||||||
|
label="Locacao",
|
||||||
|
description="Ferramentas para frota, contratos, devolucao e arrecadacao de aluguel.",
|
||||||
|
),
|
||||||
|
ToolIntakeDomainOption(
|
||||||
|
value="orquestracao",
|
||||||
|
label="Orquestracao",
|
||||||
|
description="Ferramentas internas para fluxo conversacional, contexto e decisao do bot.",
|
||||||
|
),
|
||||||
|
)
|
||||||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue