Your browser sucks, JavaScript disabled! Gunnar's console needs JavaScript and WebAssembly. Git over SSH on port 2222 does not.

nordisk/heimdall

profiles/heimdall-wasm-host/workload.toml

# Heimdall is a defensive sandbox. The probe corpus of the heimdall wasm host
# (`heimdall run --job wasm`): in a wasm job wasmtime is the only native code
# (spec §2), so this is the profile of every wasm job's process.
# Corpus: corpus/ (crates/heimdall-cli/tests/profile_corpus.rs writes it).
# docs/SECCOMP.md describes the format.
workload = "heimdall-wasm-host"
timeout_secs = 120
repeat = 3
exact_limit = 16
allow_wx = false

[binary]
glibc = "{target}/release/heimdall"
musl = "{target}/x86_64-unknown-linux-musl/release/heimdall"

[env]
RUST_BACKTRACE = "0"
# Probe (and enforce) the whole host in ONE process: `heimdall run` in a
# release build otherwise starts a worker under this very profile
# (docs/SECCOMP.md, "Enforcing the wasm host profile").
HEIMDALL_SECCOMP = "none"

[[run]]
name = "good_input_is_accepted"
args = ["run", "--job", "wasm", "--module", "{corpus}/good.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out", "--pin-out", "{tmp}/key.pub", "--param", "mode=probe"]
expect_exit = 0

[[run]]
name = "tampered_input_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/good.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-tampered", "--out", "{tmp}/out"]
expect_exit = 4

[[run]]
name = "malformed_input_traps_the_guest"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/good.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-malformed", "--out", "{tmp}/out"]
expect_exit = 4

[[run]]
name = "infinite_loop_runs_out_of_fuel"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/spin.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out", "--policy", "{corpus}/policy-fuel.toml"]
expect_exit = 4

[[run]]
name = "infinite_loop_hits_the_wall_clock"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/spin.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out", "--policy", "{corpus}/policy-time.toml"]
expect_exit = 4

[[run]]
name = "memory_bomb_hits_the_memory_limit"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/membomb.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out", "--policy", "{corpus}/policy-mem.toml"]
expect_exit = 4

[[run]]
name = "deep_recursion_overflows_the_stack"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/recurse.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out"]
expect_exit = 4

[[run]]
name = "many_files_hit_the_file_count_limit"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/manyfiles.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out", "--policy", "{corpus}/policy-files.toml"]
expect_exit = 4

[[run]]
name = "a_guest_with_a_wrong_signature_is_not_loaded"
error_path = true
args = ["run", "--job", "wasm", "--module", "{corpus}/badsig.wasm", "--trust-root", "{corpus}/root.der", "--in", "{corpus}/in-good", "--out", "{tmp}/out"]
expect_exit = 3

# BEGIN verify-bundle runs: written by guests/verify-bundle/tests/probe_corpus.rs; do not edit by hand

[[run]]
name = "verify_bundle_single_stored_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/job.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-stored", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_split_n1_stored_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-stored", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_split_n8_stored_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-stored", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n8.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_single_openzl_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/job.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-openzl", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_split_n1_openzl_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-openzl", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_split_n8_openzl_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-openzl", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n8.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_single_manychunk_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/job.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-manychunk", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_split_n1_manychunk_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-manychunk", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_split_n8_manychunk_is_accepted"
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-manychunk", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n8.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 0

[[run]]
name = "verify_bundle_single_tampered_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/job.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-tampered", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_split_n1_tampered_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-tampered", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_split_n8_tampered_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-tampered", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n8.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_single_bomb_lying_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/job.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-bomb-lying", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_split_n1_bomb_lying_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-bomb-lying", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_split_n8_bomb_lying_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-bomb-lying", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n8.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_single_bomb_ratio_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/job.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-bomb-ratio", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_split_n1_bomb_ratio_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-bomb-ratio", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n1.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4

[[run]]
name = "verify_bundle_split_n8_bomb_ratio_is_refused"
error_path = true
args = ["run", "--job", "wasm", "--module", "{dir}/verify-bundle/verifier.wasm", "--trust-root", "{dir}/verify-bundle/root.der", "--in", "{dir}/verify-bundle/in-bomb-ratio", "--out", "{tmp}/out", "--policy", "{dir}/verify-bundle/policy-n8.toml", "--decoder", "{dir}/verify-bundle/decoder.wasm", "--param", "now=2026-10-30T12:00:00+00:00", "--param", "policy=(\n    schema_version: \"holger.bundle-trust-policy/v1\",\n    trust_mode: Some(PinnedSigners),\n    trusted_roots: [],\n    certificate_validity: Enforce,\n    approved_signers: [\n        (\n            fingerprint: \"c4711c52b35be015278a3a01147e41c7048e7c1d3059f61c8820672cc1088f73\",\n            subject: None,\n            roles: [\n                \"security-reviewer\",\n            ],\n        ),\n        (\n            fingerprint: \"63610dac6ac357e41a5b7ccabeb1da3654e87c5f2779cd933645ac1eb0950447\",\n            subject: None,\n            roles: [\n                \"system-owner\",\n            ],\n        ),\n    ],\n    required_approval_roles: [\n        \"security-reviewer\",\n        \"system-owner\",\n    ],\n    minimum_distinct_approvers: 2,\n    trusted_release_signers: [\n        \"ecb2c225137dd64ce71cc43da9cfb247c0e782db113b684e371c07088fd19452\",\n    ],\n    release_signer_must_be_distinct: true,\n    maximum_bundle_age_secs: None,\n    require_expiry: true,\n    on_expired_metadata: Some(ReadOnly),\n    require_sbom: true,\n    require_vex: false,\n    require_scan: false,\n    allowed_products: [],\n    allowed_models: [],\n)"]
expect_exit = 4
# END verify-bundle runs