Skip to content
/ uarc Public

Universal Application Runtime Contract (UARC) — A runtime-agnostic, verifiable specification for secure and portable application execution.

Notifications You must be signed in to change notification settings

Koh0920/uarc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UARC (Universal Application Runtime Contract)

Version: 1.0
Status: Active

Terminology & Scope

In this specification and related documents, the following terms are used with strict distinctions.

Term Conceptual role Analogy in HTTP/Web Definition
UARC Standard HTTP Universal Application Runtime Contract. The umbrella name of the specification that defines the protocol, interfaces, and the full verification flow.
Capsule Format HTML The package format and manifest format defined by UARC. A portable container unit that is implementation-independent.
Capsuled Implementation Apache / Nginx A reference runtime engine implementation compliant with UARC. An OSS daemon.

Note: "Capsule" refers strictly to the data format (e.g., .capsule file, capsule.capnp schema) defined in this repository. It should not be confused with "Ato" or other commercial products that utilize this format.

Overview

UARC is a specification for runtime-agnostic, verifiable application execution. The same Capsule contract can run on WebAssembly, OCI containers, or native processes—enabling portability across heterogeneous environments.

It defines:

  • Contract Format: How applications declare their requirements (capsule.toml)
  • Verification Layers: L1-L5 validation pipeline
  • Identity & Networking: SPIFFE-based identity management
  • Observability: Audit logging and metrics collection

Repository Structure

uarc/
├── SPEC.md           # UARC V1 Specification
├── schema/           # Cap'n Proto schema definitions
│   └── capsule.capnp # CapsuleManifest schema (SSOT)
├── proto/            # gRPC/Protobuf service definitions
│   ├── common/v1/    # Shared types (RunPlan, etc.)
│   └── engine/v1/    # Engine service (Deploy, Stop, etc.)
├── buf.yaml          # Buf module configuration
└── buf.gen.yaml      # Code generation configuration

Note: Coordinator API is Ato-specific and lives in ato-coordinator.

Code Generation

Prerequisites

Generate Go Code

buf generate --path proto/

Generated code will be placed in ../ato-coordinator/pkg/gen/proto/.

Rust (tonic-build)

Rust code is generated at build time via capsuled/build.rs.

Related Repositories

License

Apache-2.0

About

Universal Application Runtime Contract (UARC) — A runtime-agnostic, verifiable specification for secure and portable application execution.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published