Expand description
Module framework contracts: the data/behavior split a module exposes to the composition root.
ModuleManifest: serializable data (name, story display, reserved seams). Produced by every loading source.ModuleBinding: behavior (register functions/event handlers). One impl per loading source;LinkedBindingis the compile-time one.Module: a loaded module bundling manifest + binding + internal config.AdminDataSource: the schema-admin read seam — a module’s read access to its admin entities.AdminSchemais the declared admin surface data.AdminActionSource: executable behavior for manifest-declared admin actions.AdminQuerySource: read-only behavior for manifest-declared admin queries.
Structs§
- Admin
Action - Admin
Action Confirmation - Admin
Action Input Field - Admin
Action Input Schema - Admin
Declarative Page - Admin
Declarative Section - Admin
Declarative Surface - Admin
Embedded Surface - Admin
List Query - Structured query — fields reserved for future filter/sort without changing the method signature.
- Admin
Metric Binding - Admin
Page - One page of records.
- Admin
Sandbox Policy - Admin
Schema - A module’s declared admin surface: which entities it exposes for management.
- Console
Navigation - Console
Navigation Group - Console
Package - Console
Surface - Console
Workspace Ref - Cron
Parse Error - Cron
Schedule - Entity
Schema - One manageable entity (e.g. identity’s “users”).
- Event
Handler Declaration - Event
Handler Registration Context - Event
Handler Runtime Context - Event
Surface - Field
Schema - One field of an entity.
- Host
Contribution - Host
Linked Module - Lifecycle
Activation JobDeclaration - Lifecycle
Startup Check Declaration - Lifecycle
Surface - Linked
Binding - The only
ModuleBindingimpl in Step 1. Remote/Wasm impls arrive in their own specs without touching this one (open extension point). Only forwards to the existing registration logic — no logic moves here. - Linked
Binding Builder - Fluent builder for
LinkedBinding. Source-specific (Linked only). - Linked
Http Contribution - Module
- One loaded module.
manifestis serializable data;bindingis behavior;runtime_configis internal&'staticconfig NOT in the manifest (the registry needs the realRuntimeConfigTypeenum to validate). Cross-source config wire form is deferred to a later spec. - Module
Capability Reference - Module
Http Route - Module
Manifest - The serializable metadata a module exposes. Runtime config is deliberately
NOT here — it stays an internal
&'staticfield on [crate::Module] because the config registry needs the real (non-serde)RuntimeConfigTypeto validate. Only round-trippable fields belong here. - Module
Manifest Builder - Fluent builder for
ModuleManifest. Reusable by every loading source. - Module
Manifest Lint - Module
Route Lint - Runtime
Function Declaration - Runtime
Retry Policy Declaration - Runtime
Surface - Story
Display Descriptor
Enums§
- Admin
Action Danger Level - Admin
Declarative Component - Admin
Embedded Entry - Admin
Embedded Runtime - Admin
Permission - Admin
Surface - A module’s admin surface.
- Console
Area - Field
Type - Minimal field-type vocabulary.
Jsonis the catch-all so any field renders. - Lifecycle
Activation RunPolicy - Lifecycle
Startup Check Kind - Module
Http Method - Module
Load Status - Module
Manifest Lint Severity - Module
Route Lint Severity - Module
Source - Story
Display Source
Traits§
- Admin
Action Source - A module’s executable admin actions. Action declarations stay in
crate::AdminSurface; this seam only carries the behavior that varies by loading source. - Admin
Data Source - A module’s read access to its admin entities. Optional capability — only
modules with an admin surface implement it. Records cross as
Value(the only shape a generic renderer handles); strong types stay inside the impl. - Admin
Query Source - A module’s read-only declarative query source. Query declarations stay in
crate::AdminSurface; this seam only returns the JSON value to render. - Module
Binding - Narrow by design — pure data lives in
crate::ModuleManifest, read directly by upper layers, never through this trait.
Functions§
- lint_
module_ http_ routes - lint_
module_ manifest - lint_
module_ manifest_ parts - module_
capability_ references - validate_
cron_ expression