Agent platforms log actions, not sources. A workspace agent's audit trail records that it posted a report or updated a row, and records nothing about the documents it consulted to decide — so the answer cannot be reconstructed and a reviewer cannot tell grounding from invention. Where citations exist they are convenience links: a URL in rendered output, unbound to the answer, unsigned, and unaffected if the thing it points at changes or is deleted. This crate makes a citation checkable. Three properties, each a method rather than an assurance, drawn from the three gaps a recent survey of the field documented in the incumbents' own words: 1. Sources read are recorded, in read order — the artifact an actions-only log cannot produce. 2. A citation cannot outlive its referent. Each source is bound by CONTENT ID, not a locator: edit or delete the source and verify_source() fails, so the citation is verifiably dangling instead of silently pointing at whatever is there now. A URL cannot do this; a hash can. verify_answer() pins the answer the same way. 3. A citation says who may read it. Each source records the grant it was read under, so unreadable_by() names exactly which sources a given reader is not cleared to open — because an agent reads under its own grants, not its invoker's, so a citation can legitimately point at content the reader cannot see. Name the gap rather than hand over a link that fails (or wrongly works). It carries the retrieval's joules, so grounding an answer is accounted like any other work. Composition (the point): a Citation is content-addressed and its id IS the retrieval frame's payload_hash, so the jcp/2 receipt (SPEC §8) commits it. The receipt proves the retrieval was authorized, gated and metered; the citation records what it consulted; the receipt binds the two, and neither is trusted alone. Tested end to end: the sealed receipt's payload_hash equals the citation's id and cannot be swapped for another. New crate, additive; no change to existing crates beyond the workspace member list. 44 suites green, clippy clean, runnable example. Co-Authored-By: Claude Opus 4.8 <[email protected]>
1225 lines
28 KiB
TOML
1225 lines
28 KiB
TOML
# This file is automatically @generated by Cargo.
|
|
# It is not intended for manual editing.
|
|
version = 4
|
|
|
|
[[package]]
|
|
name = "arrayref"
|
|
version = "0.3.9"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
|
|
|
|
[[package]]
|
|
name = "arrayvec"
|
|
version = "0.7.6"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
|
|
|
|
[[package]]
|
|
name = "atomic-polyfill"
|
|
version = "1.0.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "8cf2bce30dfe09ef0bfaef228b9d414faaf7e563035494d7fe092dba54b300f4"
|
|
dependencies = [
|
|
"critical-section",
|
|
]
|
|
|
|
[[package]]
|
|
name = "base16ct"
|
|
version = "0.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
|
|
|
|
[[package]]
|
|
name = "base64"
|
|
version = "0.22.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
|
|
|
|
[[package]]
|
|
name = "base64ct"
|
|
version = "1.8.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06"
|
|
|
|
[[package]]
|
|
name = "bitflags"
|
|
version = "2.13.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8"
|
|
|
|
[[package]]
|
|
name = "blake3"
|
|
version = "1.8.5"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0aa83c34e62843d924f905e0f5c866eb1dd6545fc4d719e803d9ba6030371fce"
|
|
dependencies = [
|
|
"arrayref",
|
|
"arrayvec",
|
|
"cc",
|
|
"cfg-if",
|
|
"constant_time_eq",
|
|
"cpufeatures 0.3.0",
|
|
]
|
|
|
|
[[package]]
|
|
name = "block-buffer"
|
|
version = "0.10.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
|
|
dependencies = [
|
|
"generic-array",
|
|
]
|
|
|
|
[[package]]
|
|
name = "bs58"
|
|
version = "0.5.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4"
|
|
dependencies = [
|
|
"tinyvec",
|
|
]
|
|
|
|
[[package]]
|
|
name = "byteorder"
|
|
version = "1.5.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
|
|
|
|
[[package]]
|
|
name = "cc"
|
|
version = "1.2.63"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "556e016178bb5662a08681bbe0f00f8e17631781a4dfc8c45e466e4b185ec27f"
|
|
dependencies = [
|
|
"find-msvc-tools",
|
|
"shlex",
|
|
]
|
|
|
|
[[package]]
|
|
name = "cfg-if"
|
|
version = "1.0.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
|
|
|
|
[[package]]
|
|
name = "ciborium"
|
|
version = "0.2.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"
|
|
dependencies = [
|
|
"ciborium-io",
|
|
"ciborium-ll",
|
|
"serde",
|
|
]
|
|
|
|
[[package]]
|
|
name = "ciborium-io"
|
|
version = "0.2.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"
|
|
|
|
[[package]]
|
|
name = "ciborium-ll"
|
|
version = "0.2.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"
|
|
dependencies = [
|
|
"ciborium-io",
|
|
"half",
|
|
]
|
|
|
|
[[package]]
|
|
name = "cobs"
|
|
version = "0.3.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0fa961b519f0b462e3a3b4a34b64d119eeaca1d59af726fe450bbba07a9fc0a1"
|
|
dependencies = [
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "const-crc32-nostd"
|
|
version = "1.3.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "808ac43170e95b11dd23d78aa9eaac5bea45776a602955552c4e833f3f0f823d"
|
|
|
|
[[package]]
|
|
name = "const-oid"
|
|
version = "0.9.6"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
|
|
|
|
[[package]]
|
|
name = "constant_time_eq"
|
|
version = "0.4.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b"
|
|
|
|
[[package]]
|
|
name = "cpufeatures"
|
|
version = "0.2.17"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
|
|
dependencies = [
|
|
"libc",
|
|
]
|
|
|
|
[[package]]
|
|
name = "cpufeatures"
|
|
version = "0.3.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201"
|
|
dependencies = [
|
|
"libc",
|
|
]
|
|
|
|
[[package]]
|
|
name = "critical-section"
|
|
version = "1.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b"
|
|
|
|
[[package]]
|
|
name = "crunchy"
|
|
version = "0.2.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5"
|
|
|
|
[[package]]
|
|
name = "crypto-common"
|
|
version = "0.1.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a"
|
|
dependencies = [
|
|
"generic-array",
|
|
"typenum",
|
|
]
|
|
|
|
[[package]]
|
|
name = "curve25519-dalek"
|
|
version = "4.1.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"cpufeatures 0.2.17",
|
|
"curve25519-dalek-derive",
|
|
"digest",
|
|
"fiat-crypto",
|
|
"rand_core",
|
|
"rustc_version",
|
|
"subtle",
|
|
"zeroize",
|
|
]
|
|
|
|
[[package]]
|
|
name = "curve25519-dalek-derive"
|
|
version = "0.1.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "darling"
|
|
version = "0.20.11"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee"
|
|
dependencies = [
|
|
"darling_core",
|
|
"darling_macro",
|
|
]
|
|
|
|
[[package]]
|
|
name = "darling_core"
|
|
version = "0.20.11"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e"
|
|
dependencies = [
|
|
"fnv",
|
|
"ident_case",
|
|
"proc-macro2",
|
|
"quote",
|
|
"strsim",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "darling_macro"
|
|
version = "0.20.11"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead"
|
|
dependencies = [
|
|
"darling_core",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "debugless-unwrap"
|
|
version = "0.0.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f400d0750c0c069e8493f2256cb4da6f604b6d2eeb69a0ca8863acde352f8400"
|
|
|
|
[[package]]
|
|
name = "der"
|
|
version = "0.7.10"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb"
|
|
dependencies = [
|
|
"const-oid",
|
|
"zeroize",
|
|
]
|
|
|
|
[[package]]
|
|
name = "derive-getters"
|
|
version = "0.5.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "74ef43543e701c01ad77d3a5922755c6a1d71b22d942cb8042be4994b380caff"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "digest"
|
|
version = "0.10.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
|
|
dependencies = [
|
|
"block-buffer",
|
|
"crypto-common",
|
|
]
|
|
|
|
[[package]]
|
|
name = "document-features"
|
|
version = "0.2.12"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61"
|
|
dependencies = [
|
|
"litrs",
|
|
]
|
|
|
|
[[package]]
|
|
name = "ed25519"
|
|
version = "2.2.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53"
|
|
dependencies = [
|
|
"pkcs8",
|
|
"signature",
|
|
]
|
|
|
|
[[package]]
|
|
name = "ed25519-dalek"
|
|
version = "2.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9"
|
|
dependencies = [
|
|
"curve25519-dalek",
|
|
"ed25519",
|
|
"rand_core",
|
|
"serde",
|
|
"sha2",
|
|
"subtle",
|
|
"zeroize",
|
|
]
|
|
|
|
[[package]]
|
|
name = "either"
|
|
version = "1.16.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e"
|
|
|
|
[[package]]
|
|
name = "embedded-io"
|
|
version = "0.4.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced"
|
|
|
|
[[package]]
|
|
name = "embedded-io"
|
|
version = "0.6.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d"
|
|
|
|
[[package]]
|
|
name = "fiat-crypto"
|
|
version = "0.2.9"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d"
|
|
|
|
[[package]]
|
|
name = "find-msvc-tools"
|
|
version = "0.1.9"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
|
|
|
|
[[package]]
|
|
name = "fnv"
|
|
version = "1.0.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
|
|
|
|
[[package]]
|
|
name = "frost-core"
|
|
version = "2.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "2619366c227233c0f817ae01156bd21b8cf74d2bd96cbe0889f4c2e266724e44"
|
|
dependencies = [
|
|
"byteorder",
|
|
"const-crc32-nostd",
|
|
"debugless-unwrap",
|
|
"derive-getters",
|
|
"document-features",
|
|
"hex",
|
|
"itertools",
|
|
"postcard",
|
|
"rand_core",
|
|
"serde",
|
|
"serdect",
|
|
"thiserror 2.0.18",
|
|
"visibility",
|
|
"zeroize",
|
|
]
|
|
|
|
[[package]]
|
|
name = "frost-ed25519"
|
|
version = "2.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f73eb5fa9311d33450c2320199ad1663b5af7a50061d9627d2e0dc776f0acb27"
|
|
dependencies = [
|
|
"curve25519-dalek",
|
|
"document-features",
|
|
"frost-core",
|
|
"frost-rerandomized",
|
|
"rand_core",
|
|
"sha2",
|
|
]
|
|
|
|
[[package]]
|
|
name = "frost-rerandomized"
|
|
version = "2.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "4c5eb1ea58c0250b7ce834337f7b19e0417686d14ffc7f626137dea9149762d4"
|
|
dependencies = [
|
|
"derive-getters",
|
|
"document-features",
|
|
"frost-core",
|
|
"hex",
|
|
"rand_core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "generic-array"
|
|
version = "0.14.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
|
|
dependencies = [
|
|
"typenum",
|
|
"version_check",
|
|
]
|
|
|
|
[[package]]
|
|
name = "getrandom"
|
|
version = "0.2.17"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"libc",
|
|
"wasi",
|
|
]
|
|
|
|
[[package]]
|
|
name = "half"
|
|
version = "2.7.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"crunchy",
|
|
"zerocopy",
|
|
]
|
|
|
|
[[package]]
|
|
name = "hash32"
|
|
version = "0.2.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b0c35f58762feb77d74ebe43bdbc3210f09be9fe6742234d573bacc26ed92b67"
|
|
dependencies = [
|
|
"byteorder",
|
|
]
|
|
|
|
[[package]]
|
|
name = "heapless"
|
|
version = "0.7.17"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "cdc6457c0eb62c71aac4bc17216026d8410337c4126773b9c5daba343f17964f"
|
|
dependencies = [
|
|
"atomic-polyfill",
|
|
"hash32",
|
|
"rustc_version",
|
|
"serde",
|
|
"spin",
|
|
"stable_deref_trait",
|
|
]
|
|
|
|
[[package]]
|
|
name = "hex"
|
|
version = "0.4.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
|
|
|
|
[[package]]
|
|
name = "ident_case"
|
|
version = "1.0.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
|
|
|
|
[[package]]
|
|
name = "itertools"
|
|
version = "0.14.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285"
|
|
dependencies = [
|
|
"either",
|
|
]
|
|
|
|
[[package]]
|
|
name = "itoa"
|
|
version = "1.0.18"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
|
|
|
|
[[package]]
|
|
name = "jcp-a2a"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-bridge",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-bridge"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-channel"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-grant",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-cite"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-cli"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-energy",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-conformance"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-channel",
|
|
"jcp-energy",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"jcp-threshold",
|
|
"jcp-wire",
|
|
"rand_chacha",
|
|
"serde_json",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-efficiency"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-receipt",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-energy"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"jcp-schema",
|
|
"nvml-wrapper",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-gateway"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-bridge",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"sandbox-meter",
|
|
"serde_json",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-grant"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-schema",
|
|
"serde",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-intercept"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-energy",
|
|
"jcp-receipt",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-orchestrate"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-policy"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-receipt",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-prompt"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-receipt",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-receipt"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-grant",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-runtime"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-grant",
|
|
"jcp-schema",
|
|
"serde",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-schema"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"blake3",
|
|
"bs58",
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"serde",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-threshold"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"frost-ed25519",
|
|
"jcp-grant",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"jcp-wire",
|
|
"rand_chacha",
|
|
"rand_core",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-trace"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"blake3",
|
|
"ed25519-dalek",
|
|
"hex",
|
|
"jcp-receipt",
|
|
"jcp-schema",
|
|
"serde",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-wire"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jcp-x402"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"jcp-bridge",
|
|
"jcp-grant",
|
|
"jcp-receipt",
|
|
"jcp-runtime",
|
|
"jcp-schema",
|
|
"serde_json",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "libc"
|
|
version = "0.2.186"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66"
|
|
|
|
[[package]]
|
|
name = "libloading"
|
|
version = "0.8.9"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"windows-link",
|
|
]
|
|
|
|
[[package]]
|
|
name = "litrs"
|
|
version = "1.0.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092"
|
|
|
|
[[package]]
|
|
name = "lock_api"
|
|
version = "0.4.14"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"
|
|
dependencies = [
|
|
"scopeguard",
|
|
]
|
|
|
|
[[package]]
|
|
name = "memchr"
|
|
version = "2.8.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8"
|
|
|
|
[[package]]
|
|
name = "nvml-wrapper"
|
|
version = "0.10.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0c9bff0aa1d48904a1385ea2a8b97576fbdcbc9a3cfccd0d31fe978e1c4038c5"
|
|
dependencies = [
|
|
"bitflags",
|
|
"libloading",
|
|
"nvml-wrapper-sys",
|
|
"static_assertions",
|
|
"thiserror 1.0.69",
|
|
"wrapcenum-derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "nvml-wrapper-sys"
|
|
version = "0.8.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "698d45156f28781a4e79652b6ebe2eaa0589057d588d3aec1333f6466f13fcb5"
|
|
dependencies = [
|
|
"libloading",
|
|
]
|
|
|
|
[[package]]
|
|
name = "pkcs8"
|
|
version = "0.10.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
|
|
dependencies = [
|
|
"der",
|
|
"spki",
|
|
]
|
|
|
|
[[package]]
|
|
name = "postcard"
|
|
version = "1.1.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6764c3b5dd454e283a30e6dfe78e9b31096d9e32036b5d1eaac7a6119ccb9a24"
|
|
dependencies = [
|
|
"cobs",
|
|
"embedded-io 0.4.0",
|
|
"embedded-io 0.6.1",
|
|
"heapless",
|
|
"serde",
|
|
]
|
|
|
|
[[package]]
|
|
name = "ppv-lite86"
|
|
version = "0.2.21"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
|
|
dependencies = [
|
|
"zerocopy",
|
|
]
|
|
|
|
[[package]]
|
|
name = "proc-macro2"
|
|
version = "1.0.106"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
|
|
dependencies = [
|
|
"unicode-ident",
|
|
]
|
|
|
|
[[package]]
|
|
name = "quote"
|
|
version = "1.0.45"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
]
|
|
|
|
[[package]]
|
|
name = "rand_chacha"
|
|
version = "0.3.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
|
dependencies = [
|
|
"ppv-lite86",
|
|
"rand_core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "rand_core"
|
|
version = "0.6.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
|
dependencies = [
|
|
"getrandom",
|
|
]
|
|
|
|
[[package]]
|
|
name = "rustc_version"
|
|
version = "0.4.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
|
|
dependencies = [
|
|
"semver",
|
|
]
|
|
|
|
[[package]]
|
|
name = "sandbox-meter"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"ed25519-dalek",
|
|
"libc",
|
|
"libloading",
|
|
"sandbox-schema",
|
|
"serde",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "sandbox-schema"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"base64",
|
|
"blake3",
|
|
"ciborium",
|
|
"serde",
|
|
"thiserror 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "scopeguard"
|
|
version = "1.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
|
|
|
[[package]]
|
|
name = "semver"
|
|
version = "1.0.28"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd"
|
|
|
|
[[package]]
|
|
name = "serde"
|
|
version = "1.0.228"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
|
|
dependencies = [
|
|
"serde_core",
|
|
"serde_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_core"
|
|
version = "1.0.228"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
|
|
dependencies = [
|
|
"serde_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_derive"
|
|
version = "1.0.228"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_json"
|
|
version = "1.0.150"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9"
|
|
dependencies = [
|
|
"itoa",
|
|
"memchr",
|
|
"serde",
|
|
"serde_core",
|
|
"zmij",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serdect"
|
|
version = "0.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177"
|
|
dependencies = [
|
|
"base16ct",
|
|
"serde",
|
|
]
|
|
|
|
[[package]]
|
|
name = "sha2"
|
|
version = "0.10.9"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"cpufeatures 0.2.17",
|
|
"digest",
|
|
]
|
|
|
|
[[package]]
|
|
name = "shlex"
|
|
version = "2.0.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
|
|
|
|
[[package]]
|
|
name = "signature"
|
|
version = "2.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
|
|
dependencies = [
|
|
"rand_core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "spin"
|
|
version = "0.9.8"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
|
|
dependencies = [
|
|
"lock_api",
|
|
]
|
|
|
|
[[package]]
|
|
name = "spki"
|
|
version = "0.7.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
|
|
dependencies = [
|
|
"base64ct",
|
|
"der",
|
|
]
|
|
|
|
[[package]]
|
|
name = "stable_deref_trait"
|
|
version = "1.2.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"
|
|
|
|
[[package]]
|
|
name = "static_assertions"
|
|
version = "1.1.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
|
|
|
|
[[package]]
|
|
name = "strsim"
|
|
version = "0.11.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
|
|
|
[[package]]
|
|
name = "subtle"
|
|
version = "2.6.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
|
|
|
|
[[package]]
|
|
name = "syn"
|
|
version = "2.0.117"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"unicode-ident",
|
|
]
|
|
|
|
[[package]]
|
|
name = "thiserror"
|
|
version = "1.0.69"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
|
|
dependencies = [
|
|
"thiserror-impl 1.0.69",
|
|
]
|
|
|
|
[[package]]
|
|
name = "thiserror"
|
|
version = "2.0.18"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4"
|
|
dependencies = [
|
|
"thiserror-impl 2.0.18",
|
|
]
|
|
|
|
[[package]]
|
|
name = "thiserror-impl"
|
|
version = "1.0.69"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "thiserror-impl"
|
|
version = "2.0.18"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "tinyvec"
|
|
version = "1.11.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3"
|
|
dependencies = [
|
|
"tinyvec_macros",
|
|
]
|
|
|
|
[[package]]
|
|
name = "tinyvec_macros"
|
|
version = "0.1.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
|
|
|
[[package]]
|
|
name = "typenum"
|
|
version = "1.20.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
|
|
|
|
[[package]]
|
|
name = "unicode-ident"
|
|
version = "1.0.24"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
|
|
|
|
[[package]]
|
|
name = "version_check"
|
|
version = "0.9.5"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|
|
|
[[package]]
|
|
name = "visibility"
|
|
version = "0.1.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "wasi"
|
|
version = "0.11.1+wasi-snapshot-preview1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
|
|
|
|
[[package]]
|
|
name = "windows-link"
|
|
version = "0.2.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
|
|
|
|
[[package]]
|
|
name = "wrapcenum-derive"
|
|
version = "0.4.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "a76ff259533532054cfbaefb115c613203c73707017459206380f03b3b3f266e"
|
|
dependencies = [
|
|
"darling",
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "zerocopy"
|
|
version = "0.8.52"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ce1022995ff5ff5d841ad7d994facc23098cd40152f2c1d11cd607c6f530653f"
|
|
dependencies = [
|
|
"zerocopy-derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "zerocopy-derive"
|
|
version = "0.8.52"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1ae7f38b72ec2a254e2b87ef277cf2cd4fb97cbebf944faa6f33354da0867930"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "zeroize"
|
|
version = "1.8.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0"
|
|
dependencies = [
|
|
"zeroize_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "zeroize_derive"
|
|
version = "1.4.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "zmij"
|
|
version = "1.0.21"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
|