31 lines
1.1 KiB
Markdown
31 lines
1.1 KiB
Markdown
# PR-O3.2 - Bytecode ConstPool and Symbol Interning Determinism
|
|
|
|
## Briefing
|
|
|
|
Estabelecer estrategia deterministica de internacao para constantes/simbolos no emissor, reduzindo redundancia e preparando evolucao do formato sem quebrar reproducibilidade.
|
|
|
|
## Target
|
|
|
|
- `BytecodeEmitter` e mapeamento de `const_pool`/simbolos.
|
|
- Contratos internos de deduplicacao e ordem de materializacao.
|
|
- Testes de reproducibilidade de modulo.
|
|
|
|
## Method
|
|
|
|
- Definir politica canonical para internacao (tipo + valor + ordem deterministica).
|
|
- Materializar indices finais em etapa unica de fechamento do artefato.
|
|
- Garantir bytecode identico para entradas semanticamente identicas.
|
|
|
|
## Acceptance Criteria
|
|
|
|
- `const_pool` nao depende de ordem incidental de estruturas nao deterministicas.
|
|
- Emissoes repetidas do mesmo input produzem bytes identicos.
|
|
- Duplicacao desnecessaria de constantes e reduzida sem alterar semantica.
|
|
- Falhas de internacao invalidas retornam erro deterministico.
|
|
|
|
## Tests
|
|
|
|
- Testes de snapshot binario para entradas repetidas.
|
|
- Casos com constantes repetidas em multiplas funcoes.
|
|
- Testes negativos para entradas de constante fora de contrato.
|