Expand description
Application axis — the per-input (IN) use-case entry points that drive processing on top of the Engine.
The Engine itself is a pure execution surface. Each Application
owns its own input source (an HTTP POST body, an IssueStore
queue, and so on) and delegates the shared domain operations to
crate::service::TaskLaunchService. Applications do not talk to
each other directly — when they need to, they share a
BlueprintStore as the hub.
Applications implemented today:
TaskApplication— thePOST /v1/taskspath. Resolves aBlueprintRef(Inline / Id) and starts one task on the Engine throughTaskLaunchService.EnhanceApplication— thePOST /v1/issuespath. Enqueues on theIssueStore, pops the pending item, fetches the EnhanceBP head, and starts one task on the Engine throughTaskLaunchService. In this model, an issue and a task are one and the same at the Engine level.
Re-exports§
pub use enhance::EnhanceApplication;pub use enhance::EnhanceApplicationConfig;pub use enhance::EnhanceApplicationError;pub use enhance::EnhanceApplicationInput;pub use enhance::TickOutcome;pub use task::BlueprintRef;pub use task::TaskApplication;pub use task::TaskApplicationError;pub use task::TaskApplicationInput;pub use task::TaskApplicationOutput;pub use task::VersionSelector;
Modules§
- enhance
- The
POST /v1/issuesdispatcher — seeenhance::EnhanceApplication.EnhanceApplication— the dispatcher for thePOST /v1/issuespath. - task
- The
POST /v1/tasksentry point — seetask::TaskApplication.TaskApplication— thePOST /v1/tasksentry point.
Traits§
- Application
- An Application is a peer unit of
(input → internal processing → output).