feat(call): initialize alknet-call crate skeleton (task: call/crate-init)
Create crates/alknet-call with Cargo.toml, lib.rs, and module skeletons for the registry (spec, context, registration, env, discovery) and protocol (wire, pending, connection, adapter, abort) subsystems. Add the crate to the workspace members list. Depends on alknet-core (workspace path), irpc (workspace dep), tokio, serde, serde_json, async-trait, tracing, thiserror, uuid, and futures. Implements ProtocolHandler on ALPN alknet/call per docs/architecture/crates/call.
This commit is contained in:
7
crates/alknet-call/src/registry/context.rs
Normal file
7
crates/alknet-call/src/registry/context.rs
Normal file
@@ -0,0 +1,7 @@
|
||||
//! Operation context: `OperationContext`, `AbortPolicy`,
|
||||
//! `CompositionAuthority`, and `ScopedOperationEnv`.
|
||||
//!
|
||||
//! See `docs/architecture/crates/call/operation-registry.md` for the full
|
||||
//! specification.
|
||||
|
||||
// TODO: implement
|
||||
6
crates/alknet-call/src/registry/discovery.rs
Normal file
6
crates/alknet-call/src/registry/discovery.rs
Normal file
@@ -0,0 +1,6 @@
|
||||
//! Service discovery handlers: `services/list` and `services/schema`.
|
||||
//!
|
||||
//! See `docs/architecture/crates/call/operation-registry.md` for the full
|
||||
//! specification.
|
||||
|
||||
// TODO: implement
|
||||
8
crates/alknet-call/src/registry/env.rs
Normal file
8
crates/alknet-call/src/registry/env.rs
Normal file
@@ -0,0 +1,8 @@
|
||||
//! Operation environment: the `OperationEnv` trait, `LocalOperationEnv`, and
|
||||
//! `CompositeOperationEnv`.
|
||||
//!
|
||||
//! The composition dispatch trait — handlers compose child operations through
|
||||
//! `OperationContext.env`. See
|
||||
//! `docs/architecture/crates/call/operation-registry.md` and ADR-024.
|
||||
|
||||
// TODO: implement
|
||||
12
crates/alknet-call/src/registry/mod.rs
Normal file
12
crates/alknet-call/src/registry/mod.rs
Normal file
@@ -0,0 +1,12 @@
|
||||
//! Operation registry: specs, handlers, access control, service discovery.
|
||||
//!
|
||||
//! Maps operation names to specs and handlers, enforces access control, and
|
||||
//! dispatches `call.requested` events to local handlers. The registry is
|
||||
//! layered by trust boundary (ADR-024): a curated layer (immutable after
|
||||
//! startup) plus dynamic session and connection overlays.
|
||||
|
||||
pub mod context;
|
||||
pub mod discovery;
|
||||
pub mod env;
|
||||
pub mod registration;
|
||||
pub mod spec;
|
||||
8
crates/alknet-call/src/registry/registration.rs
Normal file
8
crates/alknet-call/src/registry/registration.rs
Normal file
@@ -0,0 +1,8 @@
|
||||
//! Handler registration: `Handler`, `HandlerRegistration`,
|
||||
//! `OperationProvenance`, `OperationRegistry`, and
|
||||
//! `OperationRegistryBuilder`.
|
||||
//!
|
||||
//! See `docs/architecture/crates/call/operation-registry.md` for the full
|
||||
//! specification.
|
||||
|
||||
// TODO: implement
|
||||
7
crates/alknet-call/src/registry/spec.rs
Normal file
7
crates/alknet-call/src/registry/spec.rs
Normal file
@@ -0,0 +1,7 @@
|
||||
//! Operation specifications: `OperationSpec`, `OperationType`, `Visibility`,
|
||||
//! `ErrorDefinition`, and `AccessControl`.
|
||||
//!
|
||||
//! See `docs/architecture/crates/call/operation-registry.md` for the full
|
||||
//! specification.
|
||||
|
||||
// TODO: implement
|
||||
Reference in New Issue
Block a user