-
Notifications
You must be signed in to change notification settings - Fork 39
✨ distributed language extensions for vscode #242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughAdds a new README detailing a distributed language-extensions architecture for Konveyor's VSCode ecosystem: core orchestrator plus language-specific extensions that spawn external provider subprocesses, IPC with kai-analyzer-rpc and language servers, provider registration/metadata, workflows, implementation sketches, security notes, and open questions. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor U as VSCode User
participant Core as Konveyor Core Extension
participant LangExt as Language Extension (e.g., konveyor-java)
participant Prov as External Provider (java-external-provider)
participant RPC as kai-analyzer-rpc
participant LSP as Language Server (JDTLS)
rect rgba(230,245,255,0.6)
U->>Core: Open workspace / activate
Core->>LangExt: registerProvider(config, assets)
LangExt-->>Core: provider metadata & assets
end
rect rgba(235,255,235,0.6)
U->>Core: Start analysis
Core->>RPC: Analyze(workspace, provider config)
RPC->>Prov: Spawn/connect (pipes) and forward Evaluate requests
Prov->>LSP: Proxy LSP requests (if needed)
LSP-->>Prov: Responses
Prov-->>RPC: Analysis results
RPC-->>Core: Findings, diagnostics
Core-->>LangExt: Deliver language-specific hooks/results
Core-->>U: Aggregate & surface results
end
rect rgba(255,240,230,0.6)
alt Error / incompatibility
RPC-->>Core: Error
Core-->>LangExt: Notify provider
Core-->>U: Surface error/status
else Success
Core-->>U: Done
end
end
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
Pre-merge checks and finishing touches✅ Passed checks (5 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used🪛 markdownlint-cli2 (0.18.1)enhancements/distributed-language-extensions/README.md99-99: Fenced code blocks should have a language specified (MD040, fenced-code-language) 405-405: Fenced code blocks should have a language specified (MD040, fenced-code-language) 505-505: Fenced code blocks should have a language specified (MD040, fenced-code-language) 🔇 Additional comments (6)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 6
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
enhancements/distributed-language-extensions/README.md(1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
enhancements/distributed-language-extensions/README.md
115-115: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
213-213: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
371-371: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
600-600: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
Signed-off-by: David Zager <[email protected]>
d264389 to
e28fca6
Compare
shawn-hurley
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let me know if this is helpful or not
Signed-off-by: David Zager <[email protected]>
Fixes #239
Summary by CodeRabbit