3.4 KiB
3.4 KiB
| id | ticket | title | status | created | ref_decisions | tags | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PLN-0116 | multi-frontend-remove-pbs-branches | Remove PBS imports from common LSP and add boundary coverage | open | 2026-07-15 |
|
|
Briefing
After generic editorial DTOs and LSP capabilities are migrated, DEC-0042 requires the common LSP path to stop importing PBS implementation packages and to propagate enforcement to the architectural-tests track.
Objective
Remove remaining PBS implementation imports from common LSP code and add regression coverage proving LSP uses frontend/provider contracts instead of PBS internals.
Dependencies
- Depends on
PLN-0111throughPLN-0115. - Coordinates with
AGD-0067for broader architectural-test policy.
Scope
- Remove
p.studio.compiler.pbs.*imports from the commonCompilerLanguageServiceBridgepath. - Remove direct use of
PbsAst.File,PbsEditorial*, andPBSFrontendPhaseService.semanticReadSurface(...)from common LSP code. - Add local boundary tests or feed the final rule into the architectural-tests discussion.
- Preserve PBS default/fallback behavior for no explicit language choice.
Non-Goals
- Removing PBS from composition root, templates, fixtures, VS Code
.pbsregistration, semantic keys, or PBS frontend internals. - Changing unknown
languageIdfailure behavior. - Introducing ArchUnit unless
AGD-0067chooses it. - Implementing new LSP features.
Execution Method
- Search
prometeu-lsp/prometeu-lsp-v1/src/main/javaforp.studio.compiler.pbs,PbsAst,PbsEditorial, andPBSFrontendPhaseService. - Replace remaining common-path dependencies with generic frontend language-service calls.
- If any PBS adapter remains, move it behind an explicitly local adapter boundary and document why it is temporary.
- Add or update tests using a compile-only or fake provider to prove semantic tokens, completion, hover, and signature help do not require PBS.
- Add a simple import-boundary test if one can be implemented without new infrastructure; otherwise update
AGD-0067/derived plan with the exact rule. - Run relevant LSP and PBS regression tests.
Acceptance Criteria
- Common LSP production code does not import
p.studio.compiler.pbs.*. - Common LSP production code does not know
PbsAst.File,PbsEditorial*, orPBSFrontendPhaseService. - Unknown
languageIdstill fails explicitly. - PBS remains product default/fallback when no language is chosen.
- Tests prove missing language-service capabilities produce deterministic fallback responses.
- Architectural-test follow-up is recorded for any repository-wide import rule not implemented locally.
Tests
prometeu-lsptests.- PBS frontend editorial regression tests.
- Provider boundary tests with compile-only/fake providers.
- Import-boundary test for common LSP code if feasible.
Affected Artifacts
prometeu-lsp/prometeu-lsp-v1/src/main/java/p/studio/lsp/services/compiler/CompilerLanguageServiceBridge.javaprometeu-lsp/prometeu-lsp-v1/src/test/java/p/studio/lsp/services/compiler/CompilerLanguageServiceBridgeTest.java- Architectural-test discussion or future plan from
AGD-0067
TBD.
Objective
TBD.
Dependencies
TBD.
Scope
TBD.
Non-Goals
TBD.
Execution Method
TBD.
Acceptance Criteria
TBD.
Tests
TBD.
Affected Artifacts
TBD.