assets/CONCEPT_APPROVALS.json
{
"_law": "Josh, 2026-08-12: no 3D asset is generated before he has reviewed its concept art board. This file is the ONLY key -- the generative runners have no override flag and no environment bypass. 257 of 271 assets were built with no concept reference at all; this file is what stops that repeating.",
"_who_may_edit": "Josh. A seat may APPEND a proposed row only with approved_by null, which approves nothing (an unsigned row is refused by concept_gate.find_approval). Signing it is Josh's act.",
"_fields": {
"asset_class": "character | creature | equipment | prop | architecture | flora ... or '*' for every class",
"subject": "the registry id (CHAR_0001, CR_0042, EQS_0013 ...) or '*' for every subject in that class",
"board": "repo-relative path to the concept board Josh actually looked at",
"approved_by": "Josh -- an unsigned row approves nothing",
"approved_on": "YYYY-MM-DD",
"note": "scope limits in plain words, e.g. 'ladder faces only, not the garment'"
},
"approvals": [
{
"asset_class": "character",
"subject": "CHAR_0001",
"board": "build/art/characters/approved_bald_ladder_chatgpt/ + build/art/characters/bald_multiview/",
"approved_by": "Josh",
"approved_on": "2026-08-12",
"note": "Josh generated this ladder himself and said 'I think these are good to work with' after reviewing every rung. 14 portraits (bald + haired, ages 7/9/11/12.5/14/16/18) and 7 eight-view bald multiview sheets. SUPERSEDES the derived BALD_BUST_W1344 keystones, which measured 0.395-0.509 against the approved panels and were a different face. Scope: CHAR_0001 only. Every other class still needs its own board in front of him."
},
{
"asset_class": "boss",
"subject": "BE_0002",
"board": "build/art/concept_boards/BE_0002/BOARD_BE_0002.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
},
{
"asset_class": "boss",
"subject": "BE_0002_S1",
"board": "build/art/concept_boards/BE_0002_S1/BOARD_BE_0002_S1.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
},
{
"asset_class": "boss",
"subject": "BE_0003",
"board": "build/art/concept_boards/BE_0003/BOARD_BE_0003.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
},
{
"asset_class": "creature",
"subject": "CR_0001",
"board": "build/art/concept_boards/CR_0001/BOARD_CR_0001.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
},
{
"asset_class": "creature",
"subject": "CR_0003",
"board": "build/art/concept_boards/CR_0003/BOARD_CR_0003.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
},
{
"asset_class": "creature",
"subject": "CR_0004",
"board": "build/art/concept_boards/CR_0004/BOARD_CR_0004.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
},
{
"asset_class": "creature",
"subject": "CR_0005",
"board": "build/art/concept_boards/CR_0005/BOARD_CR_0005.png",
"approved_by": null,
"approved_on": null,
"note": "PROPOSED by seat hf 2026-08-15; unsigned — approves nothing until Josh signs"
}
]
}