Adiciona caminho paralelo de PIX manual estático pra unidades sem integração Inter (Padova, Express AL). Mudança 100% aditiva — todas as outras unidades continuam no fluxo Inter inalterado (default pix_mode=inter_dynamic aplicado pela migration). Backend (sem SOUL/SKILL ainda — Frente 7 vem depois): - Migration concurrent: pix_mode + 4 campos manual_pix_* em captain_units; provider + manual_proof_payload + manual_review_reason em captain_pix_charges - Captain::Unit: enum pix_mode (prefix), validação condicional manual_* - Captain::PixCharge: status estendido (awaiting_proof, pending_review), scope manual/inter, nota interna ramificada por modo - GeneratePixTool MCP: branch manual_static (chave fixa, mensagem direta sem QR/Inter), preserva fluxo Inter intacto - 4 tools MCP novas: verificar_comprovante_pix (vision gpt-5.3-codex), criar_nota_interna (genérica), confirmar_reserva_pix_manual (wrapper do ConfirmationService), marcar_reserva_pendente - ConfirmationService: source_label cobre 'manual_pix_proof' Próximos passos manuais (não inclusos neste commit): 1. Rodar migration em prod (entrypoint não roda no boot) 2. Seed Padova/Express com pix_mode=manual_static + chaves Stone 3. Deploy nova imagem via docker service update 4. Editar SOUL/SKILL Padova/Express na VPS Hermes + kill+boot Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
20 lines
809 B
Ruby
20 lines
809 B
Ruby
class AddManualPixToCaptainUnits < ActiveRecord::Migration[7.1]
|
|
disable_ddl_transaction!
|
|
|
|
def change
|
|
add_column :captain_units, :pix_mode, :string, default: 'inter_dynamic', null: false
|
|
add_column :captain_units, :manual_pix_key, :string
|
|
add_column :captain_units, :manual_pix_key_type, :string
|
|
add_column :captain_units, :manual_pix_owner_name, :string
|
|
add_column :captain_units, :manual_pix_bank_name, :string
|
|
|
|
add_index :captain_units, :pix_mode, algorithm: :concurrently
|
|
|
|
add_column :captain_pix_charges, :provider, :string, default: 'inter', null: false
|
|
add_column :captain_pix_charges, :manual_proof_payload, :jsonb
|
|
add_column :captain_pix_charges, :manual_review_reason, :string
|
|
|
|
add_index :captain_pix_charges, :provider, algorithm: :concurrently
|
|
end
|
|
end
|