Skip to main content

Crate peat_schema

Crate peat_schema 

Source
Expand description

§CAP Schema

Protocol Buffer message definitions for the Capability Aggregation Protocol (CAP).

This crate provides schema-first message definitions that enable:

  • Multi-transport support (HTTP, gRPC, ROS2, WebSocket, MQTT)
  • Multi-language integration (Rust, Python, Java, C++, JavaScript)
  • Schema versioning and backward compatibility
  • Code generation for all supported languages

§Message Packages

§Core Types

  • common.v1: Common types (Position, Timestamp, Uuid, Metadata)

§Entity Schemas

  • capability.v1: Capability definitions and queries
  • node.v1: Node configuration, state, operators, human-machine binding

§Organization Schemas

  • cell.v1: Cell (squad) formation and management
  • zone.v1: Zone (hierarchy) coordination and management
  • role.v1: Tactical role assignments within cells

§Protocol Schemas

  • beacon.v1: Discovery phase beacons and queries
  • composition.v1: Capability composition rules (additive, emergent, redundant, constraint)
  • model.v1: AI model deployment and distribution
  • sensor.v1: Sensor specifications (mount types, orientation, FOV, gimbal state)
  • actuator.v1: Actuator specifications (linear, rotary, gripper, barrier, winch)
  • effector.v1: Effector specifications (weapons, countermeasures, safety, authorization)
  • product.v1: AI/ML products (images, classifications, summaries, chat, embeddings)
  • tasking.v1: AI/ML tasking (detection tasks, filters, product delivery configuration)

§Three-Tier Hierarchy

The Peat Protocol implements a three-tier hierarchical structure:

  1. Nodes (Individual platforms): UAVs, UGVs, soldier systems
  2. Cells (Tactical squads): Groups of 2-8 nodes with complementary capabilities
  3. Zones (Strategic coordination): Multiple cells coordinated by a zone commander

§Usage

use peat_schema::node::v1::{NodeConfig, NodeState, Phase, HealthStatus};
use peat_schema::capability::v1::{Capability, CapabilityType};

// Create a node configuration
let config = NodeConfig {
    id: "node-1".to_string(),
    platform_type: "UAV".to_string(),
    capabilities: vec![],
    comm_range_m: 1000.0,
    max_speed_mps: 10.0,
    operator_binding: None,
    created_at: None,
};

Re-exports§

pub use cap::*;

Modules§

cap
ontology
Ontology vocabulary and semantic definitions Peat Protocol Ontology
validation
Validation utilities for schema types Schema validation utilities