Inspection lifecycle
Each physical container is one inspection record, identified by its ISO 6346 container number (for example MSCU1234566). Edge endpoints address containers by this number. Dashboard endpoints address them by the record id, or by number through GET /v1/containers/by-number/{containerNumber}.
Container statuses
Defects never set FLAGGED on their own. A defect scan records an AI decision of FLAGGED_DEFECT, and a person decides what happens next through escalation and manual review.
Defect grading
Edge devices send raw detections only: class_name, confidence, and box. The API maps every detection class to a product defect class and severity using the container-defect-taxonomy-v1 taxonomy. Any severity the device sends is ignored.
Only reportable detections count toward the defect summary. NO_DEFECT and unsupported classes are stored for diagnostics but are not treated as defects.
Structural integrity
The defect scan’s structuralIntegrity is derived from the reportable detections:
AI decision
Every finalized edge defect scan records an aiDecision on the container:
Dashboard statistics also group other flag reasons: FLAGGED_ILLEGAL, FLAGGED_MISMATCH, and FLAGGED_MULTIPLE. Category scans compare detected cargo with the attached manifest when one exists.
Manual review
People make the final call on flagged containers.
Every review and escalation is written to the audit log, which admins can read at GET /v1/admin/audit-log.
