prometeu-studio/docs/pbs/pull-requests/PR-O4.2-global-intrinsic-table-and-reindexing.md
2026-03-24 13:42:27 +00:00

1.3 KiB

PR-O4.2 - Global Intrinsic Table and Reindexing

Briefing

Consolidar IDs de intrínsecos em escopo global de build para impedir drift de IDs entre módulos e manter mapeamento canônico estável.

Target

  • PBSFrontendPhaseService e IRBackendAggregator.
  • Modelo de saída IRBackend para carregar pool global de intrínsecos.
  • CALL_INTRINSIC no FE/BE.
  • Infra source/tables de intrínsecos já existente.

Method

  • Promover IntrinsicTable para escopo de agregação (não por arquivo).
  • Agregador constrói intrinsic_pool global (IntrinsicId -> IntrinsicReference).
  • Reindexar CALL_INTRINSIC de módulos compilados para o pool global antes do handoff ao backend.
  • Tornar explícito no contrato que intrinsicId é relativo ao pool global de build.

Acceptance Criteria

  • Mesmo intrínseco em módulos distintos referencia o mesmo IntrinsicId final.
  • Não existe colisão/duplicação de id para referências canônicas iguais.
  • Artifact produzido mantém IDs estáveis no mesmo input graph.
  • Backend não precisa inferir/normalizar ids de intrínseco em runtime.

Tests

  • Caso multi-módulo com intrínseco repetido e intrínsecos distintos.
  • Teste de reindex determinístico em ordem diferente de compilação.
  • Regressão para caminho de emissão e Gate I com intrínsecos.