Skip to content
Beskid Platform specification

Beskid

Jump to a Beskid service

Beskid

Jump to a Beskid service

Design model

Spec standingStandard

Owner
Piotr Mikstacki
Submitter
Piotr Mikstacki

Conformance is split so failures localize quickly:

LayerCrate pathPins
Analysis fixturesbeskid_tests/src/analysisDiagnostic codes, resolver graphs, staged rules
Runtime JITbeskid_tests/src/runtimeBuiltin dispatch, GC, fibers
E2E sourcesbeskid_e2e_testsFull .bd programs through CLI backends
Doc testsbeskid_tests/src/doc_tests.rsSpec snippets compile and match asserted output
flowchart LR
  fixture[.bd / .json fixtures]
  analysis[analysis harness]
  runtime[runtime harness]
  e2e[e2e harness]
  fixture --> analysis
  fixture --> runtime
  fixture --> e2e
  analysis --> diag[Diagnostic snapshot]
  runtime --> jit[JIT smoke]
  e2e --> exit[Process exit + IO]
  • Prefer minimal .bd files per diagnostic or rule; share Project.proj layouts via beskid_tests/src/projects builders.
  • Golden diagnostics must cite stable codes from diagnostic code registry.
  • Runtime tests must negotiate the same ABI version as production beskid run.
  • compiler/crates/beskid_tests/src/analysis
  • compiler/crates/beskid_tests/src/runtime
  • compiler/crates/beskid_e2e_tests/src/tests/runtime_cases.rs
  • compiler/crates/beskid_tests/src/doc_tests.rs