The Oven ecosystem¶
One authored project flows top to bottom through this map: what the author writes, how Oven resolves and plans it, how the compiler service and the direct rustc executor bake it into Loaves the store keeps, and how the registry moves those Loaves between machines. Border style carries RFC status. The two gold dotted nodes, the store's unit identity and incan.pub, are the parts still at draft RFC rather than implemented; the solid gold node is the Loaf itself, the unit everything else bakes, stores, reuses, and exchanges.
This page is a map, not a specification. Each box names the RFC that owns it, and the table at the end collects them. Where the map and an RFC disagree, the RFC is right and the map has a defect.
incan.pub admits an asset back only on exact unit identity. Cargo appears only on an explicit legacy path; crates.io is consumed as source and never mirrored.Inside a Loaf¶
A Loaf is not a cache guess. Its identity binds the semantic digest of its source, the dependency lock, the compiler and SDK, the target, the profile, and the resolved features, and its payload carries the compiled Rust library and the checked public surface; the executable representation of its exports (RFC 123) travels with the published source Loaf. A consumer either matches the sealed identity and reuses the result without Cargo, or receives a refusal that names the fact that differs and bakes only what is missing.
Where each box is specified¶
| Component | Status | RFCs |
|---|---|---|
| Incan facet | implemented | RFC 077, RFC 113 |
| Rust facet | planned | RFC 119; legacy crate dependencies RFC 013 |
loaf.toml and oven.lock |
implemented: the manifest and lock names, the incan.toml refusal, and an ignored Cargo.toml; the rest of RFC 117 is planned |
RFC 117; lock semantics RFC 020 |
| Project lifecycle | draft, v0.6 slice 7 for RFC 073, 076, 078 | RFC 073, 074, 075, 076, 078 |
| Unit graph and host providers | planned | RFC 119 |
| Resolver | planned | RFC 117; offline and locked builds RFC 020 |
| SDK components and compiled providers | implemented | RFC 114 |
| Cargo compatibility mode | planned, explicit adoption only | RFC 119 |
| Compiler service | implemented, extended by planned RFCs | RFC 120, 106, 123, 097, 116, 121 |
Direct rustc executor |
Oven Alpha today; planned scope in RFC 119 | RFC 119 |
| The Loaf | Oven Alpha today; identity in review | RFC 117, RFC 124, RFC 123 |
| Store | Oven Alpha today; unit identity in review | RFC 124; crash-safe publication RFC 112 |
| Outputs | implemented | RFC 117 |
| Artifact graph | draft | RFC 079, RFC 080 |
incan.pub |
draft, in review | RFC 125, supersedes RFC 034 |
| Mirrors and private registries | draft, in review | RFC 125 |
| crates.io | external, consumed as source only | RFC 119, RFC 125 |
Command surfaces incan and oven |
planned | RFC 118 |
The positioning behind the registry tier is in Ship the loaf, not the recipe; the toolchain that produces the Loaves is in A Cargo-free toolchain for Incan and Rust; what ships today is on the Oven Alpha page.