# PR-05.0.5 - Synthetic Stdlib FileId via FileTable

## Briefing

`InterfaceModuleLoader` hoje aloca `FileId` sintetico por `AtomicInteger`.

Esta PR move a alocacao de arquivos sinteticos para o `FileTable`, mantendo uma unica autoridade de identidade de arquivo.

## Motivation

### Dor que esta PR resolve

1. Risco de colisao/deriva de `FileId` fora da infraestrutura oficial.
2. Arquivos sinteticos ficam fora da trilha normal de metadata de source.
3. Diagnosticos e spans de stdlib perdem consistencia de origem no pipeline.

## Target

Fazer todo `FileId` (incluindo sintetico) vir do `FileTable`.

## Scope

1. `InterfaceModuleLoader`.
2. Contexto de carga de stdlib/interface para suportar registro no `FileTable`.
3. Source handle sintetico minimo para parser/diagnostico.

## Non-Goals

1. Nao altera conteudo dos modulos stdlib.
2. Nao altera parse mode de interface.

## Method

### O que deve ser feito explicitamente

1. Criar `SourceHandle` sintetico para fontes carregadas da stdlib/interface.
2. Registrar cada handle no `FileTable` e usar `FileId` retornado.
3. Remover contador `AtomicInteger` de `InterfaceModuleLoader`.
4. Preservar caminho lógico para mensagens (ex.: origem virtual stdlib).

## Acceptance Criteria

1. `InterfaceModuleLoader` nao usa mais `new FileId(...)`.
2. Todo `FileId` de stdlib/interface existe no `FileTable`.
3. Diagnosticos em fontes sinteticas mantem atribuicao consistente.

## Tests

1. Teste de carga de interface garantindo que `FileId` sintetico foi registrado no `FileTable`.
2. Teste de span/diagnostico para arquivo sintetico.

## Affected Documents

1. `docs/pbs/specs/11. AST Specification.md`
2. `docs/pbs/specs/13. Lowering IRBackend Specification.md`

## Open Questions

Sem bloqueios arquiteturais.
