| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
jouleclaw public surface must stay documented / Public-surface audit (jouleclaw-rs) (push) Successful in 57s
Finishes the workspace-wide dependency refresh on stable 1.98.0. Most crates
took the newest release cleanly; the ones below could not, and the reason is
worth recording because "latest" is the wrong answer for several of them.
rand is pinned to 0.8, not 0.10. rand 0.10 dropped `rand::RngCore` and
`rand::rngs::OsRng`, but the real blocker is that it ships rand_core 0.10
while every signature crate here (ed25519-dalek 2.x, bls12_381, k256/p256)
is built on rand_core 0.6 -- so a 0.10 RNG is not even the right *type* to
hand to `SigningKey::generate`. rand 0.8 re-exports rand_core 0.6, which is
exactly what those crates want. rand_chacha follows it to 0.3 for the same
reason. The RNG generation is pinned by the crypto ecosystem, not by recency.
aes is pinned to 0.8 (cipher 0.4) in smart-byte-nostr and op-mobile-wallets:
aes 0.9 moved to cipher 0.5, which removed `BlockEncryptMut`,
`encrypt_padded_vec_mut` and `StreamCipherCoreWrapper::new` that this code
uses, and aes-gcm 0.10 pulls cipher 0.4 anyway -- so 0.9 also put two aes and
two cipher versions in the graph. op-3ds2 declared aes/cbc for an encrypted
deviceInfo block it never implemented; dropping those unused deps removes the
last cipher 0.5 edge, leaving a single aes and a single cipher.
reqwest 0.13 moved `RequestBuilder::query` and `::form` behind new features,
which `default-features = false` was silently excluding. Enabled per crate.
Source changes are the matching API drift:
- hmac's `new_from_slice` lives on `KeyInit`, not `Mac`
- secp256k1 0.31 takes the array by value in `from_byte_array`, and its own
re-exported `rand` is used for keygen so the two can never drift again
- smart-byte-mdl reads OS entropy from getrandom directly. It was reaching
for a rand RNG only to get 32 bytes, and going to the primitive genuinely
removes the CryptoRng skew with p256 0.14-rc that the comment there
described dodging -- and drops rand from that crate entirely.
Verified: all 20 workspaces in the monorepo compile with
`cargo check --workspace --all-targets` on 1.98.0, zero errors.
Co-Authored-By: Claude Opus 5 <[email protected]>
|
||
| .. | ||
| conformance | ||
| smart-byte-rs | ||
| spec | ||
| vocab | ||
| LICENSE | ||
| README.md | ||
| SECURITY.md | ||
| THREE_FACES.md | ||
Smart Byte
A carrier for value. Settlement-agnostic, energy-attributed, no off switch.
The smart byte is not money — it is a vesicle (the cellular-biology sense): a content-addressed, signed envelope carrying exactly five things — identity (the blake3 hash of its origin attestation), provenance (the issuer's signed birth certificate), an ownership chain (signature-bound transitions), cargo (whatever value it represents — USD, joules, compute-hours, votes, attestations, claims; the substrate is agnostic), and a two-part joule cost (measured + estimated, cumulative over its life). Consensus is lockstep deterministic simulation with BFT supermajority commit; the substrate scales by federating many bounded clusters, not by growing one. It is TCP/IP for value: an open, application-agnostic carrier that any matching, clearing, or trust-signaling layer can build on.
The substrate is intentionally ownerless: no protocol-level token, permissive licensing on the spec text and reference code, conformance test vectors so any implementer can verify canonicity without a trust relationship with the authors. The protocol's identity lives in its conformance vectors and content-addressing, not in any brand. Transaction Science is one steward — it publishes the spec, ships a reference implementation, and operates commercial services around the substrate — not its proprietor.
Contents
spec/treatise_v1_parts_I_II_III_combined.md— Smart Byte Substrate: A Treatise (Parts I–III: the foundation, the substrate architecture, the security engineering; Parts IV–VII previewed)strategic_context.docx— The Strategic Context: Why the Substrate Makes Sense in 2026SECURITY.md— the working security-engineering summary: it's a digital system on the internet, secured the way digital systems on the internet are secured (conservative cryptography, encrypted transports, reproducible multiply-reviewed builds, standard layer-2 key custody, standard availability engineering, textbook BFT consensus) plus a handful of new compositions of those proven parts. Plus the vulnerability-reporting process.
Status
Treatise v1.0 (May 2026). The conformance specification (byte-level wire formats) and the reference implementation referenced in the treatise as "v0.3" are to be brought into this repository.
Related
- EOC (
../eoc/) — the energy-optimized AI compute substrate; the smart byte's energy attribution depends on an honest joules-per-task substrate. - Settlement (
settlement.science) — the flagship regulated financial institution running on the substrate as an issuer and consumer of smart bytes.