Platform declarations and native bindings for the Fidelity framework. Shared silicon facts, physical products, execution environments and workload profiles have separate source owners. CCS resolves the selected declarations; Composer uses their evidence to compile, package and deploy the artifact.
Contracts/: shared MMIO, admission-evidence and BAREWire-backed handoff contracts.AbstractMachines/: cBPF/eBPF instruction descriptions; no executable backend.Hardware/Silicon/: architecture, part and package facts.Hardware/Silicon/Radio/: radio inventory and future discrete parts; integrated radios retain their MCU owner.Hardware/Products/: component selection, wiring and available resources.Hardware/VirtualMachines/: guest-machine descriptions; currently synthetic.Environments/: execution ABI, host-provided services, native bindings and admission rules.Protocols/: reserved protocol implementations, including virtio and the Radio design scaffold.Profiles/: execution selections, workload budgets and explicitly marked reference catalogues.
PLATFORM_STRUCTURE.md lists current packages and support status. The former top-level CPU/MCU/GPU/NPU/FPGA package paths have moved; source namespaces are retained where needed for existing APIs.
Applications select a package through their platform dependency. For example,
from the sibling HelloBlinky repository:
[dependencies]
platform = { path = "../../../../Fidelity.Platform/Profiles/EK_RA6M5_HelloBlinky/Fidelity.Platform.fidproj" }The selected package declares its authoritative export:
[platform]
description = "Fidelity.Platform.Profiles.EK_RA6M5_HelloBlinky.Description.descriptor"
runtime_model = "bare"
os = "none"
arch = "arm_cortex_m33"Other selections include Linux x86_64, HelloArty and the compiler-only restricted guest. Linux binding packages remain under Environments/Linux/x86_64.
Profiles reference shared declarations through explicit dependencies. Available hardware does not grant application access: HelloBlinky owns its mappings, grants and timing predicate. A product with several compute blocks does not implicitly select several compilation targets.
The AML-S905X-CC-V2 board entry and KeyStation reference selection frame a Clef unikernel with Meson HDMI, USB touch and a restricted Mali-450 renderer. The port plan separates firmware handoff, native display and GPU acceptance, with Linux as a reference and hosted route. These are documentation scaffolds without a selectable platform export.
Cryptography providers defines the boundary with Fidelity.Cryptography: Platform owns exact hardware capabilities and native bindings, while the peer library owns algorithms, key-use contracts and provider conformance. This is a documentation scaffold.
Strix Halo + Arty A7 is the physical reference for ThreeBody. Its handoff declarations distinguish CPU/GPU shared backing, NIC buffer ownership and FPGA request completion. The Apple Silicon / Metal reference uses the same shared contracts with environment-specific allocation and visibility obligations. Shared physical memory is accounted once; accessible views do not create additional capacity or establish device mappings.
BPF reference selections describe separate Linux eBPF, Windows eBPF and macOS classic-BPF hosts. Their checks keep safety obligations, verifier analysis work, execution work and elapsed-time budgets distinct. Missing host facts remain pending; estimates and measurements do not discharge hard bounds.
These are checked .clef source packages and executable reference consistency
checks. They do not yet provide Composer BPF emission, actual verifier/load
integration, GPU allocation or a working FPGA sidecar protocol. Reference
catalogues do not select a deployable [platform] description.
Run the F# reference checks, including CCS checks of the original package sources, from this repository:
dotnet run --project tests/Admission/Admission.Tests.fsprojSee compiler integration, admission and accelerator handoffs, composition rules and the documentation index. General resource instantiation, memory-domain composition, virtio drivers and OCI orchestration remain further work.