Henrik Jess Nielsen
|
b93aa84737
|
feat: param_value context — enum/allowed completions for principalType, environmentType etc.
Build and Deploy iLSP / test (push) Successful in 20s
Build and Deploy iLSP / build-and-deploy (push) Successful in 1m20s
- Add _KNOWN_ENUMS dict (principalType, principalObjectType, environmentType fallbacks)
- Add param_value_completion_items() to BicepModuleCatalog
- Detect 'param_value' context in _detect_context() (cursor after 'param: ' inside params block)
- Wire param_value into _inject_completions()
- 9 new unit tests (context detection, catalog allowed, known enum fallback, injection)
- Fix modules.py edit regression (param_completion_items was orphaned)
- All 35 tests pass
|
2026-05-10 15:30:31 +02:00 |
|
Henrik Jess Nielsen
|
a708cb779e
|
fix: push_catalogs.sh uses ilsp.i80.dk (not lsp.i80.dk)
Build and Deploy iLSP / test (push) Failing after 26s
Build and Deploy iLSP / build-and-deploy (push) Has been skipped
|
2026-05-10 15:07:22 +02:00 |
|
Henrik Jess Nielsen
|
0527df717c
|
feat: volume-based catalog refresh with hot-reload
Build and Deploy iLSP / test (push) Successful in 18s
Build and Deploy iLSP / build-and-deploy (push) Failing after 12m14s
- modules.py: check /data/ volume first, then baked-in /bicep_modules_catalog.json
- server.py: add POST /reload endpoint — reloads catalogs without restart
- ilsp.nomad: add 'ilsp-data' host volume mounted at /data
- Makefile: add push-catalogs, health-prod, run-with-data targets; DEVOPS_MCP_REPO var
- scripts/push_catalogs.sh: SCP both catalogs to autobox + call /reload
Workflow: sync scripts on Mac → make push-catalogs → completions live in <5s
|
2026-05-10 13:51:01 +02:00 |
|
Henrik Jess Nielsen
|
6385e159ff
|
fix: replace asyncio subprocess proxy with thread-based Popen proxy
Build and Deploy iLSP / test (push) Failing after 12s
Build and Deploy iLSP / build-and-deploy (push) Has been skipped
asyncio subprocess PIPE unreliable for long-lived stdio bridging. Use Popen + threads instead. Also fix smoke_test.sh stdin handling.
|
2026-05-10 13:02:52 +02:00 |
|
Henrik Jess Nielsen
|
cd17e9bfaa
|
Add unit tests, smoke test script, fix CI to debian-host + test job
Build and Deploy iLSP / test (push) Successful in 19s
Build and Deploy iLSP / build-and-deploy (push) Failing after 29s
- tests/test_catalog.py: 5 unit tests for PypiCatalog (fetch, cache, sort prefix, completions)
- tests/test_proxy.py: 5 unit tests for BicepProxy (framing, injection, list result, passthrough)
- tests/conftest.py: pytest asyncio_mode=auto config
- scripts/smoke_test.sh: end-to-end TCP + health smoke test script
- .gitea/workflows/ci.yml: split into test + build-and-deploy jobs (test blocks deploy)
- runs-on: debian-host (was ubuntu-latest = broken)
- test job installs deps + runs pytest before building image
- pyproject.toml: [project.optional-dependencies] dev = pytest + pytest-asyncio
|
2026-05-10 12:38:41 +02:00 |
|
Henrik Jess Nielsen
|
d8536468ab
|
feat: initial iLSP project scaffolding
CI / deploy (push) Has been cancelled
CI / build-and-push (push) Has been cancelled
- Python LSP (pylsp + pylsp_i80 plugin): i80 pypi package completions
- Bicep LSP (asyncio TCP proxy → Bicep.LangServer.dll): LRU module injection
- Health HTTP endpoint (:2089) for Consul/Nomad checks
- Startup catalog fetch from pypi-server.i80.dk + DevOpsMCP (no volume needed)
- Multi-stage Dockerfile: downloads Bicep LS at build time, dotnet-runtime-8.0 + python3.12
- Nomad job: static TCP ports 2087/2088, health check on 2089
- Gitea Actions CI: build + push + deploy pipeline
- Editor configs: Helix / nvim / LSP4IJ / VS Code
|
2026-05-10 12:23:05 +02:00 |
|