62 lines
2.1 KiB
Markdown
62 lines
2.1 KiB
Markdown
# 016 Asset Codec `NONE` Runtime and Tests
|
|
|
|
## Briefing
|
|
|
|
Com a decision `013`, o runtime deve migrar o valor canonico de `codec` para `NONE` sem quebrar a transicao curta a partir de `RAW`.
|
|
|
|
Esta PR executa a propagacao em codigo, fixtures e testes do runtime.
|
|
|
|
## Decisions de Origem
|
|
|
|
- `docs/runtime/decisions/013-asset-codec-none-vs-raw.md`
|
|
|
|
## Alvo
|
|
|
|
Atualizar o runtime para que:
|
|
|
|
1. `NONE` seja aceito como valor principal de `codec`;
|
|
2. `RAW` seja aceito apenas como alias legado durante a janela curta de transicao;
|
|
3. fixtures e testes passem a publicar `NONE` como valor canonico;
|
|
4. `TILES` e `SOUNDS` fiquem coerentes com a decision.
|
|
|
|
## Escopo
|
|
|
|
- atualizar `crates/console/prometeu-drivers/src/asset.rs`
|
|
- atualizar fixtures/testes em `prometeu-drivers`, `prometeu-hal` e `prometeu-system`
|
|
- ajustar comentarios inline onde `RAW` ainda apareca como valor canonico
|
|
|
|
## Fora de Escopo
|
|
|
|
- remover imediatamente a compatibilidade com `RAW`
|
|
- alterar packer
|
|
- introduzir novos codecs
|
|
- mudar contratos de layout de `TILES` ou `SOUNDS`
|
|
- publicar banks genericos novos como `BLOB`
|
|
|
|
## Plano de Execucao
|
|
|
|
1. Atualizar o path de resolucao de `codec` para aceitar `NONE` como valor canonico.
|
|
2. Preservar `RAW` como alias legado durante a transicao curta.
|
|
3. Migrar fixtures e testes para emitir `NONE`.
|
|
4. Revisar comentarios e exemplos inline para remover `RAW` como default canonico.
|
|
5. Validar que `TILES` e `SOUNDS` continuam operando sem regressao comportamental.
|
|
|
|
## Criterios de Aceite
|
|
|
|
- runtime aceita `NONE` em `TILES` e `SOUNDS`
|
|
- runtime continua aceitando `RAW` apenas como alias legado
|
|
- fixtures e testes passam a usar `NONE` como valor canonico
|
|
- nenhum comentario ou helper novo reforca `RAW` como valor principal
|
|
|
|
## Tests / Validacao
|
|
|
|
- testes unitarios do asset loader
|
|
- testes do runtime/VM que passam por asset loading
|
|
- revisao de fixtures de cartridge/asset metadata
|
|
|
|
## Riscos
|
|
|
|
- deixar paths diferentes tratando `NONE` e `RAW` de forma inconsistente
|
|
- migrar fixtures parcialmente e mascarar regressao real
|
|
- prolongar compatibilidade legacy sem rastro claro para remocao futura
|