Chandra Core

Protocol v0.1 — Test Client chandraprotocol.com
← appending to spoke:  ·  subject_id locked clear
Unique identifier for the subject this CU belongs to. All CUs with the same subject_id form a lineage chain. Use a stable, meaningful id — e.g. my-spec-v1 or order-12345.
The category of the subject. Used for filtering, querying, and compliance reporting. Select the type that most accurately describes what this artifact belongs to.
Required by the Chandra protocol. The identity of the human directing or approving this artifact. Agents must always record who authorized their action. Cannot be omitted.
Attach a file as the artifact payload. Text files are stored as-is. Binary files are base64-encoded in a JSON envelope. Attaching a file clears the text box — only one artifact source per CU.
choose file or drag and drop
cleared — using text instead
Type artifact content directly. Either a file or text is required before publishing. Entering text clears any file selection — only one artifact source per CU.
cleared — file attached instead
The format of the artifact content. Auto-detected when a file is attached. text = prose/docs, code = source files, structured = JSON/YAML, mutation = record change, tickler = scheduled event, binary = encoded file.
If this artifact was produced by an AI model, record the model identifier here — e.g. claude-sonnet-4-6. This is the AI provenance slot. Omit for human-authored artifacts.
The CU id this new CU follows in the lineage chain. Omit to auto-resolve to the latest CU for this subject. Specify explicitly when branching from a specific point in history.
Parent subject_id for cross-spoke scope reference. Use when this CU belongs to a broader context — e.g. an agent log scoped to the order it processed. Indexed for fast cross-spoke queries. (GR-PROV-017)
For AI-produced artifacts: the conversation or session id that generated this content. Records the prompt chain so the artifact can be traced back to its origin context.
Tags for this CU, separated by commas — e.g. spec, v1, approved. Tags are lowercased automatically and indexed for fast retrieval. Use consistent vocabularies so agents and humans can find related CUs.
Agents cannot merge chains. Human authorization required — GR-PROV-016.
Merge operations require human authorization — GR-PROV-016. Agents cannot merge chains. Records who authorized the merge and takes responsibility for the reconciled artifact.
The subject_id of the lineage chain being merged. Both branch heads must belong to this subject.
Category of the subject being merged. Must match the subject_type of both branch head CUs.
CU id of the first branch head. This is the primary branch — the merge CU will appear as its successor in the lineage chain.
CU id of the second branch head. The chain verifier follows both branches from this merge point forward.
The reconciled artifact content resulting from the merge. This is the human-authorized resolution of the two branches. It becomes the new canonical state of the subject.
Tags for this merge CU, separated by commas. Defaults to "merge". Add additional tags to mark the merge type or outcome.

Traverses the full primary chain and all merge branches. Checks hash linkage at every node including artifact content. This is the auditor's endpoint.

Every published CU header is POSTed to active targets. No artifact content is echoed. Failures are logged as audit-event CUs.

The endpoint that receives CU headers on every publish. Headers only — no artifact content is echoed. Target must accept HTTP POST with JSON body. Failures are logged as audit-event CUs.
A friendly name for this echo target, shown in the target list. Not transmitted to the endpoint.
Load spokes to begin.
Select a spoke to browse its CUs.

Unified diff between any two text-class CU artifacts (text, code, voice-transcript).

Merge two diverged chains. Text-class artifacts only. Clean merge emits a merge CU automatically. Conflicts return marked content for human resolution.