{
  "schemaVersion": 1,
  "packVersion": "1.3.0",
  "created": "2026-10-16",
  "identityReference": "duo-reference-v2",
  "notes": [
    "Les planches et vignettes sont opaques, pas des sprites détourés.",
    "approved = validation dans la conversation ; delivered = livré sans validation individuelle explicite ; proposed = nouvelle proposition.",
    "Les vignettes de mois conservent leurs libellés ; elles servent de références de tenue."
  ],
  "assets": [
    {
      "id": "duo-reference-v2",
      "path": "assets/characters/duo-reference-v2.png",
      "title": "Duo — référence validée V2",
      "width": 1086,
      "height": 1448,
      "bytes": 2564338,
      "sha256": "2d1b4cc9c123a7b4b293420ccf8fcce945fd263b950bc897bb9593ff3ec52f24",
      "background": "opaque",
      "kind": "identity_reference",
      "reviewStatus": "approved",
      "authoritativeIdentity": true
    },
    {
      "id": "hugo-poses-v1",
      "path": "assets/characters/hugo-expressions-poses-v1.png",
      "title": "Hugo — expressions et poses",
      "width": 1448,
      "height": 1086,
      "bytes": 2546283,
      "sha256": "f8b09a30cb81315c88247c4f8ec892a83b86eadcf2c265bbb71df8adbeb96068",
      "background": "opaque",
      "kind": "acting_reference",
      "character": "hugo",
      "reviewStatus": "approved"
    },
    {
      "id": "hugo-expression-curieux-v1",
      "path": "assets/tiles/hugo-expression-curieux-v1.png",
      "title": "hugo · curieux",
      "width": 234,
      "height": 218,
      "bytes": 102189,
      "sha256": "958dada0e072afc5a82dfd6a007b82e23cf55bfc57a5135bee0548e37f0111dc",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 8,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "expression": "curieux",
      "use": "portrait_inset"
    },
    {
      "id": "hugo-expression-etonne-v1",
      "path": "assets/tiles/hugo-expression-etonne-v1.png",
      "title": "hugo · etonne",
      "width": 234,
      "height": 218,
      "bytes": 107006,
      "sha256": "76f67f0b7e897c344ec835ef7e38cbc88dda7684ebe37b80a1c1ba83bc067cd3",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 249,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "expression": "etonne",
      "use": "portrait_inset"
    },
    {
      "id": "hugo-expression-dubitatif-v1",
      "path": "assets/tiles/hugo-expression-dubitatif-v1.png",
      "title": "hugo · dubitatif",
      "width": 234,
      "height": 218,
      "bytes": 104332,
      "sha256": "6785241a8b9e6df165ec170404dffd3206e18f88f6ee97facc059013534fe749",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 490,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "expression": "dubitatif",
      "use": "portrait_inset"
    },
    {
      "id": "hugo-expression-inquiet-v1",
      "path": "assets/tiles/hugo-expression-inquiet-v1.png",
      "title": "hugo · inquiet",
      "width": 234,
      "height": 218,
      "bytes": 104819,
      "sha256": "314838529b3586c359d28457658eaa4cba55ba452210a70fbdb4152b1b0638dd",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 731,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "expression": "inquiet",
      "use": "portrait_inset"
    },
    {
      "id": "hugo-expression-amuse-v1",
      "path": "assets/tiles/hugo-expression-amuse-v1.png",
      "title": "hugo · amuse",
      "width": 234,
      "height": 218,
      "bytes": 104619,
      "sha256": "d3b2ff971eadf2407a69eefd6affc8e6f9f293ea84d65d72d23462970fec2e29",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 972,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "expression": "amuse",
      "use": "portrait_inset"
    },
    {
      "id": "hugo-expression-enthousiaste-v1",
      "path": "assets/tiles/hugo-expression-enthousiaste-v1.png",
      "title": "hugo · enthousiaste",
      "width": 234,
      "height": 218,
      "bytes": 105738,
      "sha256": "4e4d8b197567852c91859f111335eba16b104a8e2c9702f27b298d0b2a16d06c",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 1213,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "expression": "enthousiaste",
      "use": "portrait_inset"
    },
    {
      "id": "hugo-pose-explique-v1",
      "path": "assets/tiles/hugo-pose-explique-v1.png",
      "title": "hugo · explique",
      "width": 466,
      "height": 291,
      "bytes": 247285,
      "sha256": "8763ae0be49ab8e2aa1acfe989d2c2beee267d61789b6b3236a371ab8827d08b",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 14,
        "y": 378,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "pose": "explique",
      "use": "illustration_inset"
    },
    {
      "id": "hugo-pose-ecoute-v1",
      "path": "assets/tiles/hugo-pose-ecoute-v1.png",
      "title": "hugo · ecoute",
      "width": 466,
      "height": 291,
      "bytes": 244836,
      "sha256": "3e7a1a95a3503855abf112d778fc1a65bc9f094ce8db0c57890fda8c5a707469",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 496,
        "y": 378,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "pose": "ecoute",
      "use": "illustration_inset"
    },
    {
      "id": "hugo-pose-montre-v1",
      "path": "assets/tiles/hugo-pose-montre-v1.png",
      "title": "hugo · montre",
      "width": 466,
      "height": 291,
      "bytes": 239720,
      "sha256": "1ce0829db58c633d50e69c5abfc0f77979a341b6669ce978aa9b4ff1ab81358d",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 978,
        "y": 378,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "pose": "montre",
      "use": "illustration_inset"
    },
    {
      "id": "hugo-pose-reflechit-v1",
      "path": "assets/tiles/hugo-pose-reflechit-v1.png",
      "title": "hugo · reflechit",
      "width": 466,
      "height": 291,
      "bytes": 247529,
      "sha256": "fdac6554edc5260f7d40bf2c47e72382eec87f0789db9d5bf5a718e9479101cb",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 14,
        "y": 707,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "pose": "reflechit",
      "use": "illustration_inset"
    },
    {
      "id": "hugo-pose-se-rejouit-v1",
      "path": "assets/tiles/hugo-pose-se-rejouit-v1.png",
      "title": "hugo · se-rejouit",
      "width": 466,
      "height": 291,
      "bytes": 245313,
      "sha256": "7e3ecdfac34c677da6c2d16a49f94a803155c3fb24041a6524a43fc86638d4d4",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 496,
        "y": 707,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "pose": "se-rejouit",
      "use": "illustration_inset"
    },
    {
      "id": "hugo-pose-assis-v1",
      "path": "assets/tiles/hugo-pose-assis-v1.png",
      "title": "hugo · assis",
      "width": 466,
      "height": 291,
      "bytes": 251039,
      "sha256": "3d765726ca4bd3c4e463ff2d660c932d2e1e212f82ada2cf7a114351f5b8c1fa",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "hugo-poses-v1",
      "crop": {
        "x": 978,
        "y": 707,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "approved",
      "transparentCutout": false,
      "character": "hugo",
      "pose": "assis",
      "use": "illustration_inset"
    },
    {
      "id": "ia-poses-v1",
      "path": "assets/characters/ia-expressions-poses-v1.png",
      "title": "Iastro — expressions et poses",
      "width": 1448,
      "height": 1086,
      "bytes": 2493662,
      "sha256": "af5e602576213a829b4ca91a372c13e32f92edc35a0c658f7b7a86636c640f75",
      "background": "opaque",
      "kind": "acting_reference",
      "character": "ia",
      "reviewStatus": "proposed",
      "displayName": "Iastro"
    },
    {
      "id": "ia-expression-curieux-v1",
      "path": "assets/tiles/ia-expression-curieux-v1.png",
      "title": "Iastro · curieux",
      "width": 234,
      "height": 218,
      "bytes": 95622,
      "sha256": "ee04382f97a9b65bd88d08f30794271756e8dc5d94b2f6c9b4c3e7fdc20adb2b",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 8,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "expression": "curieux",
      "use": "portrait_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-expression-etonne-v1",
      "path": "assets/tiles/ia-expression-etonne-v1.png",
      "title": "Iastro · etonne",
      "width": 234,
      "height": 218,
      "bytes": 100984,
      "sha256": "faec7f1895523c32aad152a195bcc7c1703b77e85d66d9bd48a83467af3ef487",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 249,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "expression": "etonne",
      "use": "portrait_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-expression-dubitatif-v1",
      "path": "assets/tiles/ia-expression-dubitatif-v1.png",
      "title": "Iastro · dubitatif",
      "width": 234,
      "height": 218,
      "bytes": 95866,
      "sha256": "377bda3374c0fd84f6d2ecec16558c1f5e34d0fece6d5239cdfc069147ce705e",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 490,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "expression": "dubitatif",
      "use": "portrait_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-expression-inquiet-v1",
      "path": "assets/tiles/ia-expression-inquiet-v1.png",
      "title": "Iastro · inquiet",
      "width": 234,
      "height": 218,
      "bytes": 96323,
      "sha256": "027c9f8c45d1c5255dfe00bc16ce81f04c3d644053133c36a42d5b998a2cf270",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 731,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "expression": "inquiet",
      "use": "portrait_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-expression-amuse-v1",
      "path": "assets/tiles/ia-expression-amuse-v1.png",
      "title": "Iastro · amuse",
      "width": 234,
      "height": 218,
      "bytes": 95622,
      "sha256": "46d0d9a8c950624e9d67da3584ff78adab3a84f69ffad3a8b90af284f34a97fa",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 972,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "expression": "amuse",
      "use": "portrait_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-expression-enthousiaste-v1",
      "path": "assets/tiles/ia-expression-enthousiaste-v1.png",
      "title": "Iastro · enthousiaste",
      "width": 234,
      "height": 218,
      "bytes": 97414,
      "sha256": "c51dfc342be4e69ba1f61ba33180f9f8e6be2ae601c67f25a1378fb6eed26c83",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 1213,
        "y": 112,
        "width": 234,
        "height": 218
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "expression": "enthousiaste",
      "use": "portrait_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-pose-explique-v1",
      "path": "assets/tiles/ia-pose-explique-v1.png",
      "title": "Iastro · explique",
      "width": 466,
      "height": 291,
      "bytes": 249777,
      "sha256": "9cac8ddc9da477fbc0fa3583ecac6009e8ca6ec6800ba81d72885b91e44d3912",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 14,
        "y": 378,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "pose": "explique",
      "use": "illustration_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-pose-ecoute-v1",
      "path": "assets/tiles/ia-pose-ecoute-v1.png",
      "title": "Iastro · ecoute",
      "width": 466,
      "height": 291,
      "bytes": 248851,
      "sha256": "475e834ec64a690990a027b8905d318a0addc3bb3a5b102d4bb5df6f03cd532f",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 496,
        "y": 378,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "pose": "ecoute",
      "use": "illustration_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-pose-montre-v1",
      "path": "assets/tiles/ia-pose-montre-v1.png",
      "title": "Iastro · montre",
      "width": 466,
      "height": 291,
      "bytes": 241111,
      "sha256": "df789bf8078e923436f280f9106bfb4f9268ad39f1d7c3b6c1f1e92f06ee5c1a",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 978,
        "y": 378,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "pose": "montre",
      "use": "illustration_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-pose-reflechit-v1",
      "path": "assets/tiles/ia-pose-reflechit-v1.png",
      "title": "Iastro · reflechit",
      "width": 466,
      "height": 291,
      "bytes": 255722,
      "sha256": "3f0cb55b6e326333cf8695b41151cbf707a5780ced3d30e3b2e43e754226c129",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 14,
        "y": 707,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "pose": "reflechit",
      "use": "illustration_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-pose-se-rejouit-v1",
      "path": "assets/tiles/ia-pose-se-rejouit-v1.png",
      "title": "Iastro · se-rejouit",
      "width": 466,
      "height": 291,
      "bytes": 248992,
      "sha256": "416d399fd6cf6a84233f6dd1102b6e6e12ce1aef7e6c37493920e4f6e1647ea4",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 496,
        "y": 707,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "pose": "se-rejouit",
      "use": "illustration_inset",
      "displayName": "Iastro"
    },
    {
      "id": "ia-pose-assis-v1",
      "path": "assets/tiles/ia-pose-assis-v1.png",
      "title": "Iastro · assis",
      "width": 466,
      "height": 291,
      "bytes": 252868,
      "sha256": "8e6116ecf3d19069a915f7b1821b598bec5d97deec2c40adcacbc3dd57df9372",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "ia-poses-v1",
      "crop": {
        "x": 978,
        "y": 707,
        "width": 466,
        "height": 291
      },
      "reviewStatus": "proposed",
      "transparentCutout": false,
      "character": "ia",
      "pose": "assis",
      "use": "illustration_inset",
      "displayName": "Iastro"
    },
    {
      "id": "season-hiver-v1",
      "path": "assets/seasons/hiver-v1.png",
      "title": "hiver — trois mois",
      "width": 1536,
      "height": 1024,
      "bytes": 2771605,
      "sha256": "437f38093dfa7150601cf7f9d94117650a8708b8c58e1584077983e7e177ef34",
      "background": "opaque",
      "kind": "wardrobe_reference",
      "season": "hiver",
      "months": [
        12,
        1,
        2
      ],
      "reviewStatus": "delivered"
    },
    {
      "id": "month-12-decembre-v1",
      "path": "assets/tiles/month-12-decembre-v1.png",
      "title": "decembre · duo",
      "width": 512,
      "height": 790,
      "bytes": 807369,
      "sha256": "96ddb30c3395f6c686fa502f2910395cd0165071f9b41b2e64e16a759d044581",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-hiver-v1",
      "crop": {
        "x": 0,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 12,
      "season": "hiver",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-01-janvier-v1",
      "path": "assets/tiles/month-01-janvier-v1.png",
      "title": "janvier · duo",
      "width": 512,
      "height": 790,
      "bytes": 769561,
      "sha256": "b451cada5652dc19561eac9b2339614683f74f9333ad62735280458baa63199b",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-hiver-v1",
      "crop": {
        "x": 512,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 1,
      "season": "hiver",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-02-fevrier-v1",
      "path": "assets/tiles/month-02-fevrier-v1.png",
      "title": "fevrier · duo",
      "width": 512,
      "height": 790,
      "bytes": 792527,
      "sha256": "341358b0095737dbe3f56ffe176f5fadd1cba9fe583ddc2b62e9b6bd084500a7",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-hiver-v1",
      "crop": {
        "x": 1024,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 2,
      "season": "hiver",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "season-printemps-v1",
      "path": "assets/seasons/printemps-v1.png",
      "title": "printemps — trois mois",
      "width": 1536,
      "height": 1024,
      "bytes": 2439012,
      "sha256": "febd71ddf5cad22b4f8ab7601b3561f8e6a2d46148668a2148d83fdb4ee7275c",
      "background": "opaque",
      "kind": "wardrobe_reference",
      "season": "printemps",
      "months": [
        3,
        4,
        5
      ],
      "reviewStatus": "delivered"
    },
    {
      "id": "month-03-mars-v1",
      "path": "assets/tiles/month-03-mars-v1.png",
      "title": "mars · duo",
      "width": 512,
      "height": 790,
      "bytes": 702611,
      "sha256": "ecc83d71c8e0f11d6a88f03ce9e19186fa3259ea2a2b2f2ba0b3569e360eb4f7",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-printemps-v1",
      "crop": {
        "x": 0,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 3,
      "season": "printemps",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-04-avril-v1",
      "path": "assets/tiles/month-04-avril-v1.png",
      "title": "avril · duo",
      "width": 512,
      "height": 790,
      "bytes": 723375,
      "sha256": "925f17689026097dee6cd7d92c8cea3a561de2593fee4d829d7c41f4b19561c2",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-printemps-v1",
      "crop": {
        "x": 512,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 4,
      "season": "printemps",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-05-mai-v1",
      "path": "assets/tiles/month-05-mai-v1.png",
      "title": "mai · duo",
      "width": 512,
      "height": 790,
      "bytes": 705910,
      "sha256": "90857d9aa3b5213b06ecd4e47b7a053f32f9d9fe98c861157fe0019cea0cd995",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-printemps-v1",
      "crop": {
        "x": 1024,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 5,
      "season": "printemps",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "season-ete-v1",
      "path": "assets/seasons/ete-v1.png",
      "title": "ete — trois mois",
      "width": 1536,
      "height": 1024,
      "bytes": 2378848,
      "sha256": "956fb8a9cc57437257d980f514494c952b9f7dbccb0a4254e4304cfd4e7025fc",
      "background": "opaque",
      "kind": "wardrobe_reference",
      "season": "ete",
      "months": [
        6,
        7,
        8
      ],
      "reviewStatus": "delivered"
    },
    {
      "id": "month-06-juin-v1",
      "path": "assets/tiles/month-06-juin-v1.png",
      "title": "juin · duo",
      "width": 512,
      "height": 755,
      "bytes": 693420,
      "sha256": "88604a130cc5f20cb437a79c7218045b44e568c590a76aab33f54be13798ce00",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-ete-v1",
      "crop": {
        "x": 0,
        "y": 185,
        "width": 512,
        "height": 755
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 6,
      "season": "ete",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-07-juillet-v1",
      "path": "assets/tiles/month-07-juillet-v1.png",
      "title": "juillet · duo",
      "width": 512,
      "height": 755,
      "bytes": 695321,
      "sha256": "ef51f91b48a77271a663c00b3ee7510ddd3e228d47355661abe623ce82e8a86c",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-ete-v1",
      "crop": {
        "x": 512,
        "y": 185,
        "width": 512,
        "height": 755
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 7,
      "season": "ete",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-08-aout-v1",
      "path": "assets/tiles/month-08-aout-v1.png",
      "title": "aout · duo",
      "width": 512,
      "height": 755,
      "bytes": 696447,
      "sha256": "16b407ee9fd1cf9b552fa4992c01d3d5a5afcae06beed368f7e58af30d945139",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-ete-v1",
      "crop": {
        "x": 1024,
        "y": 185,
        "width": 512,
        "height": 755
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 8,
      "season": "ete",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "season-automne-v1",
      "path": "assets/seasons/automne-v1.png",
      "title": "automne — trois mois",
      "width": 1536,
      "height": 1024,
      "bytes": 2646004,
      "sha256": "c6091095b973c858e55e3ccd12c6e0d3df66ae329c2cb41b95141c4375fd72b4",
      "background": "opaque",
      "kind": "wardrobe_reference",
      "season": "automne",
      "months": [
        9,
        10,
        11
      ],
      "reviewStatus": "delivered"
    },
    {
      "id": "month-09-septembre-v1",
      "path": "assets/tiles/month-09-septembre-v1.png",
      "title": "septembre · duo",
      "width": 512,
      "height": 790,
      "bytes": 755317,
      "sha256": "3f3c79503f415affedb5d79c5c0c3c97f8716b75ccd18912183fbc0b3be232c5",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-automne-v1",
      "crop": {
        "x": 0,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 9,
      "season": "automne",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-10-octobre-v1",
      "path": "assets/tiles/month-10-octobre-v1.png",
      "title": "octobre · duo",
      "width": 512,
      "height": 790,
      "bytes": 757655,
      "sha256": "ae5ab27e75cef9424be0e5eaaf5501ad5658104aae2d87cb7ace081eba828b8d",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-automne-v1",
      "crop": {
        "x": 512,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 10,
      "season": "automne",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "month-11-novembre-v1",
      "path": "assets/tiles/month-11-novembre-v1.png",
      "title": "novembre · duo",
      "width": 512,
      "height": 790,
      "bytes": 785007,
      "sha256": "424e306b664224f409238715d2d597de69e985f8356e3f5ea7cf48659845aa7b",
      "background": "opaque",
      "kind": "tile",
      "sourceId": "season-automne-v1",
      "crop": {
        "x": 1024,
        "y": 150,
        "width": 512,
        "height": 790
      },
      "reviewStatus": "delivered",
      "transparentCutout": false,
      "month": 11,
      "season": "automne",
      "character": "duo",
      "use": "wardrobe_reference_only"
    },
    {
      "id": "alexandr-wang-v1",
      "path": "assets/cast/alexandr-wang-v1.png",
      "title": "Alexandr Wang — angles et expressions",
      "width": 1086,
      "height": 1448,
      "bytes": 2539344,
      "sha256": "a048a1905b1a1e8c25e15f7eac555502f3bfad1af74689aba2f2e4ce9b50fbdd",
      "background": "opaque",
      "kind": "cast_reference",
      "reviewStatus": "proposed",
      "authoritativeIdentity": false,
      "character": "alexandr-wang"
    },
    {
      "id": "atelier-des-possibles-v1",
      "path": "assets/direction/atelier-des-possibles-v1.png",
      "title": "L’atelier des possibles — étude de rythme",
      "width": 1024,
      "height": 1536,
      "bytes": 3169376,
      "sha256": "2d8a3754a8ffd41724ef9a5051ad0f523013d8ea00e8e2e4619abaae2b69d79a",
      "background": "opaque",
      "kind": "direction_reference",
      "reviewStatus": "approved",
      "authoritativeIdentity": false,
      "characters": [
        "hugo",
        "ia",
        "alexandr-wang"
      ],
      "fictional_scene": true,
      "approvalNote": "Hugo, 16 octobre 2026 : « le strip est exceptionnel, j’adore » ; direction et mise en scène validées, tenue de Wang à actualiser."
    },
    {
      "id": "alexandr-wang-v2-connect",
      "path": "assets/cast/alexandr-wang-v2-connect.png",
      "title": "Alexandr Wang — look Meta Connect 2026",
      "width": 1086,
      "height": 1448,
      "bytes": 2636257,
      "sha256": "fb38d465b39ef9fd13215a2e781a6ddd0d1bfac770635db1fc3ada4ee1a3cc0f",
      "background": "opaque",
      "kind": "cast_reference",
      "reviewStatus": "proposed",
      "authoritativeIdentity": false,
      "sourceId": "alexandr-wang-v1",
      "character": "alexandr-wang"
    },
    {
      "id": "atelier-des-possibles-v2-camouflage",
      "path": "assets/direction/atelier-des-possibles-v2-camouflage.png",
      "title": "L’atelier des possibles — Wang en camouflage",
      "width": 1024,
      "height": 1536,
      "bytes": 2889823,
      "sha256": "7539a3d21e997feabe3760c00fac93028f25719a22b2357c0613a9b3d8c581e1",
      "background": "opaque",
      "kind": "direction_reference",
      "reviewStatus": "proposed",
      "authoritativeIdentity": false,
      "sourceId": "atelier-des-possibles-v1",
      "characters": [
        "hugo",
        "ia",
        "alexandr-wang"
      ],
      "fictional_scene": true
    }
  ],
  "characters": {
    "hugo": {
      "name": "Hugo"
    },
    "ia": {
      "name": "Iastro",
      "alias": "iastro",
      "legacyAliases": [
        "astro-ai",
        "Astro AI"
      ]
    }
  }
}
