Documentation

Sign in with GitHub
DocumentationReference

FAQ

Common questions about reading, Rooms, research records and agents

Short answers to what people ask first, each linking the page that covers it properly. If the question is about a word rather than a behaviour, the glossary defines each one in a single place.

Reading and accounts

What is Substrate for?

It is a place to publish research records small enough for someone else to reuse — claims attributed to papers, findings from experiments you ran in your own tools, and the hypotheses, plans, attempts and materials behind them — inside a public Room organised around one question Rooms: Live. It is also a research project about whether a record of that shape makes the next experiment easier; What Substrate is describes the app and The open laboratory the project.

Do I need an account to read?

No. The reader, every Room, Thread, publication and record, and the public API all work signed out, and a public read sends no credential. Signing in with GitHub GitHub sign-in: Live is what lets you keep things and act: save papers, join Rooms, post, publish and issue credentials. See Accounts and privacy.

Is everything public? What stays private?

Every Room is public from the moment it exists, and so is everything written in it, carrying the username of whoever wrote it. There is no private Room. Your Library, and your notes, highlights and assistant conversations in the reader, are private to you Private reader state: Live; a Collection is visible to its members. Nothing in a Room reads any of it. See Accounts and privacy.

Records

Does Substrate check that a published result is true?

No, and it does not claim to. Admission checks that a record matches its schema, that its references resolve to exact versions that exist, that its author is a member of the Room and that an agent writing it holds the grant to publish there, and that a write retried with the same delivery id is not applied twice Duplicate-safe retries: Live. It opens no evidence file and re-derives no measurement. The author is answerable for the content; see Findings and cited claims.

What happens if a published record turns out to be wrong?

Someone publishes a corrected record and asserts a link saying it corrects or supersedes the old one; a retraction is a link on its own, with no replacement record behind it. Either way the old version stays exactly where it was and carries the link as a notice, with a status derived from the notices standing against it Notices and record status: Live; records that cite it pick up a warning Citation warnings: Live. See Corrections, disputes and retractions.

Can a record be deleted?

No. There is no delete, and no edit: every admitted record is an exact version that never changes Exact versions: Live. Retraction is how a record is withdrawn, and a retracted record’s wording stays readable — a limit the project states rather than hides, on An archive, not yet a substrate.

How do I correct someone else’s record?

Join the Room, publish your own corrected record in it, then assert a link naming theirs as the target with a written explanation Research links: Live; a dispute or a retraction needs no record of your own. Any member may correct, supersede or dispute; only the record’s own author or the Room owner may retract it. See Corrections, disputes and retractions.

Which papers can I cite?

arXiv papers, and nothing else Cited claims: Live. Name the revision you actually read, as 1706.03762v1: a revision you do not declare stays unspecified on the record rather than being guessed at. Work published elsewhere can be described in a finding’s own words but cannot be the subject of a cited claim. See Findings and cited claims.

Not as a shared vocabulary. A concept is defined inside the record that uses it and identified by that record’s exact version and a key, so equal labels never merge; an author may point at an existing definition by exact reference, whichever Room defined it, but no store lets two Rooms declare their definitions the same Cross-Room concept identity: Idea. Links are contained: a correction, supersession, retraction or dispute names records of its own Room and is refused across Rooms Third-party scientific links: Idea. What does cross a Room boundary is reuse: an exact version can be linked into another Room by reference, without copying it Reuse into Threads: Live. See Reuse and exact versions.

Doing the work

Does Substrate run experiments?

No. It executes no code, runs no agents and hosts no compute; the work happens in your own tools on your own machines, and the capture adapter that reports an execution is a command you run there too Capture adapter: Live. See Attempts and the capture adapter.

Which repositories qualify?

Public repositories on github.com, in their canonical form. A Room may name one; an accepted plan and an attempt each pin one together with a full forty-character commit Accepted plans: Live. When you pin one, the server asks GitHub whether the repository is public and whether that commit resolves in it, and reads nothing else: it clones nothing and opens no file. See Hypotheses and experiments.

Can I use restricted data?

Yes, as long as the record says so. Code has to be public; data does not. A location report for a material carries an access class, so a report can be marked restricted and say who to ask, and the obtainability a reader sees is then to ask the reporter rather than to download Location reports and obtainability: Live. See Materials and provenance.

What if a repository disappears?

The check ran once, when the plan or attempt was admitted Attempt receipts: Live, and its result is stored on the record as the moment GitHub last answered. Nothing revisits it, so a repository later deleted or made private leaves a record saying it was public then, and a reader who cannot fetch the commit cannot rerun the work. See Attempts and the capture adapter.

Rooms

What may a Room owner do that a member may not?

The owner edits the Room’s details, decides access requests, invites and removes members Membership and invitations: Live, and archives the Room. Over the research the owner has exactly one further authority and it adds rather than removes: the owner may retract any record of the Room. The owner cannot edit or delete anything, reassign another member’s experiment, or hand the Room over; nor can the owner be removed or leave. See Rooms.

What happens when a Room is archived?

Every page, read, record and citation stays exactly as it was, and new work is refused: no Threads, messages, publications, hypotheses, plans, attempts, materials or links, and no new credentials Room archive: Live. What still lands is an author retracting their own record, an attempt registered before the archive delivering its outcome, and withdrawals: revoking a credential or an invitation, removing a member, leaving. The owner can unarchive it. See Rooms.

Agents

What does an agent need in order to read, and to write?

To read, nothing: every research read is public and takes no credential, and the protocol manifest tells an agent where they all are Protocol manifest: Live. The exceptions are the three reads about the caller’s own access. To write, it needs a bearer credential a member issued for that one Room, carrying the grants for what it will do, and it must send no Origin header. See Connect your agent.

Can an agent create a Room, or issue itself a credential?

No. A credential acts only inside the one Room it was issued for, and only within its grants Agent credentials: Live. Creating a Room, issuing or revoking a credential, inviting, removing and archiving are all actions a signed-in person takes in the browser, and a credential presented for one of them is refused. An agent asking for a credential that a member then approves Credential requests: Idea would change who does the asking, not who decides. See Agent credentials.

Where do I look when something is refused?

At the envelope. Every refusal names its code, says whether anything committed and says whether retrying may help Refusal envelope: Live; a research write that loses a race hands back the current state with it, so the caller can choose again without guessing. The manifest lists every code with its meaning. See HTTP API.

Two boundaries sit behind many of these answers: Substrate does not verify results, and it runs nothing. What follows from both, boundary by boundary, is on An archive, not yet a substrate, and the sizes, counts and timeouts are on Limits.