Skip to content
Beskid Platform specification

Beskid

Jump to a Beskid service

Beskid

Jump to a Beskid service

Project manifest contract

Platform spec feature

Project manifest contract

Spec standingStandard

Owner
Piotr Mikstacki
Submitter
Piotr Mikstacki

What this feature specifies

Project manifest contract defines one operational contract that a newcomer can follow end-to-end: first the model, then execution flow, then strict guarantees, concrete examples, and verification guidance.

Implementation anchors

  • Manifest loading in compiler/crates/beskid_analysis/src/services.rs
  • CLI project graph setup in compiler/crates/beskid_cli/src/commands/
  • Workspace resolution in compiler/crates/beskid_analysis/src/resolve/items.rs
  • Contract tests in compiler/crates/beskid_tests/src/projects/corelib/mod.rs

Mod project type (`Mod`)

A manifest may declare type: Mod. A Mod project is a compiler-mod package: discovered from the dependency graph, compiled AOT, and executed through SDK contracts during host compilation. See Compiler Mod SDK and Compiler Mods.

Normative project.mod keys (maxGeneratorRounds, capabilities, optional artifactPolicy) are specified in design model; examples show illustrative manifests.

v0.3 FFI: optional project.link for foreign libraries is specified in project link libraries and populated via foreign library import.

Template project type (`Template`)

A manifest may declare type: Template for template authoring packages. Consumer-facing scaffold contracts live under Project scaffolding. Instantiated host projects from templates follow normal Host rules; corelib is always implicit (no opt-out manifest flag).

Decisions

No open decisions. D-TOOL-MAN-0001 (hub authority), 0002 (Mod and Template project types)—see adr/ and the ADRs tab.

Articles