> ## Documentation Index
> Fetch the complete documentation index at: https://docs.presschain.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Action Matrix

> V3 economic class, role, bond and relationship requirements for major PressChain actions.

# Action matrix

The V3 action policy maps protocol operations to economic classes and authorization requirements. This matrix is intended for transaction preflight, product copy and integration planning.

Final mainnet amounts are intentionally not invented here. Use the active network economics authority for numeric amounts.

| Action                      | Class            | Eligible role or actor                |    Active bond   | Additional requirement                       |
| --------------------------- | ---------------- | ------------------------------------- | :--------------: | -------------------------------------------- |
| `capsule.publish`           | standard         | Author, Journalist, Editor            |         ✓        | authenticated identity                       |
| `evidence.community.attach` | micro            | authenticated PressKey identity       |                  | quotas, duplicate and validation controls    |
| `evidence.official.attach`  | standard         | Author, Journalist, Editor            |         ✓        | Capsule relationship authority               |
| `contributor.add`           | standard         | Author, Journalist, Editor            |      policy      | Capsule authority                            |
| `challenge.open`            | elevated         | authenticated eligible identity       |         ✓        | challenge rules                              |
| `review.submit`             | micro            | Journalist, Editor, Validator         |         ✓        | review target                                |
| `bounty.create`             | funded           | Author, Journalist, Editor            |         ✓        | funding supplied                             |
| `bounty.claim`              | micro            | Author, Journalist, Editor, Validator |      policy      | bounty eligibility                           |
| `bounty.submit`             | micro            | current assignee                      |         ✓        | active assignment                            |
| `bounty.approve`            | micro            | Editor, Validator                     |      policy      | reviewer or protocol authority relationship  |
| `bounty.pay`                | none/public      | authorized settlement path            | settlement check | escrow or treasury authority                 |
| `role.activate`             | bond             | identity                              |        n/a       | activation bond                              |
| `role.topup`                | bond             | role holder                           |        n/a       | bond top-up                                  |
| `role.withdraw`             | micro            | role holder                           |        n/a       | cooldown                                     |
| `reward.claim`              | micro            | eligible role holder                  |         ✓        | one claim per cycle                          |
| `rss.feed.register`         | elevated         | Editor                                |      policy      | outlet admin or Enterprise project authority |
| `rss.feed.publish`          | standard         | Author, Journalist, Editor            |      policy      | authorized non-custodial delegation          |
| `trust.analysis.request`    | standard/premium | premium identity                      |      policy      | premium access and project quota             |
| `governance.configure`      | none/public      | governance authority                  |        n/a       | internal governance                          |
| `ownership.transfer`        | none/public      | governance authority                  |        n/a       | internal governance                          |

## How to use the matrix

A client can convert policy into a preflight object:

```ts theme={null}
type ActionPolicy = {
  action: string;
  feeClass: "none" | "bond" | "micro" | "standard" | "elevated" | "funded";
  allowedRoles: string[];
  activeBondRequired: boolean;
  relationshipCheck?: string;
};
```

The UI then resolves current identity and network economics instead of encoding policy in button conditionals.

## Public economic action versus governance action

The policy intentionally distinguishes public economic operations from internal governance configuration. Do not turn `ownership.transfer` into a paid public feature simply because it changes contract state.

## Amount resolution

Economic class is not the amount. A mainnet-ready client can keep stable action semantics while loading actual amounts from a versioned environment manifest.

If the current amount cannot be resolved confidently, disable authorization and report configuration error. Guessing an economic value is not a safe fallback.

## Relationship checks remain critical

The role column is only one dimension. Official evidence, contributor management, bounty approval and feed registration all include contextual authority that cannot be inferred from role alone.

A complete transaction preflight asks both “what role does this identity hold?” and “what relationship does it have to this specific object or organization?”
