# PR-032 - Backend BytecodeModule Serializer Baseline ## Briefing Implementar a base de marshaling binario de `BytecodeModule` no compilador, alinhada ao contrato v1 de `const_pool`, `functions`, `code`, `exports`, `syscalls` e secao `SYSC` obrigatoria. ## Target - Criar modelo interno de emissao de `BytecodeModule` no backend Java. - Implementar serializacao little-endian com tabela de secoes deterministica. - Garantir `SYSC` sempre presente no artefato pre-load, inclusive vazia. ## Method - Introduzir pacote backend de bytecode com modelos equivalentes aos campos normativos da spec 15. - Implementar serializer com layout de header e secoes deterministico. - Introduzir erros deterministas de formato (`MARSHAL_FORMAT_*`) para falhas detectaveis antes da escrita final. - Referenciar comportamento-alvo dos contratos existentes em `../runtime/crates/console/prometeu-bytecode/src/model.rs`. ## Acceptance Criteria 1. O backend serializa `BytecodeModule` sempre em little-endian. 2. A secao `SYSC` e sempre emitida. 3. Mesma entrada produz bytes identicos. 4. Erros de formato em dados invalidos sao deterministicos e estaveis. ## Tests 1. Teste unitario de serializacao minima (sem syscalls) com `SYSC` vazio presente. 2. Teste unitario de determinismo de bytes para mesma entrada. 3. Teste unitario de rejeicao `MARSHAL_FORMAT_*` para dados malformados detectaveis no emitter. ## Affected Documents - `docs/general/specs/15. Bytecode and PBX Mapping Specification.md` - `docs/general/specs/19. Verification and Safety Checks Specification.md`