Skip to main content

Crate cratefield_manifest

Crate cratefield_manifest 

Source
Expand description

The Factory Zero venture manifest and deterministic composition generator (issue #138).

A VentureManifest is the small declarative document that says what a backend is — which modules, on which host, with what config and seed data. It is the SHARED contract of “Build Anywhere”: the native compile engine (fz build) generates a venture crate from it and compiles it; the wasm compose engine (later) mounts the same module set in the browser. The same manifest promotes to Cloudflare unchanged.

Three concerns, three modules:

  • catalog — the module catalog and dependency resolution (the wasm-clean canonical home of control-plane’s cratefield_catalog logic; see that module’s docs).
  • manifest — the VentureManifest format and parsing.
  • generate — the deterministic Rust composition generator.

Re-exports§

pub use build_key::BUILD_PROFILE;
pub use build_key::BuildKeyError;
pub use build_key::BuildKeyInputs;
pub use build_key::build_key;
pub use build_key::canonical_inputs;
pub use catalog::Catalog;
pub use catalog::CatalogError;
pub use catalog::CatalogModule;
pub use catalog::ModuleRelease;
pub use catalog::ModuleSet;
pub use catalog::PinnedRelease;
pub use catalog::ReleaseReview;
pub use catalog::ResolveError;
pub use catalog::Tier;
pub use catalog::builtin;
pub use catalog::is_exact_version;
pub use catalog::is_sha256_digest;
pub use generate::GeneratedFile;
pub use generate::GeneratedVenture;
pub use generate::HarnessSource;
pub use generate::generate;
pub use manifest::ManifestError;
pub use manifest::ModuleRef;
pub use manifest::VentureManifest;
pub use access::Access;
pub use access::AccessMap;
pub use access::LEVELS;
pub use diff::Change as DeclarationChange;
pub use diff::Move;
pub use diff::diff as declaration_diff;
pub use privacy::Disposition;
pub use privacy::KINDS;
pub use privacy::TablePrivacy;
pub use privacy::TablePrivacyMap;
pub use provenance::BuildEnvViolation;
pub use provenance::BuildEnvironmentAttestation;
pub use provenance::PROVENANCE_SCHEMA;
pub use provenance::Provenance;
pub use provenance::ProvenanceError;
pub use provenance::ProvenanceFile;
pub use provenance::ResourceLimits;
pub use provenance::file_digest;
pub use provenance::is_placeholder_digest;

Modules§

access
Who may read and write a declared table (issue #153).
build_key
The artifact’s content address (issue #59): the build key a cache would store and look a compiled venture up by.
catalog
The module catalog and dependency resolution.
diff
What changed about who may reach a declared table, and what it holds (issue #153).
generate
The deterministic Rust composition generator (issue #138).
manifest
The venture manifest: the small, declarative document that says what a backend is — which modules, on which host, with what config and seed data. It is the unit an AI agent emits and the unit that promotes to Cloudflare unchanged. Both engines consume the same struct: the native compile engine (fz build) generates a venture crate from it; the wasm compose engine (later) mounts the same module set in the browser.
privacy
What a declared table holds, said by the author who declared it (issue #153).
provenance
Build provenance and the build-service environment contract (issue #142).

Structs§

Schema
Every table a venture declares, in name order.