⚡ uappgenerator

Undeniable App Generator
⚠️ PARTIAL

Cascade Run #50

App: Cascade Test App  ·  Operator: canary-test

Started: 2026-06-07 01:40:13  ·  Finished: 2026-06-07 01:40:24

Table: moneda

📋
Naming Pre-Flight
WARNING
<1s
🗄️
Schema Verify
SUCCESS
4,000ms
⚙️
Model Gen (ia_case)
WARNING
5,000ms
🔗
Wire Relations
SUCCESS
<1s
🎨
UI/API Gen (modern)
SUCCESS
<1s
🔍
Verification
WARNING
1,000ms
📋 Naming Pre-Flight WARNING
Upstream: importer
Duration: 2026-06-07 01:40:14 → 2026-06-07 01:40:14
Response Details
{
    "status": "warning",
    "checks": [
        {
            "check_type": "slug_format",
            "input_value": "moneda",
            "result": "pass",
            "message": "Table name 'moneda' matches naming contract format.",
            "fix_suggestion": null
        },
        {
            "check_type": "reserved_word",
            "input_value": "moneda",
            "result": "pass",
            "message": "Table name 'moneda' is not a MySQL reserved word.",
            "fix_suggestion": null
        },
        {
            "check_type": "upstream_primary_key",
            "input_value": "moneda",
            "result": "warning",
            "message": "Missing expected primary key 'moneda_id'. Tables must define a primary key named after the singular table name with '_id' suffix.",
            "fix_suggestion": "Add column 'moneda_id' VARCHAR(32) PRIMARY KEY"
        }
    ],
    "fix_suggestions": [
        "Add column 'moneda_id' VARCHAR(32) PRIMARY KEY"
    ]
}
🗄️ Schema Verify SUCCESS
Upstream: ia_case (preview)
URL: http://localhost/ia_case/api/orchestrate_table.php?table=moneda&db=quantix&mode=preview&hojado=Si&format=json
HTTP: 200
Duration: 2026-06-07 01:40:14 → 2026-06-07 01:40:18
Response Details
{
    "ok": true,
    "table": "moneda",
    "db": "quantix",
    "mode": "preview",
    "timestamp": "2026-06-07T01:40:18-06:00",
    "files_written": [],
    "lint": [],
    "warnings_legacy": [
        "No link table: agente_financiero_balanza_canonical_row field: run_id",
        "No link table: agente_financiero_project field: owner_user_id",
        "No link table: agente_financiero_project_member field: project_id",
        "No link table: agente_financiero_project_member field: user_id",
        "No link table: agoda_transaction field: bookingidexternal_reference_id",
        "No link table: agoda_transaction field: acknowledgement_id",
        "No link table: alumnos_becados field: estudiante_id",
        "No link table: alumnos_becados field: run_id",
        "No link table: alumnos_becados field: portal_confirmed_id",
        "No link table: alumnos_becados field: portal_receipt_id",
        "No link table: amarre_fiscal_asset_import_run field: project_id",
        "No link table: amarre_fiscal_auxiliares_contables field: project_id",
        "No link table: amarre_fiscal_auxiliares_contables field: batch_id",
        "No link table: amarre_fiscal_auxiliares_upload_job field: write_batch_id",
        "No link table: amarre_fiscal_auxiliares_upload_job_file field: job_id",
        "No link table: amarre_fiscal_client_package_audit field: operator_id",
        "No link table: amarre_fiscal_folio_duplicate field: project_id",
        "No link table: amarre_fiscal_ingresos_ame field: project_id",
        "No link table: amarre_fiscal_kv_cache field: project_id",
        "No link table: amarre_fiscal_metadata_sat field: project_id",
        "No link table: amarre_fiscal_paso1_diagnostic_cache field: project_id",
        "No link table: amarre_fiscal_paso1_diagnostic_cache field: ame_id",
        "No link table: amarre_fiscal_project field: owner_user_id",
        "No link table: amarre_fiscal_project_member field: project_id",
        "No link table: amarre_fiscal_project_member field: user_id",
        "No link table: amarre_fiscal_substitution field: batch_id",
        "No link table: amarre_fiscal_tier3_apply_row field: batch_id",
        "No link table: amarre_fiscal_tier3_apply_row field: ame_id",
        "No link table: amarre_fiscal_tier3_apply_row field: sat_id",
        "No link table: amarre_fiscal_tier3_apply_row field: aux_batch_id",
        "No link table: audit_log field: record_id",
        "No link table: audit_log field: user_id",
        "No link table: banco_cuenta_mov field: mov_verificado_id",
        "No link table: banco_cuenta_mov field: contpaq_cliente_id",
        "No link table: banco_cuenta_mov field: categoria_gasto_id",
        "No link table: banco_cuenta_mov field: mov_repetido_id",
        "No link table: banco_cuenta_mov_con_links field: mov_verificado_id",
        "No link table: banco_cuenta_mov_con_links field: categoria_gasto_id",
        "No link table: banco_cuenta_mov_plantilla field: plantilla_id",
        "No link table: banco_cuenta_trans field: origen_mov_id",
        "No link table: banco_cuenta_trans field: contpaq_cliente_id",
        "No link table: banco_diccionario_dato field: categoria_gasto_id",
        "No link table: booking_transaction field: property_id",
        "No link table: booking_transaction field: legal_id",
        "No link table: canonical_column_mappings field: client_id",
        "No link table: canonical_import_runs field: client_id",
        "No link table: canonical_import_runs field: project_id",
        "No link table: canonical_profiles field: client_id",
        "No link table: canonical_profiles field: last_import_run_id",
        "No link table: cfdi_matcher_audit field: actor_user_id",
        "No link table: cfdi_matcher_audit field: iteration_id",
        "No link table: cfdi_matcher_audit field: case_id",
        "No link table: cfdi_matcher_audit field: cfdi_matcher_link_id",
        "No link table: cfdi_matcher_audit field: invoice_id",
        "No link table: cfdi_matcher_audit field: deposit_id",
        "No link table: cfdi_matcher_audit field: proposal_group_id",
        "No link table: cfdi_matcher_failures field: iteration_id",
        "No link table: cfdi_matcher_failures field: proposal_group_id",
        "No link table: cfdi_matcher_failures field: invoice_id",
        "No link table: cfdi_matcher_failures field: deposit_id",
        "No link table: cfdi_matcher_failures field: closest_match_id",
        "No link table: cfdi_matcher_failures field: action_group_id",
        "No link table: cfdi_matcher_failures field: resolved_match_id",
        "No link table: cfdi_matcher_failures field: pattern_id",
        "No link table: cfdi_matcher_iterations field: case_id",
        "No link table: cfdi_matcher_iterations field: created_by_user_id",
        "No link table: cfdi_matcher_links field: iteration_id",
        "No link table: cfdi_matcher_links field: invoice_id",
        "No link table: cfdi_matcher_links field: deposit_id",
        "No link table: cfdi_matcher_links field: action_group_id",
        "No link table: cfdi_matcher_links field: pattern_id",
        "No link table: cfdi_matcher_patterns field: created_from_link_id",
        "No link table: cfdi_matcher_patterns field: example_invoice_id",
        "No link table: cfdi_matcher_patterns field: example_deposit_id",
        "No link table: cfdi_matcher_rejected_pairs field: invoice_id",
        "No link table: cfdi_matcher_rejected_pairs field: deposit_id",
        "No link table: cfdi_matcher_rejected_pairs field: rejected_by_user_id",
        "No link table: cfdi_matcher_rejected_pairs field: iteration_id",
        "No link table: cfdi_matcher_results field: iteration_id",
        "No link table: cfdi_matcher_results field: proposal_group_id",
        "No link table: cfdi_matcher_results field: invoice_id",
        "No link table: cfdi_matcher_results field: deposit_id",
        "No link table: cfdi_matcher_results field: pattern_id",
        "No link table: cfdi_matcher_results field: created_by_user_id",
        "No link table: cfdi_matcher_results field: alternative_deposit_1_id",
        "No link table: cfdi_matcher_results field: alternative_deposit_2_id",
        "No link table: cfdi_matcher_results field: alternative_deposit_3_id",
        "No link table: cfdi_matcher_results field: corrected_deposit_id",
        "No link table: cuentat_mov field: origen_mov_id",
        "No link table: cuentat_mov field: contra_mov_id",
        "No link table: empresa field: cp_cliente_direccion_id",
        "No link table: iac_usr field: plantilla_id",
        "No link table: iac_usr field: plantillatienda_id",
        "No link table: import_audit field: job_run_id",
        "No link table: import_job_runs field: job_id",
        "No link table: import_schema_logs field: import_log_id",
        "No link table: invoice_attachments field: invoice_id",
        "No link table: invoice_lines field: invoice_id",
        "No link table: invoices field: vendor_id",
        "No link table: kv_record_log field: collection_id",
        "No link table: kv_record_log field: record_id",
        "No link table: login_log field: session_id",
        "No link table: marketing_de_propiedades_airbnb_list field: property_id",
        "No link table: marketing_de_propiedades_booking_list field: property_id",
        "No link table: marketing_de_propiedades_mr__w_list field: property_id",
        "No link table: matcher_failures field: iteration_id",
        "No link table: matcher_failures field: reservation_id",
        "No link table: matcher_failures field: auto_generated_pattern_id",
        "No link table: matcher_results field: iteration_id",
        "No link table: matcher_results field: reservation_id",
        "No link table: matcher_results field: matched_property_id",
        "No link table: matcher_results field: corrected_property_id",
        "No link table: neonfs_activity_log field: user_id",
        "No link table: neonfs_background_tasks field: user_id",
        "No link table: neonfs_collab_chat field: user_id",
        "No link table: neonfs_collab_sessions field: user_id",
        "No link table: neonfs_cron_schedules field: user_id",
        "No link table: neonfs_email_verifications field: user_id",
        "No link table: neonfs_favorites field: user_id",
        "No link table: neonfs_password_resets field: user_id",
        "No link table: neonfs_preferences field: user_id",
        "No link table: neonfs_sessions field: user_id",
        "No link table: neonfs_share_links field: user_id",
        "No link table: neonfs_ssh_connections field: user_id",
        "No link table: neonfs_terminal_snippets field: user_id",
        "No link table: neonfs_user_plugins field: user_id",
        "No link table: ota_pms_match field: ota_transaction_id",
        "No link table: ota_pms_match field: pms_reserva_id",
        "No link table: reconciliation_active_links field: reconciliation_case_id",
        "No link table: reconciliation_active_links field: legacy_link_id",
        "No link table: reconciliation_active_links field: reconciliation_match_run_id",
        "No link table: reconciliation_active_links field: invoice_id",
        "No link table: reconciliation_active_links field: bank_id",
        "No link table: reconciliation_audit_events field: reconciliation_case_id",
        "No link table: reconciliation_audit_events field: entity_id",
        "No link table: reconciliation_audit_events field: actor_user_id",
        "No link table: reconciliation_canonical_rows field: reconciliation_case_id",
        "No link table: reconciliation_canonical_rows field: reconciliation_case_source_id",
        "No link table: reconciliation_canonical_rows field: source_record_id",
        "No link table: reconciliation_canonical_rows field: client_tax_id",
        "No link table: reconciliation_case_artifacts field: reconciliation_case_id",
        "No link table: reconciliation_case_artifacts field: legacy_reference_id",
        "No link table: reconciliation_case_profile_bindings field: reconciliation_case_id",
        "No link table: reconciliation_case_profile_bindings field: matcher_source_id",
        "No link table: reconciliation_case_sources field: reconciliation_case_id",
        "No link table: reconciliation_case_sources field: import_log_id",
        "No link table: reconciliation_cases field: assigned_user_id",
        "No link table: reconciliation_learning_events field: reconciliation_case_id",
        "No link table: reconciliation_learning_events field: created_by_user_id",
        "No link table: reconciliation_match_candidate_groups field: reconciliation_case_id",
        "No link table: reconciliation_match_candidate_groups field: reconciliation_match_run_id",
        "No link table: reconciliation_match_candidate_groups field: legacy_proposal_group_id",
        "No link table: reconciliation_match_decisions field: reconciliation_case_id",
        "No link table: reconciliation_match_decisions field: reconciliation_match_run_id",
        "No link table: reconciliation_match_decisions field: legacy_iteration_id",
        "No link table: reconciliation_match_decisions field: legacy_link_id",
        "No link table: reconciliation_match_decisions field: invoice_id",
        "No link table: reconciliation_match_decisions field: bank_id",
        "No link table: reconciliation_match_decisions field: decided_by_user_id",
        "No link table: reconciliation_match_decisions field: reversed_by_decision_id",
        "No link table: reconciliation_match_runs field: reconciliation_case_id",
        "No link table: reconciliation_match_runs field: legacy_iteration_id",
        "No link table: reconciliation_match_runs field: triggered_by_user_id",
        "No link table: sat_access_api_rate_limit field: token_id",
        "No link table: sat_access_backfill_chunk field: backfill_job_id",
        "No link table: sat_access_backfill_chunk field: sync_run_id",
        "No link table: sat_access_backfill_job field: rfc_subscription_id",
        "No link table: sat_access_cert_access_baseline field: cert_id",
        "No link table: sat_access_certificate_access_log field: certificate_id",
        "No link table: sat_access_certificate_access_log field: jit_token_id",
        "No link table: sat_access_certificate_audit_export field: certificate_id",
        "No link table: sat_access_certificate_deletion_request field: cert_id",
        "No link table: sat_access_certificate_lifecycle_event field: certificate_id",
        "No link table: sat_access_certificates field: rfc_subscription_id",
        "No link table: sat_access_certificates field: supersedes_cert_id",
        "No link table: sat_access_certificates field: superseded_by_cert_id",
        "No link table: sat_access_cfdi field: rfc_subscription_id",
        "No link table: sat_access_cfdi field: sync_run_id",
        "No link table: sat_access_export_run field: rfc_subscription_id",
        "No link table: sat_access_fiel_vault field: rfc_subscription_id",
        "No link table: sat_access_fiel_vault field: superseded_by_id",
        "No link table: sat_access_jit_token field: certificate_id",
        "No link table: sat_access_quarantine field: sync_run_id",
        "No link table: sat_access_sync_run field: rfc_subscription_id",
        "No link table: sat_access_tax_monthly_export field: tax_monthly_report_id",
        "No link table: sat_access_tax_monthly_snapshot field: tax_monthly_report_id",
        "No link table: tienda field: cp_cliente_direccion_id",
        "No link table: umrc_test_bank_sample field: movimiento_id",
        "No link table: umrc_test_invoice_sample field: invoice_id",
        "No link table: und_bank_bank_sample field: movimiento_id",
        "No link table: und_invoice_invoices_sample field: invoice_id",
        "No link table: user_filters field: user_id",
        "No link table: v_propiedad_latest_analytics field: analytics_id",
        "No link table: vendor_aliases field: vendor_id",
        "No link table: vendor_match_rules field: vendor_id",
        "combo_tabla: agente_financiero_project_member no pk_single_field",
        "combo_tabla: amarre_fiscal_kv_cache no pk_single_field",
        "combo_tabla: amarre_fiscal_paso1_diagnostic_cache no pk_single_field",
        "combo_tabla: amarre_fiscal_project_member no pk_single_field",
        "combo_tabla: banco_cuenta_mov no pk_single_field",
        "combo_tabla: banco_cuenta_mov_con_links no pk_single_field",
        "combo_tabla: iac_log no pk_single_field",
        "combo_tabla: iac_log_view no pk_single_field",
        "combo_tabla: marketing_de_propiedades_airbnb_cb no pk_single_field",
        "combo_tabla: marketing_de_propiedades_airbnb_list no pk_single_field",
        "combo_tabla: marketing_de_propiedades_booking_list no pk_single_field",
        "combo_tabla: marketing_de_propiedades_mr__w_list no pk_single_field",
        "combo_tabla: marketing_de_propiedades_smart no pk_single_field",
        "combo_tabla: neonfs_user_plugins no pk_single_field",
        "combo_tabla: sat_access_api_rate_limit no pk_single_field",
        "combo_tabla: sat_access_cert_access_baseline no pk_single_field",
        "combo_tabla: sat_access_ppd_chain_pago no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_105 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_107 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_109 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_111 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_113 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_115 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_117 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_119 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_121 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_123 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_125 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_127 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_146 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_148 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_151 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_153 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_155 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_157 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_159 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_35 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_36 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_38 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_39 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_41 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_42 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_43 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_45 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_47 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_83 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_85 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_86 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_87 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_88 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_89 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_94 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_95 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_97 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_99 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_116 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_118 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_120 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_122 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_124 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_126 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_147 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_150 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_154 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_158 no pk_single_field",
        "combo_tabla: v_analytics_iteration_summary no pk_single_field",
        "combo_tabla: v_propiedad_latest_analytics no pk_single_field"
    ],
    "errors_real": [],
    "backup_id": null,
    "lock_wait_ms": 0,
    "raw_output_lines": 11846,
    "duration_ms": 4062
}
⚙️ Model Gen (ia_case) WARNING
Upstream: ia_case
URL: http://localhost/ia_case/api/orchestrate_table.php?table=moneda&db=quantix&mode=create&hojado=Si&format=json
HTTP: 200
Duration: 2026-06-07 01:40:18 → 2026-06-07 01:40:23
Response Details
{
    "ok": true,
    "table": "moneda",
    "db": "quantix",
    "mode": "create",
    "timestamp": "2026-06-07T01:40:23-06:00",
    "files_written": {
        "app_table": "\/lamp\/www\/quantix\/app\/app_moneda.php",
        "appRelate": "\/lamp\/www\/quantix\/app\/appRelate.php",
        "backoffice": "\/lamp\/www\/quantix\/backoffice\/moneda.php"
    },
    "lint": {
        "app_table": {
            "pass": true,
            "output": "No syntax errors detected in \/lamp\/www\/quantix\/app\/app_moneda.php"
        },
        "appRelate": {
            "pass": true,
            "output": "No syntax errors detected in \/lamp\/www\/quantix\/app\/appRelate.php"
        },
        "backoffice": {
            "pass": true,
            "output": "No syntax errors detected in \/lamp\/www\/quantix\/backoffice\/moneda.php"
        }
    },
    "warnings_legacy": [
        "No link table: agente_financiero_balanza_canonical_row field: run_id",
        "No link table: agente_financiero_project field: owner_user_id",
        "No link table: agente_financiero_project_member field: project_id",
        "No link table: agente_financiero_project_member field: user_id",
        "No link table: agoda_transaction field: bookingidexternal_reference_id",
        "No link table: agoda_transaction field: acknowledgement_id",
        "No link table: alumnos_becados field: estudiante_id",
        "No link table: alumnos_becados field: run_id",
        "No link table: alumnos_becados field: portal_confirmed_id",
        "No link table: alumnos_becados field: portal_receipt_id",
        "No link table: amarre_fiscal_asset_import_run field: project_id",
        "No link table: amarre_fiscal_auxiliares_contables field: project_id",
        "No link table: amarre_fiscal_auxiliares_contables field: batch_id",
        "No link table: amarre_fiscal_auxiliares_upload_job field: write_batch_id",
        "No link table: amarre_fiscal_auxiliares_upload_job_file field: job_id",
        "No link table: amarre_fiscal_client_package_audit field: operator_id",
        "No link table: amarre_fiscal_folio_duplicate field: project_id",
        "No link table: amarre_fiscal_ingresos_ame field: project_id",
        "No link table: amarre_fiscal_kv_cache field: project_id",
        "No link table: amarre_fiscal_metadata_sat field: project_id",
        "No link table: amarre_fiscal_paso1_diagnostic_cache field: project_id",
        "No link table: amarre_fiscal_paso1_diagnostic_cache field: ame_id",
        "No link table: amarre_fiscal_project field: owner_user_id",
        "No link table: amarre_fiscal_project_member field: project_id",
        "No link table: amarre_fiscal_project_member field: user_id",
        "No link table: amarre_fiscal_substitution field: batch_id",
        "No link table: amarre_fiscal_tier3_apply_row field: batch_id",
        "No link table: amarre_fiscal_tier3_apply_row field: ame_id",
        "No link table: amarre_fiscal_tier3_apply_row field: sat_id",
        "No link table: amarre_fiscal_tier3_apply_row field: aux_batch_id",
        "No link table: audit_log field: record_id",
        "No link table: audit_log field: user_id",
        "No link table: banco_cuenta_mov field: mov_verificado_id",
        "No link table: banco_cuenta_mov field: contpaq_cliente_id",
        "No link table: banco_cuenta_mov field: categoria_gasto_id",
        "No link table: banco_cuenta_mov field: mov_repetido_id",
        "No link table: banco_cuenta_mov_con_links field: mov_verificado_id",
        "No link table: banco_cuenta_mov_con_links field: categoria_gasto_id",
        "No link table: banco_cuenta_mov_plantilla field: plantilla_id",
        "No link table: banco_cuenta_trans field: origen_mov_id",
        "No link table: banco_cuenta_trans field: contpaq_cliente_id",
        "No link table: banco_diccionario_dato field: categoria_gasto_id",
        "No link table: booking_transaction field: property_id",
        "No link table: booking_transaction field: legal_id",
        "No link table: canonical_column_mappings field: client_id",
        "No link table: canonical_import_runs field: client_id",
        "No link table: canonical_import_runs field: project_id",
        "No link table: canonical_profiles field: client_id",
        "No link table: canonical_profiles field: last_import_run_id",
        "No link table: cfdi_matcher_audit field: actor_user_id",
        "No link table: cfdi_matcher_audit field: iteration_id",
        "No link table: cfdi_matcher_audit field: case_id",
        "No link table: cfdi_matcher_audit field: cfdi_matcher_link_id",
        "No link table: cfdi_matcher_audit field: invoice_id",
        "No link table: cfdi_matcher_audit field: deposit_id",
        "No link table: cfdi_matcher_audit field: proposal_group_id",
        "No link table: cfdi_matcher_failures field: iteration_id",
        "No link table: cfdi_matcher_failures field: proposal_group_id",
        "No link table: cfdi_matcher_failures field: invoice_id",
        "No link table: cfdi_matcher_failures field: deposit_id",
        "No link table: cfdi_matcher_failures field: closest_match_id",
        "No link table: cfdi_matcher_failures field: action_group_id",
        "No link table: cfdi_matcher_failures field: resolved_match_id",
        "No link table: cfdi_matcher_failures field: pattern_id",
        "No link table: cfdi_matcher_iterations field: case_id",
        "No link table: cfdi_matcher_iterations field: created_by_user_id",
        "No link table: cfdi_matcher_links field: iteration_id",
        "No link table: cfdi_matcher_links field: invoice_id",
        "No link table: cfdi_matcher_links field: deposit_id",
        "No link table: cfdi_matcher_links field: action_group_id",
        "No link table: cfdi_matcher_links field: pattern_id",
        "No link table: cfdi_matcher_patterns field: created_from_link_id",
        "No link table: cfdi_matcher_patterns field: example_invoice_id",
        "No link table: cfdi_matcher_patterns field: example_deposit_id",
        "No link table: cfdi_matcher_rejected_pairs field: invoice_id",
        "No link table: cfdi_matcher_rejected_pairs field: deposit_id",
        "No link table: cfdi_matcher_rejected_pairs field: rejected_by_user_id",
        "No link table: cfdi_matcher_rejected_pairs field: iteration_id",
        "No link table: cfdi_matcher_results field: iteration_id",
        "No link table: cfdi_matcher_results field: proposal_group_id",
        "No link table: cfdi_matcher_results field: invoice_id",
        "No link table: cfdi_matcher_results field: deposit_id",
        "No link table: cfdi_matcher_results field: pattern_id",
        "No link table: cfdi_matcher_results field: created_by_user_id",
        "No link table: cfdi_matcher_results field: alternative_deposit_1_id",
        "No link table: cfdi_matcher_results field: alternative_deposit_2_id",
        "No link table: cfdi_matcher_results field: alternative_deposit_3_id",
        "No link table: cfdi_matcher_results field: corrected_deposit_id",
        "No link table: cuentat_mov field: origen_mov_id",
        "No link table: cuentat_mov field: contra_mov_id",
        "No link table: empresa field: cp_cliente_direccion_id",
        "No link table: iac_usr field: plantilla_id",
        "No link table: iac_usr field: plantillatienda_id",
        "No link table: import_audit field: job_run_id",
        "No link table: import_job_runs field: job_id",
        "No link table: import_schema_logs field: import_log_id",
        "No link table: invoice_attachments field: invoice_id",
        "No link table: invoice_lines field: invoice_id",
        "No link table: invoices field: vendor_id",
        "No link table: kv_record_log field: collection_id",
        "No link table: kv_record_log field: record_id",
        "No link table: login_log field: session_id",
        "No link table: marketing_de_propiedades_airbnb_list field: property_id",
        "No link table: marketing_de_propiedades_booking_list field: property_id",
        "No link table: marketing_de_propiedades_mr__w_list field: property_id",
        "No link table: matcher_failures field: iteration_id",
        "No link table: matcher_failures field: reservation_id",
        "No link table: matcher_failures field: auto_generated_pattern_id",
        "No link table: matcher_results field: iteration_id",
        "No link table: matcher_results field: reservation_id",
        "No link table: matcher_results field: matched_property_id",
        "No link table: matcher_results field: corrected_property_id",
        "No link table: neonfs_activity_log field: user_id",
        "No link table: neonfs_background_tasks field: user_id",
        "No link table: neonfs_collab_chat field: user_id",
        "No link table: neonfs_collab_sessions field: user_id",
        "No link table: neonfs_cron_schedules field: user_id",
        "No link table: neonfs_email_verifications field: user_id",
        "No link table: neonfs_favorites field: user_id",
        "No link table: neonfs_password_resets field: user_id",
        "No link table: neonfs_preferences field: user_id",
        "No link table: neonfs_sessions field: user_id",
        "No link table: neonfs_share_links field: user_id",
        "No link table: neonfs_ssh_connections field: user_id",
        "No link table: neonfs_terminal_snippets field: user_id",
        "No link table: neonfs_user_plugins field: user_id",
        "No link table: ota_pms_match field: ota_transaction_id",
        "No link table: ota_pms_match field: pms_reserva_id",
        "No link table: reconciliation_active_links field: reconciliation_case_id",
        "No link table: reconciliation_active_links field: legacy_link_id",
        "No link table: reconciliation_active_links field: reconciliation_match_run_id",
        "No link table: reconciliation_active_links field: invoice_id",
        "No link table: reconciliation_active_links field: bank_id",
        "No link table: reconciliation_audit_events field: reconciliation_case_id",
        "No link table: reconciliation_audit_events field: entity_id",
        "No link table: reconciliation_audit_events field: actor_user_id",
        "No link table: reconciliation_canonical_rows field: reconciliation_case_id",
        "No link table: reconciliation_canonical_rows field: reconciliation_case_source_id",
        "No link table: reconciliation_canonical_rows field: source_record_id",
        "No link table: reconciliation_canonical_rows field: client_tax_id",
        "No link table: reconciliation_case_artifacts field: reconciliation_case_id",
        "No link table: reconciliation_case_artifacts field: legacy_reference_id",
        "No link table: reconciliation_case_profile_bindings field: reconciliation_case_id",
        "No link table: reconciliation_case_profile_bindings field: matcher_source_id",
        "No link table: reconciliation_case_sources field: reconciliation_case_id",
        "No link table: reconciliation_case_sources field: import_log_id",
        "No link table: reconciliation_cases field: assigned_user_id",
        "No link table: reconciliation_learning_events field: reconciliation_case_id",
        "No link table: reconciliation_learning_events field: created_by_user_id",
        "No link table: reconciliation_match_candidate_groups field: reconciliation_case_id",
        "No link table: reconciliation_match_candidate_groups field: reconciliation_match_run_id",
        "No link table: reconciliation_match_candidate_groups field: legacy_proposal_group_id",
        "No link table: reconciliation_match_decisions field: reconciliation_case_id",
        "No link table: reconciliation_match_decisions field: reconciliation_match_run_id",
        "No link table: reconciliation_match_decisions field: legacy_iteration_id",
        "No link table: reconciliation_match_decisions field: legacy_link_id",
        "No link table: reconciliation_match_decisions field: invoice_id",
        "No link table: reconciliation_match_decisions field: bank_id",
        "No link table: reconciliation_match_decisions field: decided_by_user_id",
        "No link table: reconciliation_match_decisions field: reversed_by_decision_id",
        "No link table: reconciliation_match_runs field: reconciliation_case_id",
        "No link table: reconciliation_match_runs field: legacy_iteration_id",
        "No link table: reconciliation_match_runs field: triggered_by_user_id",
        "No link table: sat_access_api_rate_limit field: token_id",
        "No link table: sat_access_backfill_chunk field: backfill_job_id",
        "No link table: sat_access_backfill_chunk field: sync_run_id",
        "No link table: sat_access_backfill_job field: rfc_subscription_id",
        "No link table: sat_access_cert_access_baseline field: cert_id",
        "No link table: sat_access_certificate_access_log field: certificate_id",
        "No link table: sat_access_certificate_access_log field: jit_token_id",
        "No link table: sat_access_certificate_audit_export field: certificate_id",
        "No link table: sat_access_certificate_deletion_request field: cert_id",
        "No link table: sat_access_certificate_lifecycle_event field: certificate_id",
        "No link table: sat_access_certificates field: rfc_subscription_id",
        "No link table: sat_access_certificates field: supersedes_cert_id",
        "No link table: sat_access_certificates field: superseded_by_cert_id",
        "No link table: sat_access_cfdi field: rfc_subscription_id",
        "No link table: sat_access_cfdi field: sync_run_id",
        "No link table: sat_access_export_run field: rfc_subscription_id",
        "No link table: sat_access_fiel_vault field: rfc_subscription_id",
        "No link table: sat_access_fiel_vault field: superseded_by_id",
        "No link table: sat_access_jit_token field: certificate_id",
        "No link table: sat_access_quarantine field: sync_run_id",
        "No link table: sat_access_sync_run field: rfc_subscription_id",
        "No link table: sat_access_tax_monthly_export field: tax_monthly_report_id",
        "No link table: sat_access_tax_monthly_snapshot field: tax_monthly_report_id",
        "No link table: tienda field: cp_cliente_direccion_id",
        "No link table: umrc_test_bank_sample field: movimiento_id",
        "No link table: umrc_test_invoice_sample field: invoice_id",
        "No link table: und_bank_bank_sample field: movimiento_id",
        "No link table: und_invoice_invoices_sample field: invoice_id",
        "No link table: user_filters field: user_id",
        "No link table: v_propiedad_latest_analytics field: analytics_id",
        "No link table: vendor_aliases field: vendor_id",
        "No link table: vendor_match_rules field: vendor_id",
        "combo_tabla: agente_financiero_project_member no pk_single_field",
        "combo_tabla: amarre_fiscal_kv_cache no pk_single_field",
        "combo_tabla: amarre_fiscal_paso1_diagnostic_cache no pk_single_field",
        "combo_tabla: amarre_fiscal_project_member no pk_single_field",
        "combo_tabla: banco_cuenta_mov no pk_single_field",
        "combo_tabla: banco_cuenta_mov_con_links no pk_single_field",
        "combo_tabla: iac_log no pk_single_field",
        "combo_tabla: iac_log_view no pk_single_field",
        "combo_tabla: marketing_de_propiedades_airbnb_cb no pk_single_field",
        "combo_tabla: marketing_de_propiedades_airbnb_list no pk_single_field",
        "combo_tabla: marketing_de_propiedades_booking_list no pk_single_field",
        "combo_tabla: marketing_de_propiedades_mr__w_list no pk_single_field",
        "combo_tabla: marketing_de_propiedades_smart no pk_single_field",
        "combo_tabla: neonfs_user_plugins no pk_single_field",
        "combo_tabla: sat_access_api_rate_limit no pk_single_field",
        "combo_tabla: sat_access_cert_access_baseline no pk_single_field",
        "combo_tabla: sat_access_ppd_chain_pago no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_105 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_107 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_109 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_111 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_113 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_115 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_117 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_119 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_121 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_123 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_125 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_127 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_146 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_148 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_151 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_153 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_155 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_157 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_159 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_35 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_36 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_38 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_39 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_41 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_42 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_43 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_45 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_47 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_83 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_85 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_86 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_87 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_88 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_89 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_94 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_95 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_97 no pk_single_field",
        "combo_tabla: v_agente_financiero_balanza_99 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_116 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_118 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_120 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_122 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_124 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_126 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_147 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_150 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_154 no pk_single_field",
        "combo_tabla: v_agente_financiero_estado_resultados_158 no pk_single_field",
        "combo_tabla: v_analytics_iteration_summary no pk_single_field",
        "combo_tabla: v_propiedad_latest_analytics no pk_single_field"
    ],
    "errors_real": [],
    "backup_id": "20260607_014018",
    "lock_wait_ms": 0,
    "raw_output_lines": 6,
    "duration_ms": 5008
}
🔗 Wire Relations SUCCESS
Upstream: local/relationship-authoring
Duration: 2026-06-07 01:40:23 → 2026-06-07 01:40:23
Response Details
{
    "authored": [],
    "skipped": [],
    "already_derived": []
}
🎨 UI/API Gen (modern) SUCCESS
Upstream: local/modern-generator
Duration: 2026-06-07 01:40:23 → 2026-06-07 01:40:23
Response Details
{
    "ok": true,
    "files": {
        "backoffice\/modern-moneda.php": {
            "success": true,
            "backup": true,
            "lint": "No syntax errors detected in \/lamp\/www\/quantix\/backoffice\/modern-moneda.php",
            "size": 7006
        },
        "api\/v1\/moneda.php": {
            "success": true,
            "backup": true,
            "lint": "No syntax errors detected in \/lamp\/www\/quantix\/api\/v1\/moneda.php",
            "size": 7740
        },
        "js\/modern\/moneda-app.js": {
            "success": true,
            "backup": true,
            "lint": "",
            "size": 41565
        },
        "model": {
            "success": true,
            "message": "Model already has modern_visible_columns"
        }
    },
    "config": {
        "table": "moneda",
        "pk": "moneda_id",
        "columns": {
            "moneda_id": {
                "name": "moneda_id",
                "type": "integer",
                "raw_type": "tinyint unsigned",
                "nullable": false,
                "default": null,
                "is_primary": true,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "auto_increment",
                "comment": "",
                "label": "Moneda ID",
                "is_editable": false,
                "is_visible": true
            },
            "moneda": {
                "name": "moneda",
                "type": "varchar",
                "raw_type": "char(6)",
                "nullable": false,
                "default": null,
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Moneda",
                "is_editable": true,
                "is_visible": true
            },
            "tc": {
                "name": "tc",
                "type": "decimal",
                "raw_type": "decimal(10,6)",
                "nullable": false,
                "default": "1.000000",
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Tc",
                "is_editable": true,
                "is_visible": true
            },
            "puntos_limite_arriba": {
                "name": "puntos_limite_arriba",
                "type": "integer",
                "raw_type": "int",
                "nullable": false,
                "default": "20",
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Puntos Limite Arriba",
                "is_editable": true,
                "is_visible": true
            },
            "puntos_warning_arriba": {
                "name": "puntos_warning_arriba",
                "type": "integer",
                "raw_type": "int",
                "nullable": false,
                "default": "10",
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Puntos Warning Arriba",
                "is_editable": true,
                "is_visible": true
            },
            "puntos_limite_abajo": {
                "name": "puntos_limite_abajo",
                "type": "integer",
                "raw_type": "int",
                "nullable": false,
                "default": "20",
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Puntos Limite Abajo",
                "is_editable": true,
                "is_visible": true
            },
            "puntos_warning_abajo": {
                "name": "puntos_warning_abajo",
                "type": "integer",
                "raw_type": "int",
                "nullable": false,
                "default": "10",
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Puntos Warning Abajo",
                "is_editable": true,
                "is_visible": true
            },
            "ultimo_cambio": {
                "name": "ultimo_cambio",
                "type": "timestamp",
                "raw_type": "timestamp",
                "nullable": true,
                "default": null,
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Last Modified",
                "is_editable": false,
                "is_visible": true
            },
            "ultimo_cambio_por": {
                "name": "ultimo_cambio_por",
                "type": "varchar",
                "raw_type": "varchar(32)",
                "nullable": false,
                "default": "Sistema",
                "is_primary": false,
                "is_foreign": false,
                "foreign_table": null,
                "foreign_column": null,
                "extra": "",
                "comment": "",
                "label": "Last Modified By",
                "is_editable": false,
                "is_visible": true
            }
        },
        "foreign_keys": [],
        "visible_columns": [
            "moneda_id",
            "moneda",
            "tc",
            "puntos_limite_arriba",
            "puntos_warning_arriba",
            "puntos_limite_abajo",
            "puntos_warning_abajo",
            "ultimo_cambio"
        ],
        "editable_columns": [
            "moneda",
            "tc",
            "puntos_limite_arriba",
            "puntos_warning_arriba",
            "puntos_limite_abajo",
            "puntos_warning_abajo"
        ],
        "searchable_columns": [
            "moneda",
            "ultimo_cambio_por"
        ],
        "sort_default": "moneda_id",
        "form_sections": [
            {
                "title": "Details",
                "collapsed": false,
                "fields": [
                    {
                        "key": "moneda",
                        "required": false,
                        "span": 1
                    },
                    {
                        "key": "tc",
                        "required": false,
                        "span": 1
                    },
                    {
                        "key": "puntos_limite_arriba",
                        "required": false,
                        "span": 1
                    },
                    {
                        "key": "puntos_warning_arriba",
                        "required": false,
                        "span": 1
                    },
                    {
                        "key": "puntos_limite_abajo",
                        "required": false,
                        "span": 1
                    },
                    {
                        "key": "puntos_warning_abajo",
                        "required": false,
                        "span": 1
                    }
                ]
            },
            {
                "title": "Audit",
                "collapsed": true,
                "fields": [
                    {
                        "key": "ultimo_cambio",
                        "required": false,
                        "span": 1
                    },
                    {
                        "key": "ultimo_cambio_por",
                        "required": false,
                        "span": 1
                    }
                ]
            }
        ],
        "enum_columns": [],
        "filter_columns": [],
        "child_tables": [],
        "label_singular": "Moneda",
        "label_plural": "Monedas"
    },
    "elapsed_ms": 303
}
🔍 Verification WARNING
Upstream: ia_case + local
Duration: 2026-06-07 01:40:23 → 2026-06-07 01:40:24
Response Details
{
    "status": "warning",
    "findings": [
        {
            "check": "php_lint",
            "status": "success",
            "message": "PHP lint: 5\/5 files clean."
        },
        {
            "check": "iacase_model",
            "status": "success",
            "message": "ia_case model for 'moneda': 0 fields, PK=moneda_id, type=parent"
        },
        {
            "check": "schema_drift",
            "status": "warning",
            "message": "Schema drift detected: DB-only: moneda_id, moneda, tc, puntos_limite_arriba, puntos_warning_arriba (+4 more)"
        },
        {
            "check": "pk_convention",
            "status": "success",
            "message": "PK convention: 'moneda_id' matches expected 'moneda_id'."
        },
        {
            "check": "naming_recheck",
            "status": "success",
            "message": "Naming contract: 'moneda' passes local recheck (regex + reserved words)."
        },
        {
            "check": "modern_health",
            "status": "success",
            "message": "Modern-gen health: healthy (5\/5 checks pass)"
        }
    ],
    "elapsed_ms": 976
}

Naming Contract Checks

Check Type Input Result Message Fix
slug_format moneda ✅ Pass Table name 'moneda' matches naming contract format.
reserved_word moneda ✅ Pass Table name 'moneda' is not a MySQL reserved word.
upstream_primary_key moneda ⚠️ Warning Missing expected primary key 'moneda_id'. Tables must define a primary key named after the singular table name with '_id' suffix. Add column 'moneda_id' VARCHAR(32) PRIMARY KEY

Console Output Logs

Stage 1: Pre-Flight Check & Advisory Locking
Stage 2: Importer Schema Introspection
Stage 3: ia_case Model Compilation
Stage 4: Relationship Wire Authoring
Stage 5: UI & API Generator Compilation
Stage 6: Post-run Validation Gates

Notes

canary_green_run_2
← Back to Manifest View JSON Status