# Collection Preflight Report

FAIL Score: 10

Collection ID | 53
Generated at | 2026-06-12T15:10:22+00:00
Pass | 65
Warning | 0
Fail | 9

## Failures

- master_print_path_exists: Master print missing
- latest_zip_exists: Latest ZIP missing
- zip_size_gt_zero: ZIP size is zero or unavailable
- manifest_exists: Export manifest missing
- zip_contains_manifest_json: ZIP missing manifest.json
- zip_contains_readme: ZIP missing README.txt
- zip_contains_production_spec_html: ZIP missing production_spec.html
- zip_contains_production_spec_csv: ZIP missing production_spec.csv
- zip_contains_production_manifest_json: ZIP missing production_manifest.json

## Suggestions

- If panel prints are missing, regenerate panel files.
- If spec files are missing, rebuild the production spec sheet.
- If ZIP files are missing, rebuild ZIP export.
- If print size is too small, regenerate high-resolution print files.

## Checks

Code | Level | Message | Path | Details
--- | --- | --- | --- | ---
collection_exists | PASS | Collection exists |  | {"collection_id":53}
collection_has_title | PASS | Collection title exists |  | []
master_artwork_path_exists | PASS | Master artwork exists | /assets/pod/acceptance/product-set-source.png | {"public_path":"/assets/pod/acceptance/product-set-source.png","local_path":"/var/www/html/assets/pod/acceptance/product-set-source.png","exists":true,"size_bytes":4884,"width":360,"height":240,"mime":"image/png"}
master_print_path_exists | FAIL | Master print missing |  | {"public_path":"","local_path":"","exists":false,"size_bytes":0,"width":null,"height":null,"mime":""}
collection_has_items | PASS | Collection has items |  | {"item_count":6}
item_has_template_id | PASS | Item 214 template_id check |  | {"item_id":214,"template_id":34}
item_has_apply_mode | PASS | Item 214 apply_mode check |  | {"item_id":214,"apply_mode":"schema_multi_region"}
item_mockup_exists | PASS | Item mockup exists | /assets/pod/output/2/mockup/344_schema_mockup.png | {"item_id":214,"public_path":"/assets/pod/output/2/mockup/344_schema_mockup.png","local_path":"/var/www/html/assets/pod/output/2/mockup/344_schema_mockup.png","exists":true,"size_bytes":86826,"width":1000,"height":720,"mime":"image/png"}
item_print_exists | PASS | Item print exists | /assets/pod/output/2/print/344_schema_print.png | {"item_id":214,"public_path":"/assets/pod/output/2/print/344_schema_print.png","local_path":"/var/www/html/assets/pod/output/2/print/344_schema_print.png","exists":true,"size_bytes":106270,"width":3000,"height":2200,"mime":"image/png"}
mockup_and_print_are_not_same_role | PASS | Mockup and print paths are distinct |  | {"item_id":214}
print_file_is_png_or_supported | PASS | Print file extension is supported | /assets/pod/output/2/print/344_schema_print.png | {"item_id":214,"mime":"image/png"}
image_dimensions_readable | PASS | Image dimensions readable | /assets/pod/output/2/print/344_schema_print.png | {"item_id":214,"width":3000,"height":2200}
image_min_size | PASS | Print image size is acceptable | /assets/pod/output/2/print/344_schema_print.png | {"item_id":214,"width":3000,"height":2200}
public_url_resolvable | PASS | Public path resolves to local file | /assets/pod/output/2/print/344_schema_print.png | {"item_id":214}
item_has_template_id | PASS | Item 215 template_id check |  | {"item_id":215,"template_id":35}
item_has_apply_mode | PASS | Item 215 apply_mode check |  | {"item_id":215,"apply_mode":"schema_multi_region"}
item_mockup_exists | PASS | Item mockup exists | /assets/pod/output/2/mockup/345_schema_mockup.png | {"item_id":215,"public_path":"/assets/pod/output/2/mockup/345_schema_mockup.png","local_path":"/var/www/html/assets/pod/output/2/mockup/345_schema_mockup.png","exists":true,"size_bytes":88894,"width":1000,"height":760,"mime":"image/png"}
item_print_exists | PASS | Item print exists | /assets/pod/output/2/print/345_schema_print.png | {"item_id":215,"public_path":"/assets/pod/output/2/print/345_schema_print.png","local_path":"/var/www/html/assets/pod/output/2/print/345_schema_print.png","exists":true,"size_bytes":106264,"width":3000,"height":2200,"mime":"image/png"}
mockup_and_print_are_not_same_role | PASS | Mockup and print paths are distinct |  | {"item_id":215}
print_file_is_png_or_supported | PASS | Print file extension is supported | /assets/pod/output/2/print/345_schema_print.png | {"item_id":215,"mime":"image/png"}
image_dimensions_readable | PASS | Image dimensions readable | /assets/pod/output/2/print/345_schema_print.png | {"item_id":215,"width":3000,"height":2200}
image_min_size | PASS | Print image size is acceptable | /assets/pod/output/2/print/345_schema_print.png | {"item_id":215,"width":3000,"height":2200}
public_url_resolvable | PASS | Public path resolves to local file | /assets/pod/output/2/print/345_schema_print.png | {"item_id":215}
item_has_template_id | PASS | Item 216 template_id check |  | {"item_id":216,"template_id":36}
item_has_apply_mode | PASS | Item 216 apply_mode check |  | {"item_id":216,"apply_mode":"schema_multi_region"}
item_mockup_exists | PASS | Item mockup exists | /assets/pod/output/2/mockup/346_schema_mockup.png | {"item_id":216,"public_path":"/assets/pod/output/2/mockup/346_schema_mockup.png","local_path":"/var/www/html/assets/pod/output/2/mockup/346_schema_mockup.png","exists":true,"size_bytes":84285,"width":1000,"height":860,"mime":"image/png"}
item_print_exists | PASS | Item print exists | /assets/pod/output/2/print/346_schema_print.png | {"item_id":216,"public_path":"/assets/pod/output/2/print/346_schema_print.png","local_path":"/var/www/html/assets/pod/output/2/print/346_schema_print.png","exists":true,"size_bytes":211829,"width":3000,"height":2200,"mime":"image/png"}
mockup_and_print_are_not_same_role | PASS | Mockup and print paths are distinct |  | {"item_id":216}
print_file_is_png_or_supported | PASS | Print file extension is supported | /assets/pod/output/2/print/346_schema_print.png | {"item_id":216,"mime":"image/png"}
image_dimensions_readable | PASS | Image dimensions readable | /assets/pod/output/2/print/346_schema_print.png | {"item_id":216,"width":3000,"height":2200}
image_min_size | PASS | Print image size is acceptable | /assets/pod/output/2/print/346_schema_print.png | {"item_id":216,"width":3000,"height":2200}
public_url_resolvable | PASS | Public path resolves to local file | /assets/pod/output/2/print/346_schema_print.png | {"item_id":216}
item_has_template_id | PASS | Item 217 template_id check |  | {"item_id":217,"template_id":37}
item_has_apply_mode | PASS | Item 217 apply_mode check |  | {"item_id":217,"apply_mode":"schema_multi_region"}
item_mockup_exists | PASS | Item mockup exists | /assets/pod/output/2/mockup/347_schema_mockup.png | {"item_id":217,"public_path":"/assets/pod/output/2/mockup/347_schema_mockup.png","local_path":"/var/www/html/assets/pod/output/2/mockup/347_schema_mockup.png","exists":true,"size_bytes":88218,"width":1000,"height":850,"mime":"image/png"}
item_print_exists | PASS | Item print exists | /assets/pod/output/2/print/347_schema_print.png | {"item_id":217,"public_path":"/assets/pod/output/2/print/347_schema_print.png","local_path":"/var/www/html/assets/pod/output/2/print/347_schema_print.png","exists":true,"size_bytes":211933,"width":3000,"height":2200,"mime":"image/png"}
mockup_and_print_are_not_same_role | PASS | Mockup and print paths are distinct |  | {"item_id":217}
print_file_is_png_or_supported | PASS | Print file extension is supported | /assets/pod/output/2/print/347_schema_print.png | {"item_id":217,"mime":"image/png"}
image_dimensions_readable | PASS | Image dimensions readable | /assets/pod/output/2/print/347_schema_print.png | {"item_id":217,"width":3000,"height":2200}
image_min_size | PASS | Print image size is acceptable | /assets/pod/output/2/print/347_schema_print.png | {"item_id":217,"width":3000,"height":2200}
public_url_resolvable | PASS | Public path resolves to local file | /assets/pod/output/2/print/347_schema_print.png | {"item_id":217}
item_has_template_id | PASS | Item 218 template_id check |  | {"item_id":218,"template_id":38}
item_has_apply_mode | PASS | Item 218 apply_mode check |  | {"item_id":218,"apply_mode":"schema_multi_region"}
item_mockup_exists | PASS | Item mockup exists | /assets/pod/output/2/mockup/348_schema_mockup.png | {"item_id":218,"public_path":"/assets/pod/output/2/mockup/348_schema_mockup.png","local_path":"/var/www/html/assets/pod/output/2/mockup/348_schema_mockup.png","exists":true,"size_bytes":32415,"width":900,"height":900,"mime":"image/png"}
item_print_exists | PASS | Item print exists | /assets/pod/output/2/print/348_schema_print.png | {"item_id":218,"public_path":"/assets/pod/output/2/print/348_schema_print.png","local_path":"/var/www/html/assets/pod/output/2/print/348_schema_print.png","exists":true,"size_bytes":106264,"width":3000,"height":2200,"mime":"image/png"}
mockup_and_print_are_not_same_role | PASS | Mockup and print paths are distinct |  | {"item_id":218}
print_file_is_png_or_supported | PASS | Print file extension is supported | /assets/pod/output/2/print/348_schema_print.png | {"item_id":218,"mime":"image/png"}
image_dimensions_readable | PASS | Image dimensions readable | /assets/pod/output/2/print/348_schema_print.png | {"item_id":218,"width":3000,"height":2200}
image_min_size | PASS | Print image size is acceptable | /assets/pod/output/2/print/348_schema_print.png | {"item_id":218,"width":3000,"height":2200}
public_url_resolvable | PASS | Public path resolves to local file | /assets/pod/output/2/print/348_schema_print.png | {"item_id":218}
item_has_template_id | PASS | Item 219 template_id check |  | {"item_id":219,"template_id":39}
item_has_apply_mode | PASS | Item 219 apply_mode check |  | {"item_id":219,"apply_mode":"schema_multi_region"}
item_mockup_exists | PASS | Item mockup exists | /assets/pod/output/2/mockup/349_schema_mockup.png | {"item_id":219,"public_path":"/assets/pod/output/2/mockup/349_schema_mockup.png","local_path":"/var/www/html/assets/pod/output/2/mockup/349_schema_mockup.png","exists":true,"size_bytes":37035,"width":1100,"height":620,"mime":"image/png"}
item_print_exists | PASS | Item print exists | /assets/pod/output/2/print/349_schema_print.png | {"item_id":219,"public_path":"/assets/pod/output/2/print/349_schema_print.png","local_path":"/var/www/html/assets/pod/output/2/print/349_schema_print.png","exists":true,"size_bytes":120229,"width":3000,"height":2200,"mime":"image/png"}
mockup_and_print_are_not_same_role | PASS | Mockup and print paths are distinct |  | {"item_id":219}
print_file_is_png_or_supported | PASS | Print file extension is supported | /assets/pod/output/2/print/349_schema_print.png | {"item_id":219,"mime":"image/png"}
image_dimensions_readable | PASS | Image dimensions readable | /assets/pod/output/2/print/349_schema_print.png | {"item_id":219,"width":3000,"height":2200}
image_min_size | PASS | Print image size is acceptable | /assets/pod/output/2/print/349_schema_print.png | {"item_id":219,"width":3000,"height":2200}
public_url_resolvable | PASS | Public path resolves to local file | /assets/pod/output/2/print/349_schema_print.png | {"item_id":219}
collection_items_completed | PASS | All collection items completed |  | []
latest_zip_exists | FAIL | Latest ZIP missing |  | []
zip_size_gt_zero | FAIL | ZIP size is zero or unavailable |  | {"size_bytes":0}
manifest_exists | FAIL | Export manifest missing |  | {"public_path":"","local_path":"","exists":false,"size_bytes":0,"width":null,"height":null,"mime":""}
zip_contains_manifest_json | FAIL | ZIP missing manifest.json |  | {"entry":"manifest.json"}
zip_contains_readme | FAIL | ZIP missing README.txt |  | {"entry":"README.txt"}
zip_contains_production_spec_html | FAIL | ZIP missing production_spec.html |  | {"entry":"production_spec.html"}
zip_contains_production_spec_csv | FAIL | ZIP missing production_spec.csv |  | {"entry":"production_spec.csv"}
zip_contains_production_manifest_json | FAIL | ZIP missing production_manifest.json |  | {"entry":"production_manifest.json"}
zip_contains_panel_prints_if_multi_panel | PASS | No multi-panel item requires panel ZIP entries |  | []
production_spec_html_exists | PASS | Production spec HTML exists | /assets/pod/collections/53/specs/production_spec.html | {"public_path":"/assets/pod/collections/53/specs/production_spec.html","local_path":"/var/www/html/assets/pod/collections/53/specs/production_spec.html","exists":true,"size_bytes":4749,"width":null,"height":null,"mime":"text/html"}
production_spec_csv_exists | PASS | Production spec CSV exists | /assets/pod/collections/53/specs/production_spec.csv | {"public_path":"/assets/pod/collections/53/specs/production_spec.csv","local_path":"/var/www/html/assets/pod/collections/53/specs/production_spec.csv","exists":true,"size_bytes":3079,"width":null,"height":null,"mime":"text/csv"}
production_manifest_json_exists | PASS | Production manifest JSON exists | /assets/pod/collections/53/specs/production_manifest.json | {"public_path":"/assets/pod/collections/53/specs/production_manifest.json","local_path":"/var/www/html/assets/pod/collections/53/specs/production_manifest.json","exists":true,"size_bytes":10102,"width":null,"height":null,"mime":"application/json"}
production_manifest_json_parseable | PASS | Production manifest JSON parseable | /assets/pod/collections/53/specs/production_manifest.json | []
csv_has_rows | PASS | CSV has rows | /assets/pod/collections/53/specs/production_spec.csv | {"rows":14}