open-standards/jouleclaw/jouleclaw-rs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
David Charlot 86cd2a442f
Some checks failed
energy meters on real hardware / RAPL and NVML on jetson-hub (pull_request) Successful in 32s
jouleclaw public surface must stay documented / Public-surface audit (jouleclaw-rs) (pull_request) Successful in 57s
standards workspaces build + test / arl-rs (pull_request) Successful in 1m8s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m55s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m27s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 1m9s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 1m9s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m14s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m13s
standards workspaces build + test / sense-rs (pull_request) Successful in 1m6s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 3m42s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 45m15s
standards workspaces build + test / aac-rs (pull_request) Successful in 7m24s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 7m15s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 3m49s
standards workspaces build + test / map-rs (pull_request) Successful in 4m21s
standards workspaces build + test / mesh-rs (pull_request) Successful in 5m32s
standards workspaces build + test / openpay (pull_request) Successful in 34m58s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 5m23s
standards workspaces build + test / macOS energy backends (pull_request) Failing after 1h20m15s
jouleclaw: the new plausibility types are crate-internal, not public surface
`jouleclaw-public-surface-documented.yml` failed on this branch with exactly
one Lost reason, `jouleclaw-energy::src::liveness::plausible`. Two causes, and
the second is the real one:

- The `///` doc was there, but separated from the item by a `//` note, so the
  scanner walking back from the signature never reached it.
- More to the point, `liveness` is a private module, so a `pub` item in it was
  never consumer-visible. The gate's own advice is to document it or downgrade
  it if it is not part of the consumer-visible surface, and the honest answer
  here is the latter: `CounterLiveness` is this crate's public vocabulary,
  `GpuPlausibility` is how the module reaches its verdict.

So `GpuBound`, `GpuPlausibility` and `plausible()` are `pub(crate)`, which is
what they always were in effect, and the note moved into the doc comment.

This differs from jcp-energy deliberately: there the types sit in the crate
root and are genuinely public. eoc-meter's copy was already `pub(crate)`.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-10-09 08:45:20 -04:00
..
crates jouleclaw: the new plausibility types are crate-internal, not public surface 2026-10-09 08:45:20 -04:00
Cargo.lock jouleclaw: bind a policy receipt to the rules, not to a version number 2026-10-08 10:27:02 -04:00
Cargo.toml msrv: raise the rust-version floor to 1.97 across the workspaces 2026-07-23 00:17:08 -04:00