prometeu-studio/docs/pbs/pull-requests/PR-O1.3-pbs-executable-lowering-fidelity.md

31 lines
1.2 KiB
Markdown

# PR-O1.3 - PBS Executable Lowering Fidelity
## Briefing
Elevar fidelidade do lowering executavel no frontend PBS para garantir classificacao correta de callsites e eliminacao de heuristicas que possam produzir `callee` ambiguo (`<unknown>`) no `IRBackend`.
## Target
- `prometeu-compiler/frontends/prometeu-frontend-pbs` (`PbsFrontendCompiler`).
- Coleta/travessia de callsites em blocos/expressoes compostas.
- Integracao com metadado reservado host/intrinsic.
## Method
- Revisar travessia de AST para callsites com foco em completude e null-safety.
- Substituir fallback ambiguo por rejeicao diagnostica deterministica quando identidade nao puder ser resolvida.
- Garantir ordenacao deterministica de instrucoes coletadas para o mesmo AST admitido.
## Acceptance Criteria
- Frontend nao emite callsite executavel com callee ambiguo.
- Chamadas host/intrinsic sao classificadas sem heuristica textual fragil.
- Coleta de callsites em `if/switch/handle/block expr` permanece deterministica.
- Casos sem resolucao de identidade falham com diagnostico estavel.
## Tests
- Novos testes em `PbsFrontendCompilerTest` para callsites complexos.
- Regressao para `handle/switch` com blocos terminais.
- Fixture negativa para callee nao-resolvido no lowering executavel.