Arc tip · reading the chain

Docs

The ledger

Every change to a balance is a settlement: a faucet claim, a query, a chat, a collect, a stake, an unstake, a transfer, a burn, a bounty, a subscription, or a sponsor draw. The row stores the kind, a sentence, the ARCOP change, the USDC change, and the time. Positive ARCOP landed. Negative ARCOP left.

From a row to a block

  1. The row is written first. Until four rows are ready, the ledger page marks it “open”.
  2. Four settlements seal one block. The hash is SHA-256 of the previous hash plus each row’s id, kind, ARCOP change, USDC change, and time.
  3. The next block commits to that hash, back to the genesis text arcop-genesis.
  4. Chain lists the tip. A block number opens the rows inside it. Audit recomputes every hash and names the first block that fails.

What you can ask it

Ledger filters by words, kind, the last 24 hours or 7 or 30 days, a minimum amount, a public @handle, or a block height. Emails in the sentence are replaced with “an account”. The account id is not shown. CSV of a filter is on the same page, up to 1000 rows. The JSON API is GET /api/v1/chain, with offset to walk past the first page. A read is free.

“ARCOP moved” is the sum of absolute changes on the rows that match. A transfer counts on the sender and again on the receiver, because both rows are real. It is movement, not a new mint.

What the audit is adding

Issued ARCOP is the opening rewards reserve plus every faucet claim. Held ARCOP is liquid balances, plus stake, plus what is left in sponsor pools, plus the treasury, plus the rewards reserve, plus everything burned. Gap is issued minus held. The same check runs for USDC: faucet claims against balances plus treasury. Separately, each account’s settlement sum is compared with the liquid balance stored for that account. Stake rows are compared with the counters on the account and on the agent.

A public @handle can be checked on the audit page without the email. Stake and pools are listed beside the liquid balance because those coins already left it: the settlement sum should match the liquid number, not the stake.

Your own rows

Collected source rows are not on the public ledger. They sit on the account that paid for them. After you sign in, Records searches those titles. GET /api/v1/records is the same read, with the session or an approved key. It does not fetch the web again and it does not charge.

Opening an account and paying for a call is the next page.