moxzi
Docs / Compatibility / Provenance and clean room

Provenance and clean roomalpha

What is moxzi derived from — and does any of it touch the IC's restricted source?

Short answer: no code from the Internet Computer node software (dfinity/ic) is copied, ported, paraphrased, linked, or shipped anywhere in moxzi. Parts of that repository are under the Internet Computer Community Source License, whose grants extend only to software running directly on the IC — so an alternate runtime must not derive from them, and this one does not. The full audit, with its four re-runnable checks, ships in every release archive as docs/PROVENANCE.md, alongside the attribution notices in NOTICE; this page is its summary.

What derives from what#

ComponentDerived fromBasis
The compilera deliberate, attributed port of dfinity/motoko's moc (Apache-2.0) — faithful to byte-identical outputApache-2.0 with attribution
The RTS blobs the linker embedscompiled unchanged from dfinity/motoko's rts/Apache-2.0 with attribution
The runtimes (moxzid, moxzi-web, the native host)the published interface specification plus black-box measurement of real replica behaviorindependent implementation
The durability layerdesigned here (snapshot + write-ahead log); resembles nothing in dfinity/icoriginal
Candid / agent librariesDFINITY's separate Apache-2.0 repos (candid, agent-rs, agent-js) — not dfinity/icApache-2.0 dependencies
Execution enginewasmtime, unmodifiedApache-2.0 w/ LLVM-exception
CryptoRustCrypto (k256, ed25519-dalek) — not DFINITY's crypto librariesMIT/Apache-2.0

No crate from dfinity/ic appears in the dependency tree. PocketIC and drun are used as opaque test oracles — run, observed, compared against — and are never linked into or shipped with anything.

Some things are deliberately absent because their only authoritative expression is restricted code: consensus, certification trees (ic0.data_certificate_present is 0 off-chain, by design), threshold BLS, and the IC's state layout.

What the words mean here#

The documentation borrows the IC ecosystem's vocabulary. Precisely:

The standing rules#

  1. Nobody working on the runtimes reads dfinity/ic source; behavior questions are settled by the spec or by measurement, and the measurement is documented.
  2. Porting from dfinity/motoko (Apache-2.0) is allowed and attributed. Porting from dfinity/ic is not — any directory, no exceptions.
  3. Every DFINITY-derived artifact that ships is listed in NOTICE, which ships too.
  4. IC-ecosystem dependencies come only from the Apache-2.0 repos.

Next#

On this pageWhat derives from whatWhat the words mean hereThe standing rulesNext