iachat/enterprise/app/models/captain
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
..
lifecycle feat(captain): semantic memory fixes + roleta + reclamações + analytics 2026-04-21 15:36:25 -03:00
assistant_response.rb fix(captain): evita callback de embedding ao excluir FAQ (#13) 2026-04-30 13:14:48 -03:00
assistant.rb fix(captain): captain_unit_id em captain_assistants — fim do lookup quebrado 2026-05-02 12:45:53 -03:00
brand.rb chore(style): fix rubocop offenses and update typing indicators 2026-02-25 15:06:58 -03:00
codex_credential.rb fix(captain): route embeddings to legacy OpenAI + retry transient errors 2026-04-22 17:42:31 -03:00
contact_memory.rb feat(captain): semantic memory fixes + roleta + reclamações + analytics 2026-04-21 15:36:25 -03:00
conversation_insight.rb feat: Adiciona prompt orquestrador configurável para assistentes Captain com editor UI. 2026-02-27 11:57:59 -03:00
custom_tool.rb chore(style): fix rubocop offenses and update typing indicators 2026-02-25 15:06:58 -03:00
document.rb chore(style): fix rubocop offenses and update typing indicators 2026-02-25 15:06:58 -03:00
gallery_item.rb feat(units): allow one Pix unit to link to multiple inboxes (N:N) 2026-02-26 21:33:23 -03:00
lifecycle.rb feat(lifecycle): add Captain::Lifecycle::Config model 2026-04-15 01:14:19 -03:00
pix_charge.rb feat(retention): foundation for customer retention metrics 2026-04-22 09:50:23 -03:00
pricing_amount.rb fix(captain/mcp): get_assistant_pricing lê do DB + save_agent_spec expande 2026-05-02 12:37:53 -03:00
pricing_category.rb feat(captain): pricing em DB + colunas de provisionamento Hermes 2026-05-02 09:04:50 -03:00
report_snapshot.rb feat(captain): improve suite photo search accuracy with AI guidance 2026-02-26 23:04:28 -03:00
reservation.rb feat(lifecycle): wire Captain::Reservation lifecycle hooks 2026-04-15 01:37:23 -03:00
scenario.rb fix(captain): route embeddings to legacy OpenAI + retry transient errors 2026-04-22 17:42:31 -03:00
unit_inbox.rb feat(captain): improve suite photo search accuracy with AI guidance 2026-02-26 23:04:28 -03:00
unit.rb fix(captain/mcp): get_assistant_pricing lê do DB + save_agent_spec expande 2026-05-02 12:37:53 -03:00