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

This feature is the maintenance index between Rust crates and normative spec leaves. When you change behavior in a crate, update the linked spec article in the same change set; when you add a spec contract, anchor it to the owning crate here.

flowchart TB
  subgraph cli_tooling [CLI / LSP / pckg]
    cli[beskid_cli]
    lsp[beskid_lsp]
    pckg[beskid_pckg]
  end
  subgraph analysis [beskid_analysis]
    proj[projects graph]
    fe[front_end + mod_host]
    sem[analysis rules]
  end
  subgraph codegen [beskid_codegen]
    lower[lowering services]
  end
  subgraph exec [beskid_abi + beskid_runtime + beskid_engine]
    abi[ABI tables]
    rt[runtime builtins]
    eng[JIT / AOT]
  end
  cli --> proj
  lsp --> proj
  proj --> fe --> sem --> lower --> eng
  lower --> abi
  eng --> rt
ActorResponsibility
Producer cratesEmit diagnostics, artifacts, and ABI metadata (beskid_analysis, beskid_codegen)
Consumer cratesExecute or validate artifacts (beskid_engine, beskid_runtime, tooling)
Conformance cratesPin observable behavior (beskid_tests, beskid_e2e_tests)
  • beskid_analysis — parser, resolution, semantic pipeline, mod host
  • beskid_codegen — lowering contract
  • beskid_abi + beskid_runtime — execution ABI/runtime leaves
  • beskid_tests + beskid_e2e_tests — conformance leaves
ConcernPrimary cratesSpec leaves
Stable pipeline phase idsbeskid_pipelineStage ordering
Manifest + graph + CompilePlanbeskid_analysis::projectsProject manifest contract, Workspace resolution contract
Program assembly + effective rootsbeskid_analysis::projects::assembly, beskid_analysis::services::front_endProgram assembly
Parse + SyntaxMirrorbeskid_analysis::syntax, beskid_analysis::parserSyntax domain model generation, SyntaxMirror facade
Mod host orchestrationbeskid_analysis::mod_host (discovery, load, capabilities, collect, generate, merge, reparse, analyze, rewrite)Mod host bridge, Incremental scheduling and determinism
Mod host service integrationbeskid_analysis::services::analyze, beskid_codegen::servicesStage ordering, Typed emitter and transforms
Mod diagnostics + facadesbeskid_analysis::analysis, beskid_analysis::queryAnalysis, query, and diagnostics facades, Diagnostic code registry
Analyzer/rewriter stagingbeskid_analysis::analysis::rules::stagedRules pipeline contract
Lowering after typed mergebeskid_codegen::servicesStage ordering, Typed emitter and transforms
LSP paritybeskid_lspDiagnostics and workspace analysis
Incremental testsbeskid_testsIncremental scheduling and determinism
Pipeline composition (Rust)beskid_pipeline, beskid_analysisPipeline composition