Skip to content

feat: VS Code extension for AADL — syntax, LSP, live diagram (v0.2.0)#57

Merged
avrabe merged 9 commits intomainfrom
feat/vscode-extension
Mar 18, 2026
Merged

feat: VS Code extension for AADL — syntax, LSP, live diagram (v0.2.0)#57
avrabe merged 9 commits intomainfrom
feat/vscode-extension

Conversation

@avrabe
Copy link
Contributor

@avrabe avrabe commented Mar 18, 2026

Summary

New VS Code extension pulseengine.spar-aadl for AADL v2.2:

Features

  • TextMate grammar — syntax highlighting for all AADL constructs
  • LSP client — connects to spar lsp binary for 10 IDE features (diagnostics, hover, go-to-def, completion, rename, formatting, code actions, symbols, inlay hints)
  • Live diagram — interactive HTML webview with ports, orthogonal routing, pan/zoom/selection, updates on save
  • Root selection — auto-detect system implementations, QuickPick picker, status bar indicator

spar-wasm upgrade

  • Replaced inline SVG renderer with spar-render/etch for interactive HTML output
  • etch + spar-render compile cleanly to wasm32-wasip2

Test plan

  • spar-wasm: 23 tests pass (updated for HTML output)
  • TypeScript compiles cleanly
  • Manual F5 testing with .aadl files

🤖 Generated with Claude Code

avrabe and others added 6 commits March 18, 2026 21:47
TextMate grammar, native LSP, jco-transpiled WASM renderer with
WASI fs shim, interactive diagram webview.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
11 tasks: spar-wasm upgrade, extension scaffold, TextMate grammar,
LSP client, WASM build/transpile, WASI shim, renderer, diagram webview,
tests, release pipeline, version bump.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace inline SVG renderer with spar-render::render_instance_html().
WASM render() now returns interactive HTML with:
- Port visualization (circles, direction triangles, type colors)
- Orthogonal edge routing
- Pan/zoom/selection (embedded JavaScript)
- Semantic zoom

etch + spar-render compile cleanly to wasm32-wasip2.
23 tests pass (updated integration tests for HTML output).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…diagram

VS Code extension for AADL v2.2:
- TextMate grammar: keywords, categories, features, connections,
  properties, comments, strings, numbers, annexes
- Language configuration: comment toggling, brackets, indentation
- LSP client: connects to spar lsp binary (10 IDE features)
- Diagram webview: interactive HTML panel, updates on save (300ms debounce)
- Root selection: auto-detect system implementations, QuickPick, status bar
- Error handling: graceful fallback messages

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- build-vsix job: npm install, compile, vsce package
- publish-vsix job: publishes to VS Code Marketplace (requires VSCE_PAT secret)
- VSIX included in GitHub Release assets

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Old render_graph_to_svg() and helpers replaced by spar-render/etch.
Remove ~500 lines of dead code that caused -D warnings CI failure.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@codecov
Copy link

codecov bot commented Mar 18, 2026

Codecov Report

❌ Patch coverage is 57.57576% with 14 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
crates/spar-wasm/src/render.rs 57.57% 14 Missing ⚠️

📢 Thoughts on this report? Let us know!

@avrabe avrabe merged commit 6eb9f15 into main Mar 18, 2026
9 of 11 checks passed
@avrabe avrabe deleted the feat/vscode-extension branch March 18, 2026 23:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant