1.5 KiB
1.5 KiB
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
BytecodeModuleno backend Java. - Implementar serializacao little-endian com tabela de secoes deterministica.
- Garantir
SYSCsempre 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
- O backend serializa
BytecodeModulesempre em little-endian. - A secao
SYSCe sempre emitida. - Mesma entrada produz bytes identicos.
- Erros de formato em dados invalidos sao deterministicos e estaveis.
Tests
- Teste unitario de serializacao minima (sem syscalls) com
SYSCvazio presente. - Teste unitario de determinismo de bytes para mesma entrada.
- Teste unitario de rejeicao
MARSHAL_FORMAT_*para dados malformados detectaveis no emitter.
Affected Documents
docs/general/specs/15. Bytecode and PBX Mapping Specification.mddocs/general/specs/19. Verification and Safety Checks Specification.md