{
 "project": "Próximo passo · Rafa Brites (Aldeias de Futuros)",
 "version": "2.0.0",
 "generated": "2026-09-22",
 "visual_review": "delegated_pending_human",
 "decision_source": "Usuário, 22/09/2026: 'Delegar a mim' — gerar cada asset isolado, escolher a melhor versão e seguir; revisão humana pendente",
 "reference_study": "Direção HD-2D estudada no artefato Pip's Firefly Festival (cópia local) apenas como referência visual/técnica; nenhum código ou arte dele foi copiado.",
 "mesh_vs_billboard": {
  "mesh_3d": "chão das faixas, margens, todos os perigos, plataformas, bloqueios, móveis, cenário e plantas maiores (props.js)",
  "billboard_2d": "Rafa (sprites por look/pose em plano inclinado com sombra real), página coletável, tufos de grama e flores (planos cruzados reativos), face pintada do carrinho de cenário",
  "shader": "água do rio de tinta e do riacho, partículas, pós-processamento"
 },
 "concepts_not_shipped": "Os conceitos de objetos (arte/<asset>/conceitos) são alvos de modelagem e não são publicados; o pulo da Rafa (rafa-personagem v03-pulo-A) foi gerado e não entrou no jogo.",
 "private_material": "Fotos de referência da participante ficam em privado/ e nunca foram enviadas ao provedor nem incluídas aqui.",
 "assets": [
  {
   "file": "assets/sprites/rafa-0-frente.png",
   "sha256": "73e8d4480744e8c939559e38356a8176a364dca369c33135181672ac19dda42a",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 0, pose frente",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "reference_job": "e11a463b-b9fa-4e6b-a2b6-d6ed89ab43c3",
   "prompt_summary": "Rafa chibi ~3 cabecas, idle frente 3/4, ref v01-B",
   "source_concept": "arte/rafa-personagem/conceitos/v02-chibi-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-0-costas.png",
   "sha256": "df037cf89c0e60ecaed599717b80791898372045312d7d08548c3ec63163df47",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 0, pose costas",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "45e3d1e9-c1b6-408e-bf2a-d601fb2d1845",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Rafa chibi de costas andando (look 1)",
   "source_concept": "arte/rafa-personagem/conceitos/v03-costas-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-0-tropeco.png",
   "sha256": "1f3ccadd206dc833078c83a72c4b5161d92ed89ed405dad8109c59230b505103",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 0, pose tropeco",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "2d4269ed-8e09-43cc-b053-7016ad39f8e6",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Rafa chibi sentada tonta, tropeco leve (derrota)",
   "source_concept": "arte/rafa-personagem/conceitos/v03-tropeco-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-0-celebra.png",
   "sha256": "0047b8ed0ea42a492b1bda62e95759f3b235236af3cbf537c4b02cac299e3db4",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 0, pose celebra",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "66f4712e-c1ee-4293-9b70-3c28230b966c",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Rafa chibi celebrando com pagina dourada erguida",
   "source_concept": "arte/rafa-personagem/conceitos/v03-celebra-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-1-frente.png",
   "sha256": "72778de340569fbf57e38d112079bd35c398b8837f7f24fb0dd7680ad33b79fc",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 1, pose frente",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "70389d75-7930-4544-a77e-4d6f0bbe23ad",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Look Entre paginas: halter coral, calca creme",
   "source_concept": "arte/rafa-look-02/conceitos/v01-frente-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-1-costas.png",
   "sha256": "9e63d953d4b3add31e9fde372688a2d4f52597ed9148cea5ab3014f340191af0",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 1, pose costas",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "bf5cbcf6-f572-49c3-aaa5-3bd6a1e96e99",
   "reference_job": "45e3d1e9-c1b6-408e-bf2a-d601fb2d1845+70389d75-7930-4544-a77e-4d6f0bbe23ad",
   "prompt_summary": "Look coral de costas",
   "source_concept": "arte/rafa-look-02/conceitos/v01-costas-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-1-tropeco.png",
   "sha256": "b7746907b1586f6198f53b3eb2873ecebc71cc84d756f05374b55fccc2b9efca",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 1, pose tropeco",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "846696c3-ea6b-403b-abe8-9217486baf7a",
   "reference_job": "2d4269ed-8e09-43cc-b053-7016ad39f8e6+70389d75-7930-4544-a77e-4d6f0bbe23ad",
   "prompt_summary": "Look coral tropeco",
   "source_concept": "arte/rafa-look-02/conceitos/v01-tropeco-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-1-celebra.png",
   "sha256": "8c3c581ed9edb1ad0c7d671d9c71bb830fa80d1537a4e562dac994c364cd1f97",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 1, pose celebra",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "f5f41e41-6114-4e8e-bcac-a7b29a38afd4",
   "reference_job": "66f4712e-c1ee-4293-9b70-3c28230b966c+70389d75-7930-4544-a77e-4d6f0bbe23ad",
   "prompt_summary": "Look coral celebra",
   "source_concept": "arte/rafa-look-02/conceitos/v01-celebra-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-2-frente.png",
   "sha256": "a35cb6eb01a4b7769327a4c7c74a1b8500c63e351990055d692d58f4bbf6ece0",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 2, pose frente",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "f58d5aa4-45a3-4548-b08a-d4bfcd202beb",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Look Pelo mundo: halter mostarda, calca teal, bolsa coral",
   "source_concept": "arte/rafa-look-03/conceitos/v01-frente-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-2-costas.png",
   "sha256": "9ed9b1cfcf7e27b7c3446e420ff75a68d76c8e0dda15feb862d4d9f341a9cc47",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 2, pose costas",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "7a9b9bbb-541a-4774-a6c1-8cf8bb8c3ff5",
   "reference_job": "45e3d1e9-c1b6-408e-bf2a-d601fb2d1845+f58d5aa4-45a3-4548-b08a-d4bfcd202beb",
   "prompt_summary": "Look mostarda/teal de costas",
   "source_concept": "arte/rafa-look-03/conceitos/v01-costas-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-2-tropeco.png",
   "sha256": "8fd5f2e3c5ebddcb9e15d3d54f0a7ed38a100d0ed2b7999c630a729f6822c505",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 2, pose tropeco",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "a9f98c22-25c9-47d8-b89b-b76ebb2c93e3",
   "reference_job": "2d4269ed-8e09-43cc-b053-7016ad39f8e6+f58d5aa4-45a3-4548-b08a-d4bfcd202beb",
   "prompt_summary": "Look mostarda tropeco",
   "source_concept": "arte/rafa-look-03/conceitos/v01-tropeco-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-2-celebra.png",
   "sha256": "d82f11583f748debdefc81c5d7a2b6b044a55264ee4586d7e77817b1ef8fc5ec",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 2, pose celebra",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "4a97b74c-389e-43d1-a31a-9d3526616b43",
   "reference_job": "66f4712e-c1ee-4293-9b70-3c28230b966c+f58d5aa4-45a3-4548-b08a-d4bfcd202beb",
   "prompt_summary": "Look mostarda celebra",
   "source_concept": "arte/rafa-look-03/conceitos/v01-celebra-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-3-frente.png",
   "sha256": "34bb7f9f1037b206310752f1865f1cd97e89471be5a029501a65fcf0f9583fb7",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 3, pose frente",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "36ba8e36-2923-42ce-92d4-947f8ff516ca",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Look Novos horizontes: halter lilas, calca marinho, bolsa mostarda",
   "source_concept": "arte/rafa-look-04/conceitos/v01-frente-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-3-costas.png",
   "sha256": "d6af8b0db53b7510d54021099216e54fe302eec4df25565e14a97a018b5a7ce7",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 3, pose costas",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "e771915d-d357-4d96-9636-62fe262e9b78",
   "reference_job": "45e3d1e9-c1b6-408e-bf2a-d601fb2d1845+36ba8e36-2923-42ce-92d4-947f8ff516ca",
   "prompt_summary": "Look lilas/marinho de costas",
   "source_concept": "arte/rafa-look-04/conceitos/v01-costas-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-3-tropeco.png",
   "sha256": "937cd313e19c7c84f042863a31cf22cb57f706723b2938c349a169286722a11c",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 3, pose tropeco",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "5413e158-ef3e-45e3-861d-fae7332b0970",
   "reference_job": "2d4269ed-8e09-43cc-b053-7016ad39f8e6+36ba8e36-2923-42ce-92d4-947f8ff516ca",
   "prompt_summary": "Look lilas tropeco",
   "source_concept": "arte/rafa-look-04/conceitos/v01-tropeco-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/rafa-3-celebra.png",
   "sha256": "67a188537908ccb5b623cef7adb2be00d45bdbd1b4c09d01d09291d32f3472c6",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "sprite da Rafa em plano inclinado (billboard HD-2D), look 3, pose celebra",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "2c647536-e65e-4147-895c-00d2efa10b06",
   "reference_job": "66f4712e-c1ee-4293-9b70-3c28230b966c+36ba8e36-2923-42ce-92d4-947f8ff516ca",
   "prompt_summary": "Look lilas celebra",
   "source_concept": "arte/rafa-look-04/conceitos/v01-celebra-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/pagina.png",
   "sha256": "8e5fb511f1510a00bb1c50b4db0373b8c38949f1ade25c698c171dd6614beac9",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "billboard da página coletável (plano 3D girando) e ícone do HUD",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "e1522bd4-3d1a-4875-912b-34ad30720f90",
   "reference_job": null,
   "prompt_summary": "pagina dourada coletavel pixel art 32px",
   "source_concept": "arte/pagina/conceitos/v01-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/sprites/retrato.png",
   "sha256": "1c894d3ddbd0364e60658da9978d00a30c0731a51dcee427e61164c9bcaa1beb",
   "kind": "imagem 2D (pixel art) usada como billboard/UI",
   "use": "retrato no HUD e na tela inicial",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "014c2f6f-e079-40e3-999b-8609a9d12d5c",
   "reference_job": "d096b900-1660-4659-b182-0eb8ceb35df4",
   "prompt_summary": "Retrato busto pixel art com caderno",
   "source_concept": "arte/rafa-retrato/conceitos/v01-A.png",
   "processing": "tools/preparar_sprites.py: alfa binário (limiar 120), recorte, redução BOX para grade real de pixels (mesma escala em todas as poses), paleta de 40 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/tex/painel-ceu.png",
   "sha256": "511624816cdad6b31c4a1df3675ae4ffd418df4ea5a47599cb4cf6da12286307",
   "kind": "textura aplicada em mesh 3D",
   "use": "face pintada do painel de fundo deslizante (palco)",
   "origin": "gerado com IA",
   "tool": "Higgsfield",
   "model": "gpt_image_2_5",
   "variant": "sunburst",
   "quality": "max",
   "resolution": "1k",
   "job_id": "4723bc53-64f9-4ddb-8170-4b669bfe81fa",
   "prompt_summary": "painel de fundo longo deslizante com ceu estrelado",
   "source_concept": "arte/painel-palco/conceitos/v01-A.png",
   "processing": "retificação QUAD da face pintada, redução BOX para 192x48, paleta 32 cores",
   "license": "Gerado para este projeto via conta Higgsfield do usuário; uso conforme os termos do provedor. Nenhuma foto real foi enviada ao serviço.",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/ui/aviso.png",
   "sha256": "f431d563e87ccf811649888c9d12b582817b7342cf8bd6e1292932af99f922f5",
   "kind": "ícone de interface",
   "origin": "desenhado em código (pixel a pixel) para este projeto",
   "license": "Original do projeto",
   "use": "sinal de perigo anunciado no aviso da faixa de rajada",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "assets/capa.png",
   "sha256": "5d9c11b7ca52c1103f5aeaef712aef398ba7cb5d98e079944adc62236c4d7079",
   "kind": "captura do jogo",
   "origin": "captura do renderizador do jogo (Chromium headless, sem HUD)",
   "license": "Original do projeto",
   "use": "capa da coleção (cena real renderizada pelo próprio jogo)",
   "review": "approved_by_delegation_pending_user_review"
  },
  {
   "file": "vendor/three.module.min.js",
   "sha256": "08fd7545d13d2c7fb65ab691530a802dafefd638596501854f267d0fb13c39e7",
   "kind": "biblioteca",
   "origin": "Three.js r170, cópia local do módulo publicado (0.170.0)",
   "license": "MIT — vendor/THREE-LICENSE.txt"
  },
  {
   "file": "vendor/THREE-LICENSE.txt",
   "sha256": "f57eb9202058667d12aebd854fe8a86d6feaeab51078180df5615bfdbd5cff05",
   "kind": "licença",
   "origin": "texto da licença MIT do Three.js",
   "license": "MIT"
  },
  {
   "file": "fonts/PixelifySans.ttf",
   "sha256": "9ba86cd010a4de309d263ceff8e8044092c9db7efda869620cb9ff1c4389e8a5",
   "kind": "fonte",
   "origin": "Pixelify Sans (Stefie Justprince), cópia local",
   "license": "SIL Open Font License 1.1 — fonts/PixelifySans-OFL.txt",
   "use": "títulos e rótulos"
  },
  {
   "file": "fonts/PixelifySans-OFL.txt",
   "sha256": "b66ba46f511a851ab09998b5a5a9fdbb102545a3864cb993095e1745996873a7",
   "kind": "licença",
   "origin": "texto da SIL OFL 1.1",
   "license": "SIL OFL 1.1"
  },
  {
   "file": "props.js",
   "sha256": "5c2687e9ca16d4a52845120222634280360243942f9cd8101229bf1c3f0d0570",
   "kind": "código-fonte de arte/áudio",
   "origin": "escrito para este projeto (Claude, sessão claude-f7f6b03a)",
   "description": "Modelagem 3D procedural (mesh real): caneta-tinteiro, lápis, revoada de aviões de papel, livro-jangada, pilha de livros, estante, escrivaninha com abajur, poltrona, vaso; carrinho de cenário, painel de fundo, praticável, caixa de som, refletor, cortina, cones de luz; joaninha, caracol, lagarta, vitórias-régias com flor, arbusto, cogumelo, árvore, cerca, poste com lanterna, pedra, poste de aviso.",
   "license": "Original do projeto"
  },
  {
   "file": "textures.js",
   "sha256": "efa88f0dc2d3772575901b69e59ffc14cbca483486e30fe9bef6e8ddfd5131be",
   "kind": "código-fonte de arte/áudio",
   "origin": "escrito para este projeto (Claude, sessão claude-f7f6b03a)",
   "description": "Texturas pixel art procedurais em Canvas: assoalho, tapete, papel pautado, lombadas, couro, páginas, tablado, veludo, trilho, alto-falante, grama, terra, pedras, folhas, casca, vitória-régia, casco, concha, pele de lagarta, flores e tufos (billboards), aviso, nuvem pintada do carrinho de cenário.",
   "license": "Original do projeto"
  },
  {
   "file": "world3d.js",
   "sha256": "9c2f4a3234ad9355ab33a188207886f81c7574cb7a4d361bd8059d0e515b090a",
   "kind": "código-fonte de arte/áudio",
   "origin": "escrito para este projeto (Claude, sessão claude-f7f6b03a)",
   "description": "Cena, câmera perspectiva elevada, luzes, sombras, névoa, água animada (shader próprio), vegetação reativa, partículas, construção das faixas.",
   "license": "Original do projeto"
  },
  {
   "file": "post.js",
   "sha256": "2c5aefaa3f934ae977a3ef350499addbbd2d42246ab4ceba15c99280e1755f2e",
   "kind": "código-fonte de arte/áudio",
   "origin": "escrito para este projeto (Claude, sessão claude-f7f6b03a)",
   "description": "Pós-processamento próprio: bloom, desfoque de miniatura, vinheta, curva de tons.",
   "license": "Original do projeto"
  },
  {
   "file": "audio.js",
   "sha256": "83a3d4fdcf34fa0c39e4f15edb038137799d9937877a53983c2b557892d67ba3",
   "kind": "código-fonte de arte/áudio",
   "origin": "escrito para este projeto (Claude, sessão claude-f7f6b03a)",
   "description": "Trilha e efeitos sintetizados em Web Audio (sem arquivos de áudio).",
   "license": "Original do projeto"
  },
  {
   "file": "vitrine.html",
   "sha256": "2d1aa6a53cf12178fde6df93f3d4c4a2ca6575d706602ffbf824ecfe71af1f82",
   "kind": "código-fonte de arte/áudio",
   "origin": "escrito para este projeto (Claude, sessão claude-f7f6b03a)",
   "description": "Página de revisão: cada modelo 3D isolado girando, com medidas.",
   "license": "Original do projeto"
  },
  {
   "file": "assets/tutorial/objetivo.webm",
   "sha256": "b16559a84a309bb440319d4f754673a9cbf5097c75b8e1fd1506239abf1bd4ad",
   "bytes": 252470,
   "kind": "clipe do guia Como jogar: vídeo VP9 sem som (formato principal)",
   "use": "cartão \"O objetivo\" do guia Como jogar (2.2.0): A Rafa pula duas casas, pega uma página dourada e atravessa a faixa das canetas",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 4,0 s a partir do 1º pulo, recorte 480×360 em (400,132)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/objetivo.mp4",
   "sha256": "ebbe32f734371c2a9aa53323124385bdbc97b293c4f5622b99568fba470228fc",
   "bytes": 107497,
   "kind": "clipe do guia Como jogar: vídeo H.264 sem som (reserva para navegadores sem VP9)",
   "use": "cartão \"O objetivo\" do guia Como jogar (2.2.0): A Rafa pula duas casas, pega uma página dourada e atravessa a faixa das canetas",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 4,0 s a partir do 1º pulo, recorte 480×360 em (400,132)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/objetivo.webp",
   "sha256": "ade317c0a8d8bb6319d1c5aee10fe503a94475c0d660e1e77cc172679181028d",
   "bytes": 21968,
   "kind": "clipe do guia Como jogar: pôster (primeiro quadro exibido e imagem do modo com movimento reduzido)",
   "use": "cartão \"O objetivo\" do guia Como jogar (2.2.0): A Rafa pula duas casas, pega uma página dourada e atravessa a faixa das canetas",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 4,0 s a partir do 1º pulo, recorte 480×360 em (400,132)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/controles.webm",
   "sha256": "1b3136a83834aab5dbb46c5a1775b249aaa76a9a90b2327e38e4fde26cf1429c",
   "bytes": 280574,
   "kind": "clipe do guia Como jogar: vídeo VP9 sem som (formato principal)",
   "use": "cartão \"Os controles\" do guia Como jogar (2.2.0): A Rafa pula para a frente, para os lados e para trás",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 4,1 s, recorte 480×360 em (400,220)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/controles.mp4",
   "sha256": "60794da4d70013668dadd537113d3345a417cdc8b4770e2ac612ac690a30cd76",
   "bytes": 106704,
   "kind": "clipe do guia Como jogar: vídeo H.264 sem som (reserva para navegadores sem VP9)",
   "use": "cartão \"Os controles\" do guia Como jogar (2.2.0): A Rafa pula para a frente, para os lados e para trás",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 4,1 s, recorte 480×360 em (400,220)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/controles.webp",
   "sha256": "655147896ebacd9b4c534cc120715d87809c241ead826c080f7428e00e17b835",
   "bytes": 25242,
   "kind": "clipe do guia Como jogar: pôster (primeiro quadro exibido e imagem do modo com movimento reduzido)",
   "use": "cartão \"Os controles\" do guia Como jogar (2.2.0): A Rafa pula para a frente, para os lados e para trás",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 4,1 s, recorte 480×360 em (400,220)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/brecha.webm",
   "sha256": "9a2c2fb81b185d5b68ba47f91838fc21dbec474a57095414d53e02e407844e45",
   "bytes": 240661,
   "kind": "clipe do guia Como jogar: vídeo VP9 sem som (formato principal)",
   "use": "cartão \"Espere a brecha\" do guia Como jogar (2.2.0): A Rafa espera a caneta passar e atravessa as duas faixas de canetas pela brecha",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 3,4 s, recorte 480×360 em (400,150)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/brecha.mp4",
   "sha256": "646251a48fa19067138097821e5609af0f3b415a36fea76d8b8a4c89c99c9d7b",
   "bytes": 95729,
   "kind": "clipe do guia Como jogar: vídeo H.264 sem som (reserva para navegadores sem VP9)",
   "use": "cartão \"Espere a brecha\" do guia Como jogar (2.2.0): A Rafa espera a caneta passar e atravessa as duas faixas de canetas pela brecha",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 3,4 s, recorte 480×360 em (400,150)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/brecha.webp",
   "sha256": "c83db3a0d45e088c59e80fe16c3b9ddddf7467c7f4a8dd54f97ea5c5d7943dbd",
   "bytes": 23840,
   "kind": "clipe do guia Como jogar: pôster (primeiro quadro exibido e imagem do modo com movimento reduzido)",
   "use": "cartão \"Espere a brecha\" do guia Como jogar (2.2.0): A Rafa espera a caneta passar e atravessa as duas faixas de canetas pela brecha",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 3,4 s, recorte 480×360 em (400,150)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/rio.webm",
   "sha256": "583e5be051f1d8bca660083a944bd449f925a85b5baf87236e2aa2a4140943d2",
   "bytes": 248079,
   "kind": "clipe do guia Como jogar: vídeo VP9 sem som (formato principal)",
   "use": "cartão \"Pise nos livros\" do guia Como jogar (2.2.0): A Rafa sobe num livro no rio de tinta, é levada e pula para a margem",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 3,9 s, recorte 480×360 em (400,150)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/rio.mp4",
   "sha256": "0d059192c08fa9b61d62cc98fe3789a358f28e2b4b5b1aa6eb50adb3ae070b7e",
   "bytes": 99496,
   "kind": "clipe do guia Como jogar: vídeo H.264 sem som (reserva para navegadores sem VP9)",
   "use": "cartão \"Pise nos livros\" do guia Como jogar (2.2.0): A Rafa sobe num livro no rio de tinta, é levada e pula para a margem",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 3,9 s, recorte 480×360 em (400,150)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/rio.webp",
   "sha256": "48088990bef7b126ae32951515ab4c30769ca0294e5125b911f26c3d0431a910",
   "bytes": 23726,
   "kind": "clipe do guia Como jogar: pôster (primeiro quadro exibido e imagem do modo com movimento reduzido)",
   "use": "cartão \"Pise nos livros\" do guia Como jogar (2.2.0): A Rafa sobe num livro no rio de tinta, é levada e pula para a margem",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 3,9 s, recorte 480×360 em (400,150)",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/avisos.webm",
   "sha256": "c6f78cdda247b4aa88bfcb08f0678d652a702a79af8d3701be03fd24ee1fcc94",
   "bytes": 212286,
   "kind": "clipe do guia Como jogar: vídeo VP9 sem som (formato principal)",
   "use": "cartão \"Os dois avisos\" do guia Como jogar (2.2.0): A faixa do vento pisca, a revoada passa, aparece o aviso Avance! e a Rafa atravessa a tempo",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 6,0 s, recorte 640×440 em (320,290) reduzido a 480 px",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/avisos.mp4",
   "sha256": "4a01ad9c6e7acc4b83f66e2903922731b757e676ae529fcbc1840d3d9ec728f1",
   "bytes": 170981,
   "kind": "clipe do guia Como jogar: vídeo H.264 sem som (reserva para navegadores sem VP9)",
   "use": "cartão \"Os dois avisos\" do guia Como jogar (2.2.0): A faixa do vento pisca, a revoada passa, aparece o aviso Avance! e a Rafa atravessa a tempo",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 6,0 s, recorte 640×440 em (320,290) reduzido a 480 px",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "assets/tutorial/avisos.webp",
   "sha256": "38e41cae684cf5c406d38581ff2a718e04fe88160dc9714d3a7713e87b6af87b",
   "bytes": 23138,
   "kind": "clipe do guia Como jogar: pôster (primeiro quadro exibido e imagem do modo com movimento reduzido)",
   "use": "cartão \"Os dois avisos\" do guia Como jogar (2.2.0): A faixa do vento pisca, a revoada passa, aparece o aviso Avance! e a Rafa atravessa a tempo",
   "origin": "captura do próprio jogo (ferramenta: qa-browser + ffmpeg)",
   "tool": "ferramentas/qa-browser.mjs (Chromium headless com GPU, recordVideo) e ferramentas/fazer-clipe.mjs (ffmpeg: recorte, 480 px, 30 fps, VP9 + H.264 + pôster WebP)",
   "capture": "partida real a 1280×800 com entradas de teclado (semente 12, piloto de QA só decide a tecla); 6,0 s, recorte 640×440 em (320,290) reduzido a 480 px",
   "license": "Original do projeto (captura do próprio jogo)",
   "review": "agent_selected_pending_human_review"
  },
  {
   "file": "como-jogar/como-jogar.js",
   "sha256": "3b17cc5648df04f2f42b0aaa439ff7850f5e3a56f348cad39d923da8479a2389",
   "bytes": 10791,
   "kind": "biblioteca da coleção",
   "origin": "kit-tutorial da coleção Aldeias de Futuros (pacote de ajustes 01, 23/09/2026)",
   "description": "Guia \"Como jogar\" (cartões com clipe, navegação por setas/deslize, foco preso, Esc fecha): kit comum da coleção Aldeias de Futuros, copiado sem alterações.",
   "license": "Original do projeto (coleção Aldeias de Futuros)"
  },
  {
   "file": "como-jogar/como-jogar.css",
   "sha256": "7f939a74015c5e86440a353e22e6508495f571e639ad8abd771777ef7e275402",
   "bytes": 5723,
   "kind": "biblioteca da coleção",
   "origin": "kit-tutorial da coleção Aldeias de Futuros (pacote de ajustes 01, 23/09/2026)",
   "description": "Estilo do guia \"Como jogar\" do kit comum da coleção; cores e fontes ajustadas por variáveis em style.css.",
   "license": "Original do projeto (coleção Aldeias de Futuros)"
  }
 ]
}