Collection Revision History

Snapshot, switch, export, spec, and preflight Collection versions without overwriting old files.

COL-20260519201755-05179f / collection #10

Workflow gate acceptance 201755

Active revision id: 6

Revision Compare

{
    "collection_id": 10,
    "left": {
        "revision_id": 81,
        "revision_no": 5,
        "label": "v5",
        "is_active": false
    },
    "right": {
        "revision_id": 143,
        "revision_no": 8,
        "label": "v8",
        "is_active": false
    },
    "summary": {
        "master_changed": true,
        "item_count_left": 2,
        "item_count_right": 2,
        "items_added": 0,
        "items_removed": 0,
        "items_changed": 2,
        "panel_prints_changed": 0,
        "preflight_score_left": null,
        "preflight_score_right": null,
        "preflight_changed": false,
        "zip_changed": false,
        "spec_changed": true
    },
    "master": {
        "artwork": {
            "left_path": "/assets/pod/collections/10/revisions/v5/master/master_artwork.png",
            "right_path": "/assets/pod/collections/10/revisions/v8/master/master_artwork.png",
            "same_path": false,
            "left_exists": true,
            "right_exists": true,
            "left_size_bytes": 42379,
            "right_size_bytes": 42379,
            "same_size": true,
            "left_width": 1400,
            "left_height": 1400,
            "right_width": 1400,
            "right_height": 1400,
            "same_dimensions": true
        },
        "print": {
            "left_path": "/assets/pod/collections/10/revisions/v5/master/master_print.png",
            "right_path": "/assets/pod/collections/10/revisions/v8/master/master_print.png",
            "same_path": false,
            "left_exists": true,
            "right_exists": true,
            "left_size_bytes": 244535,
            "right_size_bytes": 244535,
            "same_size": true,
            "left_width": 3000,
            "left_height": 3000,
            "right_width": 3000,
            "right_height": 3000,
            "same_dimensions": true
        }
    },
    "items": [
        {
            "key": "item:24",
            "template_id": 28,
            "template_name_left": "硬式洗漱墊",
            "template_name_right": "硬式洗漱墊",
            "collection_item_id_left": 24,
            "collection_item_id_right": 24,
            "apply_mode_left": "tile-cover",
            "apply_mode_right": "tile-cover",
            "panel_count_left": 1,
            "panel_count_right": 1,
            "mockup": {
                "left_path": "/assets/pod/collections/10/revisions/v5/mockups/item_24_mockup.png",
                "right_path": "/assets/pod/collections/10/revisions/v8/mockups/item_24_mockup.png",
                "same_path": false,
                "left_exists": true,
                "right_exists": true,
                "left_size_bytes": 69989,
                "right_size_bytes": 69989,
                "same_size": true,
                "left_width": 1000,
                "left_height": 472,
                "right_width": 1000,
                "right_height": 472,
                "same_dimensions": true
            },
            "print": {
                "left_path": "/assets/pod/collections/10/revisions/v5/prints/item_24_print.png",
                "right_path": "/assets/pod/collections/10/revisions/v8/prints/item_24_print.png",
                "same_path": false,
                "left_exists": true,
                "right_exists": true,
                "left_size_bytes": 244535,
                "right_size_bytes": 244535,
                "same_size": true,
                "left_width": 3000,
                "left_height": 3000,
                "right_width": 3000,
                "right_height": 3000,
                "same_dimensions": true
            },
            "scene": {
                "left_path": "",
                "right_path": "",
                "same_path": false,
                "left_exists": false,
                "right_exists": false,
                "left_size_bytes": 0,
                "right_size_bytes": 0,
                "same_size": true,
                "left_width": null,
                "left_height": null,
                "right_width": null,
                "right_height": null,
                "same_dimensions": true
            },
            "panel_prints": [],
            "change_status": "changed"
        },
        {
            "key": "item:25",
            "template_id": 27,
            "template_name_left": "硬式杯墊(圓型)",
            "template_name_right": "硬式杯墊(圓型)",
            "collection_item_id_left": 25,
            "collection_item_id_right": 25,
            "apply_mode_left": "tile-cover",
            "apply_mode_right": "tile-cover",
            "panel_count_left": 1,
            "panel_count_right": 1,
            "mockup": {
                "left_path": "/assets/pod/collections/10/revisions/v5/mockups/item_25_mockup.png",
                "right_path": "/assets/pod/collections/10/revisions/v8/mockups/item_25_mockup.png",
                "same_path": false,
                "left_exists": true,
                "right_exists": true,
                "left_size_bytes": 82260,
                "right_size_bytes": 82260,
                "same_size": true,
                "left_width": 371,
                "left_height": 369,
                "right_width": 371,
                "right_height": 369,
                "same_dimensions": true
            },
            "print": {
                "left_path": "/assets/pod/collections/10/revisions/v5/prints/item_25_print.png",
                "right_path": "/assets/pod/collections/10/revisions/v8/prints/item_25_print.png",
                "same_path": false,
                "left_exists": true,
                "right_exists": true,
                "left_size_bytes": 244535,
                "right_size_bytes": 244535,
                "same_size": true,
                "left_width": 3000,
                "left_height": 3000,
                "right_width": 3000,
                "right_height": 3000,
                "same_dimensions": true
            },
            "scene": {
                "left_path": "",
                "right_path": "",
                "same_path": false,
                "left_exists": false,
                "right_exists": false,
                "left_size_bytes": 0,
                "right_size_bytes": 0,
                "same_size": true,
                "left_width": null,
                "left_height": null,
                "right_width": null,
                "right_height": null,
                "same_dimensions": true
            },
            "panel_prints": [],
            "change_status": "changed"
        }
    ],
    "reports": {
        "zip": {
            "left_path": "",
            "right_path": "",
            "same_path": false,
            "left_exists": false,
            "right_exists": false,
            "left_size_bytes": 0,
            "right_size_bytes": 0,
            "same_size": true,
            "left_width": null,
            "left_height": null,
            "right_width": null,
            "right_height": null,
            "same_dimensions": true
        },
        "spec_html": {
            "left_path": "/assets/pod/collections/10/revisions/v5/specs/production_spec.html",
            "right_path": "/assets/pod/collections/10/revisions/v8/specs/production_spec.html",
            "same_path": false,
            "left_exists": true,
            "right_exists": true,
            "left_size_bytes": 2952,
            "right_size_bytes": 2952,
            "same_size": true,
            "left_width": null,
            "left_height": null,
            "right_width": null,
            "right_height": null,
            "same_dimensions": true
        },
        "spec_csv": {
            "left_path": "/assets/pod/collections/10/revisions/v5/specs/production_spec.csv",
            "right_path": "/assets/pod/collections/10/revisions/v8/specs/production_spec.csv",
            "same_path": false,
            "left_exists": true,
            "right_exists": true,
            "left_size_bytes": 1329,
            "right_size_bytes": 1329,
            "same_size": true,
            "left_width": null,
            "left_height": null,
            "right_width": null,
            "right_height": null,
            "same_dimensions": true
        },
        "spec_json": {
            "left_path": "/assets/pod/collections/10/revisions/v5/specs/production_manifest.json",
            "right_path": "/assets/pod/collections/10/revisions/v8/specs/production_manifest.json",
            "same_path": false,
            "left_exists": true,
            "right_exists": true,
            "left_size_bytes": 4607,
            "right_size_bytes": 4608,
            "same_size": false,
            "left_width": null,
            "left_height": null,
            "right_width": null,
            "right_height": null,
            "same_dimensions": true
        },
        "preflight_html": {
            "left_path": "",
            "right_path": "",
            "same_path": false,
            "left_exists": false,
            "right_exists": false,
            "left_size_bytes": 0,
            "right_size_bytes": 0,
            "same_size": true,
            "left_width": null,
            "left_height": null,
            "right_width": null,
            "right_height": null,
            "same_dimensions": true
        },
        "preflight_json": {
            "left_path": "",
            "right_path": "",
            "same_path": false,
            "left_exists": false,
            "right_exists": false,
            "left_size_bytes": 0,
            "right_size_bytes": 0,
            "same_size": true,
            "left_width": null,
            "left_height": null,
            "right_width": null,
            "right_height": null,
            "same_dimensions": true
        },
        "preflight_left": {
            "status": null,
            "score": null
        },
        "preflight_right": {
            "status": null,
            "score": null
        }
    },
    "warnings": [],
    "generated_at": "2026-06-12T23:37:31+00:00"
}
v9
v9 inactive items 2 panels 0

