Skip to content
Beskid Platform specification

Beskid

Jump to a Beskid service

Beskid

Jump to a Beskid service

FAQ and troubleshooting

Spec standingStandard

Owner
Piotr Mikstacki
Submitter
Piotr Mikstacki

Why does analyze pass in the IDE but fail in CI?

Section titled “Why does analyze pass in the IDE but fail in CI?”

The CLI runs the full project graph and lock policy. Ensure CI calls beskid lock (or checks in Project.lock) and sets BESKID_CORELIB_ROOT when not using the bundled corelib layout. Compare against the focused Project.proj the extension sends to the LSP.

Verify BESKID_CORELIB_ROOT points at a tree containing beskid_corelib/Project.proj, or run beskid corelib materialization. Superrepo checkouts should resolve via compiler/corelib/beskid_corelib discovery in resolver.rs.

Diagnostics differ between analyze and build

Section titled “Diagnostics differ between analyze and build”

build runs lowering and may surface codegen-only failures. Start with analyze; if clean, inspect AOT/link logs. Mod generator failures appear in both when semantic gates run.

Confirm the JIT runtime matches the target triple and that syscall-backed corelib surfaces are available in the image. Release AOT (build) is the supported path for minimal runtime images.

beskid mod subcommands and the analysis cache under the package/object store documented in Compiler Mods. Stale caches: use documented clean/rebuild policy from the mod manifest artifactPolicy.