iachat/enterprise/app/services/captain/mcp/tools
Rodribm10 5ef59ecc12 fix(captain): captain_unit_id em captain_assistants — fim do lookup quebrado
Captain::Assistant agora aponta direto pra Captain::Unit. Antes a relação
ia via CaptainInbox, mas isso quebrou quando re-apontamos as inboxes pros
Hermes — assistants captain_interno (Juliana, Bianca, Lara, Nina,
Valentina) ficaram SEM CaptainInbox associada e o lookup
unit_for(assistant) retornava nil.

Resultado: get_assistant_pricing(3) (Lara) caía no fallback de scenario
text. Construtor reportava "veio cenário/prompt, não tabela estruturada".

Migration adiciona captain_unit_id (FK opcional). Backfill explícito:
- 1 Juliana → unit 3 (Qnn01)
- 2 Bianca → unit 2 (PrimeAL)
- 3 Lara → unit 2 (PrimeAL — mesmo brand)
- 4 Nina → unit 5 (Express)
- 6 Valentina → unit 4 (Dolce Amore)
- 9 Lara.H → unit 2 (via parent_assistant_id=3)

Tools get_assistant_pricing_tool e save_agent_spec_tool atualizados pra
usar assistant.captain_unit primeiro (nova relação direta), com fallback
pro CaptainInbox se nulo (pra retrocompatibilidade).

Validado live: tool retorna grid markdown com Stilo/Alexa/Hidromassagem
em Seg-Qua + Qui-Dom corretamente.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-02 12:45:53 -03:00
..
add_label_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
base_tool.rb feat(captain): MCP server (HTTP) expondo tools pro Hermes Agent 2026-05-01 15:32:38 -03:00
check_pix_payment_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
faq_lookup_tool.rb feat(captain): MCP server (HTTP) expondo tools pro Hermes Agent 2026-05-01 15:32:38 -03:00
generate_pix_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
get_assistant_faqs_tool.rb fix(captain/mcp): get_assistant_faqs — não filtrar por documentable_type 2026-05-02 11:49:54 -03:00
get_assistant_pricing_tool.rb fix(captain): captain_unit_id em captain_assistants — fim do lookup quebrado 2026-05-02 12:45:53 -03:00
get_assistant_scenario_tool.rb feat(captain/mcp): get_assistant_scenario tool — Construtor copia identidade de outro agente 2026-05-02 11:55:13 -03:00
get_contact_history_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
list_assistants_tool.rb feat(captain/mcp): tools read-only pro Skill Construtor 2026-05-01 20:24:02 -03:00
react_to_message_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
reschedule_reservation_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
save_agent_spec_tool.rb fix(captain): captain_unit_id em captain_assistants — fim do lookup quebrado 2026-05-02 12:45:53 -03:00
send_suite_images_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00
update_contact_tool.rb feat(captain/mcp): suite de 9 tools MCP + pricing tables Dolce Amore 2026-05-01 20:13:16 -03:00