AISOURCEOFTRUTH.COM

Build on another publisher's work

Link your record to its source with derived-from, so corrections upstream reach you.

Who this is for

Publishers whose work quotes, summarizes, translates or extends someone else's attested work.

The problem

When a source is corrected, nothing downstream finds out. A lineage link makes your record derived-from the source, so the registry's assess rules flag your record when the source is corrected or sealed, and the source's page shows what was built from it.

How it works

Routes it uses

Set it up

Step 1. Collect upstream digests

For each source you used, keep its record digest (see the cite-sources use case).

Check: Each source has a 64 hex digest or is noted as unattested.

Step 2. Publish with lineage

Add lineage: ["{upstream digest}"] to your provenance record.

BODY='{ ...record }'
SIG=$(printf %s "$BODY" | ./sign-ed25519)   # base64url signature over these exact bytes
curl -s -X POST 'https://aisourceoftruth.com/v1/records' \
  -H "Authorization: Bearer $AISOT_TOKEN" \
  -H "X-AISOT-Key-Id: $AISOT_KEY_ID" \
  -H "X-AISOT-Signature: $SIG" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H 'Content-Type: application/vnd.aisot.record+json' \
  --data-binary "$BODY"

Check: Your record's lineage shows the upstream records.

Step 3. Read the family

Fetch your record's lineage to confirm the edges, and the source's to see your work listed downstream.

curl -s -H 'Accept: application/json' 'https://aisourceoftruth.com/v1/model/lineage/{digest}?direction=both'

Check: counts.up["derived-from"] matches the number of sources.

Step 4. React to upstream changes

Assess your record on a schedule. upstream_erratum or upstream_sealed names the source in digest; review and, if needed, correct your own record.

curl -s -H 'Accept: application/json' 'https://aisourceoftruth.com/v1/model/assess/{digest}'

Check: An erratum on a test source turns your record's verdict to check.

Publishing needs a publisher key and a token. The one-time setup is on /agents and in the plan's design.md.

Wire it into your agent

Add the lineage field in the same step that publishes your record. Run the assess check from a nightly job or from the change feed.

MCP: add https://aisourceoftruth.com/mcp to the agent's MCP servers. Tools used: publish_record, get_lineage, assess. Read tools need no token.

With the PromptReports products, or alone

Expected outcomes

What it does not prove

The OpenSpec plan for your agent

Your coding agent fetches the plan and writes it into your repo as openspec/changes/integrate-aisot-lineage/:

curl -H 'Accept: application/json' 'https://aisourceoftruth.com/use-cases/build-on-records/openspec?lang=python&with=promptreports'

Read it here: OpenSpec plan. Back to all use cases or the documentation library.

$ curl -H 'Accept: application/json' https://aisourceoftruth.com/use-cases/build-on-records # this page is a rendering of the API. Reproduce it as data.