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]>
66 lines
4.8 KiB
Turtle
66 lines
4.8 KiB
Turtle
@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\")" .
|