Network Roles¶
Last updated: 2026-06-28
The node runtime exposes distinct roles through the packaged cortensord binary. Role selection determines how a node participates in routing, mining, oracle coordination, validation, pooling, user-task quality sampling, or tooling.
flowchart LR
App["Application / caller"] --> Router["Router Node<br/>routerv1"]
Router --> Queue["Session Queue"]
Queue --> Miner["Miner<br/>minerv4"]
Miner --> Queue
Oracle["Oracle<br/>oraclev3"] --> Queue
ValidatorV1["Validator v1<br/>network task regulator"] --> Queue
ValidatorV2["Validator v2<br/>quantitative post-result checks"] --> Queue
ValidatorV3["Validator v3<br/>qualitative post-result checks"] --> Queue
Pool["Pool<br/>poolv1"] --> Queue
Quality["Quality oracle<br/>qualityv1"] --> Queue
Tool["Tooling<br/>tool"] --> Router
Tool --> Miner
| Role | What it does | Runtime role |
|---|---|---|
| Router | API-facing coordinator. Accepts requests, resolves sessions, submits tasks, and returns results or verdicts. | routerv1 |
| Miner | Executes assigned inference work and submits precommit/commit data. | minerv4 |
| Oracle | Watches and coordinates lifecycle transitions around sessions and tasks. | oraclev3 |
| Validator v1 | Network task-level checker and regulator. Handles cognitive-level and node-level validation around task execution and network behavior. | validatorv1 |
| Validator v2 | Post-result quantitative validator. Maintains numeric task, node, and performance checks after network task results are produced. | validatorv2 |
| Validator v3 | Post-result qualitative validator. Handles qualitative result checking and quality-oriented verdict flows after network task results are produced. | validatorv3 |
| Pool | Supports pool and network coordination. | poolv1 |
| Quality oracle | User task quality sampling oracle. Samples user task quality on a heartbeat-style cadence and is separate from validator v2/v3 post-result checking. | qualityv1 |
| Tool | Key generation, registration, verification, migrations, and maintenance commands. | tool |
Cortensor runs all three validator roles together: validatorv1 for network task-level checking and regulation, validatorv2 for quantitative post-result checks, and validatorv3 for qualitative post-result checks. qualityv1 is a separate user task quality sampling oracle rather than another network-result validator.
Role Names¶
Setup guides and operator commands use the runtime names in the table above. The packaged binary expects the role name as the second argument after the environment file.
Setup Command Pattern¶
Node setup pages use packaged binary commands:
cortensord ~/.cortensor/.env routerv1
cortensord ~/.cortensor/.env minerv4
cortensord ~/.cortensor/.env oraclev3
cortensord ~/.cortensor/.env validatorv1
cortensord ~/.cortensor/.env validatorv2
cortensord ~/.cortensor/.env validatorv3
The packaged binary interface is the public operator path.
Role Interactions¶
| Interaction | Operational detail |
|---|---|
| Application to router | Request shape, authentication, model/session selection, timeout behavior. |
| Router to queue | Session ID resolution, task creation, privacy/off-chain options. |
| Miner to queue | Assignment, precommit, commit, result or URN submission. |
| Oracle to session | Lifecycle observation and coordination. |
| Validators to queue | Network task-level regulation, quantitative post-result checks, qualitative post-result checks, verdicts, quality signals, and retry behavior. |
| Quality oracle to queue | Heartbeat-style user task quality sampling independent of validator v2/v3 post-result checks. |
| Tool to network | Registration, verification, key generation, stats, reputation, and balance checks. |