uil

package module
v0.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2026 License: AGPL-3.0-or-later Imports: 7 Imported by: 0

README ΒΆ

⚑ UIL-X (uild): Universal Interface Layer & Hardware Governance Daemon

Release Open Source Collective

UIL-X (uild) is a lightweight, low-latency hardware governance daemon and execution safety framework designed for edge AI accelerators, robotics stacks, and heterogeneous Linux nodes. It continuously evaluates physical thermal/power interlocks, computes post-quantum SHA3 payload commitments ($UPFo$), and streams real-time state alerts across a peer-to-peer (P2P) UDP mesh.


πŸ›οΈ System Architecture

                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                            β”‚   ROS2 Autonomous Systems    β”‚
                            β”‚   β€’ /safety/emergency_stop   β”‚
                            β”‚   β€’ /cmd_vel (Twist Overrides)β”‚
                            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–²β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                           β”‚ IPC Unix Socket (/tmp/uild.sock)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚ deepn-node-1 (x86_64) β”‚ <──────> β”‚ UIL-X Daemon (uild) β”‚ <──────> β”‚ node-pi0-1 (ARMv6) β”‚β”‚ β€’ P2P Mesh Gossip β”‚ UDP 9090 β”‚ β€’ sysfs Thermal Reader β”‚ UDP 9090 β”‚ β€’ Edge Sensors β”‚β”‚ β€’ Substrate Routing β”‚ β”‚ β€’ Post-Quantum SHA3 $UPFo$β”‚ β”‚ β€’ Low-Power Governance β”‚β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

⚑ Key Features in v0.8.0 Alpha

  • Post-Quantum Cryptographic Commitments: Standardized SHA3-256 state hashing (pkg/crypto) for verifiable audit trails.
  • P2P Mesh Gossip Network (pkg/mesh): Zero-configuration UDP discovery and sub-second interlock event propagation across cluster nodes.
  • Dynamic .so Substrate Drivers (pkg/substrate): Load proprietary thermal and physical safety interlocks at runtime via constructor function symbols (NewDriver()).
  • ROS2 Emergency Stop Bridge (ros2/): Unix socket IPC streaming (/tmp/uild.sock) triggering instant ROS2 $E\text{-}Stop$ publishes and zero-velocity overrides.
  • Kernel Thermal Telemetry (pkg/substrate/gpio_linux.go): Reads hardware CPU thermal zones directly from /sys/class/thermal/.
  • Multi-Architecture Support: Pre-compiled static release binaries for amd64, arm64, and armv6 (Raspberry Pi Zero W).

πŸš€ 5-Minute Quickstart

1. Automated Installation (Linux amd64 / arm64 / armv6)

Run the one-line installer on your Linux host:

curl -sSL [https://raw.githubusercontent.com/deepnlabs/uil/main/install.sh](https://raw.githubusercontent.com/deepnlabs/uil/main/install.sh) | bash
Or install locally from source:Bashgit clone [https://github.com/deepnlabs/uil.git](https://github.com/deepnlabs/uil.git)
cd uil
make all
sudo ./install.sh
2. Service Managementuild runs as an auto-restarting systemd background daemon:Bash# Check service status
sudo systemctl status uild

# Stream live governance & interlock logs
sudo journalctl -u uild -f
3. Developer CLI UsageBash# Manual runtime execution
uild run

# Status check
uild status
πŸ€– ROS2 IntegrationTo connect your ROS2 robot controllers to UIL-X safety interlocks:Bash# Run the ROS2 IPC Emergency Stop Bridge Node
python3 ros2/ros2_uil_estop.py
πŸ›‘οΈ Intellectual Property & LicenseLicense: GNU Affero General Public License (AGPL-3.0).Commercial Exception: Closed-source commercial driver exception licenses are available through DeePN Labs.Patent Notice: Protected under pending United States Intellectual Property filings (U.S. Patent Application No. 19/753,918).🀝 Community & SupportUIL-X is fiscally hosted through Open Source Collective. Help support independent hardware governance infrastructure via Open Collective.

Documentation ΒΆ

Index ΒΆ

Constants ΒΆ

View Source
const (
	// ProtocolVersion defines the current UIL specification version for v0.5
	ProtocolVersion = "UIP-0.5-PQ"

	// Substrate Targets
	SubstrateAuto         = "SUBSTRATE_AUTO"
	SubstrateRadeonVulkan = "RADEON_840M_VULKAN"
	SubstrateNvidiaCUDA   = "NVIDIA_RTX_CUDA"
	SubstrateHailoNPU     = "HAILO8_NPU"
	SubstrateMemryXNPU    = "MEMRYX_NPU"
	SubstrateXDNA2NPU     = "AMD_XDNA2_NPU"

	// Cryptographic Hash Algorithms
	HashAlgSHA3_256 = "SHA3-256"
	HashAlgSHA3_512 = "SHA3-512"
	HashAlgBLAKE3   = "BLAKE3"
)

Variables ΒΆ

This section is empty.

Functions ΒΆ

This section is empty.

Types ΒΆ

type UILEnvelope ΒΆ

type UILEnvelope struct {
	ProtocolVersion string                 `json:"protocol_version"`
	EnvelopeID      string                 `json:"envelope_id"`
	SourceNode      string                 `json:"source_node"`
	TargetNode      string                 `json:"target_node,omitempty"`
	Timestamp       string                 `json:"timestamp"`
	ImportanceScore float64                `json:"importance_score"`
	SubstrateTarget string                 `json:"substrate_target"`
	HashAlg         string                 `json:"hash_alg"`
	ProofCommitment string                 `json:"proof_commitment,omitempty"`
	PQSignature     string                 `json:"pq_signature,omitempty"` // Base64 Dilithium/SPHINCS+ sig
	Payload         map[string]interface{} `json:"payload"`
}

UILEnvelope defines the standardized message container across the UIL Mesh.

func NewEnvelope ΒΆ

func NewEnvelope(sourceNode, targetNode, substrate string, payload map[string]interface{}) *UILEnvelope

NewEnvelope constructs a compliant UIL Envelope with auto-generated ID and RFC3339 timestamp.

func (*UILEnvelope) ComputePayloadHash ΒΆ

func (e *UILEnvelope) ComputePayloadHash() (string, error)

ComputePayloadHash calculates a deterministic hash using the configured algorithm (SHA3-256 / SHA3-512).

func (*UILEnvelope) Validate ΒΆ

func (e *UILEnvelope) Validate() error

Validate checks structural integrity and protocol compliance of the envelope.

Directories ΒΆ

Path Synopsis
cmd
uild command
pkg
uil
plugins_src

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL