{
  "manifest": {
    "name": "ASN Workflow",
    "domain": "logistics",
    "type": "web",
    "extractor_version": "step02-v2",
    "model": "gpt-4o",
    "extracted_at": "2023-10-11T12:00:00Z",
    "enriched_at": "2026-05-06T10:27:11.942830+00:00",
    "enrichment_version": "step03-v1"
  },
  "screens": [
    {
      "name": "Create ASN (Standard)",
      "provenance": {
        "slide_index": 2
      },
      "confidence": 0.7
    },
    {
      "name": "Create Local ASN",
      "provenance": {
        "slide_index": 3
      },
      "confidence": 0.7
    },
    {
      "name": "Unreserved ASN List",
      "provenance": {
        "slide_index": 5
      },
      "confidence": 0.7
    },
    {
      "name": "ASN Expanded (Multiple SKUs)",
      "provenance": {
        "slide_index": 6
      },
      "confidence": 0.7
    },
    {
      "name": "Reserved ASN View",
      "provenance": {
        "slide_index": 8
      },
      "confidence": 0.7
    },
    {
      "name": "At Door View",
      "provenance": {
        "slide_index": 10
      },
      "confidence": 0.7
    },
    {
      "name": "Closed ASN View",
      "provenance": {
        "slide_index": 12
      },
      "confidence": 0.7
    },
    {
      "name": "RCR Print Preview",
      "provenance": {
        "slide_index": 14
      },
      "confidence": 0.7
    }
  ],
  "layout": {
    "structure": "tabbed",
    "nav_position": "top",
    "header_present": true,
    "footer_present": false,
    "sidebar_present": false,
    "cart_position": "none"
  },
  "design_system": {
    "colors": {},
    "fonts": {},
    "spacing": {},
    "borders": {},
    "radius": {},
    "shadows": {},
    "button_styles": {},
    "input_styles": {}
  },
  "components": [
    {
      "name": "Create ASN button",
      "type": "button",
      "visible_text": "Create ASN",
      "behavior_hint": "Opens ASN creation modal",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 2
      }
    },
    {
      "name": "Create Local button",
      "type": "button",
      "visible_text": "Create Local",
      "behavior_hint": "Opens local ASN creation modal",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 3
      }
    },
    {
      "name": "Reserve Slots button",
      "type": "button",
      "visible_text": "Reserve Slots",
      "behavior_hint": "Reserves storage slots for SKUs",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 5
      }
    },
    {
      "name": "Print RCR button",
      "type": "button",
      "visible_text": "Print RCR",
      "behavior_hint": "Prints the Receiving Confirmation Report",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 12
      }
    },
    {
      "name": "Search Bar",
      "type": "input",
      "visible_text": "Search",
      "behavior_hint": "Searches ASNs",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 5
      }
    },
    {
      "name": "ASN List Table",
      "type": "table",
      "visible_text": "ASN List",
      "behavior_hint": "Displays list of ASNs",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 5
      }
    },
    {
      "name": "Tab Navigation",
      "type": "other",
      "visible_text": "Unreserved, Reserved, At Door, Closed",
      "behavior_hint": "Navigates between ASN states",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 5
      }
    },
    {
      "name": "ASN Details Modal",
      "type": "modal",
      "visible_text": "ASN Details",
      "behavior_hint": "Displays detailed ASN information",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 2
      }
    },
    {
      "name": "Refresh button",
      "type": "button",
      "visible_text": "Refresh",
      "behavior_hint": "Refreshes the ASN list",
      "confidence": 0.8,
      "provenance": {
        "slide_index": 5
      }
    },
    {
      "name": "Pagination control",
      "type": "other",
      "visible_text": "Showing 10 of 1",
      "behavior_hint": "Navigates through pages of ASNs",
      "confidence": 0.8,
      "provenance": {
        "slide_index": 5
      }
    },
    {
      "name": "Door Assignment",
      "type": "input",
      "visible_text": "Door number",
      "behavior_hint": "Assigns a door for unloading",
      "confidence": 0.8,
      "provenance": {
        "slide_index": 9
      }
    },
    {
      "name": "ASN Expanded View",
      "type": "table",
      "visible_text": "ASN Expanded (Multiple SKUs)",
      "behavior_hint": "Displays detailed view of ASN with multiple SKUs",
      "confidence": 0.9,
      "provenance": {
        "slide_index": 6
      }
    },
    {
      "name": "Container Number Input",
      "type": "input",
      "visible_text": "Container Number",
      "behavior_hint": "Input field for entering container number.",
      "confidence": 0.7,
      "provenance": {
        "slide_index": 2
      }
    },
    {
      "name": "Vendor Number Input",
      "type": "input",
      "visible_text": "Vendor Number",
      "behavior_hint": "Input field for entering vendor number.",
      "confidence": 0.7,
      "provenance": {
        "slide_index": 3
      }
    }
  ],
  "content": {
    "nav_items": [
      "Unreserved",
      "Reserved",
      "At Door",
      "Closed"
    ],
    "headings": [
      "ASN Flow Overview",
      "Step 1: ASN Creation",
      "Step 2: Unreserved State",
      "Step 3: Reservation",
      "Step 4: Door Assignment",
      "Step 5: Completion",
      "Step 6: RCR Generation"
    ],
    "button_text": [
      "Create ASN",
      "Create Local",
      "Reserve Slots",
      "Print RCR"
    ],
    "column_names": [
      "PO",
      "UPC Number",
      "SKU",
      "UPC Description",
      "Cases",
      "Temp Zone",
      "Pallets"
    ],
    "empty_states": {},
    "error_messages": [],
    "helper_text": [],
    "copy": {},
    "placeholders": {}
  },
  "entities": [
    {
      "name": "AdvancedShipmentNotice",
      "table_name": "advanced_shipment_notice",
      "description": "An ASN sent by a supplier announcing inbound goods.",
      "fields": [
        {
          "name": "id",
          "type": "uuid",
          "required": true,
          "unique": true,
          "primary_key": true,
          "confidence": 1.0,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "every entity needs a primary key"
        },
        {
          "name": "asnId",
          "type": "string",
          "required": true,
          "unique": true,
          "confidence": 0.95,
          "evidence": [
            {
              "text": "ASN ID",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "supplierId",
          "type": "uuid",
          "required": true,
          "confidence": 0.92,
          "evidence": [
            {
              "text": "Supplier",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "status",
          "type": "enum",
          "required": true,
          "values": [
            "unreserved",
            "reserved",
            "at_door",
            "closed"
          ],
          "confidence": 0.9,
          "evidence": [
            {
              "text": "Status",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "createdAt",
          "type": "timestamptz",
          "required": true,
          "confidence": 0.85,
          "evidence": [
            {
              "text": "Created",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "updatedAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        }
      ],
      "relationships": [
        {
          "type": "many-to-one",
          "target": "Supplier",
          "foreign_key": "supplierId",
          "cascade": "restrict",
          "confidence": 0.92
        }
      ],
      "source": "vision",
      "confidence": 0.9765000000000001,
      "provenance": [
        {
          "slide_index": 5,
          "text_source": "Unreserved ASN List"
        }
      ]
    },
    {
      "name": "AsnLineItem",
      "table_name": "asn_line_item",
      "description": "Line items within an ASN.",
      "fields": [
        {
          "name": "id",
          "type": "uuid",
          "required": true,
          "unique": true,
          "primary_key": true,
          "confidence": 1.0,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "every entity needs a primary key"
        },
        {
          "name": "sku",
          "type": "string",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "SKU",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "quantity",
          "type": "integer",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "Cases",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "poNumber",
          "type": "string",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "PO",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "upcNumber",
          "type": "string",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "UPC Number",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "createdAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        },
        {
          "name": "updatedAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        }
      ],
      "relationships": [
        {
          "type": "many-to-one",
          "target": "AdvancedShipmentNotice",
          "foreign_key": "asnId",
          "cascade": "restrict",
          "confidence": 0.9
        }
      ],
      "source": "vision",
      "confidence": 0.9450000000000001,
      "provenance": [
        {
          "slide_index": 6,
          "text_source": "ASN Expanded (Multiple SKUs)"
        },
        {
          "slide_index": 5,
          "text_source": "Unreserved ASN List"
        }
      ]
    },
    {
      "name": "DoorMaster",
      "table_name": "door_master",
      "description": "Master table for door assignments.",
      "fields": [
        {
          "name": "id",
          "type": "uuid",
          "required": true,
          "unique": true,
          "primary_key": true,
          "confidence": 1.0,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "every entity needs a primary key"
        },
        {
          "name": "doorNumber",
          "type": "string",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "Door number",
              "slide_index": 9,
              "location": "text"
            }
          ]
        }
      ],
      "relationships": [],
      "source": "vision",
      "confidence": 0.9450000000000001,
      "provenance": [
        {
          "slide_index": 9,
          "text_source": "Step 4: Door Assignment"
        }
      ]
    },
    {
      "name": "ReceivingConfirmationReport",
      "table_name": "receiving_confirmation_report",
      "description": "Official document confirming receipt of goods.",
      "fields": [
        {
          "name": "id",
          "type": "uuid",
          "required": true,
          "unique": true,
          "primary_key": true,
          "confidence": 1.0,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "every entity needs a primary key"
        },
        {
          "name": "rcrId",
          "type": "string",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "RCR",
              "slide_index": 14,
              "location": "text"
            }
          ]
        },
        {
          "name": "skuDetails",
          "type": "json",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "SKU details",
              "slide_index": 13,
              "location": "text"
            }
          ]
        },
        {
          "name": "vendorDetails",
          "type": "json",
          "required": true,
          "confidence": 0.9,
          "evidence": [
            {
              "text": "Vendor details",
              "slide_index": 13,
              "location": "text"
            }
          ]
        },
        {
          "name": "createdAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        },
        {
          "name": "updatedAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        }
      ],
      "relationships": [],
      "source": "vision",
      "confidence": 0.9450000000000001,
      "provenance": [
        {
          "slide_index": 14,
          "text_source": "RCR Print Preview"
        },
        {
          "slide_index": 13,
          "text_source": "Step 6: RCR Generation"
        }
      ]
    },
    {
      "name": "Supplier",
      "table_name": "supplier",
      "description": "Entity representing suppliers providing goods.",
      "fields": [
        {
          "name": "id",
          "type": "uuid",
          "required": true,
          "unique": true,
          "primary_key": true,
          "confidence": 1.0,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "every entity needs a primary key"
        },
        {
          "name": "supplierId",
          "type": "uuid",
          "required": true,
          "unique": true,
          "confidence": 0.85,
          "evidence": [
            {
              "text": "Supplier",
              "slide_index": 5,
              "location": "table_column"
            }
          ]
        },
        {
          "name": "supplierName",
          "type": "string",
          "required": true,
          "confidence": 0.8,
          "evidence": [
            {
              "text": "Vendor details",
              "slide_index": 13,
              "location": "text"
            }
          ]
        },
        {
          "name": "createdAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        },
        {
          "name": "updatedAt",
          "type": "timestamptz",
          "required": true,
          "unique": false,
          "confidence": 0.9,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "implicit by entity persistence"
        }
      ],
      "relationships": [],
      "source": "vision",
      "confidence": 0.85,
      "provenance": [
        {
          "slide_index": 5,
          "text_source": "Supplier information"
        }
      ]
    },
    {
      "name": "Order",
      "table_name": "order",
      "description": "Represents a purchase order associated with an ASN.",
      "fields": [
        {
          "name": "id",
          "type": "uuid",
          "required": true,
          "unique": true,
          "primary_key": true,
          "confidence": 1.0,
          "evidence": [],
          "_source": "synthesized",
          "_reason": "every entity needs a primary key"
        },
        {
          "name": "poNumber",
          "type": "string",
          "required": true,
          "unique": true,
          "confidence": 0.7,
          "evidence": [
            {
              "text": "PO Details (select items to include in ASN)",
              "slide_index": 2,
              "location": "label"
            }
          ]
        }
      ],
      "relationships": [],
      "source": "vision",
      "confidence": 0.7,
      "provenance": [
        {
          "slide_index": 2,
          "text_source": "PO Details (select items to include in ASN)"
        }
      ],
      "_aliases_merged_from": [
        "PurchaseOrder"
      ]
    }
  ],
  "workflows": [
    {
      "name": "asn_lifecycle",
      "states": [
        "Create",
        "Unreserved",
        "Reserved",
        "At Door",
        "Closed",
        "RCR"
      ],
      "initial_state": "Create",
      "transitions": [
        {
          "from_state": "Create",
          "to_state": "Unreserved",
          "trigger": "ASN creation submitted",
          "conditions": []
        },
        {
          "from_state": "Unreserved",
          "to_state": "Reserved",
          "trigger": "all SKUs reserved",
          "conditions": [
            "all_skus_reserved"
          ]
        },
        {
          "from_state": "Reserved",
          "to_state": "At Door",
          "trigger": "Door assignment from Door Master",
          "conditions": []
        },
        {
          "from_state": "At Door",
          "to_state": "Closed",
          "trigger": "Mark Completed button (warehouse user)",
          "conditions": [
            "all_skus_processed"
          ]
        },
        {
          "from_state": "Closed",
          "to_state": "RCR",
          "trigger": "Print RCR button",
          "conditions": []
        }
      ],
      "confidence": 0.88,
      "provenance": [
        {
          "slide_index": 0
        }
      ]
    },
    {
      "name": "advancedshipmentnotice_lifecycle",
      "states": [
        "unreserved",
        "reserved",
        "at_door",
        "closed"
      ],
      "transitions": [],
      "initial_state": "unreserved",
      "bound_entity": "AdvancedShipmentNotice",
      "confidence": 0.75,
      "_source": "synthesized",
      "_pattern": "status_lifecycle",
      "_reason": "AdvancedShipmentNotice.status enum values imply lifecycle workflow"
    }
  ],
  "actions": [
    {
      "name": "create_asn",
      "screen": "Create ASN (Standard)",
      "expected_outcome": "Opens ASN creation modal",
      "provenance": {
        "slide_index": 2
      },
      "trigger": "Create ASN button",
      "confidence": 0.9450000000000001
    },
    {
      "name": "create_local_asn",
      "screen": "Create Local ASN",
      "expected_outcome": "Opens local ASN creation modal",
      "provenance": {
        "slide_index": 3
      },
      "trigger": "Create Local ASN button",
      "confidence": 0.9450000000000001
    },
    {
      "name": "reserve_slots",
      "screen": "Unreserved ASN List",
      "expected_outcome": "Reserves storage slots for SKUs",
      "provenance": {
        "slide_index": 5
      },
      "trigger": "Reserve Slots button",
      "confidence": 0.9450000000000001
    },
    {
      "name": "print_rcr",
      "screen": "Closed ASN View",
      "expected_outcome": "Prints the Receiving Confirmation Report",
      "provenance": {
        "slide_index": 12
      },
      "trigger": "Print RCR button",
      "confidence": 0.9450000000000001
    },
    {
      "name": "assign_door",
      "trigger": "Assign Door button",
      "screen": "Reserved ASN View",
      "expected_outcome": "Assigns a door for unloading",
      "confidence": 0.88,
      "provenance": {
        "slide_index": 9
      }
    },
    {
      "name": "mark_asn_completed",
      "trigger": "Mark Completed button",
      "screen": "At Door View",
      "expected_outcome": "Marks ASN as completed and moves to Closed state",
      "confidence": 0.9,
      "provenance": {
        "slide_index": 11
      }
    }
  ],
  "states": [],
  "rules": [
    {
      "name": "min_one_line_item",
      "description": "An ASN must contain at least one line item before it can be submitted.",
      "applies_to": "AsnLineItem",
      "rule_type": "required",
      "confidence": 0.9660000000000001,
      "provenance": {
        "slide_index": 2
      }
    },
    {
      "name": "all_skus_reserved",
      "description": "All SKUs must be reserved before moving to Reserved state.",
      "applies_to": "AdvancedShipmentNotice",
      "rule_type": "other",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 7
      }
    },
    {
      "name": "all_skus_processed",
      "description": "All SKUs must be processed before marking ASN as completed.",
      "applies_to": "AdvancedShipmentNotice",
      "rule_type": "other",
      "confidence": 0.9450000000000001,
      "provenance": {
        "slide_index": 11
      }
    },
    {
      "name": "door_assignment_required",
      "description": "A door must be assigned before ASN can move to 'At Door' state.",
      "applies_to": "AdvancedShipmentNotice",
      "rule_type": "other",
      "confidence": 0.88,
      "provenance": {
        "slide_index": 9
      }
    },
    {
      "name": "rcr_print_after_closure",
      "description": "RCR can only be printed after ASN is closed.",
      "applies_to": "ReceivingConfirmationReport",
      "rule_type": "other",
      "confidence": 0.87,
      "provenance": {
        "slide_index": 14
      }
    },
    {
      "name": "asn_creation_methods",
      "description": "ASN can be created in two ways: Standard ASN (via Purchase Orders) and Local ASN (Vendor based).",
      "applies_to": "AdvancedShipmentNotice",
      "rule_type": "other",
      "confidence": 0.7,
      "provenance": {
        "slide_index": 1
      }
    },
    {
      "name": "unreserved_state_requirements",
      "description": "After creation, ASN appears in Unreserved tab and contains multiple SKUs. No slot is assigned yet.",
      "applies_to": "AdvancedShipmentNotice",
      "rule_type": "other",
      "confidence": 0.7,
      "provenance": {
        "slide_index": 4
      }
    }
  ],
  "roles": [
    {
      "name": "warehouse_user",
      "description": "User responsible for managing ASNs and processing shipments.",
      "provenance": {
        "slide_index": 0
      },
      "visible_permissions": [
        "create_asn",
        "reserve_slots",
        "assign_door",
        "mark_asn_completed",
        "print_rcr"
      ],
      "confidence": 0.85
    },
    {
      "name": "WarehouseOperator",
      "description": "Handles the creation and management of ASNs through various states.",
      "visible_permissions": [
        "create_asn",
        "reserve_slots",
        "assign_door",
        "mark_asn_completed",
        "print_rcr"
      ],
      "confidence": 0.85,
      "provenance": {
        "slide_index": 0
      }
    }
  ],
  "unknowns": [],
  "confidence": {
    "overall": 0.9,
    "entities": 0.9,
    "workflows": 0.88,
    "components": 0.9,
    "layout": 0.85,
    "design_system": 0.7,
    "content": 0.9
  },
  "fidelity": {
    "overall_visual_coverage": 0.9,
    "overall_entity_coverage": 0.9,
    "overall_workflow_coverage": 0.88,
    "per_slide": [
      {
        "slide_index": 0,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 1,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 2,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 3,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 4,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 5,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 6,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 7,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 8,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 9,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 10,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 11,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 12,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 13,
        "text_accuracy": 0.9
      },
      {
        "slide_index": 14,
        "text_accuracy": 0.9
      }
    ]
  },
  "run_id": "1778063093359-pdf",
  "generated_at": "2026-05-06T10:27:11.942830+00:00",
  "source_model": "gpt-4",
  "_normalize_meta": {
    "hallucination_guard": {
      "dropped": 0,
      "clamped": 0,
      "n_slides": 15
    }
  },
  "source_step02_extract": "/home/ubuntu/dpg/pipeline/step-02-prd-generation/mantara/runs/1778063093359-pdf/cir/vision_extract.json"
}