You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[bug]: @sf-agentscript/lsp-server@2.2.30 crashes at startup — variantMatch is not a function (stale @sf-agentscript/language pin) #73
The published @sf-agentscript/lsp-server (2.2.30, currently latest) crashes
at startup with TypeError: ...variantMatch is not a function, before the LSP
connection is established. The root cause is a stale exact pin on the transitive @sf-agentscript/language dependency, so no fresh install of the LSP server
works (same for @sf-agentscript/lsp@2.3.8).
Steps to Reproduce
npx --yes @sf-agentscript/lsp-server --stdio
(or npm install -g @sf-agentscript/lsp-server and run agentscript-lsp --stdio)
The process throws immediately, before any LSP handshake.
Expected Behavior
The server starts, completes the LSP initialize handshake, and publishes
diagnostics.
Actual Behavior
Immediate crash at import:
.../@sf-agentscript/agentforce-dialect/dist/schema.js:217
.variantMatch('byon', (value) => value.startsWith(BYON_SCHEMA_PREFIX), byonSubagentVariant);
^
TypeError: NamedBlock(...).describe(...).discriminant(...).variant(...).variantMatch is not a function
Cause:@sf-agentscript/agentforce-dialect@2.13.4 (published 2026-06-10)
uses the variantMatch schema-builder API but pins @sf-agentscript/language@2.5.4 (2026-06-01), which predates that API. variantMatch first shipped in @sf-agentscript/language@2.8.4 (2026-06-11,
one day after the dialect) — the dialect appears to have been built against
the unreleased workspace version of language and published with a stale exact
pin. Because every @sf-agentscript/* dependency is an exact pin, no fresh
install can resolve a working language.
Fix: republish agentforce-dialect / lsp / lsp-server against @sf-agentscript/language >= 2.8.4 (current train is 2.19.3).
Environment
Node.js version: 22.18.0
pnpm version: n/a (reproduced with npm / npx)
OS: Windows 11 (also reproduced in the node:22-bookworm container)
The crash happens before any .agent source is read, so no snippet is required —
just running the server reproduces it:
npx --yes @sf-agentscript/lsp-server --stdio
Verified workaround — install with an npm overrides fix, after which the
server initializes and publishes diagnostics normally (verified against
Neovim's LSP client on Node 22):
This is the same publish-pipeline defect already reported for a sibling package
in #71 (@sf-agentscript/agentforce unusable for the same reason, different
missing symbol), and the earlier #35 / #40 scope-rewrite incident. The
post-publish import smoke test proposed in #72 would have caught this too.
changed the title [-]`@sf-agentscript/lsp-server@2.2.30` crashes at startup: `variantMatch is not a function` (stale `@sf-agentscript/language` pin)[/-][+][bug]: @sf-agentscript/lsp-server@2.2.30 crashes at startup — variantMatch is not a function (stale @sf-agentscript/language pin)[/+]on Jul 22, 2026
Activity
[-]`@sf-agentscript/lsp-server@2.2.30` crashes at startup: `variantMatch is not a function` (stale `@sf-agentscript/language` pin)[/-][+][bug]: @sf-agentscript/lsp-server@2.2.30 crashes at startup — variantMatch is not a function (stale @sf-agentscript/language pin)[/+]