Embeddable TUF 1.x client verification core for MoonBit
Dependencies
moon add erzhuzi259/moontuf@0.1.0import {
"erzhuzi259/moontuf/client",
"erzhuzi259/moontuf/integrations/admission",
}moon update
moon fmt --check
moon check --target all --deny-warn --warn-list '-implicit_impl_as_method-test_unqualified_package-unused_package'
moon test --deny-warn --warn-list '-implicit_impl_as_method-test_unqualified_package-unused_package'
moon run examples/offlinelet client = @client.open_trusted_root(
authenticated_root_bytes,
"2026-09-25T00:00:00Z",
).unwrap()
let outcome = client.refresh(fn(name) { host_load_metadata_response(name) })
// Only continue when outcome.status() is Complete.
let trusted = outcome.client()
let rules = @admission.policy(prefix="plugins", max_bytes=64L * 1024L * 1024L).unwrap()
let choice = @admission.evaluate(trusted, "plugins/widget.wasm", rules, host_load_metadata)
// Download a ticket's repository_name into temporary storage, verify bytes,
// then let the host atomically publish the candidate.fn profile_name() -> StringInstall
Download zipEmbeddable TUF 1.x client verification core for MoonBit
Dependencies