2.0 KiB
2.0 KiB
| id | ticket | title | status | created | ref_decisions | tags | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PLN-0101 | pbs-symbol-documentation-and-hover-markdown | Protect runtime artifacts from Doc metadata lowering | done | 2026-07-15 |
|
|
Briefing
Guard the decision that [Doc] is compile/editor metadata and must not be lowered into runtime artifacts by default.
Objective
Ensure documentation metadata does not affect IR, bytecode, cartridge output, stack behavior, or runtime validation.
Dependencies
- Depends on
PLN-0097. - Should be validated before end-to-end conformance closure.
Scope
- Confirm lowering ignores
Docmetadata. - Add regression tests comparing runtime-facing output with and without docs where practical.
- Protect constant pool and cartridge artifacts from documentation payload bloat.
Non-Goals
- Define a future packaging format for documentation.
- Remove compiler/editor metadata before LSP consumption.
Execution Method
- Inspect PBS lowering paths under
prometeu-compiler/frontends/prometeu-frontend-pbs/src/main/java/p/studio/compiler/pbs/lowering. - Ensure documented declarations lower identically to undocumented declarations for runtime-facing IR/backend artifacts.
- Add golden or structural tests comparing compiled output for equivalent documented and undocumented programs.
- Ensure large documentation payloads do not appear in runtime constant pools unless a future decision explicitly changes that.
Acceptance Criteria
- Runtime-facing artifacts are unchanged by adding
[Doc]. - Compiler/editor metadata remains available before lowering for LSP/editor consumers.
- Golden artifact tests or equivalent regression tests cover this boundary.
Tests
PbsGoldenArtifactsTest- Backend/lowering tests relevant to PBS IR output.
- Any artifact comparison test already used by the compiler frontend.
Affected Artifacts
- PBS lowering package
- Golden artifact test resources if needed
- Compiler backend artifact tests