100 lines
2.7 KiB
Markdown
100 lines
2.7 KiB
Markdown
---
|
|
id: PLN-0115
|
|
ticket: multi-frontend-remove-pbs-branches
|
|
title: Migrate signature help to generic frontend models
|
|
status: open
|
|
created: 2026-07-15
|
|
ref_decisions: [DEC-0042]
|
|
tags: [compiler, compiler-general, compiler-pbs, studio, frontend, coupling, multi-frontend]
|
|
---
|
|
|
|
## Briefing
|
|
|
|
`DEC-0042` requires signature help to be exposed through generic frontend models rather than PBS-specific editorial models.
|
|
|
|
## Objective
|
|
|
|
Migrate LSP signature help handling to generic frontend signature-help models while preserving PBS callable labels, parameter labels, active signature, and active parameter behavior.
|
|
|
|
## Dependencies
|
|
|
|
- Depends on `PLN-0111`.
|
|
- Should run after `PLN-0114` because hover and signature help may share generic signature DTOs.
|
|
|
|
## Scope
|
|
|
|
- Map PBS signature help to generic `FrontendSignatureHelp` and `FrontendSignature`.
|
|
- Update LSP signature-help mapping to consume generic models.
|
|
- Preserve deterministic empty signature help when unsupported.
|
|
|
|
## Non-Goals
|
|
|
|
- Changing PBS callable resolution.
|
|
- Changing parameter-name semantics.
|
|
- Adding parameter documentation beyond existing behavior.
|
|
- Removing all PBS imports from LSP if other capabilities are still pending.
|
|
|
|
## Execution Method
|
|
|
|
1. Inspect current `PBSFrontendLanguageService.signatureHelp(...)` and `PbsEditorialSignatureHelp`.
|
|
2. Ensure generic `FrontendSignatureHelp` represents signatures, active signature, active parameter, labels, and parameter labels.
|
|
3. Add PBS mapping to generic signature help inside the PBS frontend boundary.
|
|
4. Update `CompilerLanguageServiceBridge.signatureHelp(...)` to call generic signature-help capability.
|
|
5. Preserve empty response behavior for absent language service or absent signature-help capability.
|
|
6. Verify completion/hover shared signature models still satisfy their tests.
|
|
|
|
## Acceptance Criteria
|
|
|
|
- LSP signature help no longer consumes PBS-specific signature-help types.
|
|
- PBS signature-help output remains stable.
|
|
- Active signature and active parameter are preserved.
|
|
- Compile-only providers receive deterministic empty signature help.
|
|
|
|
## Tests
|
|
|
|
- PBS signature-help/editorial tests.
|
|
- LSP signature-help bridge tests.
|
|
- Missing capability fallback tests.
|
|
- Regression tests for callable parameter labels.
|
|
|
|
## Affected Artifacts
|
|
|
|
- `prometeu-compiler/prometeu-frontend-api/src/main/java/p/studio/compiler/services/...`
|
|
- `prometeu-compiler/frontends/prometeu-frontend-pbs/src/main/java/p/studio/compiler/PBSFrontendLanguageService.java`
|
|
- `prometeu-lsp/prometeu-lsp-v1/src/main/java/p/studio/lsp/services/compiler/CompilerLanguageServiceBridge.java`
|
|
- Signature-help tests.
|
|
|
|
TBD.
|
|
|
|
## Objective
|
|
|
|
TBD.
|
|
|
|
## Dependencies
|
|
|
|
TBD.
|
|
|
|
## Scope
|
|
|
|
TBD.
|
|
|
|
## Non-Goals
|
|
|
|
TBD.
|
|
|
|
## Execution Method
|
|
|
|
TBD.
|
|
|
|
## Acceptance Criteria
|
|
|
|
TBD.
|
|
|
|
## Tests
|
|
|
|
TBD.
|
|
|
|
## Affected Artifacts
|
|
|
|
TBD.
|