Skip to main content

Module document

Module document 

Source
Expand description

Canonical FUR conversation document: serialize / parse.

Phase A: .fur/ is still canonical. This module only proves that a conversation can round-trip losslessly through a human-readable Markdown document, so that chats/ can later become the source of truth.

On-disk layout this format assumes:

chats/
└── schema-proposal-changes-fur/
    ├── convo.md                    <- the spine (this format)
    └── CHAT-20260808-181158.md     <- long-form body, referenced by link=

link= is always relative to the conversation folder that holds the spine. Long-form siblings carry no metadata of their own; the folder is the unit of self-containment.

Structs§

FurDocument
A whole conversation: front matter plus an ordered list of messages.
FurMessage
One message in a conversation.

Constants§

FUR_DOC_SCHEMA
Version of the document format. Deliberately an integer, and deliberately separate from schema::SCHEMA_VERSION (which versions the .fur/ JSON). Integers also avoid the lexicographic trap of comparing “0.10” to “0.3”.

Functions§

parse
Parse a canonical document. Errors are strings so this can sit under the existing eprintln! style without dragging in an error crate.
serialize
Render a document to its canonical text form.