prometeu-studio/docs/pbs/pull-requests/PR-O4.6-strict-bytecode-precheck-unknown-opcode-rejection.md
2026-03-24 13:42:27 +00:00

30 lines
981 B
Markdown

# PR-O4.6 - Strict Bytecode Precheck and Unknown Opcode Rejection
## Briefing
Endurecer precheck/verifier de artefato para rejeitar opcodes desconhecidos e instruções malformadas, removendo comportamento permissivo por `default-size`.
## Target
- `BytecodeLinkPrecheckService`.
- `BytecodePreloadVerifierService`.
- Taxonomia de erros `MARSHAL_VERIFY_PRECHECK_*`.
## Method
- Substituir `default -> 2` por tabela explícita de opcodes válidos por profile.
- Rejeitar opcode desconhecido com erro dedicado e pc apontado.
- Validar tamanhos de instrução somente para opcodes reconhecidos.
## Acceptance Criteria
- Opcode não reconhecido falha deterministicamente no precheck/verifier.
- Não há avanço silencioso sobre bytecode inválido.
- Mensagens/códigos de erro estáveis por classe de falha.
## Tests
- Fixtures com opcode inválido no meio de função.
- Casos de truncamento de imediato para opcode conhecido.
- Regressão para bytecode válido existente.