wai-quantum 0.8.1, wai-quantum-qpu 0.4.1, wai-quantum-cli 0.2.4, the job service 0.2.2 and the Python package 0.1.2 #619
41 changed files with 266 additions and 222 deletions
|
|
@ -3476,7 +3476,7 @@ version = "0.1.0"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
|
|
@ -329,6 +329,48 @@ translocated, said it would update itself and could not. It now asks whether the
|
|||
caller to sign. `exact_upscale` now also needs `png_still` and `receipt_claims`. The catalogue's verbs gain `upscale`
|
||||
and `tonemap`.
|
||||
|
||||
### wai-quantum 0.8.1, wai-quantum-qpu 0.4.1 and wai-quantum-cli 0.2.4: an optimisation that stops and goes on, a job on a provider that outlives what sent it, and the job service's keys, reruns and tasks
|
||||
|
||||
This release carries the six entries on WAI Quantum's packages below it, from a job on a provider that outlives what
|
||||
sent it down to an optimisation that stops and goes on; the other entries among them are not part of it, and the
|
||||
desktop app's are its own 0.1.2. Each of the six only adds or fixes, so each package moves its last number
|
||||
(`wai-quantum/VERSIONING.md`, "Before 1.0"): `wai-quantum-qpu` 0.4.1 requires `wai-quantum` 0.8.1, and
|
||||
`wai-quantum-cli` 0.2.4 requires both; the job service is 0.2.2, and the Python package is 0.1.2, carrying the 0.8.1
|
||||
engine. `@transaction-science/wai-quantum` stays 0.1.1, as nothing in it changed, and the desktop app stays 0.1.2.
|
||||
Nothing is deprecated.
|
||||
|
||||
- **wai-quantum 0.8.1:** an optimisation goes on from a checkpoint to the same bytes
|
||||
(`engine::variational::optimize_resumable`, `call_optimize`, `wai.quantum.optimize-checkpoint/1`); the refusal code
|
||||
`J034`, for an idempotency key that does not read or that names another request; and `wai.quantum.job/1` lists the
|
||||
status `interrupted`, which the service has returned since its jobs were first kept across restarts, and gains the
|
||||
optional `interruptions`.
|
||||
- **wai-quantum-qpu 0.4.1:** a job on a provider is written down before it is sent (`ledger`), and `job::start`,
|
||||
`job::check`, `job::follow` and `job::cancel` come back to it from any process. It requires `wai-quantum` 0.8.1.
|
||||
- **wai-quantum-cli 0.2.4:** `run --provider --no-wait`, `providers jobs | collect | cancel`, and
|
||||
`optimize --checkpoint | --slice`; `submit` and `task` send each job under a key of their own. The local MCP server
|
||||
gains `get_provider_job`, `cancel_provider_job` and `list_provider_jobs`, and runs `run_on_provider` as a task.
|
||||
- **The job service 0.2.2:** `POST /v1/jobs` and `POST /v1/run` take an `Idempotency-Key`, and its MCP server's three
|
||||
runs an `idempotency_key`; a job it was running when it stopped runs once more (`rerun` in `GET /v1`'s `restored`);
|
||||
and those three runs are MCP tasks.
|
||||
- **The Python package 0.1.2:** `Service.submit` and `Service.run` take `idempotency_key`, and a job the service
|
||||
interrupted ends the wait. Its name is unchanged.
|
||||
- **What moves with the version:** the engine's version is among the sealed bytes of a stamped result, so the
|
||||
page's pinned digests move (the course check's 1a9aa0ad… to 49a9fdb8…, the compile's beffb3cb… to 198ea9bd…,
|
||||
the estimate's db90b147… to acbd7208…), the answer set's stored seal is written again
|
||||
(`WAI_ANSWER_BUNDLE_WRITE=1`), and the notebooks' stored outputs are stored again. The job pins strip the engine and
|
||||
schema, and do not move.
|
||||
- **What a caller may have to change:** nothing.
|
||||
- Every lockfile that holds one of these crates moves with them (seventeen), so a `--locked` build still reads its
|
||||
own, and `wai-rs`'s optional requirement on the engine moves to 0.8.1. The views page's manifest records the new
|
||||
digest of `wai-quantum-views`'s lockfile.
|
||||
- **Breaking:** `wire:corpus:wai/quantum-conformance/answers/cases/bell-stored.wqa`: the stored answer's receipt
|
||||
marker seals the engine's version, so it is written again at 0.8.1, as at each release. A conformance run checks a
|
||||
stored answer with the engine that wrote it: 0.8.0's corpus with 0.8.0, this one with 0.8.1.
|
||||
- **Breaking:** `wire:corpus:wai/quantum-conformance/answers/cases/bell-stored-changed.wqa`: the same stored answer
|
||||
with one sample's shots changed, written again with it; it still does not verify.
|
||||
- **Breaking:** `wire:corpus:wai/quantum-conformance/answers/bundle.json`: the corpus inline, written again with both
|
||||
stored answers.
|
||||
|
||||
### wai-quantum-qpu and wai-quantum-cli: a job on a provider outlives what sent it
|
||||
|
||||
A run on a person's provider waited in its process, and a job that had not finished in two hours was cancelled at the
|
||||
|
|
|
|||
|
|
@ -434,7 +434,7 @@
|
|||
"valid": true
|
||||
}
|
||||
},
|
||||
"answer": "root = Answer([bell, counts, check, seal])\n```qasm bell\nOPENQASM 3.0;\nqubit[2] q;\nbit[2] c;\nh q[0];\ncx q[0], q[1];\nc = measure q;\n```\ncounts = Histogram(@Sample(bell, 1000))\ncheck = Verdict(@Check(bell, {\"00\": 0.5, \"11\": 0.5}))\nseal = Receipt(@Seal([bell, counts, check]))\n]]>wai:receipt {\"statement\":\"seal\",\"receipt\":{\"alg\":\"ed25519\",\"canon\":\"rfc8785\",\"key\":\"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1\",\"digest\":\"cb520fe1dd07ac764305a9f073b92c2d379543e75fbf43ba4cf7b5f5acede921\",\"signature\":\"b4b31ddefc193f8d411f6792dbf78038b3fcd3a231d339ce8fc29c4b6e003e26b655d3d691d93d53febbe1bd5d7628fc8955d6afaa4589891ae3a34ad3133703\"}}\n"
|
||||
"answer": "root = Answer([bell, counts, check, seal])\n```qasm bell\nOPENQASM 3.0;\nqubit[2] q;\nbit[2] c;\nh q[0];\ncx q[0], q[1];\nc = measure q;\n```\ncounts = Histogram(@Sample(bell, 1000))\ncheck = Verdict(@Check(bell, {\"00\": 0.5, \"11\": 0.5}))\nseal = Receipt(@Seal([bell, counts, check]))\n]]>wai:receipt {\"statement\":\"seal\",\"receipt\":{\"alg\":\"ed25519\",\"canon\":\"rfc8785\",\"key\":\"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1\",\"digest\":\"740b4568e82f915953179d2396c920d382f1e6c366d42f55fe8cd4b98f5ab217\",\"signature\":\"06734b0397057bfc5938116d3b88b22029aebe24a91f8fc067098154e874e46c625f887c782c274ab4e5248e54211de802c8e538acf048af4ae7eca7d560e602\"}}\n"
|
||||
},
|
||||
{
|
||||
"name": "bell-stored-changed",
|
||||
|
|
@ -456,7 +456,7 @@
|
|||
"valid": false
|
||||
}
|
||||
},
|
||||
"answer": "root = Answer([bell, counts, check, seal])\n```qasm bell\nOPENQASM 3.0;\nqubit[2] q;\nbit[2] c;\nh q[0];\ncx q[0], q[1];\nc = measure q;\n```\ncounts = Histogram(@Sample(bell, 999))\ncheck = Verdict(@Check(bell, {\"00\": 0.5, \"11\": 0.5}))\nseal = Receipt(@Seal([bell, counts, check]))\n]]>wai:receipt {\"statement\":\"seal\",\"receipt\":{\"alg\":\"ed25519\",\"canon\":\"rfc8785\",\"key\":\"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1\",\"digest\":\"cb520fe1dd07ac764305a9f073b92c2d379543e75fbf43ba4cf7b5f5acede921\",\"signature\":\"b4b31ddefc193f8d411f6792dbf78038b3fcd3a231d339ce8fc29c4b6e003e26b655d3d691d93d53febbe1bd5d7628fc8955d6afaa4589891ae3a34ad3133703\"}}\n"
|
||||
"answer": "root = Answer([bell, counts, check, seal])\n```qasm bell\nOPENQASM 3.0;\nqubit[2] q;\nbit[2] c;\nh q[0];\ncx q[0], q[1];\nc = measure q;\n```\ncounts = Histogram(@Sample(bell, 999))\ncheck = Verdict(@Check(bell, {\"00\": 0.5, \"11\": 0.5}))\nseal = Receipt(@Seal([bell, counts, check]))\n]]>wai:receipt {\"statement\":\"seal\",\"receipt\":{\"alg\":\"ed25519\",\"canon\":\"rfc8785\",\"key\":\"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1\",\"digest\":\"740b4568e82f915953179d2396c920d382f1e6c366d42f55fe8cd4b98f5ab217\",\"signature\":\"06734b0397057bfc5938116d3b88b22029aebe24a91f8fc067098154e874e46c625f887c782c274ab4e5248e54211de802c8e538acf048af4ae7eca7d560e602\"}}\n"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,4 +10,4 @@ c = measure q;
|
|||
counts = Histogram(@Sample(bell, 999))
|
||||
check = Verdict(@Check(bell, {"00": 0.5, "11": 0.5}))
|
||||
seal = Receipt(@Seal([bell, counts, check]))
|
||||
]]>wai:receipt {"statement":"seal","receipt":{"alg":"ed25519","canon":"rfc8785","key":"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1","digest":"cb520fe1dd07ac764305a9f073b92c2d379543e75fbf43ba4cf7b5f5acede921","signature":"b4b31ddefc193f8d411f6792dbf78038b3fcd3a231d339ce8fc29c4b6e003e26b655d3d691d93d53febbe1bd5d7628fc8955d6afaa4589891ae3a34ad3133703"}}
|
||||
]]>wai:receipt {"statement":"seal","receipt":{"alg":"ed25519","canon":"rfc8785","key":"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1","digest":"740b4568e82f915953179d2396c920d382f1e6c366d42f55fe8cd4b98f5ab217","signature":"06734b0397057bfc5938116d3b88b22029aebe24a91f8fc067098154e874e46c625f887c782c274ab4e5248e54211de802c8e538acf048af4ae7eca7d560e602"}}
|
||||
|
|
|
|||
|
|
@ -10,4 +10,4 @@ c = measure q;
|
|||
counts = Histogram(@Sample(bell, 1000))
|
||||
check = Verdict(@Check(bell, {"00": 0.5, "11": 0.5}))
|
||||
seal = Receipt(@Seal([bell, counts, check]))
|
||||
]]>wai:receipt {"statement":"seal","receipt":{"alg":"ed25519","canon":"rfc8785","key":"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1","digest":"cb520fe1dd07ac764305a9f073b92c2d379543e75fbf43ba4cf7b5f5acede921","signature":"b4b31ddefc193f8d411f6792dbf78038b3fcd3a231d339ce8fc29c4b6e003e26b655d3d691d93d53febbe1bd5d7628fc8955d6afaa4589891ae3a34ad3133703"}}
|
||||
]]>wai:receipt {"statement":"seal","receipt":{"alg":"ed25519","canon":"rfc8785","key":"ed4928c628d1c2c6eae90338905995612959273a5c63f93636c14614ac8737d1","digest":"740b4568e82f915953179d2396c920d382f1e6c366d42f55fe8cd4b98f5ab217","signature":"06734b0397057bfc5938116d3b88b22029aebe24a91f8fc067098154e874e46c625f887c782c274ab4e5248e54211de802c8e538acf048af4ae7eca7d560e602"}}
|
||||
|
|
|
|||
2
wai/tools/quantum-meter/Cargo.lock
generated
2
wai/tools/quantum-meter/Cargo.lock
generated
|
|
@ -1017,7 +1017,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
2
wai/tools/quantum-wgsl-check/Cargo.lock
generated
2
wai/tools/quantum-wgsl-check/Cargo.lock
generated
|
|
@ -599,7 +599,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
2
wai/wai-audit/Cargo.lock
generated
2
wai/wai-audit/Cargo.lock
generated
|
|
@ -1005,7 +1005,7 @@ version = "0.1.0"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
2
wai/wai-key-proxy/Cargo.lock
generated
2
wai/wai-key-proxy/Cargo.lock
generated
|
|
@ -985,7 +985,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
2
wai/wai-ledger/Cargo.lock
generated
2
wai/wai-ledger/Cargo.lock
generated
|
|
@ -1007,7 +1007,7 @@ version = "0.1.0"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
2
wai/wai-pack/Cargo.lock
generated
2
wai/wai-pack/Cargo.lock
generated
|
|
@ -1257,7 +1257,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
6
wai/wai-quantum-cli/Cargo.lock
generated
6
wai/wai-quantum-cli/Cargo.lock
generated
|
|
@ -1213,7 +1213,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"cudarc",
|
||||
|
|
@ -1228,7 +1228,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-cli"
|
||||
version = "0.2.3"
|
||||
version = "0.2.4"
|
||||
dependencies = [
|
||||
"clap",
|
||||
"clap_complete",
|
||||
|
|
@ -1241,7 +1241,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-qpu"
|
||||
version = "0.4.0"
|
||||
version = "0.4.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"serde_json",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "wai-quantum-cli"
|
||||
version = "0.2.3"
|
||||
version = "0.2.4"
|
||||
edition = "2024"
|
||||
license = "Apache-2.0"
|
||||
description = "The wai-quantum command line: OpenQASM programs run on this machine as the quantum job service runs them (the strongest method each admits, its accuracy named, the result signed with the user's key), sent to the service, linted, drawn and verified; an MCP server for agents over stdio; and the research tools (error correction, DMRG, neural quantum states, resource estimates)."
|
||||
|
|
@ -41,5 +41,5 @@ getrandom = "0.4"
|
|||
# result's receipt still verifies after any JSON writer has carried it.
|
||||
serde_json = { version = "1", features = ["float_roundtrip"] }
|
||||
ureq = { version = "3", optional = true, features = ["json"] }
|
||||
wai-quantum = { version = "0.8.0", path = "../wai-quantum", default-features = false, features = ["full"] }
|
||||
wai-quantum-qpu = { version = "0.4.0", path = "../wai-quantum-qpu", optional = true }
|
||||
wai-quantum = { version = "0.8.1", path = "../wai-quantum", default-features = false, features = ["full"] }
|
||||
wai-quantum-qpu = { version = "0.4.1", path = "../wai-quantum-qpu", optional = true }
|
||||
|
|
|
|||
|
|
@ -3,14 +3,14 @@
|
|||
"name": "science.transaction.wai/quantum",
|
||||
"title": "WAI Quantum",
|
||||
"description": "OpenQASM 3 programs run, checked against their intent and signed on this machine.",
|
||||
"version": "0.2.3",
|
||||
"version": "0.2.4",
|
||||
"websiteUrl": "https://wai.transaction.science/quantum-run/",
|
||||
"packages": [
|
||||
{
|
||||
"registryType": "cargo",
|
||||
"registryBaseUrl": "https://crates.io",
|
||||
"identifier": "wai-quantum-cli",
|
||||
"version": "0.2.3",
|
||||
"version": "0.2.4",
|
||||
"transport": {
|
||||
"type": "stdio"
|
||||
},
|
||||
|
|
|
|||
6
wai/wai-quantum-desktop/Cargo.lock
generated
6
wai/wai-quantum-desktop/Cargo.lock
generated
|
|
@ -4459,7 +4459,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
@ -4472,7 +4472,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-cli"
|
||||
version = "0.2.3"
|
||||
version = "0.2.4"
|
||||
dependencies = [
|
||||
"clap",
|
||||
"clap_complete",
|
||||
|
|
@ -4500,7 +4500,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-qpu"
|
||||
version = "0.4.0"
|
||||
version = "0.4.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"serde_json",
|
||||
|
|
|
|||
|
|
@ -15,11 +15,11 @@ tauri = { version = "2", features = [] }
|
|||
serde_json = { version = "1", features = ["float_roundtrip"] }
|
||||
# The assistant's model server, called by the app (a local one by default).
|
||||
ureq = { version = "3", features = ["json"] }
|
||||
wai-quantum = { version = "0.8.0", path = "../wai-quantum", default-features = false, features = ["quantum_engine", "quantum_receipt", "quantum_toolchain", "quantum_qec", "quantum_noise"] }
|
||||
wai-quantum-cli = { version = "0.2.3", path = "../wai-quantum-cli", default-features = false }
|
||||
wai-quantum = { version = "0.8.1", path = "../wai-quantum", default-features = false, features = ["quantum_engine", "quantum_receipt", "quantum_toolchain", "quantum_qec", "quantum_noise"] }
|
||||
wai-quantum-cli = { version = "0.2.4", path = "../wai-quantum-cli", default-features = false }
|
||||
# The person's own providers: their registry, their credentials in the
|
||||
# operating system's keychain, and runs on them sealed with the app's key.
|
||||
wai-quantum-qpu = { version = "0.4.0", path = "../wai-quantum-qpu" }
|
||||
wai-quantum-qpu = { version = "0.4.1", path = "../wai-quantum-qpu" }
|
||||
# Updates: a newer release found in its update manifest, and installed only
|
||||
# when its signature verifies with the public key in tauri.conf.json.
|
||||
tauri-plugin-updater = "2.14.0"
|
||||
|
|
|
|||
4
wai/wai-quantum-py/Cargo.lock
generated
4
wai/wai-quantum-py/Cargo.lock
generated
|
|
@ -504,7 +504,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
@ -514,7 +514,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-py"
|
||||
version = "0.1.1"
|
||||
version = "0.1.2"
|
||||
dependencies = [
|
||||
"pyo3",
|
||||
"serde_json",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "wai-quantum-py"
|
||||
version = "0.1.1"
|
||||
version = "0.1.2"
|
||||
edition = "2024"
|
||||
license = "Apache-2.0"
|
||||
description = "WAI Quantum in Python: the shared job engine in-process (run, plan, lint, draw, critique, equivalent, verify, seal), a client for the job service, and notebook widgets. Built by maturin as one abi3 wheel per platform."
|
||||
|
|
@ -21,7 +21,7 @@ pyo3 = { version = "=0.29.3", features = ["abi3-py39", "extension-module"] }
|
|||
serde_json = { version = "1", features = ["float_roundtrip"] }
|
||||
# quantum_qec: codes, decoders and thresholds (`qec`); quantum_noise: mitigation
|
||||
# in a job (`mitigate`), learned noise models among them.
|
||||
wai-quantum = { version = "0.8.0", path = "../wai-quantum", default-features = false, features = ["quantum_engine", "quantum_receipt", "quantum_qec", "quantum_noise"] }
|
||||
wai-quantum = { version = "0.8.1", path = "../wai-quantum", default-features = false, features = ["quantum_engine", "quantum_receipt", "quantum_qec", "quantum_noise"] }
|
||||
|
||||
[profile.release]
|
||||
lto = "thin"
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ pip install "wai-quantum[widgets]" # and the notebook widgets (anywidget)
|
|||
The same wheels are attached, each with its SHA-256, to the `wai-quantum-cli-v<version>` release on the forge that carries them:
|
||||
|
||||
```sh norun=install
|
||||
pip install wai_quantum-0.1.1-cp39-abi3-<platform>.whl
|
||||
pip install wai_quantum-0.1.2-cp39-abi3-<platform>.whl
|
||||
```
|
||||
|
||||
To build the wheel yourself, with Rust 1.98 and maturin 1.15.0:
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ pip install "wai-quantum[widgets]" # 另加笔记本小组件(anywidget)
|
|||
同样的 wheel 也附在代码托管平台(forge)上包含它们的 `wai-quantum-cli-v<version>` 发布版中,每个都附有 SHA-256:
|
||||
|
||||
```sh norun=install
|
||||
pip install wai_quantum-0.1.1-cp39-abi3-<platform>.whl
|
||||
pip install wai_quantum-0.1.2-cp39-abi3-<platform>.whl
|
||||
```
|
||||
|
||||
要自己构建 wheel,需要 Rust 1.98 和 maturin 1.15.0:
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
"id": "bell-receipt-1",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.736123Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.736056Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.741092Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.740773Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.562652Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.562404Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.577430Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.576080Z"
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
|
|
@ -34,10 +34,10 @@
|
|||
"id": "bell-receipt-2",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.741884Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.741820Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.744379Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.744088Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.580045Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.579805Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.586496Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.585260Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -67,17 +67,17 @@
|
|||
"id": "bell-receipt-3",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.744955Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.744895Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.783189Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.782630Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.589222Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.589025Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.652981Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.651625Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "abb1e0122a7d42229591c0b955738bbe",
|
||||
"model_id": "fd416e4698f64a0da2b73fcded2193f0",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -105,22 +105,22 @@
|
|||
"id": "bell-receipt-4",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.784778Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.784713Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.786808Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.786677Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.654700Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.654595Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.658527Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.657599Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "8b21729581114c3c9b105acbaf05f8c4",
|
||||
"model_id": "a673622cb6ad439aaf7d284d5178bdfb",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
"text/html": [
|
||||
"<div class=\"wq-receipt\" style=\"font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:13px;line-height:1.45;border:1px solid var(--jp-border-color2,rgba(127,127,127,.35));border-radius:8px;padding:10px 12px;margin:2px 0;max-width:100%;overflow-x:auto\"><div>receipt <span class=\"wq-badge\" style=\"display:inline-block;padding:0 7px;border-radius:9px;font-size:11px;font-weight:600;color:#fff;background:#10b981\">verified</span> <span style=\"opacity:.7\">checked here, binding the request and the result as given</span></div><table style=\"border-collapse:collapse;margin-top:6px\"><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signer</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\"><span title=\"did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd\">did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd</span></td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">key</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">digest</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">ab97a7c91deb79cc7cc6b1a15dd68e3c51bd650f6cfe20ec6e968720716ffdbd</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signature</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">5f8d2afa9af0ea8d…b84aae21c634c400</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">form</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">ed25519 over rfc8785 canonical JSON</td></tr></table></div>"
|
||||
"<div class=\"wq-receipt\" style=\"font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:13px;line-height:1.45;border:1px solid var(--jp-border-color2,rgba(127,127,127,.35));border-radius:8px;padding:10px 12px;margin:2px 0;max-width:100%;overflow-x:auto\"><div>receipt <span class=\"wq-badge\" style=\"display:inline-block;padding:0 7px;border-radius:9px;font-size:11px;font-weight:600;color:#fff;background:#10b981\">verified</span> <span style=\"opacity:.7\">checked here, binding the request and the result as given</span></div><table style=\"border-collapse:collapse;margin-top:6px\"><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signer</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\"><span title=\"did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd\">did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd</span></td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">key</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">digest</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">e87b3cc31884cdd28439720d3b5531beffe8adbba95bc3f17a44cef7d837fe23</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signature</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">dc70df294bc4f805…63a8d87efa4ae908</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">form</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">ed25519 over rfc8785 canonical JSON</td></tr></table></div>"
|
||||
],
|
||||
"text/plain": [
|
||||
"Receipt(valid, signed by did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd)"
|
||||
|
|
@ -151,10 +151,10 @@
|
|||
"id": "bell-receipt-6",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.788732Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.788674Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.790400Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.790166Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.661478Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.661188Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.665812Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.664566Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -179,10 +179,10 @@
|
|||
"id": "bell-receipt-7",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.791289Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.791232Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.792794Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.792607Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.668325Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.667991Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.675290Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.673904Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -222,10 +222,10 @@
|
|||
"id": "bell-receipt-10",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.793708Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.793651Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.795486Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.795203Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.677610Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.677377Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.683581Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.683108Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -256,22 +256,22 @@
|
|||
"id": "bell-receipt-11",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.796225Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.796165Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.798342Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.798116Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.684934Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.684817Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.689490Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.688334Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "3d954404748147aa99dae6efeec69367",
|
||||
"model_id": "da8e984f7d3d488c92e75798d92357f1",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
"text/html": [
|
||||
"<div class=\"wq-receipt\" style=\"font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:13px;line-height:1.45;border:1px solid var(--jp-border-color2,rgba(127,127,127,.35));border-radius:8px;padding:10px 12px;margin:2px 0;max-width:100%;overflow-x:auto\"><div>receipt <span class=\"wq-badge\" style=\"display:inline-block;padding:0 7px;border-radius:9px;font-size:11px;font-weight:600;color:#fff;background:#ef4444\">INVALID</span> <span style=\"opacity:.7\">checked here, binding the request and the result as given</span></div><table style=\"border-collapse:collapse;margin-top:6px\"><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signer</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\"><span title=\"did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd\">did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd</span></td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">key</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">digest</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">ab97a7c91deb79cc7cc6b1a15dd68e3c51bd650f6cfe20ec6e968720716ffdbd</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signature</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">5f8d2afa9af0ea8d…b84aae21c634c400</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">form</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">ed25519 over rfc8785 canonical JSON</td></tr></table></div>"
|
||||
"<div class=\"wq-receipt\" style=\"font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:13px;line-height:1.45;border:1px solid var(--jp-border-color2,rgba(127,127,127,.35));border-radius:8px;padding:10px 12px;margin:2px 0;max-width:100%;overflow-x:auto\"><div>receipt <span class=\"wq-badge\" style=\"display:inline-block;padding:0 7px;border-radius:9px;font-size:11px;font-weight:600;color:#fff;background:#ef4444\">INVALID</span> <span style=\"opacity:.7\">checked here, binding the request and the result as given</span></div><table style=\"border-collapse:collapse;margin-top:6px\"><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signer</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\"><span title=\"did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd\">did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd</span></td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">key</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">digest</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">e87b3cc31884cdd28439720d3b5531beffe8adbba95bc3f17a44cef7d837fe23</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">signature</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">dc70df294bc4f805…63a8d87efa4ae908</td></tr><tr><td style=\"padding:1px 12px 1px 0;opacity:.7\">form</td><td style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;word-break:break-all\">ed25519 over rfc8785 canonical JSON</td></tr></table></div>"
|
||||
],
|
||||
"text/plain": [
|
||||
"Receipt(INVALID, signed by did:key:z6MkehRgf7yJbgaGfYsdoAsKdBPE3dj2CYhowQdcjqSJgvVd)"
|
||||
|
|
@ -294,10 +294,10 @@
|
|||
"id": "bell-receipt-12",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.799069Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.799016Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.800268Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.799997Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:11.692003Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:11.691783Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:11.694836Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:11.694009Z"
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
|
|
@ -323,7 +323,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.12.16"
|
||||
"version": "3.12.14"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
"id": "equivalence-1",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.297938Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.297867Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.302893Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.302556Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:15.115974Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:15.115723Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:15.135131Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:15.133925Z"
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
|
|
@ -33,10 +33,10 @@
|
|||
"id": "equivalence-2",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.303730Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.303668Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.305849Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.305580Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:15.138114Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:15.137417Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:15.142254Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:15.141688Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -84,10 +84,10 @@
|
|||
"id": "equivalence-4",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.306493Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.306401Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.309359Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.309124Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:15.143778Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:15.143660Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:15.147717Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:15.146785Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -127,17 +127,17 @@
|
|||
"id": "equivalence-5",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.310172Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.310116Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.350625Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.350206Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:15.150441Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:15.150172Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:15.206222Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:15.204995Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "c3da9d748f1945f2aff2b59ea7eb4c62",
|
||||
"model_id": "b9fe5385c0ac456bbf3d4452dc4db07d",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -166,17 +166,17 @@
|
|||
"id": "equivalence-6",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.351678Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.351609Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.354391Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.354116Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:15.209465Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:15.209224Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:15.215985Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:15.214942Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "a1878e6caaf94a74ab1da3d3ac5a1080",
|
||||
"model_id": "0e042ceeae0c40de9f90fa7e7c877def",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -216,7 +216,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.12.16"
|
||||
"version": "3.12.14"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
|
|
@ -23,17 +23,17 @@
|
|||
"id": "getting-started-1",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.199632Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.199506Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.207260Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.206889Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.643306Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.643072Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.665996Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.664858Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"'0.1.1'"
|
||||
"'0.1.2'"
|
||||
]
|
||||
},
|
||||
"execution_count": 1,
|
||||
|
|
@ -52,10 +52,10 @@
|
|||
"id": "getting-started-2",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.208119Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.208045Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.210082Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.209763Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.668323Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.668136Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.672194Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.671380Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -95,10 +95,10 @@
|
|||
"id": "getting-started-4",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.211031Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.210971Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.213179Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.212969Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.674651Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.674410Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.679911Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.679197Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -142,10 +142,10 @@
|
|||
"id": "getting-started-6",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.214092Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.214031Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.216290Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.216060Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.682691Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.682474Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.688126Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.687225Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -171,14 +171,14 @@
|
|||
" 'omitted_shots': 0,\n",
|
||||
" 'outcome_dimension': 1,\n",
|
||||
" 'elapsed_ms': 0,\n",
|
||||
" 'engine': {'name': 'wai-quantum', 'version': '0.8.0'},\n",
|
||||
" 'engine': {'name': 'wai-quantum', 'version': '0.8.1'},\n",
|
||||
" 'schema': 'wai.quantum.job-result/1',\n",
|
||||
" 'energy': {'unmetered': \"the Python package does not meter a run's energy\"},\n",
|
||||
" 'receipt': {'alg': 'ed25519',\n",
|
||||
" 'canon': 'rfc8785',\n",
|
||||
" 'key': '03a107bff3ce10be1d70dd18e74bc09967e4d6309ba50d5f1ddc8664125531b8',\n",
|
||||
" 'digest': '438d093b41edfae302ee4b499b8134bf1c039e7817eb847987b4c689b8991e60',\n",
|
||||
" 'signature': 'c61f770d572de5dcdb504e7e26584d1297c69ea8289ca5cd1e5396f22b67d3b943e9ef3c7dc5d76a8dde6f3b62e9511c47ab5cc7c25cbddc0886219418897900'}}}"
|
||||
" 'digest': 'fcb8a51cbb28755a029649137ab4a3eaf157592ffdcd5fd126c4bfd76722780d',\n",
|
||||
" 'signature': '1fde66bc4064043aaa533f11d06622e1e7af890964d76eae854e46f954cba088d88f119c680446a878dc9febc92baae3334f6c38f43e6a10782b28d93f0eb702'}}}"
|
||||
]
|
||||
},
|
||||
"execution_count": 4,
|
||||
|
|
@ -206,10 +206,10 @@
|
|||
"id": "getting-started-8",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.217127Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.217066Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.218801Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.218546Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.690850Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.690607Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.695140Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.694092Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -245,10 +245,10 @@
|
|||
"id": "getting-started-10",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.219585Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.219528Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.221051Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.220802Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.696260Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.696175Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.698601Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.697874Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -277,17 +277,17 @@
|
|||
"id": "getting-started-11",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.221683Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.221628Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.259452Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.258888Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.700393Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.700296Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.761758Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.760706Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "4ad1e0136ee94ab985bf9acd61d829f4",
|
||||
"model_id": "862d785d95014d2fa3583c793a677ffa",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -316,10 +316,10 @@
|
|||
"id": "getting-started-12",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.260588Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.260521Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.262655Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.262293Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.764493Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.764358Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.767042Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.766246Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -355,10 +355,10 @@
|
|||
"id": "getting-started-14",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.263404Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.263342Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.264893Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.264679Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.770092Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.769830Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.774111Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.772692Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -393,10 +393,10 @@
|
|||
"id": "getting-started-15",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.265659Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.265598Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.267570Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.267291Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.776792Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.776545Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.781512Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.780494Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -434,17 +434,17 @@
|
|||
"id": "getting-started-17",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:55.268166Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:55.268105Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:55.270774Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:55.270516Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:09.783907Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:09.783650Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:09.791634Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:09.790186Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "ac4be8571cc24bf4b2d0d157e78dc1c6",
|
||||
"model_id": "15a0ab2d6a2544b8aeb22a0dc91a737e",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -481,7 +481,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.12.16"
|
||||
"version": "3.12.14"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@
|
|||
"id": "noisy-run-1",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.874893Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.874821Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.879847Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.879515Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.001545Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.001323Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.020186Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.018417Z"
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
|
|
@ -33,10 +33,10 @@
|
|||
"id": "noisy-run-2",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.880640Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.880576Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.883016Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.882758Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.023525Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.023187Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.027644Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.027047Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -66,10 +66,10 @@
|
|||
"id": "noisy-run-3",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.883831Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.883763Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.887209Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.886916Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.029453Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.029307Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.037241Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.035584Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -108,17 +108,17 @@
|
|||
"id": "noisy-run-5",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.887944Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.887815Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.928739Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.928457Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.040398Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.040050Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.093861Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.092902Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "006fa7a5f63a4f80b29ccdeda6e4ffcf",
|
||||
"model_id": "07aa1821a4894e9088f765f6e563df06",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -155,10 +155,10 @@
|
|||
"id": "noisy-run-7",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.929803Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.929732Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.932326Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.931883Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.097168Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.096916Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.102184Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.101389Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
|
|
@ -185,17 +185,17 @@
|
|||
"id": "noisy-run-8",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:56.933097Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:56.933036Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:56.935560Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:56.935442Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.104861Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.104654Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.111704Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.110708Z"
|
||||
}
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "eee07e66a1184af49c60281df28406a5",
|
||||
"model_id": "da81e0cda7c64447ba633f984b078fc4",
|
||||
"version_major": 2,
|
||||
"version_minor": 1
|
||||
},
|
||||
|
|
@ -232,7 +232,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.12.16"
|
||||
"version": "3.12.14"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
"id": "service-job-1",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:57.467938Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:57.467863Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:57.475246Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:57.474914Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.937223Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.937015Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:17.969012Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:17.968243Z"
|
||||
},
|
||||
"tags": [
|
||||
"service"
|
||||
|
|
@ -51,10 +51,10 @@
|
|||
"id": "service-job-2",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:57.476037Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:57.475960Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:57.689928Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:57.689449Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:17.971996Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:17.971770Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:19.849590Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:19.848385Z"
|
||||
},
|
||||
"tags": [
|
||||
"service"
|
||||
|
|
@ -99,10 +99,10 @@
|
|||
"id": "service-job-4",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:57.690965Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:57.690890Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:57.693971Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:57.693679Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:19.852105Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:19.851904Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:19.897157Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:19.895865Z"
|
||||
},
|
||||
"tags": [
|
||||
"service"
|
||||
|
|
@ -137,10 +137,10 @@
|
|||
"id": "service-job-6",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:57.694794Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:57.694730Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:57.696807Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:57.696548Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:19.900294Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:19.900004Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:19.906124Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:19.904736Z"
|
||||
},
|
||||
"tags": [
|
||||
"service"
|
||||
|
|
@ -169,10 +169,10 @@
|
|||
"id": "service-job-7",
|
||||
"metadata": {
|
||||
"execution": {
|
||||
"iopub.execute_input": "2026-11-01T13:51:57.697505Z",
|
||||
"iopub.status.busy": "2026-11-01T13:51:57.697426Z",
|
||||
"iopub.status.idle": "2026-11-01T13:51:57.725830Z",
|
||||
"shell.execute_reply": "2026-11-01T13:51:57.725338Z"
|
||||
"iopub.execute_input": "2026-11-04T19:48:19.908582Z",
|
||||
"iopub.status.busy": "2026-11-04T19:48:19.908368Z",
|
||||
"iopub.status.idle": "2026-11-04T19:48:19.953427Z",
|
||||
"shell.execute_reply": "2026-11-04T19:48:19.952909Z"
|
||||
},
|
||||
"tags": [
|
||||
"service"
|
||||
|
|
@ -211,7 +211,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.12.16"
|
||||
"version": "3.12.14"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
4
wai/wai-quantum-qpu/Cargo.lock
generated
4
wai/wai-quantum-qpu/Cargo.lock
generated
|
|
@ -423,7 +423,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
@ -433,7 +433,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-qpu"
|
||||
version = "0.4.0"
|
||||
version = "0.4.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"serde_json",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "wai-quantum-qpu"
|
||||
version = "0.4.0"
|
||||
version = "0.4.1"
|
||||
edition = "2024"
|
||||
license = "Apache-2.0"
|
||||
description = "Quantum processors as members of the wai-quantum fabric, and the person's own providers: clients for the services that run circuits on them, an open provider protocol (HTTP or a local process) with its reference provider and conformance checker, and a registry whose credentials stay in the operating system's keychain. Each circuit is compiled exactly to the processor's own gates and connectivity, checked against the circuit before it is sent, its cost shown before it is submitted, and its counts read back onto the circuit's qubits and sealed in a receipt."
|
||||
|
|
@ -11,6 +11,6 @@ categories = ["science", "api-bindings"]
|
|||
[dependencies]
|
||||
# quantum_engine and quantum_receipt: a provider job is read, compared with the
|
||||
# circuit's exact distribution and sealed by the engine (engine::provider).
|
||||
wai-quantum = { version = "0.8.0", path = "../wai-quantum", default-features = false, features = ["quantum_fabric", "quantum_engine", "quantum_receipt"] }
|
||||
wai-quantum = { version = "0.8.1", path = "../wai-quantum", default-features = false, features = ["quantum_fabric", "quantum_engine", "quantum_receipt"] }
|
||||
serde_json = "1"
|
||||
blake3 = "1"
|
||||
|
|
|
|||
2
wai/wai-quantum-serve/Cargo.lock
generated
2
wai/wai-quantum-serve/Cargo.lock
generated
|
|
@ -599,7 +599,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
4
wai/wai-quantum-service/Cargo.lock
generated
4
wai/wai-quantum-service/Cargo.lock
generated
|
|
@ -857,7 +857,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
@ -870,7 +870,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum-service"
|
||||
version = "0.2.1"
|
||||
version = "0.2.2"
|
||||
dependencies = [
|
||||
"axum",
|
||||
"blake3",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "wai-quantum-service"
|
||||
version = "0.2.1"
|
||||
version = "0.2.2"
|
||||
edition = "2024"
|
||||
license = "Apache-2.0"
|
||||
description = "The WAI quantum stack as a public job service: OpenQASM 3 circuits run by the strongest method each admits (bit-exact and exact state vectors, stabilizer tableaux, matrix product states, sparse Pauli dynamics), every result naming its method and its accuracy and sealed with the service's key; each job in its own process, inside a memory budget."
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
"name": "science.transaction.wai/quantum-jobs",
|
||||
"title": "WAI Quantum job service",
|
||||
"description": "A free quantum job service: OpenQASM 3 run, checked and signed, with no account or key.",
|
||||
"version": "0.2.1",
|
||||
"version": "0.2.2",
|
||||
"websiteUrl": "https://wai.transaction.science/quantum-run/",
|
||||
"remotes": [
|
||||
{
|
||||
|
|
|
|||
2
wai/wai-quantum-views/Cargo.lock
generated
2
wai/wai-quantum-views/Cargo.lock
generated
|
|
@ -416,7 +416,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
2
wai/wai-quantum/Cargo.lock
generated
2
wai/wai-quantum/Cargo.lock
generated
|
|
@ -1079,7 +1079,7 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"block2",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
edition = "2024"
|
||||
license = "Apache-2.0"
|
||||
description = "A deterministic quantum stack in pure Rust: byte-exact circuit simulation (statevector / stabilizer / tensor-network MPS / sparse-Pauli backends), sparse Pauli dynamics at utility scale (arbitrary angles, 1024 qubits), belief-propagation tensor networks on the hardware graph, error mitigation, qLDPC decoding, noise learning, circuit-equivalence proofs, a phasor interference-ML layer, information-theoretic limits, noisy channels and state tomography, and signed energy-accounted receipts. No QPU, no cloud, no system libraries in the default features — identical results native, in the browser, and as a WASI component at the edge; the opt-in WebGPU member reaches the platform's GPU interface."
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ Every result names the engine that made it and the schema it follows (a
|
|||
compile's result names `wai.quantum.compile-result/1`):
|
||||
|
||||
```json fragment
|
||||
"engine": { "name": "wai-quantum", "version": "0.8.0" },
|
||||
"engine": { "name": "wai-quantum", "version": "0.8.1" },
|
||||
"schema": "wai.quantum.job-result/1"
|
||||
```
|
||||
|
||||
|
|
|
|||
|
|
@ -12,11 +12,11 @@
|
|||
"engine_js": 399830
|
||||
},
|
||||
"sha256": {
|
||||
"page": "2ec52932b3be97805feb856c8c45fd28090b735600d2d45d2e7e78d94742f1b0",
|
||||
"page": "116d594d14c367e297e3832b608a74ad329503b1f997fdc1a8d7fbf60050dc05",
|
||||
"script": "3b32f314a4c3d5e253cf70f0cdb53378f6843f82dd1451b9b2c01acdd28c8d9a",
|
||||
"styles": "11ebcd4416c68e9eaf1156ca6f7c92b9a96744895ed13c377eba98fdd8dca9a6",
|
||||
"engine_wasm": "f4d1cff073594784dba764109d2688f2b47eac8d5698ee47e0e336db3ee9fc15",
|
||||
"engine_js": "efed599070b69ebd01c7c3a66a08aa085e4ddc7a37a100aa60c40234f9748c53"
|
||||
"engine_wasm": "95fbb6afbe9b4e0e7b1798414a82770e44677f6b8272dfe3de2ba7b3ba530442",
|
||||
"engine_js": "374a802274404d8e541277c2144c166722d929148f0686c327b409d76453c96f"
|
||||
},
|
||||
"sources": {
|
||||
"wai/quantum-studio/build-views.mjs": "da5b161829a990b3d1bb4c1b3ec7c8f254ff7b5078476156e504ae322bc4f010",
|
||||
|
|
@ -64,7 +64,7 @@
|
|||
"wai/quantum-studio/src/views/main.js": "4129c45e35f65caaedb9e2fd4e0e2e1a29ba6ff27b33c5190924c8cc13b2a5cd",
|
||||
"wai/quantum-studio/src/views/render.js": "b3f8bd6717bd18b6275ea8fc94cd2be31f81ef0a8d7c46a882e03085a67eaea4",
|
||||
"wai/quantum-studio/src/views/views.css": "6ba324a58e6c320094e7534694c3c6d53d15605326be785d72989432b7b2a1fe",
|
||||
"wai/wai-quantum-views/Cargo.lock": "83edc2c2e30b8b07fcadfb09c7f65c7b7ae193097ed2584e5b06275e7ed9cccf",
|
||||
"wai/wai-quantum-views/Cargo.lock": "9a43b475a75eaabee2bfd530bfdcbde63ad39ec9fd5b048ae26794d118c0a361",
|
||||
"wai/wai-quantum-views/Cargo.toml": "6192b41019ef8f54d723fc166280dd44b69b3cd05d50035783eec7ed412ed804",
|
||||
"wai/wai-quantum-views/build.sh": "c7cb7c91ba0a3ee39e1e4427c4b8d5be21d289eab3b036b7466347c774b67871",
|
||||
"wai/wai-quantum-views/src/lib.rs": "a9a20da6399ff58efde84eb5116f8e064ca9110f33b6b99546899ae5971636e0"
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
2
wai/wai-rs/Cargo.lock
generated
2
wai/wai-rs/Cargo.lock
generated
|
|
@ -4767,7 +4767,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek 2.2.0",
|
||||
|
|
|
|||
|
|
@ -114,7 +114,7 @@ getrandom = { version = "0.3", optional = true }
|
|||
# ---- quantum (optional, behind the `quantum*` features) ----
|
||||
# The quantum stack now lives in its own dependency-light crate so it can be used
|
||||
# without the media/codec chain. `wai` re-exports it unchanged.
|
||||
wai-quantum = { version = "0.8.0", path = "../wai-quantum", optional = true, default-features = false }
|
||||
wai-quantum = { version = "0.8.1", path = "../wai-quantum", optional = true, default-features = false }
|
||||
# Create's library (WAI's widgets for joule-ui): `wai create --from app.oui`, `wai app` and
|
||||
# `wai mcp --toolset app`, in a build with the feature `app`.
|
||||
wai-app = { path = "../wai-app", optional = true }
|
||||
|
|
|
|||
2
wai/wai-web/Cargo.lock
generated
2
wai/wai-web/Cargo.lock
generated
|
|
@ -1241,7 +1241,7 @@ version = "0.1.0"
|
|||
|
||||
[[package]]
|
||||
name = "wai-quantum"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
dependencies = [
|
||||
"blake3",
|
||||
"ed25519-dalek",
|
||||
|
|
|
|||
|
|
@ -771,8 +771,8 @@ mod tests {
|
|||
/// lesson's starter, at 512 MiB, as the native build and the wasm32 one write it.
|
||||
/// A check names the engine that made it (`engine::schema::stamp_as`), so this
|
||||
/// moves with every release of wai-quantum (374b400e… before checks named it,
|
||||
/// 969b2c1c… at 0.7.0, 1a9aa0ad… at 0.8.0).
|
||||
pub(super) const COURSE_DIGEST: &str = "1a9aa0adbdf40ce1a812ee40408caec29259a25bea853c49f853a798b05baa6a";
|
||||
/// 969b2c1c… at 0.7.0, 1a9aa0ad… at 0.8.0, 49a9fdb8… at 0.8.1).
|
||||
pub(super) const COURSE_DIGEST: &str = "49a9fdb8f46840e376e8d36a190feb7c9bf10491511cae7e93349c687e60877c";
|
||||
|
||||
pub(super) fn starter(id: &str) -> String {
|
||||
let l: Value = serde_json::from_str(&engine_course_lesson(id, "en")).unwrap();
|
||||
|
|
@ -860,7 +860,8 @@ mod tests {
|
|||
/// names the engine and its schema (`engine::schema::stamp_as`), and its
|
||||
/// certificate names its gate set `basis` (04a03934… when it was `target`).
|
||||
/// The engine's version is among the sealed bytes, so this moves with every
|
||||
/// release of wai-quantum (0a165415… at 0.6.16, ac948133… at 0.7.0, beffb3cb… at 0.8.0).
|
||||
/// release of wai-quantum (0a165415… at 0.6.16, ac948133… at 0.7.0, beffb3cb… at 0.8.0,
|
||||
/// 198ea9bd… at 0.8.1).
|
||||
/// The compile sealed before either, whose bytes hashed to 14db506e…, is
|
||||
/// kept in wai-quantum's `src/engine/testdata/compile-legacy.json` and still
|
||||
/// verifies.
|
||||
|
|
@ -869,7 +870,7 @@ mod tests {
|
|||
pub(super) const PULSE_XM: &str = "OPENQASM 3.0;\ndefcalgrammar \"openpulse\";\ncal {\n extern port d0;\n extern port m0;\n extern port a0;\n frame q0 = newframe(d0, 5.0e9, 0);\n frame r0 = newframe(m0, 7.1e9, 0);\n frame c0 = newframe(a0, 7.1e9, 0);\n}\ndefcal x $0 { play(q0, gaussian(0.4, 64dt, 16dt)); }\ndefcal measure $0 -> bit { play(r0, constant(0.1, 200dt)); return capture_v2(c0, 200dt); }\nbit[1] c;\nx $0;\nc[0] = measure $0;\n";
|
||||
pub(super) const PULSE_XM_DENSITY: &str = "03c0c48a8a3568fdd86e792633c5b4ea98eca3d09dc40d028bb50e13c489828b";
|
||||
|
||||
pub(super) const COMPILE_DIGEST: &str = "beffb3cbdee44a02268bdd04f4de7941d87f9034e072c727c92f7d571d6b03c9";
|
||||
pub(super) const COMPILE_DIGEST: &str = "198ea9bd9431f491a02dbd3af3a4b1309999837dfb0916902b41023aeab21040";
|
||||
|
||||
/// A compile in the page: Clifford+T within the budget, every pass
|
||||
/// recorded, the certificate sealed with the page's key and checked
|
||||
|
|
@ -898,8 +899,9 @@ mod tests {
|
|||
/// names the engine and its schema (`engine::schema::stamp_as`), which
|
||||
/// moved it from aaa42bc8…, the estimate sealed before. The engine's
|
||||
/// version is among the sealed bytes, so this moves with every release of
|
||||
/// wai-quantum (0cd25cf6… at 0.6.16, 8715e76b… at 0.7.0, db90b147… at 0.8.0).
|
||||
pub(super) const ESTIMATE_DIGEST: &str = "db90b14718b301f025e1b2979c19b9c1bcd824e259c7fde9a76775244e4cd76a";
|
||||
/// wai-quantum (0cd25cf6… at 0.6.16, 8715e76b… at 0.7.0, db90b147… at 0.8.0,
|
||||
/// acbd7208… at 0.8.1).
|
||||
pub(super) const ESTIMATE_DIGEST: &str = "acbd7208b4a229240bbe3125636f430f680e8d89344682966396b7693b0d7938";
|
||||
|
||||
/// An estimate in the page: the counts (a ladder through an ancilla), the
|
||||
/// frontier, every receipt sealed with the page's key, the seal checked
|
||||
|
|
|
|||
Loading…
Reference in a new issue