45 lines
1.3 KiB
Markdown
45 lines
1.3 KiB
Markdown
# PR-013 - PBS Unresolved Import Diagnostics
|
|
|
|
## Briefing
|
|
|
|
Import resolution currently ignores missing target modules in frontend linking validation. This PR enforces deterministic diagnostics for unresolved module imports and unresolved imported symbols.
|
|
|
|
## Motivation
|
|
|
|
Silent import misses break the diagnostics contract and defer user-actionable errors.
|
|
|
|
## Target
|
|
|
|
- Module import validation in `PbsModuleVisibilityValidator`.
|
|
- Linking diagnostic coverage for import failures.
|
|
|
|
## Scope
|
|
|
|
- Emit errors for missing target module references.
|
|
- Keep existing public-symbol checks.
|
|
- Preserve deterministic, source-first attribution.
|
|
|
|
## Method
|
|
|
|
- Extend import validation to detect absent target modules.
|
|
- Report diagnostics on the importing site.
|
|
- Keep related-span behavior where applicable.
|
|
|
|
## Acceptance Criteria
|
|
|
|
- Importing a non-existent module always emits deterministic linking/import diagnostic.
|
|
- Importing a non-public symbol still emits existing diagnostic.
|
|
- Diagnostic attribution points to import site.
|
|
- No silent pass for unresolved imports remains.
|
|
|
|
## Tests
|
|
|
|
- Add tests for missing module import.
|
|
- Add tests for missing symbol import in existing module.
|
|
- Verify phase and diagnostic code stability.
|
|
|
|
## Non-Goals
|
|
|
|
- Full manifest/dependency resolver redesign.
|
|
- Loader/runtime capability checks.
|