TfP Docs

Identity & Attribution

Tokens for Progress records who did a piece of work, who they were representing, and how the work was produced. None of that changes when people later switch jobs, switch login methods, or leave an institution.

%%{init: {"flowchart": {"nodeSpacing": 26, "rankSpacing": 30, "padding": 6}}}%%
flowchart TD
    U["User<br/><i>the person on TfP</i>"]
    U -->|membership| O["Organization"]
    U -->|contributes| W(["attributed work"])
    O -.->|"optional attribution"| W
    AG["Agents / models / tools"] -.->|"provenance"| W

User

A User is a person on Tokens for Progress — the stable identity to which authored Problems, Campaigns, Attempts, and other contributions are associated.

A person might do the work manually, work interactively with an agent, or have an agent perform most of the work autonomously. Those are different ways of producing a contribution; they do not create different TfP Users.

Agents and models are not Users. Claude, Codex, local models, scripts, and other tools are recorded as provenance describing how work was produced.

A User has a small public profile — handle, display name, avatar, and optionally a bio and location. Profile information is self-reported; organizational affiliation is represented separately through memberships.

Organizations and membership

An Organization represents an institution that can participate in or receive attribution on TfP: a university, company, laboratory, nonprofit, government agency, or consortium. A User can belong to several Organizations at once, through OrganizationMemberships.

Users may join through a verified organizational email or through administrator approval. Membership establishes affiliation only — it does not grant administrative authority or attribute all of the User's work to the Organization.

Organization membership and administrative authority are separate. An administrator is a member who has additionally been granted administrative capability; a member's descriptive role ("Research Scientist", "PhD Student") does not determine permissions.

An Organization must retain at least one administrator. Before its last administrator steps down or leaves, they must make another member an administrator. Existing DNS domain-controller recovery authority is preserved when membership ends.

Attribution belongs to the work

Membership says which Organizations you are associated with; attribution says which Organization, if any, you were representing for a particular piece of work — and it is attached to the work itself.

Suppose Jordan belongs to both MIT and a nonprofit:

When organizational attribution applies, the contributor selects the Organization they are representing for that work; TfP never infers an "employer." And when Jordan later leaves MIT, Attempt A remains attributed to MIT — current membership never rewrites the history of old work, so contributions keep a stable meaning as affiliations change.

Organization trust

Anyone can create an Organization, so existence alone does not establish institutional legitimacy. TfP separately records evidence connecting an Organization to a canonical domain: mailbox verification establishes access to an email address at that domain, while DNS verification establishes stronger control of the domain itself. Public Organizations therefore appear as unverified, email verified, or domain controlled — and verification does not imply institutional endorsement of every member or contribution.

The specific mailbox used for email verification remains private.

Sign-in methods and external identities

A TfP User may have multiple sign-in methods, such as Google and GitHub. These authenticate the same TfP User; they are not separate public identities — your profile never says how you signed in.

Users may also link external identities such as ORCID to connect their TfP identity to outside systems, while the TfP User remains the canonical identity inside the platform. Personal links (a website, a GitHub profile) work the same way.

Putting it together

Consider a researcher who belongs to MIT and a nonprofit, works on a Problem while representing the nonprofit, and uses Claude plus a local analysis tool during the Attempt. TfP represents those facts separately:

If the researcher later changes organizations, login methods, or profile details, none of those changes rewrite the historical contribution.