Skip to content

Commit 9e3b634

Browse files
Thomas Howeclaude
andcommitted
docs: align conserver.io with core-04 and current code
Spec pages rebuilt from the drafts, with a new field reference page. Library docs moved to vcon 0.10.0, vcon-js 0.5.2 and libvcon 0.1.0, with every code block run or type-checked. Conserver reference and narrative pages checked against vcon-server main: real option tables, DLQ keys, external ingress, no config env expansion, unenforced chain timeout. MCP section cut from eleven pages to seven and checked against vcon-mcp main. Adapter, tool and app pages describe what their repos do. Adds a CI guard for retired field names and a weekly link check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 parent dc6a017 commit 9e3b634

72 files changed

Lines changed: 5385 additions & 11553 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/workflows/docs-guard.yml‎

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: docs-guard
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches: [main]
7+
schedule:
8+
- cron: "0 9 * * 1"
9+
10+
jobs:
11+
spec-terms:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
- name: Fail on retired vCon field names and dead references
16+
run: |
17+
# ponytail: plain grep, not a linter. Rename tables live in the two excluded pages.
18+
pattern='must_understand|"type": *"lawful_basis"|type: *.lawful_basis.|mechanism_type|draft-howe-vcon-wtf/|draft-howe-vcon-mcp-session|:dlq\b|vcon-mcp:main|allkeys-lru'
19+
# Lines that warn against a term (never/not/no/legacy/instead) are allowed.
20+
hits=$(grep -rnE --include='*.md' "$pattern" . \
21+
--exclude=field-reference.md --exclude=field-name-migration.md \
22+
| grep -viE 'never|\bnot\b|\bno\b|legacy|instead|wrong|has no' || true)
23+
if [ -n "$hits" ]; then
24+
echo "$hits"
25+
echo "Retired term found. See vcons/field-reference.md." && exit 1
26+
fi
27+
28+
links:
29+
if: github.event_name == 'schedule'
30+
runs-on: ubuntu-latest
31+
steps:
32+
- uses: actions/checkout@v4
33+
- uses: lycheeverse/lychee-action@v2
34+
with:
35+
args: --no-progress --accept 200,206,403,429 --exclude-path .omc './**/*.md'
36+
fail: true

‎.gitignore‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
.omc/
2+
.DS_Store

