open-standards/joule-code/CONTRIBUTING.md
David Charlot b838b86a8b joule-code: stand up the Joule Code standard (v0.1.0 draft)
Joule Code is the coding cargo class of the substrate: a coding operation —
an edit, refactor, or generated function — is a content-addressed, signed
transition over a source tree, resolved through the energy-tiered cascade
(L0 Cache → L1 Lawful → L2 Embed → L3 Model → L4 Wire, stop-at-first-close)
with a signed JWP receipt (measured + estimated µJ, honest Provenance) per
operation. The agent schema is JouleClaw; L4 frontier agents are reached over
ACP with the credential held by the vendor's own client — no protocol token,
no required contact with any single company.

Stands up the standard to the family schema:
- README, SPEC.md (RFC-2119 normative), dual licence (Apache-2.0 code /
  CC-BY-4.0 spec), ROADMAP, CONTRIBUTING, CHANGELOG.
- spec/: cargo (the coding-operation type), cascade (the tier binding),
  receipt (the JWP energy record), collab (federated, interface-level/Research).
- vocab/LEXICON.md.
- conformance/v1/: C1 content-addressing, C2 signing, C3 receipt, C4 cascade
  vectors + VERSIONS + regeneration; real Ed25519 RFC-8032 KATs, derived
  fields regenerated against the reference library.
- joule-code-rs/: lean reference library (schema, cargo, receipt, cascade,
  conformance). cargo test --workspace passes; the conformance harness runs
  11 pass / 0 fail / 7 skip (derived fields pending regeneration).

Single-endpoint operation is the v0.1 surface; federated collaboration is
specified at interface level and classified Research. Registers the standard
in the family README.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-02 14:07:00 -04:00

22 lines
2 KiB
Markdown

# Contributing to Joule Code
Joule Code is one standard in the [Transaction Science Open Standards](../README.md) repository and inherits the [Charter](../CHARTER.md). Contributions scope to this subdirectory and carry the `joule-code` tag.
## What is most valuable
- **Conformance vectors.** Additional positive and negative wire vectors under [`conformance/v1/`](conformance/v1/) — especially adversarial negatives (replayed signatures, tampered edits, provenance/measured mismatches).
- **Cascade stages.** Real `L0`/`L2` stage implementations against the [`joule-code-cascade`](joule-code-rs/crates/joule-code-cascade/) trait surface.
- **Measured-energy backends.** Hardware energy interfaces feeding the receipt's `measured_uj` / `HwShunt` path (§6).
- **Third-party implementations.** An independent implementation that certifies against the public suite is the strongest validation a standard can have.
## Rules
1. **Conformance is canonicity.** A change to wire behaviour MUST come with vectors and a `conformance/VERSIONS.md` update. The vectors, not any brand, define what is correct.
2. **No floats in decision paths.** Energy is integer microjoules; canonical forms are float-free (SPEC §4).
3. **Readiness honesty.** Do not advance a part's classification (SPEC §9) past what the implementation delivers. A `measured` figure MUST come from hardware (SPEC §1.2, §6).
4. **No vanity metrics in marketing/spec/governance Markdown.** Describe shape, not size; the repository's `scripts/check-no-vanity-metrics.sh` enforces this. Identity-class facts (spec versions, RFC numbers, algorithm names, licence labels) are preserved.
5. **No capture.** No contribution may make a single steward's service a condition of core operation (SPEC §1.3).
## Process
Issues, discussions, and pull requests scope by the `joule-code` subdirectory tag. Spec-text changes (`SPEC.md`, `spec/`, `vocab/`) are CC-BY-4.0; reference-code changes (`joule-code-rs/`) are Apache-2.0. By contributing you agree your contribution is offered under the corresponding licence.