v9

Reason: manual_snapshot / Created: 2026-06-12 22:23:48
Master: /assets/pod/collections/10/revisions/v9/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v9/master/master_print.png
v8
v8 inactive items 2 panels 0

v8

Reason: manual_snapshot / Created: 2026-06-12 17:23:03
Master: /assets/pod/collections/10/revisions/v8/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v8/master/master_print.png
v7
v7 inactive items 2 panels 0

v7

Reason: manual_snapshot / Created: 2026-06-12 17:15:16
Master: /assets/pod/collections/10/revisions/v7/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v7/master/master_print.png
v6
v6 inactive items 2 panels 0

v6

Reason: manual_snapshot / Created: 2026-06-12 16:49:39
Master: /assets/pod/collections/10/revisions/v6/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v6/master/master_print.png
v5
v5 inactive items 2 panels 0

v5

Reason: manual_snapshot / Created: 2026-06-12 16:44:13
Master: /assets/pod/collections/10/revisions/v5/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v5/master/master_print.png
v4
v4 inactive items 2 panels 0

v4

Reason: manual_snapshot / Created: 2026-06-12 16:39:24
Master: /assets/pod/collections/10/revisions/v4/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v4/master/master_print.png
v3
v3 inactive items 2 panels 0

v3

Reason: manual_snapshot / Created: 2026-06-12 16:37:29
Master: /assets/pod/collections/10/revisions/v3/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v3/master/master_print.png
v2
v2 active items 2 panels 0 preflight fail / 20

reapply 2026-05-21 05:25:28

Reason: reapply / Created: 2026-05-21 05:25:28
Master: /assets/pod/collections/10/revisions/v2/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v2/master/master_print.png
v1
v1 inactive items 2 panels 0

v1 initial snapshot

Reason: initial_snapshot / Created: 2026-05-21 05:25:10
Master: /assets/pod/collections/10/revisions/v1/master/master_artwork.png
Print: /assets/pod/collections/10/revisions/v1/master/master_print.png