‎SUMMARY.md‎

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
* [🌎 vCons are...](vcons/vcons-are....md)
77
* [🗄️ Why Conversations Need a File](vcons/why-vcons.md)
88
* [💡 Concepts](vcons/concepts.md)
9+
* [📋 Field Reference](vcons/field-reference.md)
910
* [🔒 Privacy Primer](vcons/privacy-primer.md)
1011
* [👜 The Journey of a vCon](conserver/vcon-conveyor-infographic.md)
1112
* [✨ More Information](vcons/more-information.md)
@@ -20,6 +21,7 @@
2021
* [📜 LLM Guide](vcon-js-library/llm-guide.md)
2122
* [👩‍💻 GitHub Repo](https://github.com/vcon-dev/vcon-js)
2223
* [vCon-C Library](vcon-c-library/README.md)
24+
* [🔌 API Reference](vcon-c-library/api-reference.md)
2325
* [👩‍💻 GitHub Repo](https://github.com/vcon-dev/vcon-c)
2426
* [vCon Adapters](vcon-adapters/README.md)
2527
* [🚀 Quick Start From Template](vcon-adapters/quick-start-from-template.md)
@@ -53,16 +55,12 @@
5355
* [👩‍💻 GitHub Repo](https://github.com/vcon-dev/vcon-server)
5456
* [MCP Server](mcp-server/README.md)
5557
* [What is the vCon MCP Server?](mcp-server/what-is-the-vcon-mcp-server.md)
56-
* [MCP and AI](mcp-server/mcp-and-ai.md)
57-
* [What the vCon MCP Server Can Do](mcp-server/what-the-vcon-mcp-server-can-do.md)
5858
* [How the vCon MCP Server is Built](mcp-server/how-the-vcon-mcp-server-is-built.md)
5959
* [🧰 Tool Reference](mcp-server/tool-reference.md)
6060
* [📜 Contract Tools](mcp-server/contract-tools.md)
6161
* [🚀 Transport and Deployment](mcp-server/transport-and-deployment.md)
6262
* [🔁 Field-Name Migration](mcp-server/field-name-migration.md)
63-
* [MCP and Conserver Together](mcp-server/mcp-and-conserver-together.md)
6463
* [Technical Documentation](https://mcp.conserver.io/)
65-
* [Business Cases for MCP Servers and vCon](mcp-server/business-cases-for-mcp-servers-and-vcon.md)
6664
* [Tools](tools/README.md)
6765
* [🎭 vCon Faker](tools/vcon-faker.md)
6866
* [🤖 vCon Anthropic Chats](tools/vcon-anthropic-chats.md)
@@ -74,7 +72,7 @@
7472
* [vCon Apps and Stores](vcon-apps-and-stores/README.md)
7573
* [TADHack vCon](vcon-apps-and-stores/tadhack-vcon.md)
7674
* [vCon Stores and Apps](https://youtu.be/TgAwtYP0pjA)
77-
* [vCon App Template](https://github.com/vcon-dev/vcon-app-template)
75+
* [vCon App Template](vcon-apps-and-stores/vcon-app-template.md)
7876
* [Deep Dives](deep-dives/README.md)
7977
* [GitHub Repo](https://github.com/vcon-dev/vcon)
8078
* [vCon IETF Working Group](https://datatracker.ietf.org/group/vcon/about/)

‎conserver/README.md‎

Lines changed: 25 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,43 @@
11
---
22
icon: arrow-progress
3-
description: The Conserver — a Redis-backed conversation processing engine that ingests vCons, runs them through configurable chains of links, and writes the results to any of fourteen storage backends.
3+
description: Start here to learn what the conserver does, get one running, configure it, and find the reference page for each part.
44
---
55

66
# Conserver
77

8-
The Conserver is the runtime that turns vCons into something useful. It pulls vCons off Redis ingress queues, runs them through a configurable pipeline of **links** (transcribe → analyze → tag → notify → record audit trail → …), and writes the finished result to one or more **storages** (Postgres, S3, MongoDB, Elasticsearch, Milvus, SCITT transparency services, the vCon MCP server, and more).
8+
The conserver is an open source server that takes in vCons, runs each one through a configured chain of processing steps, and writes the result to the storage systems you choose. Steps are called links: transcribe, summarize, tag, route, redact, notify, register on a SCITT ledger. The current build ships 23 links and 15 storage modules. Source: [vcon-dev/vcon-server](https://github.com/vcon-dev/vcon-server) (MIT, Python 3.12, FastAPI, Redis, Docker Compose).
99

10-
It's an [open-source project](https://github.com/vcon-dev/vcon-server) — Python 3.12, FastAPI for the API tier, Redis for queuing, Docker Compose for deployment. The current build ships **22 standard links** and **14 storage backends**, plus tracers that emit a verifiable audit trail of every chain execution.
10+
Use a conserver when vCons arrive from adapters (phone systems, SIPREC, chat, AI agent sessions) and something has to happen to every one of them, the same way, with failures captured in dead letter queues.
1111

12-
## When to use the Conserver
12+
## Path through this section
1313

14-
- You have vCons arriving from one or more adapters (phone systems, SIPREC, email, chat, LLM exports) and need to do something with them at scale.
15-
- You need a transcribe → analyze → store pipeline that runs reliably, scales horizontally, and handles failures via dead-letter queues.
16-
- You want a single integration point for downstream systems (CRM, data warehouse, MCP server, blockchain audit log) so adapter teams don't each build their own.
17-
- You need to track lifecycle events — creation, enhancement, deletion, consent revocation — on a [SCITT transparency ledger](../extensions/lifecycle.md).
14+
**1. Understand it**
1815

19-
## Documentation layout
16+
- [Conserver Introduction](conserver-introduction.md): what a conserver is for, with public sources
17+
- [Concepts](concepts.md): vCon, link, chain, ingress and egress lists, storage, dead letter queues, tracer, follower. The rules for how a chain runs live here.
18+
- [Day in the Life of a vCon](day-in-the-life-of-a-vcon.md): one phone call followed from adapter to AI assistant
19+
- [The Journey of a vCon](vcon-conveyor-infographic.md): the same trip as an interactive picture
2020

21-
**Get started:**
21+
**2. Run it**
2222

23-
- [Conserver Introduction](conserver-introduction.md) — overview and design rationale
24-
- [Quick Start](conserver-quick-start.md) — Docker Compose in fifteen minutes
25-
- [Concepts](concepts.md) — Link, Chain, Storage, Tracer
23+
- [Quick Start](conserver-quick-start.md): a working conserver on Docker Compose
2624

27-
**Configure:**
25+
**3. Configure it**
2826

29-
- [Configuring the Conserver](configuring-the-conserver.md) — every env var and every YAML section
30-
- [Standard Links](standard-links.md) — reference for all 22 shipped links
31-
- [Storage](storage.md) — reference for all 14 storage backends
32-
- [Conserver Tracers](conserver-tracers.md) — audit and compliance trail
27+
- [Configuring the Conserver](configuring-the-conserver.md): environment variables and every `config.yml` section
28+
- [Standard Links](standard-links.md): all 23 links and their options
29+
- [Storage](storage.md): all 15 storage modules
30+
- [Conserver Tracers](conserver-tracers.md): the JLINC audit tracer
3331

34-
**Build:**
32+
**4. Build on it**
3533

36-
- [Creating Custom Links](creating-custom-links.md) — write your own processing step
37-
- [API](api.md) — REST endpoints for vCon CRUD, ingress / egress, configuration, DLQ
38-
- [Integrating Your App](integrating-your-app.md) — calling the API from your code
34+
- [Integrating Your App](integrating-your-app.md): sending vCons in and reading results out
35+
- [API](api.md): every REST endpoint
36+
- [Creating Custom Links](creating-custom-links.md): writing your own processing step
3937

40-
**Operate:**
38+
**5. Operate it**
4139

42-
- [Production Deployment](production-deployment.md) — Docker Compose, scaling, secrets, observability
43-
- [Inside the Conserver](inside-the-conserver.md) — architecture and request flow
44-
- [Day in the Life of a vCon](day-in-the-life-of-a-vcon.md) — narrative walkthrough
45-
- [Troubleshooting](troubleshooting.md) — common issues and their fixes
46-
- [Operational Benefits](operational-benefits-of-conservers.md) — federation, multi-tenancy, governance
47-
48-
**Source and support:**
49-
50-
- [GitHub: vcon-dev/vcon-server](https://github.com/vcon-dev/vcon-server) — the canonical repository
40+
- [Production Deployment](production-deployment.md): scaling, secrets, observability
41+
- [Inside the Conserver](inside-the-conserver.md): workers, Redis keys and the processing loop
42+
- [Troubleshooting](troubleshooting.md): common failures and fixes
43+
- [Operational Benefits](operational-benefits-of-conservers.md): what running one buys you, with public sources

0 commit comments

Comments
 (0)