Skip to content

Commit f261b58

Browse files
committed
v3.7 Pass 3a: fixes from Pass 4 critical roast
Roaster (read-only subagent) flagged contradictions against established v3.7 truths. Corrections: - ontology-model.md class tree: remove stale ckp:EdgeKernel and ckp:WssHubKernel entries (classes removed in Pass 1); add ckp:AgentKernel for completeness. - compliance.md Identity check-category no longer mentions "version/serving" -- replaced with "version pinned in .ckproject" to match the retired-serving.json narrative. - conformance.md: added CRD tip naming both custom resources explicitly (ConceptKernel = conceptkernel.org/v1, CKProject = ck.tech.games/v1) instead of referring to an unnamed "Kubernetes CRD". - crd.md spec.type enum description expanded to explain what an `agent` kernel type implies (streaming, persona templates). - evolution.md "all LLM calls through CLI" MUST tightened to also allow claude_agent_sdk -- matches extends.md architecture that uses the SDK directly, not CLI re-routing. - project.md: clarified that "frozen deployment" applies to CK and TOOL organs; DATA drifts at runtime by design -- links to Pin Semantics. - graph.md + changelog.md: corrected the .ttl.template mechanism claim. RDF loaders don't skip by extension semantics; actual mechanism is the *.ttl glob pattern not matching the .ttl.template suffix. Build clean. Still deferred from roast (need design decisions): - extends.md circular-EXTENDS gap (spec-acknowledged) - consensus.md ontology_update semantic validation gap - Several MUST requirements could cite enforcement mechanism explicitly - Marketing/fluff passages (opinionated tone changes)
1 parent 888a1b9 commit f261b58

8 files changed

Lines changed: 11 additions & 8 deletions

File tree

docs/v3.7/changelog.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ All notable changes in the development increments that compose v3.7. Each versio
124124
- Loaded 10 CKP v3.5-alpha6 Turtle modules into `/ckp` dataset on Jena Fuseki
125125
- 2,797 triples across core, proof, base-instances, kernel-metadata, processes, rbac, relations, self-improvement, shapes, workflow modules
126126
- SPARQL endpoint live at `jena-fuseki.jena.svc:3030/ckp/sparql`
127-
- `kernel-entity-template.ttl` renamed to `kernel-entity-template.ttl.template` — it's a scaffolding template with placeholder tokens, not valid Turtle; the new extension signals RDF loaders to skip it (previously caused HTTP 400 from Fuseki)
127+
- `kernel-entity-template.ttl` renamed to `kernel-entity-template.ttl.template` — it's a scaffolding template with placeholder tokens, not valid Turtle. The new suffix keeps it out of the `*.ttl` glob used by the ontology loader, so Jena Fuseki no longer attempts to parse it (previously returned HTTP 400).
128128
- 7 of 17 spec-declared modules not yet published as Turtle (instance, action, identity, governance, lifecycle, economic, topology)
129129

130130
### v3.5.11 -- CK.Consensus Kernel <Badge type="tip" text="DEPLOYED" />

docs/v3.7/compliance.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ The output shows `{passing_kernels}/{total_kernels}` for each check type. A flee
122122

123123
| Category | Check Types | What It Covers |
124124
|----------|-------------|----------------|
125-
| **Identity** | 1, 2, 4, 11 | apiVersion, awakening files, type/governance, version/serving |
125+
| **Identity** | 1, 2, 4, 11 | apiVersion, awakening files, type/governance, version pinned in `.ckproject` |
126126
| **Structure** | 3, 6, 7, 9 | Directory layout, processor, web, file integrity |
127127
| **Edges & NATS** | 5, 12, 17 | Edge validity, NATS topics, edge materialisation |
128128
| **Ontology** | 14, 15, 18 | Ontology types, instance typing, SHACL validity |

docs/v3.7/conformance.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ A conformant CKP implementation:
3535
| 12 | Support all five edge predicates | MUST |
3636
| 13 | Implement the star topology activation model | MAY |
3737

38+
::: tip CRDs
39+
The two custom resources published by v3.7 are the **ConceptKernel CRD** (`conceptkernel.org/v1`, shortname `ck`) for per-kernel identity and proof status, and the **CKProject CRD** (`ck.tech.games/v1`, shortname `ckp`) for project-level orchestration. Both schemas are in [Custom Resource Definitions](./crd).
40+
:::
41+
3842
## Conformance Levels
3943

4044
CKP defines two conformance levels. Implementations MUST declare which level they target. Partial conformance (meeting some but not all Core requirements) is **non-conformant**.

