{
  "$schema": "mantara.schema.v1",
  "system_name": "ASN Workflow",
  "schema_name": "sch_20260506_095030_6c94bc2afd6b4fac",
  "description": "A web application for managing Advanced Shipment Notices in logistics.",
  "menus": [
    {
      "menu_id": 1,
      "menu_name": "Core Operations",
      "sequence_number": 1,
      "description": "Manage core logistics operations including ASNs and receiving confirmations.",
      "submenus": [
        {
          "submenu_id": 101,
          "submenu_name": "Advanced Shipment Notice Master",
          "sequence_number": 1,
          "description": "Manage advanced shipment notices.",
          "tables": [
            {
              "table_name": "advanced_shipment_notice",
              "comment": "Stores information about advanced shipment notices sent by suppliers. Rule all_skus_reserved: All SKUs must be reserved before moving to Reserved state. Rule all_skus_processed: All SKUs must be processed before marking ASN as completed. Rule door_assignment_required: A door must be assigned before ASN can move to 'At Door' state. Rule rcr_print_after_closure: RCR can only be printed after ASN is closed. Rule asn_creation_methods: ASN can be created in two ways: Standard ASN via Purchase Orders or Local ASN based on Vendor.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 101 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "asn_id",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL UNIQUE",
                  "comment": "was: asnId"
                },
                {
                  "name": "supplier_id",
                  "type": "UUID",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "status_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(cfg_advanced_shipment_notice_status_id)",
                  "comment": "FK to cfg_advanced_shipment_notice_status"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [
                {
                  "column": "supplier_id",
                  "references": "sch_20260506_095030_6c94bc2afd6b4fac.supplier(id)"
                },
                {
                  "column": "asn_id",
                  "references": "sch_20260506_095030_6c94bc2afd6b4fac.asn(id)"
                }
              ]
            }
          ]
        },
        {
          "submenu_id": 102,
          "submenu_name": "Receiving Confirmation Report Master",
          "sequence_number": 2,
          "description": "Manage receiving confirmation reports.",
          "tables": [
            {
              "table_name": "receiving_confirmation_report",
              "comment": "Stores receiving confirmation reports generated after ASN closure.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 102 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "sku_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "vendor_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "rcr_id",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 103,
          "submenu_name": "Local Asn Master",
          "sequence_number": 3,
          "description": "Manage local ASNs created based on vendor.",
          "tables": [
            {
              "table_name": "local_asn",
              "comment": "Stores local ASNs created based on vendor information. Rule asn_appears_in_unreserved_tab_after: ASN appears in Unreserved tab after creation. Rule asn_contains_multiple_skus: ASN contains multiple SKUs. Rule no_slot_is_assigned_to_asn: No slot is assigned to ASN yet. Rule asn_is_waiting_for_reservation: ASN is waiting for reservation",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 103 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "vendor_id",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        }
      ]
    },
    {
      "menu_id": 2,
      "menu_name": "Master Data & Catalog",
      "sequence_number": 2,
      "description": "Manage master data including suppliers and ASN line items.",
      "submenus": [
        {
          "submenu_id": 201,
          "submenu_name": "Asn Line Item Master",
          "sequence_number": 1,
          "description": "Manage ASN line items.",
          "tables": [
            {
              "table_name": "asn_line_item",
              "comment": "Stores line items within an ASN. Rule min_one_line_item: An ASN must contain at least one line item before it can be submitted.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 201 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "po_number",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL",
                  "comment": "was: poNumber"
                },
                {
                  "name": "upc_number",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL",
                  "comment": "was: upcNumber"
                },
                {
                  "name": "sku",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "quantity",
                  "type": "INT",
                  "constraints": "NOT NULL CHECK (quantity > 0)"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [
                {
                  "column": "asn_id",
                  "references": "sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(id)"
                }
              ]
            }
          ]
        },
        {
          "submenu_id": 202,
          "submenu_name": "Supplier Master",
          "sequence_number": 2,
          "description": "Manage supplier information.",
          "tables": [
            {
              "table_name": "supplier",
              "comment": "Stores information about suppliers providing goods.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 202 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "status_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_supplier_status(cfg_supplier_status_id)",
                  "comment": "Auto-injected: archetype_default"
                },
                {
                  "name": "supplier_id",
                  "type": "UUID",
                  "constraints": "NOT NULL UNIQUE",
                  "comment": "was: supplierId"
                },
                {
                  "name": "supplier_name",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL",
                  "comment": "was: supplierName"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        }
      ]
    },
    {
      "menu_id": 3,
      "menu_name": "Reports & History",
      "sequence_number": 3,
      "description": "Access historical data and reports.",
      "submenus": [
        {
          "submenu_id": 301,
          "submenu_name": "Door Master Master",
          "sequence_number": 1,
          "description": "Manage door assignments.",
          "tables": [
            {
              "table_name": "door_master",
              "comment": "Stores master data for door assignments.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 301 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "door_number",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL",
                  "comment": "was: doorNumber"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 302,
          "submenu_name": "Standard Asn Master",
          "sequence_number": 2,
          "description": "Manage standard ASNs created via purchase orders.",
          "tables": [
            {
              "table_name": "standard_asn",
              "comment": "Stores standard ASNs created via purchase orders.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 302 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "purchase_order_id",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL",
                  "comment": "was: purchaseOrderId"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 303,
          "submenu_name": "Skus Master",
          "sequence_number": 3,
          "description": "Manage SKU information.",
          "tables": [
            {
              "table_name": "skus",
              "comment": "Stores SKU information.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 303 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "status_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_skus_status(cfg_skus_status_id)",
                  "comment": "Auto-injected: archetype_default"
                },
                {
                  "name": "sku_code",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL UNIQUE",
                  "comment": "Unique code for SKU"
                },
                {
                  "name": "description",
                  "type": "TEXT",
                  "constraints": "NOT NULL",
                  "comment": "Description of the SKU"
                },
                {
                  "name": "category_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(cfg_sku_category_id)",
                  "comment": "FK to cfg_sku_category"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        }
      ]
    },
    {
      "menu_id": 4,
      "menu_name": "Setup & Creation",
      "sequence_number": 4,
      "description": "Setup and create ASNs.",
      "submenus": [
        {
          "submenu_id": 401,
          "submenu_name": "Create ASN (Standard)",
          "sequence_number": 1,
          "description": "Create standard ASNs.",
          "tables": [
            {
              "table_name": "asn",
              "comment": "Stores ASN creation data.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 401 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 402,
          "submenu_name": "ASN Workflow Management",
          "sequence_number": 2,
          "description": "Manage ASN workflows and processes.",
          "tables": [
            {
              "table_name": "asn_workflow",
              "comment": "Tracks the workflow state of ASNs.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 402 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "asn_id",
                  "type": "UUID",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "current_state_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(cfg_asn_status_id)",
                  "comment": "FK to cfg_asn_status"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [
                {
                  "column": "asn_id",
                  "references": "sch_20260506_095030_6c94bc2afd6b4fac.asn(id)"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "menu_id": 5,
      "menu_name": "User Management",
      "sequence_number": 5,
      "description": "Manage users, roles, and permissions.",
      "submenus": [
        {
          "submenu_id": 501,
          "submenu_name": "User Directory",
          "sequence_number": 1,
          "description": "Manage user accounts.",
          "tables": [
            {
              "table_name": "users",
              "comment": "Stores user account information.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 501 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "status_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_users_status(cfg_users_status_id)",
                  "comment": "Auto-injected: archetype_default"
                },
                {
                  "name": "username",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "password_hash",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL",
                  "comment": "Stores bcrypt hash, never plain text"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 502,
          "submenu_name": "Roles & Permissions",
          "sequence_number": 2,
          "description": "Manage roles and permissions.",
          "tables": [
            {
              "table_name": "roles",
              "comment": "Stores role information.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 502 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "status_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_roles_status(cfg_roles_status_id)",
                  "comment": "Auto-injected: archetype_default"
                },
                {
                  "name": "role_name",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            },
            {
              "table_name": "permissions",
              "comment": "Stores permission information.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 502 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "status_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.cfg_permissions_status(cfg_permissions_status_id)",
                  "comment": "Auto-injected: archetype_default"
                },
                {
                  "name": "permission_name",
                  "type": "VARCHAR(255)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        }
      ]
    },
    {
      "menu_id": 6,
      "menu_name": "Notifications & Audit",
      "sequence_number": 6,
      "description": "Manage notifications and audit logs.",
      "submenus": [
        {
          "submenu_id": 601,
          "submenu_name": "Notifications",
          "sequence_number": 1,
          "description": "Manage system notifications.",
          "tables": [
            {
              "table_name": "notifications",
              "comment": "Stores system notifications.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 601 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "message",
                  "type": "TEXT",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 602,
          "submenu_name": "Audit Log",
          "sequence_number": 2,
          "description": "Track system changes and user actions.",
          "tables": [
            {
              "table_name": "audit_log",
              "comment": "Stores audit logs of system changes and user actions.",
              "columns": [
                {
                  "name": "id",
                  "type": "UUID",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 602 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "action",
                  "type": "TEXT",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "user_id",
                  "type": "UUID",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "version",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 1",
                  "comment": "Optimistic-concurrency version counter"
                },
                {
                  "name": "notes",
                  "type": "TEXT",
                  "constraints": "",
                  "comment": "Free-form operator notes"
                },
                {
                  "name": "metadata",
                  "type": "JSONB",
                  "constraints": "",
                  "comment": "Variable-shape extension payload"
                },
                {
                  "name": "deleted_at",
                  "type": "TIMESTAMP",
                  "constraints": "",
                  "comment": "Soft-delete marker (NULL = not deleted)"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [
                {
                  "column": "user_id",
                  "references": "sch_20260506_095030_6c94bc2afd6b4fac.users(id)"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "menu_id": 7,
      "menu_name": "Configuration",
      "sequence_number": 7,
      "description": "System configuration and lookup tables.",
      "submenus": [
        {
          "submenu_id": 701,
          "submenu_name": "ASN Status Configuration",
          "sequence_number": 1,
          "description": "Configure ASN statuses.",
          "tables": [
            {
              "table_name": "cfg_asn_status",
              "comment": "Lookup table for ASN statuses.",
              "columns": [
                {
                  "name": "cfg_asn_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 701 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "display_order",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 0"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "Create",
                "Unreserved",
                "Reserved",
                "At Door",
                "Closed",
                "RCR"
              ]
            }
          ]
        },
        {
          "submenu_id": 702,
          "submenu_name": "Advanced Shipment Notice Status Configuration",
          "sequence_number": 2,
          "description": "Configure advanced shipment notice statuses.",
          "tables": [
            {
              "table_name": "cfg_advanced_shipment_notice_status",
              "comment": "Lookup table for advanced shipment notice statuses.",
              "columns": [
                {
                  "name": "cfg_advanced_shipment_notice_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 702 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "display_order",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 0"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "unreserved",
                "reserved",
                "at door",
                "closed"
              ]
            }
          ]
        },
        {
          "submenu_id": 703,
          "submenu_name": "SKU Category Configuration",
          "sequence_number": 3,
          "description": "Configure SKU categories.",
          "tables": [
            {
              "table_name": "cfg_sku_category",
              "comment": "Lookup table for SKU categories.",
              "columns": [
                {
                  "name": "cfg_sku_category_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "DEFAULT 703 NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "display_order",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 0"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "updated_at",
                  "type": "TIMESTAMPTZ",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "primary",
                "secondary",
                "tertiary"
              ]
            }
          ]
        },
        {
          "submenu_id": 704,
          "submenu_name": "Supplier Status",
          "sequence_number": 4,
          "description": "Configurable status values for supplier",
          "tables": [
            {
              "table_name": "cfg_supplier_status",
              "comment": "Status lookup for supplier. Generic placeholder seeds \u2014 operator may customise via admin UI.",
              "columns": [
                {
                  "name": "cfg_supplier_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(50)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 704 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "draft",
                "open",
                "in_progress",
                "closed",
                "cancelled"
              ]
            }
          ]
        },
        {
          "submenu_id": 705,
          "submenu_name": "Skus Status",
          "sequence_number": 5,
          "description": "Configurable status values for skus",
          "tables": [
            {
              "table_name": "cfg_skus_status",
              "comment": "Status lookup for skus. Generic placeholder seeds \u2014 operator may customise via admin UI.",
              "columns": [
                {
                  "name": "cfg_skus_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(50)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 705 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "draft",
                "open",
                "in_progress",
                "closed",
                "cancelled"
              ]
            }
          ]
        },
        {
          "submenu_id": 706,
          "submenu_name": "Users Status",
          "sequence_number": 6,
          "description": "Configurable status values for users",
          "tables": [
            {
              "table_name": "cfg_users_status",
              "comment": "Status lookup for users. Generic placeholder seeds \u2014 operator may customise via admin UI.",
              "columns": [
                {
                  "name": "cfg_users_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(50)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 706 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "draft",
                "open",
                "in_progress",
                "closed",
                "cancelled"
              ]
            }
          ]
        },
        {
          "submenu_id": 707,
          "submenu_name": "Roles Status",
          "sequence_number": 7,
          "description": "Configurable status values for roles",
          "tables": [
            {
              "table_name": "cfg_roles_status",
              "comment": "Status lookup for roles. Generic placeholder seeds \u2014 operator may customise via admin UI.",
              "columns": [
                {
                  "name": "cfg_roles_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(50)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 707 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "draft",
                "open",
                "in_progress",
                "closed",
                "cancelled"
              ]
            }
          ]
        },
        {
          "submenu_id": 708,
          "submenu_name": "Permissions Status",
          "sequence_number": 8,
          "description": "Configurable status values for permissions",
          "tables": [
            {
              "table_name": "cfg_permissions_status",
              "comment": "Status lookup for permissions. Generic placeholder seeds \u2014 operator may customise via admin UI.",
              "columns": [
                {
                  "name": "cfg_permissions_status_id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "code",
                  "type": "VARCHAR(50)",
                  "constraints": "NOT NULL UNIQUE"
                },
                {
                  "name": "label",
                  "type": "VARCHAR(100)",
                  "constraints": "NOT NULL"
                },
                {
                  "name": "description",
                  "type": "TEXT"
                },
                {
                  "name": "is_active",
                  "type": "BOOLEAN",
                  "constraints": "NOT NULL DEFAULT TRUE"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 708 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                }
              ],
              "foreign_keys": [],
              "_seed_values": [
                "draft",
                "open",
                "in_progress",
                "closed",
                "cancelled"
              ]
            }
          ]
        },
        {
          "submenu_id": 709,
          "submenu_name": "Advanced Shipment Notice History",
          "sequence_number": 9,
          "description": "Audit history for advanced_shipment_notice",
          "tables": [
            {
              "table_name": "advanced_shipment_notice_history",
              "comment": "Append-only audit trail for advanced_shipment_notice.",
              "columns": [
                {
                  "name": "id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 709 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "advanced_shipment_notice_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(id)",
                  "comment": "FK to advanced_shipment_notice"
                },
                {
                  "name": "change_type",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL CHECK (change_type IN ('CREATE','UPDATE','DELETE'))",
                  "comment": "Type of change"
                },
                {
                  "name": "change_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL",
                  "comment": "Full snapshot of changed fields"
                },
                {
                  "name": "changed_by",
                  "type": "INT",
                  "constraints": "",
                  "comment": "Actor user id (FK added later if users table exists)"
                },
                {
                  "name": "change_date",
                  "type": "TIMESTAMP",
                  "constraints": "NOT NULL DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "ip_address",
                  "type": "INET",
                  "constraints": "",
                  "comment": "Source IP of the change"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMP",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 710,
          "submenu_name": "Supplier History",
          "sequence_number": 10,
          "description": "Audit history for supplier",
          "tables": [
            {
              "table_name": "supplier_history",
              "comment": "Append-only audit trail for supplier.",
              "columns": [
                {
                  "name": "id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 710 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "supplier_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.supplier(id)",
                  "comment": "FK to supplier"
                },
                {
                  "name": "change_type",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL CHECK (change_type IN ('CREATE','UPDATE','DELETE'))",
                  "comment": "Type of change"
                },
                {
                  "name": "change_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL",
                  "comment": "Full snapshot of changed fields"
                },
                {
                  "name": "changed_by",
                  "type": "INT",
                  "constraints": "",
                  "comment": "Actor user id (FK added later if users table exists)"
                },
                {
                  "name": "change_date",
                  "type": "TIMESTAMP",
                  "constraints": "NOT NULL DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "ip_address",
                  "type": "INET",
                  "constraints": "",
                  "comment": "Source IP of the change"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMP",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 711,
          "submenu_name": "Skus History",
          "sequence_number": 11,
          "description": "Audit history for skus",
          "tables": [
            {
              "table_name": "skus_history",
              "comment": "Append-only audit trail for skus.",
              "columns": [
                {
                  "name": "id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 711 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "skus_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.skus(id)",
                  "comment": "FK to skus"
                },
                {
                  "name": "change_type",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL CHECK (change_type IN ('CREATE','UPDATE','DELETE'))",
                  "comment": "Type of change"
                },
                {
                  "name": "change_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL",
                  "comment": "Full snapshot of changed fields"
                },
                {
                  "name": "changed_by",
                  "type": "INT",
                  "constraints": "",
                  "comment": "Actor user id (FK added later if users table exists)"
                },
                {
                  "name": "change_date",
                  "type": "TIMESTAMP",
                  "constraints": "NOT NULL DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "ip_address",
                  "type": "INET",
                  "constraints": "",
                  "comment": "Source IP of the change"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMP",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 712,
          "submenu_name": "Users History",
          "sequence_number": 12,
          "description": "Audit history for users",
          "tables": [
            {
              "table_name": "users_history",
              "comment": "Append-only audit trail for users.",
              "columns": [
                {
                  "name": "id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 712 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "users_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.users(id)",
                  "comment": "FK to users"
                },
                {
                  "name": "change_type",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL CHECK (change_type IN ('CREATE','UPDATE','DELETE'))",
                  "comment": "Type of change"
                },
                {
                  "name": "change_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL",
                  "comment": "Full snapshot of changed fields"
                },
                {
                  "name": "changed_by",
                  "type": "INT",
                  "constraints": "",
                  "comment": "Actor user id (FK added later if users table exists)"
                },
                {
                  "name": "change_date",
                  "type": "TIMESTAMP",
                  "constraints": "NOT NULL DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "ip_address",
                  "type": "INET",
                  "constraints": "",
                  "comment": "Source IP of the change"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMP",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 713,
          "submenu_name": "Roles History",
          "sequence_number": 13,
          "description": "Audit history for roles",
          "tables": [
            {
              "table_name": "roles_history",
              "comment": "Append-only audit trail for roles.",
              "columns": [
                {
                  "name": "id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 713 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "roles_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.roles(id)",
                  "comment": "FK to roles"
                },
                {
                  "name": "change_type",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL CHECK (change_type IN ('CREATE','UPDATE','DELETE'))",
                  "comment": "Type of change"
                },
                {
                  "name": "change_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL",
                  "comment": "Full snapshot of changed fields"
                },
                {
                  "name": "changed_by",
                  "type": "INT",
                  "constraints": "",
                  "comment": "Actor user id (FK added later if users table exists)"
                },
                {
                  "name": "change_date",
                  "type": "TIMESTAMP",
                  "constraints": "NOT NULL DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "ip_address",
                  "type": "INET",
                  "constraints": "",
                  "comment": "Source IP of the change"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMP",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        },
        {
          "submenu_id": 714,
          "submenu_name": "Permissions History",
          "sequence_number": 14,
          "description": "Audit history for permissions",
          "tables": [
            {
              "table_name": "permissions_history",
              "comment": "Append-only audit trail for permissions.",
              "columns": [
                {
                  "name": "id",
                  "type": "SERIAL",
                  "constraints": "PRIMARY KEY"
                },
                {
                  "name": "submenu_id",
                  "type": "INT",
                  "constraints": "NOT NULL DEFAULT 714 REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.submenu(submenu_id)"
                },
                {
                  "name": "permissions_id",
                  "type": "INT",
                  "constraints": "NOT NULL REFERENCES sch_20260506_095030_6c94bc2afd6b4fac.permissions(id)",
                  "comment": "FK to permissions"
                },
                {
                  "name": "change_type",
                  "type": "VARCHAR(30)",
                  "constraints": "NOT NULL CHECK (change_type IN ('CREATE','UPDATE','DELETE'))",
                  "comment": "Type of change"
                },
                {
                  "name": "change_details",
                  "type": "JSONB",
                  "constraints": "NOT NULL",
                  "comment": "Full snapshot of changed fields"
                },
                {
                  "name": "changed_by",
                  "type": "INT",
                  "constraints": "",
                  "comment": "Actor user id (FK added later if users table exists)"
                },
                {
                  "name": "change_date",
                  "type": "TIMESTAMP",
                  "constraints": "NOT NULL DEFAULT CURRENT_TIMESTAMP"
                },
                {
                  "name": "ip_address",
                  "type": "INET",
                  "constraints": "",
                  "comment": "Source IP of the change"
                },
                {
                  "name": "created_at",
                  "type": "TIMESTAMP",
                  "constraints": "DEFAULT CURRENT_TIMESTAMP"
                }
              ],
              "foreign_keys": []
            }
          ]
        }
      ]
    }
  ],
  "assumptions": [
    "Each entity maps directly to a table and submenu.",
    "ENUM candidates are implemented as lookup tables under the Configuration menu.",
    "All relationships are implemented as foreign keys where applicable.",
    "History tables are used to track changes to entities."
  ],
  "open_questions": [
    "Clarification needed on the workflow transitions for advancedshipmentnotice_lifecycle.",
    "Determine if additional business rules need to be enforced at the database level."
  ],
  "_indexes": [
    "CREATE INDEX idx_advanced_shipment_notice_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(submenu_id);",
    "CREATE INDEX idx_advanced_shipment_notice_asn_id ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(asn_id);",
    "CREATE INDEX idx_advanced_shipment_notice_supplier_id ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(supplier_id);",
    "CREATE INDEX idx_advanced_shipment_notice_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(status_id);",
    "CREATE INDEX idx_advanced_shipment_notice_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(deleted_at);",
    "CREATE INDEX idx_advanced_shipment_notice_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(created_at);",
    "CREATE INDEX idx_advanced_shipment_notice_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice(updated_at);",
    "CREATE INDEX idx_receiving_confirmation_report_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.receiving_confirmation_report(submenu_id);",
    "CREATE INDEX idx_receiving_confirmation_report_rcr_id ON sch_20260506_095030_6c94bc2afd6b4fac.receiving_confirmation_report(rcr_id);",
    "CREATE INDEX idx_receiving_confirmation_report_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.receiving_confirmation_report(deleted_at);",
    "CREATE INDEX idx_receiving_confirmation_report_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.receiving_confirmation_report(created_at);",
    "CREATE INDEX idx_receiving_confirmation_report_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.receiving_confirmation_report(updated_at);",
    "CREATE INDEX idx_local_asn_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.local_asn(submenu_id);",
    "CREATE INDEX idx_local_asn_vendor_id ON sch_20260506_095030_6c94bc2afd6b4fac.local_asn(vendor_id);",
    "CREATE INDEX idx_local_asn_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.local_asn(deleted_at);",
    "CREATE INDEX idx_local_asn_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.local_asn(created_at);",
    "CREATE INDEX idx_local_asn_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.local_asn(updated_at);",
    "CREATE INDEX idx_asn_line_item_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.asn_line_item(submenu_id);",
    "CREATE INDEX idx_asn_line_item_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn_line_item(deleted_at);",
    "CREATE INDEX idx_asn_line_item_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn_line_item(created_at);",
    "CREATE INDEX idx_asn_line_item_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn_line_item(updated_at);",
    "CREATE INDEX idx_supplier_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.supplier(submenu_id);",
    "CREATE INDEX idx_supplier_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.supplier(status_id);",
    "CREATE INDEX idx_supplier_supplier_id ON sch_20260506_095030_6c94bc2afd6b4fac.supplier(supplier_id);",
    "CREATE INDEX idx_supplier_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.supplier(deleted_at);",
    "CREATE INDEX idx_supplier_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.supplier(created_at);",
    "CREATE INDEX idx_supplier_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.supplier(updated_at);",
    "CREATE INDEX idx_door_master_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.door_master(submenu_id);",
    "CREATE INDEX idx_door_master_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.door_master(deleted_at);",
    "CREATE INDEX idx_door_master_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.door_master(created_at);",
    "CREATE INDEX idx_door_master_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.door_master(updated_at);",
    "CREATE INDEX idx_standard_asn_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.standard_asn(submenu_id);",
    "CREATE INDEX idx_standard_asn_purchase_order_id ON sch_20260506_095030_6c94bc2afd6b4fac.standard_asn(purchase_order_id);",
    "CREATE INDEX idx_standard_asn_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.standard_asn(deleted_at);",
    "CREATE INDEX idx_standard_asn_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.standard_asn(created_at);",
    "CREATE INDEX idx_standard_asn_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.standard_asn(updated_at);",
    "CREATE INDEX idx_skus_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.skus(submenu_id);",
    "CREATE INDEX idx_skus_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.skus(status_id);",
    "CREATE INDEX idx_skus_sku_code ON sch_20260506_095030_6c94bc2afd6b4fac.skus(sku_code);",
    "CREATE INDEX idx_skus_category_id ON sch_20260506_095030_6c94bc2afd6b4fac.skus(category_id);",
    "CREATE INDEX idx_skus_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.skus(deleted_at);",
    "CREATE INDEX idx_skus_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.skus(created_at);",
    "CREATE INDEX idx_skus_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.skus(updated_at);",
    "CREATE INDEX idx_asn_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.asn(submenu_id);",
    "CREATE INDEX idx_asn_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn(deleted_at);",
    "CREATE INDEX idx_asn_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn(created_at);",
    "CREATE INDEX idx_asn_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn(updated_at);",
    "CREATE INDEX idx_asn_workflow_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.asn_workflow(submenu_id);",
    "CREATE INDEX idx_asn_workflow_asn_id ON sch_20260506_095030_6c94bc2afd6b4fac.asn_workflow(asn_id);",
    "CREATE INDEX idx_asn_workflow_current_state_id ON sch_20260506_095030_6c94bc2afd6b4fac.asn_workflow(current_state_id);",
    "CREATE INDEX idx_asn_workflow_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn_workflow(deleted_at);",
    "CREATE INDEX idx_asn_workflow_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn_workflow(created_at);",
    "CREATE INDEX idx_asn_workflow_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.asn_workflow(updated_at);",
    "CREATE INDEX idx_users_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.users(submenu_id);",
    "CREATE INDEX idx_users_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.users(status_id);",
    "CREATE INDEX idx_users_username ON sch_20260506_095030_6c94bc2afd6b4fac.users(username);",
    "CREATE INDEX idx_users_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.users(deleted_at);",
    "CREATE INDEX idx_users_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.users(created_at);",
    "CREATE INDEX idx_users_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.users(updated_at);",
    "CREATE INDEX idx_roles_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.roles(submenu_id);",
    "CREATE INDEX idx_roles_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.roles(status_id);",
    "CREATE INDEX idx_roles_role_name ON sch_20260506_095030_6c94bc2afd6b4fac.roles(role_name);",
    "CREATE INDEX idx_roles_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.roles(deleted_at);",
    "CREATE INDEX idx_roles_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.roles(created_at);",
    "CREATE INDEX idx_roles_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.roles(updated_at);",
    "CREATE INDEX idx_permissions_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.permissions(submenu_id);",
    "CREATE INDEX idx_permissions_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.permissions(status_id);",
    "CREATE INDEX idx_permissions_permission_name ON sch_20260506_095030_6c94bc2afd6b4fac.permissions(permission_name);",
    "CREATE INDEX idx_permissions_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.permissions(deleted_at);",
    "CREATE INDEX idx_permissions_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.permissions(created_at);",
    "CREATE INDEX idx_permissions_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.permissions(updated_at);",
    "CREATE INDEX idx_notifications_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.notifications(submenu_id);",
    "CREATE INDEX idx_notifications_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.notifications(deleted_at);",
    "CREATE INDEX idx_notifications_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.notifications(created_at);",
    "CREATE INDEX idx_notifications_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.notifications(updated_at);",
    "CREATE INDEX idx_audit_log_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.audit_log(submenu_id);",
    "CREATE INDEX idx_audit_log_user_id ON sch_20260506_095030_6c94bc2afd6b4fac.audit_log(user_id);",
    "CREATE INDEX idx_audit_log_deleted_at ON sch_20260506_095030_6c94bc2afd6b4fac.audit_log(deleted_at);",
    "CREATE INDEX idx_audit_log_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.audit_log(created_at);",
    "CREATE INDEX idx_audit_log_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.audit_log(updated_at);",
    "CREATE INDEX idx_advanced_shipment_notice_history_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice_history(submenu_id);",
    "CREATE INDEX idx_advanced_shipment_notice_history_advanced_shipment_notice_id ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice_history(advanced_shipment_notice_id);",
    "CREATE INDEX idx_advanced_shipment_notice_history_change_type ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice_history(change_type);",
    "CREATE INDEX idx_advanced_shipment_notice_history_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.advanced_shipment_notice_history(created_at);",
    "CREATE INDEX idx_supplier_history_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.supplier_history(submenu_id);",
    "CREATE INDEX idx_supplier_history_supplier_id ON sch_20260506_095030_6c94bc2afd6b4fac.supplier_history(supplier_id);",
    "CREATE INDEX idx_supplier_history_change_type ON sch_20260506_095030_6c94bc2afd6b4fac.supplier_history(change_type);",
    "CREATE INDEX idx_supplier_history_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.supplier_history(created_at);",
    "CREATE INDEX idx_skus_history_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.skus_history(submenu_id);",
    "CREATE INDEX idx_skus_history_skus_id ON sch_20260506_095030_6c94bc2afd6b4fac.skus_history(skus_id);",
    "CREATE INDEX idx_skus_history_change_type ON sch_20260506_095030_6c94bc2afd6b4fac.skus_history(change_type);",
    "CREATE INDEX idx_skus_history_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.skus_history(created_at);",
    "CREATE INDEX idx_users_history_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.users_history(submenu_id);",
    "CREATE INDEX idx_users_history_users_id ON sch_20260506_095030_6c94bc2afd6b4fac.users_history(users_id);",
    "CREATE INDEX idx_users_history_change_type ON sch_20260506_095030_6c94bc2afd6b4fac.users_history(change_type);",
    "CREATE INDEX idx_users_history_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.users_history(created_at);",
    "CREATE INDEX idx_roles_history_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.roles_history(submenu_id);",
    "CREATE INDEX idx_roles_history_roles_id ON sch_20260506_095030_6c94bc2afd6b4fac.roles_history(roles_id);",
    "CREATE INDEX idx_roles_history_change_type ON sch_20260506_095030_6c94bc2afd6b4fac.roles_history(change_type);",
    "CREATE INDEX idx_roles_history_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.roles_history(created_at);",
    "CREATE INDEX idx_permissions_history_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.permissions_history(submenu_id);",
    "CREATE INDEX idx_permissions_history_permissions_id ON sch_20260506_095030_6c94bc2afd6b4fac.permissions_history(permissions_id);",
    "CREATE INDEX idx_permissions_history_change_type ON sch_20260506_095030_6c94bc2afd6b4fac.permissions_history(change_type);",
    "CREATE INDEX idx_permissions_history_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.permissions_history(created_at);",
    "CREATE INDEX idx_cfg_asn_status_cfg_asn_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(cfg_asn_status_id);",
    "CREATE INDEX idx_cfg_asn_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(submenu_id);",
    "CREATE INDEX idx_cfg_asn_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(code);",
    "CREATE INDEX idx_cfg_asn_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(is_active);",
    "CREATE INDEX idx_cfg_asn_status_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(created_at);",
    "CREATE INDEX idx_cfg_asn_status_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_asn_status(updated_at);",
    "CREATE INDEX idx_cfg_advanced_shipment_notice_status_cfg_advanced_shipment_notice_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(cfg_advanced_shipment_notice_status_id);",
    "CREATE INDEX idx_cfg_advanced_shipment_notice_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(submenu_id);",
    "CREATE INDEX idx_cfg_advanced_shipment_notice_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(code);",
    "CREATE INDEX idx_cfg_advanced_shipment_notice_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(is_active);",
    "CREATE INDEX idx_cfg_advanced_shipment_notice_status_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(created_at);",
    "CREATE INDEX idx_cfg_advanced_shipment_notice_status_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_advanced_shipment_notice_status(updated_at);",
    "CREATE INDEX idx_cfg_sku_category_cfg_sku_category_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(cfg_sku_category_id);",
    "CREATE INDEX idx_cfg_sku_category_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(submenu_id);",
    "CREATE INDEX idx_cfg_sku_category_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(code);",
    "CREATE INDEX idx_cfg_sku_category_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(is_active);",
    "CREATE INDEX idx_cfg_sku_category_created_at ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(created_at);",
    "CREATE INDEX idx_cfg_sku_category_updated_at ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_sku_category(updated_at);",
    "CREATE INDEX idx_cfg_supplier_status_cfg_supplier_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_supplier_status(cfg_supplier_status_id);",
    "CREATE INDEX idx_cfg_supplier_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_supplier_status(code);",
    "CREATE INDEX idx_cfg_supplier_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_supplier_status(is_active);",
    "CREATE INDEX idx_cfg_supplier_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_supplier_status(submenu_id);",
    "CREATE INDEX idx_cfg_skus_status_cfg_skus_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_skus_status(cfg_skus_status_id);",
    "CREATE INDEX idx_cfg_skus_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_skus_status(code);",
    "CREATE INDEX idx_cfg_skus_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_skus_status(is_active);",
    "CREATE INDEX idx_cfg_skus_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_skus_status(submenu_id);",
    "CREATE INDEX idx_cfg_users_status_cfg_users_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_users_status(cfg_users_status_id);",
    "CREATE INDEX idx_cfg_users_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_users_status(code);",
    "CREATE INDEX idx_cfg_users_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_users_status(is_active);",
    "CREATE INDEX idx_cfg_users_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_users_status(submenu_id);",
    "CREATE INDEX idx_cfg_roles_status_cfg_roles_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_roles_status(cfg_roles_status_id);",
    "CREATE INDEX idx_cfg_roles_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_roles_status(code);",
    "CREATE INDEX idx_cfg_roles_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_roles_status(is_active);",
    "CREATE INDEX idx_cfg_roles_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_roles_status(submenu_id);",
    "CREATE INDEX idx_cfg_permissions_status_cfg_permissions_status_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_permissions_status(cfg_permissions_status_id);",
    "CREATE INDEX idx_cfg_permissions_status_code ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_permissions_status(code);",
    "CREATE INDEX idx_cfg_permissions_status_is_active ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_permissions_status(is_active);",
    "CREATE INDEX idx_cfg_permissions_status_submenu_id ON sch_20260506_095030_6c94bc2afd6b4fac.cfg_permissions_status(submenu_id);"
  ],
  "_normaliser": {
    "schema_name_old": "asn_wf",
    "schema_name_new": "sch_20260506_095030_6c94bc2afd6b4fac",
    "lifted_enums": 0,
    "auto_created_cfg": 0,
    "normalised_repairs": 0,
    "rewritten_columns": 8,
    "stripped_dangling_fks": 0,
    "backfilled_seeds": 0,
    "duplicate_tables_removed": 0,
    "missing_fks_injected": 0,
    "status_cfg_enforced": 0,
    "seeds_default_filled": 8,
    "saas_columns_injected": 0,
    "history_tables_created": 0,
    "indexes_emitted": 142,
    "rules": {
      "rules_total": 10,
      "appended_to_table_comment": 10,
      "added_to_assumptions": 0,
      "already_present": 0
    },
    "schema_name": "sch_20260506_095030_6c94bc2afd6b4fac"
  },
  "_fk_density_enforcer": {
    "cfg_tables_total": 8,
    "fks_injected": 0,
    "fks_already_present": 7,
    "candidates_skipped_no_match": 0,
    "by_business_table": {}
  },
  "_constraint_enricher": {
    "non_negative_added": 0,
    "percentage_added": 0,
    "email_added": 0,
    "date_pair_added": 0
  }
}