Documentation

    Hosted installer: at launch

    Report identity

    All reference topics

    Report identity

    A published report is the pair {slug, version}. One function derives slugs everywhere (publish, wikilinks, server): Unicode NFKD, drop combining marks, transliterate the remaining Latin letters (ß to ss, ł to l, đ to d, ø to o, æ to ae, œ to oe), lowercase, turn each run of other characters into one hyphen, trim, and cut at the last hyphen before 80 characters. Průzkum žluťoučkého koně v Česku 2026 becomes pruzkum-zlutouckeho-kone-v-cesku-2026. A title with no Latin letters or digits yields no slug.

    The publish slug is the --slug option or MCP slug, else frontmatter slug, else the title. Each is judged alone: a problem in another frontmatter field never changes it, and there is no untitled fallback. A [[wikilink]] target that already matches the slug grammar is used as written; any other target is derived, and one with no letters or digits points at report.

    A {slug, version} is immutable. Publishing identical content again returns created: false; different content is publish.version-exists (HTTP 409) naming the stored hash, and the author bumps the version. Identity is contentSha256, the SHA-256 of the .rmd source, the ordered styles and every file sorted by path, each with its byte length; slug, version, rendered HTML and engine version are not part of it. Versions are never pruned. A server may set a byte quota (--quota-bytes, RICHVIEW_QUOTA_BYTES); a publication past it is publish.quota (HTTP 507) and stores nothing. DELETE /api/reports/{slug}/v/{version} removes a version and leaves a tombstone: its permalink answers 410 and the number can never be published again (publish.version-deleted). /r/{slug} serves the highest release by SemVer precedence, a pre-release only while no release exists, unless the owner pins a version with PUT /api/reports/{slug}/latest (body {"version": "..."}) and removes the pin with DELETE.

    Was this page useful? Suggest an edit