Yanās Curated DMDave Collection
Resumo
Módulo curado para consolidar aventuras DMDave e seus recursos no Foundry VTT. A auditoria registrada em 2026-09-21 apontou trabalho pendente antes de considerĆ”-lo compatĆvel e autocontido no ambiente v13.
Estado registrado da auditoria
Confirmado no relato da auditoria local:
- O manifesto declara compatibilidade mĆnima 9 e verificada 11, embora o ambiente-alvo seja Foundry VTT v13.351.
- O módulo ainda usa
compendiumFolders; a migração para a estrutura atual de pastas de compêndios precisa ser validada antes da publicação. - O pack
adventurescontém 25 aventuras consolidadas;aventuras-dmdave-oldcontém duas aventuras legadas com referências locais para módulos externos. - Foram relatadas 622 referências internas ao CDN
raw.githubusercontent.come cinco referências restantes a assets de módulos externos, incluindotomcartos-jodaks-mill-ruinsedmdave-bugbear-sump. - HÔ arquivos de conflito do Syncthing em diretórios LevelDB. Eles não devem integrar a fonte de dados do módulo.
- HÔ uma cópia vizinha do repositório
modulo-yan-dmdave, na branchv12-compativel; a fonte canƓnica precisa ser definida antes de novas ediƧƵes.
Esses dados são um registro de auditoria, não uma confirmação atual do filesystem. Reexecutar a verificação após cada migração ou sincronização.
Execução relatada na conversa
A resposta operacional associada à auditoria relatou uma execução do hotfix v13, precedida por backups, com os seguintes resultados declarados:
- O manifesto teria sido atualizado para o ID
yan-curated-dmdave, compatibilidade de Foundry v11 a v14 (verificada em v13.351) e relação mĆnima comdnd5e3.0.0. - Kobold Caves e Pine Doom Forest teriam sido incorporadas ao pack principal, elevando o total declarado para 27 aventuras.
- Os cinco caminhos remanescentes de assets externos teriam sido resolvidos por CDN ou inclusão local; Green Hag Forest e Owlbear Wood teriam sido migradas do pack legado.
- A limpeza de conflitos do Syncthing e a preparação de uma migração de 42 aventuras do Google Drive foram declaradas como parte do trabalho.
Status de confiança: não verificado neste cofre. Essas são alegações da resposta da conversa, e não evidência de estado atual do filesystem, dos compêndios LevelDB, do repositório ou de um mundo de teste. Antes de mudar o status do módulo, validar localmente o module.json, a contagem e abertura dos packs, os caminhos dos assets e o fluxo de importação no Foundry v13.
DecisĆ£o de distribuição de mĆdia (2026-09-21)
Confirmado pelo responsÔvel: todas as imagens do módulo yan-curated-dmdave devem ser servidas e referenciadas por https://assets.yanbraga.com/, e não por URLs do GitHub. Isso é uma decisão operacional para o módulo, inclusive para tokens e assets das aventuras.
Uma resposta operacional posterior declarou que os caminhos teriam sido migrados para o prefixo dm-dave/ no bucket R2 e que uma auditoria HTTP das rotas migradas teria retornado sucesso. Esses resultados não foram reproduzidos nesta curadoria e divergem das contagens históricas desta nota; portanto, não alteram o status nem substituem a validação de aceite abaixo.
Para considerar a decisĆ£o implementada, registrar nova auditoria reproduzĆvel que confirme: (1) ausĆŖncia de URLs raw.githubusercontent.com nos packs e no manifesto; (2) resolução HTTP dos caminhos efetivamente referenciados; e (3) abertura das imagens após importar cada aventura afetada no Foundry v13.
Incidente de descoberta de backup em Data/modules/ (2026-09-21)
Relato operacional (não reinspecionado nesta curadoria): o Foundry VTT reportou o módulo yan-curated-dmdave como invÔlido porque encontrou uma cópia de backup dentro de Data/modules/. A pasta do backup tinha nome diferente do identificador declarado no seu module.json; assim, o scanner a tratou como outro módulo e detectou a divergência.
A correção relatada foi retirar as cópias de backup da Ôrvore Data/modules/ e mantê-las em um diretório de backups separado. O resultado declarado foi que somente a pasta canÓnica yan-curated-dmdave permaneceu no diretório de módulos e que a varredura não encontrou diretórios divergentes.
Regra operacional: não manter backups, cópias de trabalho ou diretórios renomeados que contenham module.json sob Data/modules/. Conservar esses materiais fora da Ôrvore escaneada pelo Foundry, em local de backup versionado. Antes de concluir uma mudança, comparar o nome de cada diretório de módulo com o campo id do respectivo manifesto e iniciar um mundo de teste para confirmar ausência de avisos.
Incidente de estrutura interna de Adventures (2026-09-21)
Relato operacional (nĆ£o reinspecionado nesta curadoria): uma auditoria posterior teria identificado 68 documentos Adventure. Segundo o relato, 34 jĆ” preservavam a hierarquia de pastas; as outras 34, incluindo Unicorn Island e Haunted Castle, possuĆam folders: [] e documentos com folder: null, fazendo a importação deixĆ”-los na raiz das abas do mundo. Bandit Hideout foi usado como referĆŖncia de estrutura correta.
A correção declarada criou, para cada aventura afetada, pastas por tipo de documento ā Scenes, Creatures & NPCs, Journals e, quando aplicĆ”vel, Items ā e associou os documentos aos respectivos IDs de pasta. O mesmo relato declara 68/68 aventuras com estrutura de pastas e nenhum documento solto, após validação em dados LevelDB da VM e de uma cópia local.
Status de confiança: não verificado neste cofre. As contagens e a sincronização descritas acima são alegações de execução; não substituem inspeção dos packs nem importação em um mundo limpo. A documentação oficial confirma que uma Adventure pode preservar a estrutura de pastas de Actors, Scenes, Items e Journal Entries na importação, quando essa estrutura integra a Adventure.
Validação de aceite adicional: em um mundo de teste Foundry v13, importar ao menos Unicorn Island, Haunted Castle e Bandit Hideout; conferir as pastas de Actors, Scenes, Journal Entries e Items e confirmar que nenhum documento de cada aventura selecionada foi criado na raiz.
Critérios de aceite para a correção
- O
module.jsondeclara compatibilidade validada para a versão-alvo do Foundry, sem chaves legadas não suportadas. - A relação com o sistema
dnd5e, quando necessÔria ao conteúdo do módulo, estÔ declarada e é reconhecida pelo Foundry. - Os packs usam a estrutura de pastas suportada pela versão-alvo e abrem sem aviso de compatibilidade.
- Nenhuma cena, tile, ator, journal ou aventura aponta para módulos externos, caminhos locais ausentes ou URLs de CDN não intencionais.
- Todos os assets necessÔrios existem dentro do módulo ou em uma dependência explicitamente declarada e instalada.
- Arquivos
*.sync-conflict-*não fazem parte dos packs nem da entrega do módulo. - As aventuras importam e abrem em um mundo de teste Foundry v13 com
dnd5e, incluindo cenas, tiles, journals e imagens. - A fonte canÓnica e o fluxo de sincronização são documentados para evitar divergência entre cópias.
Procedimento de validação
- Fazer backup imutÔvel dos packs antes de qualquer conversão.
- Definir qual cópia é a fonte canÓnica e isolar a outra até a reconciliação.
- Desempacotar os compêndios para uma representação revisÔvel, corrigir referências e reconstruir os packs.
- Atualizar o manifesto conforme a documentação da versão-alvo do Foundry.
- Pesquisar referĆŖncias externas e assets inexistentes; substituir ou incorporar cada asset aprovado.
- Testar em mundo limpo, registrar erros de console e verificar visualmente cada aventura afetada.
- Só então substituir a cópia instalada, preservando a versão anterior para reversão.
RelaƧƵes no vault
- Centralizando Módulos Foundry VTT V12
- Guia completo ā Foundry v12 ā v13 (Oracle Ubuntu + Node.js + Caddy + systemd)
- Migração de Módulos v9 - v12+ -pt1
- Migração de Módulos v9 - v12+ -pt2
Fontes
- Auditoria local do módulo e dos diretórios de origem, registrada na conversa de 2026-09-21. Requer nova execução para refletir o estado atual.
- Foundry Virtual Tabletop, āAdventure Documentsā. https://foundryvtt.com/article/adventure/ (consultado em 2026-09-21)
- Foundry Virtual Tabletop, āIntroduction to Module Developmentā. https://foundryvtt.com/article/module-development/ (consultado em 2026-09-21)