Hardware-safe gradient execution product (BL-47 / Axis 5)

July 23, 2026 · View on GitHub

Fail-closed no-submit default execution policy surface for hardware-adjacent gradient planning. Dry-run plans estimate shot budgets and cost-model status without provider submission; enforce refuses would-submit and over-budget paths.

Module: scpn_quantum_control.hardware_safe_execution
Complements phase.hardware_gradient_policy (preparation decisions) with a versioned public catalogue + probe product.

Rules

RuleBehaviour
Default policydefault_no_submit with no_submit=True
Would-submitAlways refused on this product surface
Dry-runAllowed when within shot/param budgets
Cost modelunavailable / blocked / rate_table (fixture only; no invent vendor rates)
Ticketed prepRequires owner_allow_submit + non-empty ticket; still no live submit
Unknown/blank policyFail closed

Claim boundary:

hardware-safe execution product only; no-submit is the default; dry-run plans estimate shots/cost status without provider submission; enforce refuses would-submit and over-budget without owner-gated allow; this surface never executes QPU jobs or invents hardware results

Public API

from scpn_quantum_control.hardware_safe_execution import (
    assert_hardware_safe_execution_integrity,
    build_audit_record,
    build_hardware_safe_execution_registry,
    default_execution_policy,
    dry_run_execution_plan,
    enforce_execution_request,
)

assert default_execution_policy().no_submit is True
reg = assert_hardware_safe_execution_integrity(
    build_hardware_safe_execution_registry()
)
plan = dry_run_execution_plan("default_no_submit", n_params=2, shots_per_evaluation=64)
assert plan.outcome == "allowed_plan"

submit = enforce_execution_request(
    "default_no_submit",
    mode="would_submit",
    n_params=1,
    shots_per_evaluation=64,
)
assert submit.allowed is False
audit = build_audit_record(submit)
assert audit.to_dict()["contains_secrets"] is False

Bounded product status

Shipped: S47.0–S47.1 policy catalogue · S47.2 shot budgets · S47.3 cost status · S47.4 dry-run planner · S47.5 audit records · S47.6 enforce wrapper · docs.

Open: S47.7 BL-33/BL-09 integration · S47.8 BL-29 ticket package template · multi-file execution_policy/ package split · live rate tables (owner data).

Authored by Anulum Fortis & Arcane Sapience (protoscience@anulum.li)