open-standards/eoc/eoc-rs/crates
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science 1bae1ea17d eoc-meter: real IOReport energy on Apple Silicon (was a stub)
eoc-meter's macOS counter was an explicit stub that always errored, so
every reading on Apple Silicon degraded to JouleSource::Estimated (zero
real energy). Port the validated, no-sudo, no-external-binary IOReport
Energy-Model FFI reader (from jouleclaw-energy's apple_ioreport) as
MacosIoReportCounter and prefer it in detect() ahead of the powermetrics
stub, so eoc reports Measured energy on this platform.

Relaxed the crate-root #![forbid(unsafe_code)] to #![deny] with a scoped
#[allow(unsafe_code)] on the single audited FFI module — real hardware
reads are unreachable without the unsafe IOReport calls; everything else
stays unsafe-free.

Validated on Apple Silicon: ioreport_advances_after_cpu_burn passes (real
energy advances after a CPU burn); detect() returns the ioreport counter.
5 tests green, clippy clean.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-25 03:58:42 -04:00
..
eoc Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-agent ingest wave A2: 3 crates · op-dispute-evidence + smart-byte-edv + eoc-agent 2026-05-24 11:42:26 -04:00
eoc-cache Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-carbon Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-cascade Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-core Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-distributed ingest wave A4: 3 crates · smart-byte-atproto + op-openbanking + eoc-distributed 2026-05-24 12:22:09 -04:00
eoc-embeddings Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-eval Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-graph Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-kv Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-local Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-memory ingest wave F: 3 crates · op-crypto-extra + smart-byte-acdc + eoc-memory 2026-05-24 17:28:24 -04:00
eoc-meter eoc-meter: real IOReport energy on Apple Silicon (was a stub) 2026-06-25 03:58:42 -04:00
eoc-multimodal Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-neural Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00
eoc-observability ingest wave C: 3 crates · op-statements + smart-byte-activitypub + eoc-observability 2026-05-24 13:51:09 -04:00
eoc-quantize ingest wave D: 3 crates · op-fraud-graph + smart-byte-ilp + eoc-quantize 2026-05-24 16:10:10 -04:00
eoc-rag ingest wave A3: 3 crates · op-ewallets-asia + smart-byte-zk + eoc-rag 2026-05-24 12:08:49 -04:00
eoc-rerank Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-route-learned Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-safety ingest wave E: 3 crates · op-bin + smart-byte-tendermint + eoc-safety 2026-05-24 16:52:07 -04:00
eoc-spec-decode Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-streaming ingest wave B: 3 crates · op-payouts + smart-byte-nostr + eoc-streaming 2026-05-24 13:39:09 -04:00
eoc-tools Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-vendor-api Repo-wide toolchain refresh + jouleclaw policy/sandbox updates 2026-06-07 17:04:45 -04:00
eoc-wasm Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc 2026-05-23 13:24:05 -04:00