2 """Validation: required local-noise workflow bundle. 4 Reuses the canonical workflow-scale exactness harness and emits the required 5 local-noise artifact pair: 6 - one required-local-noise workflow bundle across the mandatory exact regime, 7 - one bounded required-baseline optimization trace. 10 python benchmarks/density_matrix/noise_support/required_local_noise_workflow_validation.py 13 from __future__
import annotations
18 from pathlib
import Path
20 REPO_ROOT = Path(__file__).resolve().parents[3]
21 if str(REPO_ROOT)
not in sys.path:
22 sys.path.insert(0, str(REPO_ROOT))
24 from benchmarks.density_matrix.workflow_evidence.exact_density_vqe_validation
import (
27 EXACT_REGIME_PARAMETER_SET_COUNT,
28 EXACT_REGIME_WORKFLOW_QUBITS,
29 build_exact_regime_workflow_bundle,
31 run_optimization_trace,
32 run_exact_regime_workflow_matrix,
36 SUITE_NAME =
"required_local_noise_workflow" 37 WORKFLOW_BUNDLE_FILENAME =
"required_local_noise_workflow_bundle.json" 38 TRACE_ARTIFACT_FILENAME =
"required_local_noise_trace_4q.json" 39 TRACE_CASE_NAME =
"required_local_noise_trace_4q" 40 DEFAULT_OUTPUT_DIR = (
41 REPO_ROOT /
"benchmarks" /
"density_matrix" /
"artifacts" /
"noise_support" 43 ARTIFACT_CORE_FIELDS = (
59 qubit_sizes=EXACT_REGIME_WORKFLOW_QUBITS,
60 parameter_set_count: int = EXACT_REGIME_PARAMETER_SET_COUNT,
64 qubit_sizes=qubit_sizes,
65 parameter_set_count=parameter_set_count,
66 trace_result=trace_result,
69 bundle[
"suite_name"] = SUITE_NAME
70 bundle[
"summary"] = dict(bundle[
"summary"])
71 bundle[
"summary"].update(
73 "required_trace_case_name": trace_result[
"case_name"],
74 "required_trace_completed": trace_result[
"status"] ==
"completed",
75 "required_trace_bridge_supported": trace_result.get(
76 "bridge_supported_pass",
False 78 "required_trace_present":
bool(trace_result.get(
"required_validation_trace")),
79 "required_trace_counts_toward_mandatory_baseline": trace_result.get(
80 "counts_toward_mandatory_baseline" 89 missing_fields = [field
for field
in ARTIFACT_CORE_FIELDS
if field
not in bundle]
92 "Required local-noise workflow bundle is missing required fields: {}".format(
93 ", ".join(missing_fields)
97 if bundle[
"summary"][
"required_cases"] != bundle[
"summary"][
"total_cases"]:
99 "Required local-noise workflow bundle mixes non-required cases into the mandatory matrix" 102 if not trace_result.get(
"required_validation_trace",
False):
103 raise ValueError(
"Required local-noise trace is missing required_validation_trace")
105 if trace_result.get(
"support_tier") !=
"required":
106 raise ValueError(
"Required local-noise trace is not marked as required support")
108 if trace_result.get(
"status") !=
"completed":
109 raise ValueError(
"Required local-noise trace did not complete successfully")
114 output_path.parent.mkdir(parents=
True, exist_ok=
True)
115 output_path.write_text(
116 json.dumps(bundle, indent=2, sort_keys=
True) +
"\n",
123 qubit_sizes=EXACT_REGIME_WORKFLOW_QUBITS,
124 parameter_set_count: int = EXACT_REGIME_PARAMETER_SET_COUNT,
128 qubit_sizes=qubit_sizes,
129 parameter_set_count=parameter_set_count,
131 trace_result =
capture_case(TRACE_CASE_NAME, run_optimization_trace)
135 qubit_sizes=qubit_sizes,
136 parameter_set_count=parameter_set_count,
140 "{} [{}] required cases={}/{} trace={}".format(
141 bundle[
"suite_name"],
143 bundle[
"summary"][
"required_passed_cases"],
144 bundle[
"summary"][
"required_cases"],
145 trace_result[
"status"],
148 return workflow_results, trace_result, bundle
152 parser = argparse.ArgumentParser(description=__doc__)
156 default=DEFAULT_OUTPUT_DIR,
157 help=
"Directory for the required local-noise workflow JSON artifacts.",
160 "--parameter-set-count",
162 default=EXACT_REGIME_PARAMETER_SET_COUNT,
163 help=
"Number of fixed parameter vectors per qubit size.",
169 default=list(EXACT_REGIME_WORKFLOW_QUBITS),
170 help=
"Workflow qubit sizes to include.",
175 help=
"Suppress progress output.",
177 return parser.parse_args()
183 qubit_sizes=tuple(args.qubit_sizes),
184 parameter_set_count=args.parameter_set_count,
185 verbose=
not args.quiet,
187 args.output_dir.mkdir(parents=
True, exist_ok=
True)
189 args.output_dir / WORKFLOW_BUNDLE_FILENAME,
191 trace_result=trace_result,
193 write_json(args.output_dir / TRACE_ARTIFACT_FILENAME, trace_result)
195 "Wrote {} and {} with status {} ({}/{})".format(
196 args.output_dir / WORKFLOW_BUNDLE_FILENAME,
197 args.output_dir / TRACE_ARTIFACT_FILENAME,
199 bundle[
"summary"][
"required_passed_cases"],
200 bundle[
"summary"][
"required_cases"],
203 if bundle[
"status"] !=
"pass":
207 if __name__ ==
"__main__":
def run_exact_regime_workflow_matrix
def build_exact_regime_workflow_bundle
def build_artifact_bundle
def validate_artifact_bundle(bundle, trace_result)
def write_artifact_bundle