docs/v3.7/crd.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ spec:
4747
type:
4848
type: string
4949
enum: ["node:hot", "node:cold", "inline", "static", "agent"]
50-
description: "Kernel deployment type per CKP type registry"
50+
description: "Kernel deployment type per CKP type registry. `agent` kernels support long-running conversational sessions with LLM inference, streaming via stream.{kernel}, and persona templates from data/personas/ (see extends.md and streaming.md)."
5151
governance:
5252
type: string
5353
enum: ["STRICT", "RELAXED", "AUTONOMOUS"]

docs/v3.7/evolution.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,5 +177,5 @@ Persona templates are stored in the target kernel's DATA loop (writable), allowi
177177
| Memory updates (DATA loop) MAY be written directly by agents | PERMITTED |
178178
| Model selection MUST follow the three-level precedence chain | REQUIRED |
179179
| Edge-level constraints MUST override persona-level settings | REQUIRED |
180-
| All LLM calls MUST go through Claude Code CLI, not direct API | REQUIRED |
180+
| All LLM calls MUST go through Claude Code CLI (`claude -p`) or the Claude Code SDK (`claude_agent_sdk`); direct API calls with self-managed API keys are PROHIBITED | REQUIRED |
181181
| Structured output SHOULD use `--json-schema` for validation | RECOMMENDED |

docs/v3.7/graph.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ Seven modules declared in the spec are not yet published as Turtle:
5555
| `topology.ttl` | Fleet topology, namespace mapping, volume layout | Docs stub only |
5656

5757
::: info Template Exclusion
58-
`kernel-entity-template.ttl.template` is intentionally excluded from the Turtle publication set. It is a scaffolding template that contains placeholder tokens (`{KERNEL_NAME}`, `{ROLES}`, etc.) and is therefore not valid Turtle. The `.ttl.template` extension signals to Jena Fuseki and other RDF loaders to skip it; per-kernel entity triples are produced at kernel creation time and published per-kernel rather than consumed from this template.
58+
`kernel-entity-template.ttl.template` is intentionally excluded from the Turtle publication set. It is a scaffolding template that contains placeholder tokens (`{KERNEL_NAME}`, `{ROLES}`, etc.) and is therefore not valid Turtle. The `.ttl.template` suffix keeps it out of the `*.ttl` glob used by the materialisation loader (RDF loaders like Jena Fuseki match by glob, not by extension semantics — the rename ensures the file simply is not fed to the parser). Per-kernel entity triples are produced at kernel creation time and published per-kernel rather than consumed from this template.
5959
:::
6060

6161
## Published Triples

docs/v3.7/ontology-model.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -230,9 +230,8 @@ bfo:Entity
230230
| | | | +-- ckp:ColdKernel [core.ttl]
231231
| | | | +-- ckp:InlineKernel [core.ttl]
232232
| | | | +-- ckp:StaticKernel [core.ttl]
233-
| | | | +-- ckp:EdgeKernel [core.ttl]
233+
| | | | +-- ckp:AgentKernel [core.ttl]
234234
| | | | +-- ckp:ConsensusKernel [core.ttl]
235-
| | | | +-- ckp:WssHubKernel [core.ttl]
236235
| | | | +-- ckp:SystemKernel [kernel-metadata.ttl]
237236
| | | | +-- ckp:ApplicationKernel [kernel-metadata.ttl]
238237
| | | | +-- ckp:UIKernel [kernel-metadata.ttl]

docs/v3.7/project.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ CK.Project is a `static` kernel because it holds only declarations; it has no pr
2424

2525
CK.Project's DATA organ holds one **`.ckproject` manifest** per tracked project, keyed by the project's hostname. The hostname is the project's identity -- it determines DNS routing, namespace naming, and filer path prefixes.
2626

27-
The `.ckproject` manifest is the authoritative record of the project's frozen deployment. [CK.Operator](./operator) reads it to materialize kernels at their pinned versions.
27+
The `.ckproject` manifest is the authoritative record of the project's frozen deployment *intent* -- which kernels, which versions, which commits. [CK.Operator](./operator) reads it to materialize kernels at their pinned versions. Note that "frozen" applies to the CK and TOOL organs (ReadOnlyMany at runtime); the DATA organ still drifts at runtime by design -- see [Pin Semantics](#pin-semantics-pins-ck-pins-tool-pins-data) below for the asymmetry.
2828

2929
**Canonical path** (inside CK.Project's DATA organ on the SeaweedFS filer):
3030

0 commit comments

Comments
 (0)