prometeu-studio/docs/compiler/pbs/pull-requests/PR-19.8-pbs-lowering-published-wrapper-entrypoint-zero-and-frame-ret.md

71 lines
2.1 KiB
Markdown

# PR-19.8 - PBS Lowering for Published Wrapper, Entrypoint Zero, and FRAME_RET
## Briefing
Com globals e callables sinteticos explicitos no `IRBackend`, a proxima PR fecha a publicacao executavel da linha `19`:
1. wrapper sintetico publicado,
2. boot guard one-shot,
3. project/module init orchestration,
4. `[Frame]` do usuario como root logico,
5. `FRAME_RET` no wrapper,
6. entrypoint fisico `0`.
## Target
Implementar a publicacao executavel final alinhada as decisions `19.2`, `19.3` e `19.4`.
## Dependencies
Prerequisitos diretos:
1. `PR-19.7`
2. runtime boot protocol ja implementado/alinhado fora deste dominio
## Scope
1. Materializar `BOOT_GUARD` oculto.
2. Compor file init fragments, module init, project init e user `[Frame]` no wrapper final.
3. Publicar o wrapper como root fisico em `func_id = 0`.
4. Mover `FRAME_RET` para o wrapper.
5. Remover qualquer dependencia restante de autoridade de entrypoint em `FrontendSpec` para PBS.
## Non-Goals
1. Nao alterar runtime nesta PR.
2. Nao produzir `learn`.
3. Nao fechar sozinho toda a matriz de conformance final.
## Method
1. Compor o wrapper em ordem semantica fechada nas decisions.
2. Garantir one-shot boot via hidden guard.
3. Tratar `[Frame]` como callable logical-root invocado pelo wrapper, nao como entrypoint fisico publicado.
## Acceptance Criteria
1. O wrapper sintetico publicado existe no artifact executavel.
2. O wrapper ocupa `func_id = 0`.
3. `FRAME_RET` aparece no wrapper path, nao no final do body do user `[Frame]`.
4. Boot/inits executam uma unica vez.
5. O pipeline PBS deixa de depender de autoridade de entrypoint em `FrontendSpec`.
## Tests
1. Fixtures de artifact/lowering provando:
- wrapper publicado,
- boot guard,
- entrypoint `0`,
- `FRAME_RET` no wrapper.
2. Integracao compiler/runtime se o harness local ja estiver disponivel no studio.
## Affected Artifacts
1. lowering PBS -> `IRBackend`/`IRVM`
2. publication contract no pipeline do compiler
3. pontos PBS que ainda assumam `FrontendSpec` como autoridade de entrypoint
## Open Questions
1. Nenhuma. A evidencia final fica para `PR-19.9`.