From 7ea7d238b7c016ba1aa10a67f75bce6739d45443 Mon Sep 17 00:00:00 2001 From: Rodrigo Borba Date: Tue, 20 Jan 2026 13:16:32 -0300 Subject: [PATCH] ajuste e melhorias --- .../api/v1/accounts/inboxes_controller.rb | 2 +- .../widgets/WootWriter/ReplyBottomPanel.vue | 30 +- .../widgets/WootWriter/ReplyTopPanel.vue | 13 +- .../widgets/conversation/ReplyBox.vue | 68 +-- .../dashboard/composables/useUISettings.js | 22 +- .../i18n/locale/pt_BR/inboxMgmt.json | 3 + .../jasmine/components/JasmineToolCard.vue | 32 +- .../jasmine/components/JasmineToolsTab.vue | 9 +- .../jasmine/pages/JasmineInboxDashboard.vue | 118 ++--- .../dashboard/settings/inbox/Settings.vue | 15 +- .../dashboard/store/captain/assistant.js | 3 +- app/jobs/jasmine/response_job.rb | 34 +- app/listeners/jasmine_listener.rb | 36 +- app/models/channel/whatsapp.rb | 19 +- app/models/inbox.rb | 1 + .../conversations/typing_status_manager.rb | 5 + .../jasmine/semantic_search_service.rb | 118 +++-- .../incoming_message_wuzapi_service.rb | 25 +- .../providers/wuzapi/payload_parser.rb | 71 ++- .../whatsapp/providers/wuzapi_service.rb | 33 +- app/services/wuzapi/provisioning_service.rb | 2 +- app/views/api/v1/models/_inbox.json.jbuilder | 1 + cleanup_proposal.md | 10 + ...0260110193000_fix_status_suites_headers.rb | 2 +- ...dd_message_signature_enabled_to_inboxes.rb | 5 + db/schema.rb | 3 +- docs/dependency_notes.md | 138 +++++ docs/wuzapi_api_reference.md | 324 ++++++++++++ .../conversation/response_builder_job.rb | 2 +- .../captain/assistant/agent_runner_service.rb | 56 +- .../captain/tools/react_to_message_tool.rb | 13 +- .../app/services/llm/base_ai_service.rb | 2 +- organization_report.md | 31 ++ progresso/resolucao-reacao-wuzapi.md | 164 ++++++ progresso/resolucao-webhook-wuzapi.md | 52 ++ skills/architecture-review/SKILL.md | 112 ++++ skills/auditing-code/SKILL.md | 150 ++++++ skills/implementing-plans/SKILL.md | 96 ++++ skills/organizing-code/SKILL.md | 121 +++++ skills/planejamento/SKILL.md | 480 ++++++++++++++++++ skills/removing-code/SKILL.md | 114 +++++ skills/researching-codebase/SKILL.md | 134 +++++ spec/factories/inboxes.rb | 1 + spec/fixtures/inboxes.yml | 1 + spec/models/inbox_spec.rb | 1 + task.md | 16 + 46 files changed, 2395 insertions(+), 293 deletions(-) create mode 100644 cleanup_proposal.md create mode 100644 db/migrate/20260120141736_add_message_signature_enabled_to_inboxes.rb create mode 100644 docs/dependency_notes.md create mode 100644 docs/wuzapi_api_reference.md create mode 100644 organization_report.md create mode 100644 progresso/resolucao-reacao-wuzapi.md create mode 100644 skills/architecture-review/SKILL.md create mode 100644 skills/auditing-code/SKILL.md create mode 100644 skills/implementing-plans/SKILL.md create mode 100644 skills/organizing-code/SKILL.md create mode 100644 skills/planejamento/SKILL.md create mode 100644 skills/removing-code/SKILL.md create mode 100644 skills/researching-codebase/SKILL.md create mode 100644 task.md diff --git a/app/controllers/api/v1/accounts/inboxes_controller.rb b/app/controllers/api/v1/accounts/inboxes_controller.rb index 2660902..46d86d3 100755 --- a/app/controllers/api/v1/accounts/inboxes_controller.rb +++ b/app/controllers/api/v1/accounts/inboxes_controller.rb @@ -173,7 +173,7 @@ class Api::V1::Accounts::InboxesController < Api::V1::Accounts::BaseController def inbox_attributes [:name, :avatar, :greeting_enabled, :greeting_message, :enable_email_collect, :csat_survey_enabled, :enable_auto_assignment, :working_hours_enabled, :out_of_office_message, :timezone, :allow_messages_after_resolved, - :lock_to_single_conversation, :portal_id, :sender_name_type, :business_name, :auto_resolve_duration, + :lock_to_single_conversation, :portal_id, :sender_name_type, :business_name, :auto_resolve_duration, :message_signature_enabled, { csat_config: [:display_type, :message, :button_text, :language, { survey_rules: [:operator, { values: [] }], template: [:name, :template_id, :created_at, :language] }] }] diff --git a/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue b/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue index 80737ac..1f8e68e 100755 --- a/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue +++ b/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue @@ -1,6 +1,5 @@ - Ferramenta nunca testada + + Ferramenta nunca testada +
@@ -259,10 +264,11 @@ function formatJson(str) {
+
{{ formatJson(testResult.body || testResult.error) }}
+ >{{ formatJson(testResult.body || testResult.error) }} +
diff --git a/app/javascript/dashboard/routes/dashboard/jasmine/components/JasmineToolsTab.vue b/app/javascript/dashboard/routes/dashboard/jasmine/components/JasmineToolsTab.vue index bbe114b..f6a087a 100644 --- a/app/javascript/dashboard/routes/dashboard/jasmine/components/JasmineToolsTab.vue +++ b/app/javascript/dashboard/routes/dashboard/jasmine/components/JasmineToolsTab.vue @@ -19,17 +19,18 @@ async function fetchTools() { try { const { data } = await JasmineAPI.getTools(props.inboxId); - console.log('[JasmineTools] Loaded:', data); + // console.log('[JasmineTools] Loaded:', data); tools.value = data || []; } catch (error) { - console.error('[JasmineTools] Error:', error); + // console.error('[JasmineTools] Error:', error); useAlert('Erro ao carregar ferramentas'); } finally { isLoading.value = false; } } -function handleUpdate(updatedToolData) { +function handleUpdate() { + // [INTENTIONAL] updatedToolData reserved for future optimistic updates. fetchTools(); } @@ -39,6 +40,8 @@ onMounted(() => {