| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
Some checks failed
joule-moq-room room service / joule-moq-room · does this change touch it (pull_request) Successful in 9s
joule-moq-web browser client / joule-moq-web · does this change touch it (pull_request) Successful in 6s
jouleclaw fabrics / cuda (linux, RTX 4050 + Vulkan loader) (pull_request) Successful in 17s
jouleclaw fabrics / vulkan (linux, RTX 4050 + Vulkan loader) (pull_request) Successful in 17s
joule-code conformance gate / joule-moq-ingest, every target (pull_request) Successful in 4m9s
joule-code conformance gate / joule-moq-relay, every target (pull_request) Successful in 5m46s
standards workspaces build + test / which workspaces this change touches (pull_request) Successful in 39s
jouleclaw public surface must stay documented / Public-surface audit (jouleclaw-rs) (pull_request) Failing after 10m26s
joule-code conformance gate / Build + round-trip C1-C4 vectors (pull_request) Failing after 10m44s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (pull_request) Successful in 9m33s
standards workspaces build + test / eoc-rs (eoc/eoc-rs, -p eoc-meter --features cuda, eoc-rs, linux) (pull_request) Successful in 3m13s
joule-moq-room room service / joule-moq-room, every target (pull_request) Successful in 3m37s
jouleclaw fabrics / metal (macOS, Apple GPU) (pull_request) Successful in 1m51s
standards workspaces build + test / mesh-rs (mesh/mesh-rs, -p mesh-engine-gguf -p mesh-openai --features mesh-engine-gguf/gguf,mesh-openai/server, mesh-rs, linux-arm64) (pull_request) Successful in 2m5s
standards workspaces build + test / smart-byte-rs (smart-byte/smart-byte-rs, smart-byte-rs, linux) (pull_request) Successful in 4m10s
standards workspaces build + test / jouleclaw-rs (-nodebug, jouleclaw/jouleclaw-rs, -p jouleclaw-energy --features rapl,nvml, jouleclaw-rs, linux-arm64, -C target-feature=+fp16) (pull_request) Successful in 7m43s
standards workspaces build + test / joule-code-rs (joule-code/joule-code-rs, joule-code-rs, linux-arm64, true) (pull_request) Successful in 7m49s
standards workspaces build + test / openpay (openpay, openpay, linux-arm64) (pull_request) Successful in 5m48s
standards workspaces build + test / macOS energy backends (pull_request) Has been cancelled
standards workspaces build + test / jouledesk-rs (jouledesk/jouledesk-rs, jouledesk-rs, macos) (pull_request) Has been cancelled
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Has been cancelled
The advisory gate from #443 found something on its first real run, two days after landing: RUSTSEC-2026-0385 and -0387, both published 2026-10-23, neither of which existed when the sweep was done. That is the gate doing the job it was added for, so this is the answer rather than a new allowance. ctutils 0.4.2/0.4.3 -> 0.4.4 RUSTSEC-2026-0385, non-constant-time mask generation and `u128` comparisons. Reaches openpay's wallet crates through digest -> hmac/hkdf, so it sits under HMAC on payment paths. Fixed in four lockfiles. crypto-bigint 0.7.3 -> 0.7.6 RUSTSEC-2026-0387, secret-dependent branches in subtraction, zero counting, division and Montgomery multiplication — operations whose whole purpose is to be constant-time. The 0.5.5 line of crypto-bigint cannot follow: elliptic-curve 0.13 pins it, so reaching >=0.7.6 means moving the p256/elliptic-curve stack across openpay, sandbox, wai and jouleclaw. That is an upgrade, not a bump. It is allowed with that reason recorded, on paths that sign and derive keys, so it reads as debt. Writing that allowance exposed a weakness in the check itself: ALLOW was keyed by advisory id alone, so an entry excusing the stuck 0.5.5 line would have gone on excusing the advisory if a patched 0.7.x copy later regressed to an unpatched release — the same shape as sealing by name instead of by digest. An entry may now pin the exact crate/version pairs it covers: "RUSTSEC-...": {"why": "...", "only": ("crypto-bigint 0.5.5",)} Any other version of that crate fails, and a named pair that disappears makes the entry stale, so the pin cannot keep describing a tree that moved. The version-blind string form is kept for reasons that genuinely do not depend on the version, such as a call we never make, and the two forms are documented against each other. The self-test now builds its documents by importing the check's real ALLOW rather than scraping it with grep, so the two cannot drift, and covers the two new failure modes: a version-pinned allowance offered a version it does not name, and one whose named pair is gone. Also moves off every yanked dependency, each a patch bump: chacha20 0.10.0/0.10.1 -> 0.10.2 (a cipher, in six lockfiles), der 0.8.0 -> 0.8.2, spin 0.9.8 -> 0.9.9 and 0.10.0 -> 0.10.1, iroh-blobs 0.101.0 -> 0.101.1. A yank is the author withdrawing a release; none of these needed to stay on one. No yanked dependency remains anywhere in the tree. All 47 lockfiles current; the six affected workspaces check clean and `mls_keying` passes. Co-Authored-By: Claude Opus 5 <[email protected]> |
||
| .. | ||
| cookbook | ||
| docs | ||
| eoc-bench | ||
| eoc-rs | ||
| os | ||
| spec | ||
| standards | ||
| vocab | ||
| LICENSE | ||
| README.md | ||
| THREE_FACES.md | ||
EOC — Energy-Optimized Compute
A free, always-available, energy-honest AI substrate. AI that costs joules, not tokens.
AI is not free yet. The internet is. EOC closes the gap: a substrate that resolves work at the lowest sufficient cost and refuses to spend unbounded energy chasing benchmark deltas. Every query flows through a four-stage pipeline — state-construct → retrieve → refine → check — and a large language model is one of six refine operators, ordered last. The Fourth Truth: refinement before generation. The substrate runs in a browser, runs on commodity CPUs, denominates everything in joules per task against an open evaluation corpus, and cannot be turned off because no one entity runs it.
The substrate is intentionally ownerless: no protocol-level token, permissive licensing, conformance test vectors and open eval corpora so any implementation can verify itself without a trust relationship with the authors. Transaction Science is one steward — it publishes the spec, ships a reference implementation, and operates commercial services around the substrate (managed nodes, certification, registry hosting) — not its proprietor.
Contents
spec/eoc1_spec.docx,spec/eoc1_v0_1_1_patch.docx,spec/eoc1_v0_2.docx,spec/eoc1_v0_2_addendum_A.docx— EOC-1: the substrate architecture (v0.1 tiers → v0.2 four-stage pipeline; Addendum A: non-goals — token economics)spec/eoc2_wire.docx— EOC-2: the wire protocol (capability exchange, gossip, signed envelopes)spec/eoc3.docx— EOC-3: artifact distribution (content-addressed fetch for models, state machines, corpora)spec/eoc4_dcy.docx— EOC-4: DCY (Deterministic Cypher — the query language for the knowledge-graph retrieve operator)spec/eoc5_registry.docx— EOC-5: the Operator Family Registry (stable identifiers + conformance tests)spec/eoc1_eval001*.docx,spec/eval001_worked_instances.docx,spec/eval002.docx— Eval-001 (schema-conformant generation proficiency standard) and Eval-002 (retrieval/provenance)spec/eoc_architecture.docx— the architecture working draftspec/tokens_concealment.docx— Tokens Are the Concealment (the rhetorical companion to Addendum A)os/THEOREM.md,os/Q1_W_DEFINITION.md— the energy-first OS theorem the substrate is designed to run on, and the resolution of its open question on defining "useful work" in joules-per-work
Status
EOC-1 at v0.2; EOC-2..5 and Eval-001/002 at working-draft 0.1; OS theorem at v0.2. The reference implementation referenced across the specs as "v0.3" is to be brought into this repository.
Licence
Specification text: CC-BY-4.0 (see LICENSE).
Reference implementation in eoc-rs/: Apache-2.0 (see eoc-rs/LICENSE).
Related
- Smart Byte (
../smart-byte/) — the value substrate; uses EOC's energy attribution. - TX Science AI (
ais.transaction.science) — the AI PaaS; its memoizing cascade is an instance of the EOC four-stage pipeline.