feat(scripteditor): tag-path completion for absolute RawPaths #490

Open
opened 2026-07-21 03:36:41 -04:00 by dohertj2 · 0 comments
Owner

Deferred from v3 Batch 3, re-recorded in the Batch 4 PR doc.

Monaco tag-path completion inside ctx.GetTag("…") / ctx.SetVirtualTag("…") works for the equipment-relative {{equip}}/ form, but not for absolute RawPaths (Plant/Modbus/dev1/Speed).

Since v3 the raw tree is the authoring surface for device I/O and absolute RawPaths are a normal thing to write in a script, so the completion gap pushes authors to type them by hand — and a typo'd RawPath is only caught at deploy (Bad 0x80000000 at runtime for the literal).

Worth pairing with the existing tag-path hover so an absolute path resolves and displays like a relative one. Editor-accepts ⇔ publish-accepts is the invariant to preserve.

Deferred from v3 Batch 3, re-recorded in the Batch 4 PR doc. Monaco tag-path completion inside `ctx.GetTag("…")` / `ctx.SetVirtualTag("…")` works for the equipment-relative `{{equip}}/` form, but **not** for absolute RawPaths (`Plant/Modbus/dev1/Speed`). Since v3 the raw tree is the authoring surface for device I/O and absolute RawPaths are a normal thing to write in a script, so the completion gap pushes authors to type them by hand — and a typo'd RawPath is only caught at deploy (`Bad 0x80000000` at runtime for the literal). Worth pairing with the existing tag-path hover so an absolute path resolves and displays like a relative one. Editor-accepts ⇔ publish-accepts is the invariant to preserve.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dohertj2/lmxopcua#490