Skip to content
The Open Ledger

Candor

The Standing Audit. Every score that shapes the feed — and every line of code that could — recorded in the open, available for inspection.

Scores annotate, never gateChronological feed48 A.R.C. patternsSigned public log
I · Premise

What this is

Arc Codex publishes by fixed rules, then leaves the order alone.

Fixed rules choose which stories get published, and the How we choose page lists them. Arc then measures readability, tone, named entities and a set of rhetorical manipulation patterns, and it attaches those measurements to what you're reading. Then it gets out of the way.

The feed is chronological. Newest first, the same for everyone, the same collection in the same order — modulo private posts that owners see in their own feed. Once a story is published, no algorithm decides what you see: no personalization, no engagement ranking, no “for you.” Two people loading Arc Codex see the same public collection in the same order. The only things that change what you see are filters you choose.

II · Principle

Measure, don't judge

Arc Codex scores things. Stories carry a readability grade, a tone reading, and flags for any of 48 manipulation patterns the AI thinks it found.

Here is the rule those scores live under:

They annotate. They do not gate.

A score tells you something about what you're reading. It never decides whether you get to read it, or where it ranks. A manipulation flag doesn't bury an article — it labels it, in the open, and lets you judge. We don't hide the propaganda; we point at the technique and let you see it working. A grim, hostile, or unflattering piece sits in the feed next to a cheerful one, in the order it arrived, because a collection doesn't rank its shelves by mood.

There's a built-in dissent, too. Most published stories carry a Counter-Analyst note — a standing devil's advocate that argues with Arc Codex's own read. The system disagrees with itself in front of you, on purpose.

III · Exceptions

The exceptions, named out loud

Three places don't follow “measure, don't judge.” We'd rather tell you than have you find them.

  • I · Comments — Moderated for Hostility

    Comments are moderated for hostility. A comment scoring past a high threshold for slurs, threats, or overt aggression is rejected. The line is set to catch abuse, not disagreement — sharp criticism, theological argument, and unhappy dissent are meant to pass, and borderline cases are kept. It’s the one place a tone measurement acts as a gate, and it acts only on comments, never on articles.

  • II · The Optional Email Digest — Ranked

    The optional email digest is ranked. If you subscribe to the daily email, the handful of pieces it sends are chosen by readability score, not recency — a deliberate lean toward denser, more substantial writing. The main feed isn’t touched by this; it stays chronological. The ranking only shapes the opt-in email.

  • III · Machine-Written Stories — Checked Before Publishing

    HOT and Sputnik Watch stories are written by AI, then a second AI checks them. HOT follows what Americans are searching for, and Sputnik Watch answers Russian state media. Sputnik Watch is paused for now. A story the check flags is held and never published. These are the only stories a check can stop, and the check compares a story with its sources, so it can miss errors.

That's the complete list. If we ever add another, it goes here.

IV · Provenance

The narration is synthetic

Most feed stories on Arc Codex also get an audio version. The voice is not a person.

The reader is code. The reading is code.

A neural text-to-speech model reads a short script that another AI wrote from our analysis. It does not read the publisher's article. The audio is made on our own machines. No byline on the site implies a human narrator, and no line of copy anywhere on Arc Codex is spoken by one. This holds for every narrated story and for the rolling audio stream that concatenates recent narrations into a continuous feed.

A synthetic voice that doesn't say so is a small, quiet claim to be a person. The recordings themselves don't announce it, so we say it here and beside the player.

V · Verification

What you can check

Arc's code is not public yet, so you can't read it today. We plan to publish it under the MIT license once its history has been checked for secrets.

What you can check now: the How we choose page lists every score, filter and setting that picks or labels a story, read from the live configuration. The signed log below shows whether we changed an article after publishing it.

You don't have to believe we're neutral. Check what we publish here, and tell us when it's wrong.

If you find a mistake, the contact page reaches a person.

How we choose
VI · Signed and logged

Check that what you read is what we published

Every public article — its headline, its source, when it was published, and its Red, Blue and Purple analyses — is signed with our key and written into a public log the moment we see it. If we change any of it later, the change is added to the log as a new entry that points back to the old one. Nothing in the log is ever rewritten.

So if a copy of an Arc article reaches you through someone else, or if you wonder whether we quietly edited one, you don't have to take anyone's word for it. Our small checker program downloads the article, checks our signature, and checks that the article is in the log. Save today's log summary and the checker can later prove the log has only grown: nothing removed, nothing changed behind your back.

The quickest way is in your browser: verify an article here. For a check that doesn't rely on our server at all, you need Python and one library. Then:

pip install cryptography
curl -O https://arc-codex.com/.well-known/arc-transparency/arc_verify.py
python3 arc_verify.py article https://arc-codex.com/article/<id>
python3 arc_verify.py sth > today.json      # keep this
python3 arc_verify.py consistency today.json   # any later day
python3 arc_verify.py audit                 # re-check the whole log

For the technically minded: Ed25519 signatures over RFC 8785 canonical JSON, in a Merkle tree built the way Certificate Transparency (RFC 9162) builds one, with signed tree heads, inclusion proofs and consistency proofs. Our public key is at /.well-known/arc-transparency/keys.json. What it proves: that an article matches what Arc signed, and that our log has not been rewritten. What it does not prove: that our analysis is right — only that it is the analysis we stand behind.

VII · Ask Arc from an AI assistant

An AI can check its Arc sources too

AI assistants repeat what they find, and they rarely know whether a copy of a story has been altered. So Arc offers them a direct line: a public, read-only endpoint using the Model Context Protocol (MCP), an open standard that lets assistants call outside tools. An assistant connected to it can search our articles, read the facts and analysis, and check the signature on what it just read before it passes that on to you.

Endpoint: https://arc-codex.com/mcp   (streamable HTTP, no account)

search_articles(query, limit)   full-text search
latest(topic, limit)            newest articles
get_article(id)                 facts, summary, analysis, source link
verify_article(id)              signature, log proof, content match

It can only read. It serves public news stories and nothing else: no private or unlisted articles, no reader submissions, no comments, no accounts. Requests are limited to 60 a minute from each address.

One limit worth knowing: verify_article reports our own server's check, so on its own it asks you to trust us. It also returns the proof, so anyone who wants independence can re-check it with the checker program above, which runs on their own machine.

The signing, the log and this endpoint were designed and are run by Ross Nesbitt, built with Claude Code.

Return to About

Harold Edwin Ross Nesbitt III

Fort Collins, CO · 40.5853° N, 105.0844° W

A.R.C. Framework v7.38 · Connection Secure