open-standards/joule-code/vocab/v1.ttl
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

66 lines
4.8 KiB
Turtle
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@prefix jcd: <https://joulecode.transaction.science/vocab/v1#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix dc: <http://purl.org/dc/terms/> .
<https://joulecode.transaction.science/vocab/v1> a owl:Ontology ;
dc:title "Joule Code vocabulary (v1)" ;
dc:description "Stable IRIs for the Joule Code open standard — the coding-cargo class of the substrate. Defines the JWP receipt schema (measured + estimated joules with honest provenance), the L0–L4 cascade tiers shared with JouleClaw, and the agent-vendor enumeration for the Agent Client Protocol binding." ;
dc:license <https://creativecommons.org/licenses/by/4.0/> ;
owl:versionInfo "1" .
# ─── Classes ────────────────────────────────────────────────────────
jcd:Receipt a owl:Class ; rdfs:label "Joule Wire Protocol receipt" ;
rdfs:comment "Signed receipt per coding operation. Two-part energy: measured + estimated, with provenance tag." .
jcd:Transition a owl:Class ; rdfs:label "Source-tree transition" ; rdfs:subClassOf prov:Activity ;
rdfs:comment "Content-addressed transition (before_hash → after_hash) over a source tree." .
jcd:SourceTree a owl:Class ; rdfs:label "Source tree" ; rdfs:subClassOf prov:Entity .
jcd:Cascade a owl:Class ; rdfs:label "Cascade walk" .
jcd:Agent a owl:Class ; rdfs:label "Coding agent" ; rdfs:subClassOf prov:Agent .
# Operation taxonomy
jcd:Operation a owl:Class ; rdfs:label "Coding operation" .
jcd:Edit a jcd:Operation ; rdfs:label "Edit" .
jcd:Refactor a jcd:Operation ; rdfs:label "Refactor" .
jcd:Generate a jcd:Operation ; rdfs:label "Generate" .
# Cascade tiers (shared shape with JouleClaw vocabulary)
jcd:CascadeTier a owl:Class ; rdfs:label "Cascade tier" .
jcd:L0Cache a jcd:CascadeTier ; rdfs:label "L0 Cache" .
jcd:L1Lawful a jcd:CascadeTier ; rdfs:label "L1 Lawful" .
jcd:L2Embed a jcd:CascadeTier ; rdfs:label "L2 Embed" .
jcd:L3Model a jcd:CascadeTier ; rdfs:label "L3 Model" .
jcd:L4Wire a jcd:CascadeTier ; rdfs:label "L4 Wire — escape hatch" .
# Energy provenance
jcd:Provenance a owl:Class ; rdfs:label "Energy provenance" .
jcd:HwShunt a jcd:Provenance ; rdfs:label "Hardware shunt" .
jcd:ModelBased a jcd:Provenance ; rdfs:label "Model-based estimate" .
jcd:Estimator a jcd:Provenance ; rdfs:label "Estimator" .
# Agent vendors (the L4 frontier)
jcd:AgentVendor a owl:Class ; rdfs:label "Agent vendor" .
jcd:ClaudeCode a jcd:AgentVendor ; rdfs:label "Anthropic Claude Code" .
jcd:Gemini a jcd:AgentVendor ; rdfs:label "Google Gemini" .
jcd:Codex a jcd:AgentVendor ; rdfs:label "OpenAI Codex" .
jcd:GenericAgent a jcd:AgentVendor ; rdfs:label "Generic / non-named agent" .
# ─── Properties ──────────────────────────────────────────────────────
jcd:tierClosed a owl:ObjectProperty ; rdfs:domain jcd:Receipt ; rdfs:range jcd:CascadeTier ; rdfs:label "Tier that closed the operation" .
jcd:joulesMeasuredUj a owl:DatatypeProperty ; rdfs:range xsd:nonNegativeInteger ; rdfs:label "Measured joules (microjoules)" .
jcd:joulesEstimatedUj a owl:DatatypeProperty ; rdfs:range xsd:nonNegativeInteger ; rdfs:label "Estimated joules (microjoules)" .
jcd:energyProvenance a owl:ObjectProperty ; rdfs:domain jcd:Receipt ; rdfs:range jcd:Provenance ; rdfs:label "Energy provenance" .
jcd:operation a owl:ObjectProperty ; rdfs:domain jcd:Transition ; rdfs:range jcd:Operation ; rdfs:label "Operation kind" .
jcd:sourceBeforeHash a owl:DatatypeProperty ; rdfs:domain jcd:Transition ; rdfs:range xsd:string ; rdfs:label "Source-tree hash before (BLAKE3 hex)" .
jcd:sourceAfterHash a owl:DatatypeProperty ; rdfs:domain jcd:Transition ; rdfs:range xsd:string ; rdfs:label "Source-tree hash after (BLAKE3 hex)" .
jcd:agentId a owl:DatatypeProperty ; rdfs:domain jcd:Agent ; rdfs:range xsd:string ; rdfs:label "Agent id" .
jcd:agentVendor a owl:ObjectProperty ; rdfs:domain jcd:Agent ; rdfs:range jcd:AgentVendor ; rdfs:label "Agent vendor" .
jcd:acpEndpoint a owl:ObjectProperty ; rdfs:domain jcd:Agent ; rdfs:label "ACP endpoint URI" .
jcd:credentialHolder a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Credential holder (vendor's own client)" .
jcd:closedAt a owl:DatatypeProperty ; rdfs:range xsd:dateTime ; rdfs:label "Closed at (RFC 3339)" .
jcd:schemaId a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Schema id (e.g. \"jcd-receipt/1\")" .