docs: point markdown backlogs at Gitea issues (status lives in Gitea)
v2-ci / unit-tests (push) Waiting to run
v2-ci / unit-tests (push) Waiting to run
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
# Monaco Script Editor (Roslyn-backed IntelliSense)
|
||||
|
||||
> **Status lives in Gitea.** Open follow-ups and known gaps noted in this doc are tracked as issues on
|
||||
> gitea.dohertylan.com/dohertj2/lmxopcua (label `migrated`, 2026-11-06). This doc describes the system — do not track status here; file new work as an issue.
|
||||
|
||||
The script editor gives AdminUI users a first-class C# authoring experience for
|
||||
virtual-tag scripts: completions, diagnostics, hover, signature help, document
|
||||
formatting, and context-aware tag-path completions — all backed by the same
|
||||
@@ -208,7 +211,7 @@ scripted-alarm predicates) runs scripts through the shared `ScriptRunGuard`:
|
||||
- **Allocation budget.** A single run allocating more than
|
||||
`Scripting:MaxAllocBytesPerRun` (64 MB) is quarantined. This is sampled after the
|
||||
run returns, so a run that OOMs the process first is not stopped — that needs an
|
||||
out-of-process runner.
|
||||
out-of-process runner (→ #750).
|
||||
- **Configuration keys and their ranges.** All three knobs are node-wide (the
|
||||
`Scripting` appsettings section, shared by virtual tags, Calculation tags and
|
||||
scripted alarms) and are clamped when bound, with one startup Warning per
|
||||
@@ -491,20 +494,20 @@ site.
|
||||
|
||||
- **Tag-path completion shows resolvable keys only.** Surfacing the UNS browse
|
||||
path as a completion *detail* (a non-inserted hint shown alongside the
|
||||
resolvable key) for discoverability is a tracked follow-up.
|
||||
resolvable key) for discoverability is a tracked follow-up. → #759
|
||||
- **Literal gate matches by method name, not receiver.** `anything.GetTag("…")`
|
||||
would also trigger tag-path completion (not just `ctx.GetTag("…")`). Harmless
|
||||
in the sandbox today — no other `GetTag` methods exist in the allowed reference
|
||||
set — but tighter binding to `ctx` / `VirtualTagContext` is a follow-up.
|
||||
set — but tighter binding to `ctx` / `VirtualTagContext` is a follow-up. (Reconcile: → #759)
|
||||
- **Analysis runs synchronous Roslyn (CPU-bound).** Each endpoint call builds a
|
||||
`CSharpCompilation` synchronously. This is intentional: the endpoints are
|
||||
admin-only, client-side debounced (~500 ms), and `Task.Run` offload adds
|
||||
unnecessary complexity for infrequent admin use. If concurrency becomes a
|
||||
concern under heavy admin usage, wrapping each `Analyze` call in `Task.Run` is
|
||||
the correct fix.
|
||||
the correct fix. (Reconcile: → #759)
|
||||
- **InlayHints is a stub.** `/api/script-analysis/inlay-hints` returns an empty
|
||||
list. Filling it in (parameter name hints from the semantic model) is a
|
||||
follow-up task.
|
||||
follow-up task. (Dropped — reconcile: → #759)
|
||||
- **Language providers register globally at Monaco load.** The six providers are
|
||||
registered for the `csharp` language on the global Monaco instance (loaded once
|
||||
per page in `App.razor`). There is no impact today because only
|
||||
@@ -514,7 +517,7 @@ site.
|
||||
results).
|
||||
- **Creating a new script from the VirtualTagModal inline panel** is deferred.
|
||||
The current inline panel loads and saves an existing `Script` row; creating a
|
||||
brand-new script requires a separate create flow and is a follow-up.
|
||||
brand-new script requires a separate create flow and is a follow-up. (Shipped — reconcile: → #759)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user