Skip to content

Commit f5931ab

Browse files
committed
docs(v3.9.1): add Download & run button + Install page (docker run first)
- Introduction (site root) gains a prominent Download & run button + GitHub releases link at the top, styled with theme vars (adapts light/dark). - New /v3.9/install page leads with the simple one docker run, then the attested image + digest + SLSA verify command, the pinned composition (PG17 · pgRDF 0.6.19 · pgCK 0.4.21 · cklib 1.5.3 · NATS 2.14.2), and the GitHub release links for the bundle + each component repo. - Sidebar Part V: Build now leads with Install & Run, then Quickstart. Public-safe only: image/digest/versions/repos; no internal consumer, host, or deploy details.
1 parent 69ef9f8 commit f5931ab

3 files changed

Lines changed: 105 additions & 1 deletion

File tree

docs/.vitepress/config.mts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,9 @@ export default withMermaid(defineConfig({
9393
{
9494
text: 'Part V: Build',
9595
items: [
96-
{ text: 'The Client: cklib', link: '/v3.9/client' },
96+
{ text: 'Install & Run', link: '/v3.9/install' },
9797
{ text: 'Quickstart', link: '/v3.9/quickstart' },
98+
{ text: 'The Client: cklib', link: '/v3.9/client' },
9899
{ text: 'The Fleet', link: '/v3.9/ecosystem' },
99100
]
100101
},

docs/v3.9/install.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
---
2+
title: "Install & Run"
3+
description: "Run the whole CKP v3.9.1 substrate with one docker run — the attested ck-allinone image, its SLSA provenance, what it composes, and the GitHub releases."
4+
---
5+
6+
# Install & Run
7+
8+
The whole substrate is a single, attested image. One `docker run` stands up PostgreSQL 17, the pgRDF graph engine, the pgCK runtime, NATS, and the browser client — about 128 MB, scratch base, no Python. The only prerequisite is Docker.
9+
10+
## One `docker run`
11+
12+
```sh
13+
docker run --rm -d --name ckp \
14+
-e OCIGER_CK_PARTICIPANT_PASSWORD='choose-a-password' \
15+
-p 5432:5432 -p 8000:8000 -p 4222:4222 -p 9222:9222 \
16+
ghcr.io/sporaxis-com/ociger-ck-allinone:v0.7.28
17+
```
18+
19+
That single command gives you a complete **CKP v3.9.1 — Critical Isolation** substrate:
20+
21+
```
22+
PostgreSQL 17 + pgRDF (graph engine) + pgCK (concept-kernel runtime)
23+
NATS core :4222 + NATS WebSocket :9222 (the only door for apps)
24+
busybox httpd :8000 serving /cklib/ (the browser client) + a landing probe
25+
```
26+
27+
- **Set `OCIGER_CK_PARTICIPANT_PASSWORD`.** Without it the participant role exists but cannot log in, so the isolation floor is never cosmetic.
28+
- **Open `http://localhost:8000/`** — the landing page runs a live round-trip in your browser and shows ✓ when the wire is alive.
29+
- **Persist `/var/lib/postgresql/data`** with a volume to keep sealed data across restarts.
30+
31+
Then [drive it with cklib](/v3.9/quickstart) — activate a kernel, land a sealed task, verify its proof.
32+
33+
## The image is attested
34+
35+
The bundle publishes with SLSA Build Provenance v1. Pull it, then verify the provenance before you trust it:
36+
37+
```sh
38+
docker pull ghcr.io/sporaxis-com/ociger-ck-allinone:v0.7.28
39+
40+
gh attestation verify \
41+
oci://ghcr.io/sporaxis-com/ociger-ck-allinone:v0.7.28 \
42+
--repo sporaxis-com/oci-germination
43+
```
44+
45+
| | |
46+
|---|---|
47+
| **Image** | `ghcr.io/sporaxis-com/ociger-ck-allinone:v0.7.28` |
48+
| **Digest** | `sha256:c652647fed8e433a4668b3cac590175ddbb65a1bf9472e04504ca19b0d9a1dfa` |
49+
| **Provenance** | SLSA Build Provenance v1 — verified before publication |
50+
| **Pull** | public, anonymous |
51+
52+
## What it composes
53+
54+
The image is a tested composition of the fleet, pinned to exact versions:
55+
56+
| Layer | Version |
57+
|-------|---------|
58+
| PostgreSQL | 17.10 (pgcrypto auto-installed on first boot) |
59+
| [pgRDF](https://github.com/styk-tv/pgRDF) — the graph engine | 0.6.19 |
60+
| [pgCK](https://github.com/styk-tv/pgCK) — the concept-kernel runtime | 0.4.21 |
61+
| [cklib](https://github.com/ConceptKernel/CK.Lib.Js) — the client, served at `/cklib/` | 1.5.3 |
62+
| NATS core / WebSocket | 2.14.2 (`:4222` / `:9222`) |
63+
64+
The protocol is **CKP v3.9.1**; the door is `ckp.dispatch(verb, kernel_urn, payload, identity)`.
65+
66+
## GitHub releases
67+
68+
Every release below is CI-built and provenance-attested, with a `LATEST.md` in each repository confirming the verified head.
69+
70+
- **The bundle**[sporaxis-com/oci-germination releases](https://github.com/sporaxis-com/oci-germination/releases) (`ck-allinone`, the runnable image above)
71+
- **The runtime**[styk-tv/pgCK releases](https://github.com/styk-tv/pgCK/releases) (the PostgreSQL extension; also an `oras`-pullable OCI artifact)
72+
- **The client**[ConceptKernel/CK.Lib.Js releases](https://github.com/ConceptKernel/CK.Lib.Js/releases) (`cklib`, dispatch-only)
73+
- **The engine**[styk-tv/pgRDF releases](https://github.com/styk-tv/pgRDF/releases) (RDF/SPARQL/SHACL/OWL-RL)
74+
75+
## Behind a gateway
76+
77+
The bundle's NATS WebSocket is on `:9222`. On a direct `docker run` an app opens `ws://<host>:9222`. Behind a TLS gateway, route `/wss``:9222` and apps open `wss://<host>/wss`. The bundled landing page auto-detects which case it is from its own URL.
78+
79+
::: warning Alpha-trust today
80+
Identity is currently the participant role's shared password, not a per-user verified claim. The isolation floor is real — the role can call `ckp.dispatch` and nothing else — but treat a deployment as alpha-trust and do not expose it to untrusted users as-is. Per-user verified-JWT identity is an inherited upstream prerequisite (CKP v3.9 §10).
81+
:::
82+
83+
## Continue
84+
85+
- [Quickstart](/v3.9/quickstart) — drive the running substrate with cklib.
86+
- [The client: cklib](/v3.9/client) — the handle and its verb map.
87+
- [The fleet](/v3.9/ecosystem) — the runtime, client, engine, and bundle behind the image.

docs/v3.9/introduction.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,22 @@ description: "Sovereign, semantic, self-governing state reached through one type
55

66
# Introduction to CKP v3.9.1
77

8+
<div class="ck-cta">
9+
<a class="ck-cta-btn" href="/v3.9/install">⬇&nbsp; Download &amp; run</a>
10+
<a class="ck-cta-alt" href="https://github.com/sporaxis-com/oci-germination/releases">GitHub releases</a>
11+
<span class="ck-cta-note">one <code>docker run</code> · ~128&nbsp;MB · Docker only</span>
12+
</div>
13+
14+
<style>
15+
.ck-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1.1rem 0 1.6rem}
16+
.ck-cta-btn{display:inline-block;background:var(--vp-c-brand-1);color:var(--vp-c-white)!important;font-weight:600;padding:.5rem 1.15rem;border-radius:8px;text-decoration:none;transition:background .2s;white-space:nowrap}
17+
.ck-cta-btn:hover{background:var(--vp-c-brand-2)}
18+
.ck-cta-alt{display:inline-block;border:1px solid var(--vp-c-divider);color:var(--vp-c-text-1)!important;padding:.5rem 1rem;border-radius:8px;text-decoration:none;transition:border-color .2s;white-space:nowrap}
19+
.ck-cta-alt:hover{border-color:var(--vp-c-brand-1)}
20+
.ck-cta-note{font-size:.8rem;color:var(--vp-c-text-2)}
21+
.ck-cta-note code{font-size:.78rem}
22+
</style>
23+
824
A Concept Kernel is a self-governing unit of meaning. Its types are ontology — RDF classes, SHACL shapes, OWL-RL rules, not hand-rolled columns. Every change it makes is **shape-gated, sealed, and proof-chained** the moment it lands, and it answers the world through a single typed verb carried over NATS-WSS. Meaning is the schema; the door is the whole surface.
925

1026
It runs inside PostgreSQL, but the engine stays out of sight: no REST endpoint, no SQL handle, no query surface is exposed. The meaning is sovereign, every step it has taken is provable, and the only thing that crosses the boundary is one verb and its typed payload. This is **CKP v3.9.1 — Critical Isolation**: the engine stays invisible, the meaning stays sovereign, and the proof chain stays whole.

0 commit comments

Comments
 (0)