# Disclosure and Public Projection

Why public eligibility must precede epistemic evaluation and how noninterference is tested.

**Lens:** `encyclopedia` — A coherent general overview with explicit provenance and disagreement.

## Included objects

### Epistemedia Documentation

- [Architecture](architecture.md) - [Human and agent interface contract](interfaces.md) - [Autonomous governance](governance.md) - [API, MCP, and CLI](api-mcp-cli.md) - [Public API and MCP deployment contract](api-mcp-deployment.md) - [Agent operations](agent-ops/README.md) - [Launch and engagement](launch.md) - [Brand

- Kind: `documentation`
- Source path: `docs/README.md`
- Object ID: `em:documentation:sha256:0bb19954607726a41f7ff3195fafc4e83bd5a953e1f370e276b133899612104d`
- Content digest: `959223b6aeafab2daa078af87029c5bef7822e706db003a0697bab70422dd4fc`

### Agent Operations

This directory contains repeatable operating recipes. `AGENTS.md` remains the root authority contract.

- Kind: `documentation`
- Source path: `docs/agent-ops/README.md`
- Object ID: `em:documentation:sha256:c33dcbb04b7907672ac2aeb8b070ccdcaa3759dfd5e9feb6bbedd4c848d33ba6`
- Content digest: `57865da7b5d622610d327ddf0ade713e5cd18b29c5bc88e0d34acbfb5b1cc778`

### Contributor Agent Recipe

1. Orient: `make orient`. 2. Select: `python -m epistemedia repo next`. 3. Read the root contract, selected task contract, execution plan, scoped authority, schemas, policies, and tests. 4. Claim through an append-only proposal. 5. Work in one bounded branch and preserve negative results. 6. Rebuild all derived surface

- Kind: `documentation`
- Source path: `docs/agent-ops/contributor.md`
- Object ID: `em:documentation:sha256:477c27b7a79e2bd2eadee636d8576be10f0be62fcf9d3e7129de210f820501a6`
- Content digest: `200449654805e3a1a6e1757550e7355b71486f32f5a8bdce5239f0c7293ba4bb`

### API, MCP, and CLI

All integrations read the same disclosure-safe public catalog. Preserve the returned `catalog_id`, `frontier`, `commit`, `compiler`, policy IDs, object IDs, and content digests when storing or citing results.

- Kind: `documentation`
- Source path: `docs/api-mcp-cli.md`
- Object ID: `em:documentation:sha256:226ad5b49b2fdf606ce39f349a23293fd8a52d48ef03c1c06e3f37372032d662`
- Content digest: `52fc1b2c11fb91df055fe39f5c680e284c82a50af937fc5ecd4acd0efcfb66d5`

### Public API and MCP deployment contract

The API and MCP gateway is a read-only projection service. It receives an accepted repository snapshot and exposes no GitHub, contribution, deployment, package-publishing, signing, or arbitrary network-fetch authority.

- Kind: `documentation`
- Source path: `docs/api-mcp-deployment.md`
- Object ID: `em:documentation:sha256:30fe42f129cc7f12b02b2c5aa17d1c05b8fd2a7a8deebf5208ab79c70c0bcfb4`
- Content digest: `8f96dba2e401d83cd5f25c28b0dc7d8ce3413ce4a702b8a2192b3c1824ec4d08`

### Epistemedia Architecture

Epistemedia is not an autonomous wiki whose canonical object is a page. Its canonical substrate is an append-only, provenance-preserving epistemic history. Pages and agent responses are reproducible projections over that history.

- Kind: `documentation`
- Source path: `docs/architecture.md`
- Object ID: `em:documentation:sha256:e692c6fd478d9d233f49d97573d028c76cf490d5cd6dc722c8827b1072128ae1`
- Content digest: `e98789193cda4246aeb9738f82adafc21424d45cbdf51678c00e7681b821437f`

### Brand Architecture

**Knowledge that can show its work.**

- Kind: `documentation`
- Source path: `docs/brand.md`
- Object ID: `em:documentation:sha256:41cf4e33a19c62d8f32cf4c763f4d9299261a1a6bedcd4d28d15e664636d6764`
- Content digest: `b27c9de7ba02d52bdca9f0aae5b20ebaec307e265bc6a7664821448ae45412d7`

### Validation workflow

Epistemedia's contribution CI is defined in `.github/workflows/ci.yml` and appears in GitHub Actions as **Validate**.

- Kind: `documentation`
- Source path: `docs/ci-verification.md`
- Object ID: `em:documentation:sha256:7d40369d2fffe5da6c71035371c870fb74f1a75e7710b6f9bab3b97d4c1dbfd5`
- Content digest: `32d80c474aaf57128d7c2450080f8eb562f3e8786c8211edeff1f864734c6be0`

### Autonomous Governance

Epistemedia governance controls procedure, authority, admission, resources, disclosure, and interoperability. It does not vote propositions into universal truth.

- Kind: `documentation`
- Source path: `docs/governance.md`
- Object ID: `em:documentation:sha256:f4b7f1ab01b96177383f211aef554aff3ed69f9fb56dbc09fe2a2fc1886eb53a`
- Content digest: `2b2e73ec9cad599e976a35c3c31479d47adee72e341f9a854f0e484787dabaaa`

### Human and Agent Interface Contract

Epistemedia does not maintain separate editorial truths for people, API clients, MCP agents, and local tools. Each interface adapts one disclosure-safe catalog and projection manifest.

- Kind: `documentation`
- Source path: `docs/interfaces.md`
- Object ID: `em:documentation:sha256:5600741764a7b3f15581645b442c3694562be191230e0acb8104f74c8c9694a2`
- Content digest: `29d1eddb3792fa92efb04fbb6a17da89ba0e58fa79233f769fe435c0fe71478d`

### Launching and Engaging with Epistemedia

Start at the human site and choose a topic. A topic page is a reproducible projection, not an anonymously edited canonical article. Inspect its lens, realm, frontier, policy, source objects, and manifest. Switch lenses to compare a coherent overview with evidence-first, skeptical, frontier, historical, pedagogical, or 

- Kind: `documentation`
- Source path: `docs/launch.md`
- Object ID: `em:documentation:sha256:132c8bebe37109788249ab6278506f8ea9261ccd50946fc3405c9e62a947012f`
- Content digest: `68d97e21e55494fcb954bf02bc7cb81b68987a3cb60d6fb23deb59a71cf89c3a`

### Pre-public owner handoff

> **Archived bootstrap handoff.** The repository-publication and protected-contribution steps below are complete. The default-hostname Pages bootstrap is also live. Use [`ops/activation/2026-08-22-pages-bootstrap.md`](../ops/activation/2026-08-22-pages-bootstrap.md) for current evidence and remaining owner boundaries. 

- Kind: `documentation`
- Source path: `docs/pre-public-owner-handoff.md`
- Object ID: `em:documentation:sha256:859e311841076405f0ed54de7e344977e19081494c06c5bde44fb4877fb1d7ad`
- Content digest: `6c55e03eca8ff7f0a58cbdd71c707de6bb2c52dccc72f967d2c5059fed2a46e9`

### Epistemedia Roadmap

Compile the repository’s own architecture, governance, tasks, code, tests, and releases through the same public catalog used by every interface. Establish deterministic identity, disclosure safety, and agent-native operation.

- Kind: `documentation`
- Source path: `docs/roadmap.md`
- Object ID: `em:documentation:sha256:2f1a4a7ef2d8194d184f06a300251ba055541be0029e1ca0ddef5a299063d4c5`
- Content digest: `bcb6525b2343b8dd203b3a89fccdae5c5330d12313d061e31f03eac88a4ca8d4`

### Event Envelope V1

{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://epistemedia.com/schemas/event-envelope-v1.json", "title": "Epistemedia Event Envelope v1", "type": "object", "additionalProperties": false, "required": [ "schema", "event_id", "event_type", "realm_id", "actor", "recorded_time", "payload", "pay

- Kind: `schema`
- Source path: `schemas/event-envelope-v1.json`
- Object ID: `em:schema:sha256:fac57b4d18022fc4b3b12b83ec6488bf8d680aee5151f235731cfbce1111b1ec`
- Content digest: `93f7f4bb4f64eb7b871baab47d2c0eb20df5c4c956e5406a90d3c1d9fae2eb46`

### Public Catalog V1

{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://epistemedia.com/schemas/public-catalog-v1.json", "title": "Epistemedia Public Catalog v1", "type": "object", "required": ["catalog_id", "frontier", "commit", "compiler", "objects", "topics", "lenses", "policies"], "properties": { "catalog_id":

- Kind: `schema`
- Source path: `schemas/public-catalog-v1.json`
- Object ID: `em:schema:sha256:f153d356c946382b279b2b8a72eb23974c0d5185357462a2fe8ae3b495c17911`
- Content digest: `35a72fc173ec9c6da6108273987a68587c8aa95096c9ad18ca32ba6d816866d7`

### Task Contract V1

{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://epistemedia.com/schemas/task-contract-v1.json", "title": "Epistemedia Task Contract v1", "type": "object", "required": ["id", "title", "status", "change_class", "objective", "authority", "acceptance"], "properties": { "id": {"type": "string", 

- Kind: `schema`
- Source path: `schemas/task-contract-v1.json`
- Object ID: `em:schema:sha256:e1f365c200c65de021618072ff3ed93a8e8efd0c6ec5f69433e1fe6c83d6dccd`
- Content digest: `33ed6d90c163570f6f0635f269f94cb2b845138a672436d9f8f0449efab89856`

### Test Container Contract

from __future__ import annotations

- Kind: `test`
- Source path: `tests/test_container_contract.py`
- Object ID: `em:test:sha256:a8a23e707d8452593eaafba1e5d9648960640c4fbab7d22663d566e589b05346`
- Content digest: `51bb66a641d0036abbfe7e6fa7be9314c58f649a238becdf93db14345bb57308`

### Test Installed Package

from __future__ import annotations

- Kind: `test`
- Source path: `tests/test_installed_package.py`
- Object ID: `em:test:sha256:2e4bcd563729997b7d2d256e2f5e2dfbbbddb7c750504030d725d58f03fe8980`
- Content digest: `5b24dbad2f3718e8212f722a1ad5c7fd9a544200d34747e666d185cec16b20e4`

### Test Interfaces

from __future__ import annotations

- Kind: `test`
- Source path: `tests/test_interfaces.py`
- Object ID: `em:test:sha256:f83a5320c78c6c32936c96d4e6b798cca189024621d0804e288743b93d909452`
- Content digest: `e886d1101c7444eb0add9afc2dc598b867a35881883c552bd174e55526f242ee`

### Test License

from __future__ import annotations

- Kind: `test`
- Source path: `tests/test_license.py`
- Object ID: `em:test:sha256:b019d0a8d15fb08b000b90c4b84d09fe2c76d8c8973aaa073917b5ad44f46a68`
- Content digest: `ac06ef40683e4b97b3e41163c668a0564d701caefb033d05bc4cf92b12bf778f`

### Test Workflow Security

from __future__ import annotations

- Kind: `test`
- Source path: `tests/test_workflow_security.py`
- Object ID: `em:test:sha256:8175d09dc7cc53662b10cc3ce7aaf372fdc996994419a19d9b151e3b48cc7da8`
- Content digest: `42a76df5d5e5c9408d5e3f4d270fce7ea887f47d03cc09e0b9f9339e4322d179`

## Projection manifest

- Projection: `em:projection:sha256:84ece8accbe2de759b447afd59aefa836e1c6605a2959b0698ff9680760b66dd`
- Catalog: `em:catalog:sha256:111ab89d8bea7ca893d8873cf7357bc48b8a374eeeb12959a4ae447d461f2246`
- Evidence frontier: `em:frontier:sha256:7d5c69ddb6a5b56f3286b94a8e550df79fc86a0ed27eabd3f5780e3d510fa690`
- Accepted commit: `091d3fce01e930424352e5639e5bca06cdd02fca`
- Epistemic policy: `commons-balanced-v0.1`
- Disclosure policy: `public-noninterference-v0.1`
- Compiler: `epistemedia/0.2.0`
