Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Bug report
description: Something in the Cortex control plane is wrong
description: Report a problem in the Cortex research network software
labels: ["bug"]
body:
- type: markdown
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Feature request
description: Propose a change to the Cortex control plane
description: Propose an improvement to the Cortex research network
labels: ["enhancement"]
body:
- type: markdown
Expand Down
5 changes: 4 additions & 1 deletion .greptile/rules.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
# Cortex review rules

This is a Bittensor subnet control plane (`CortexLM/cortex`), not an app-platform
This implements an autonomous research network on Bittensor (`CortexLM/cortex`), not an app-platform
or SOC2 checklist. Two **live** challenge ids: `bounty` (2000 bps) and
`proof` (8000). Proof-weighted 20%/80% regardless of eval digest. Proof's
eval digest is pinned (`ghcr.io/cortexlm/proof-eval@sha256:78b614a1…`); do not invent a different sha256. Empty digest stays fail-closed (503). Sum is 10000. `relearn`, `relearn-image`,
`relearn-agent`, `relearn-mm`, `design`, and `prism` are **removed as products** (no trust-root
row, no compose services). Historical miner stubs stay under `docs/external-miner/`. Frozen
specs remain for xtask gates. Leftover `prism-*` crates are the Lium harvest stack used by Proof.

- **Distinguish vision from implementation.** `docs/WHITEPAPER.md` maps the
proposal to code. Do not market unfinished judging, research persistence,
synthesis, or Proof emission as deployed capabilities.
- **Fail-closed.** Missing holdout file, commitment mismatch, unpinned eval
digest, or unset judge credentials → refuse / 503. Never score the public split as a
substitute. `*_FORCE_SIM` is CI/local only and must be the *only* way to
Expand Down
9 changes: 6 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
# AGENTS.md — Cortex control plane
# AGENTS.md — Cortex research network

Short contract for agents and operators. Prefer linking over restating runbooks.

**Product:** Cortex ([`CortexLM/cortex`](https://github.com/CortexLM/cortex)) — Bittensor subnet control plane. **Two live challenges:** `bounty` (2000 bps) and `proof` (8000 bps). Proof-weighted 20%/80% lock regardless of eval digest. Proof eval digest is pinned (`ghcr.io/cortexlm/proof-eval@sha256:78b614a1…`, RLM judge via digest-pinned `InferenceOffer`); live submits still 503 until harvest is wired, a baseline is sealed, and ≥1 topic is open. Empty digest stays fail-closed (do not invent a sha256). Sum is 10000. `relearn`, `relearn-image`, `relearn-agent`, `relearn-mm`, `design`, and `prism` are **removed as products** — no trust-root row, no compose services, no emission, and no leaf may verify. Historical miner stubs stay under [`docs/external-miner/`](docs/external-miner/) so old links do not 404. Frozen specs (`docs/DESIGN_CHALLENGE.md`, `docs/PRISM.md`) remain for xtask gates. Leftover `prism-*` crates are the **Lium harvest stack** used by Proof, not a live Prism challenge. Proof scores operator-published research topics (dynamic `topic_id`, digest-pinned RLM judge, `wta` or `discovery` payout). Naming split (Cortex vs leftover `base` / `BASE_*`): [`docs/NAMING.md`](docs/NAMING.md).
**Product:** Cortex ([`CortexLM/cortex`](https://github.com/CortexLM/cortex)) — an autonomous research network on Bittensor. **Two live challenge ids:** `bounty` (2000 bps) and `proof` (8000 bps). Proof-weighted 20%/80% lock regardless of eval digest. Proof eval digest is pinned (`ghcr.io/cortexlm/proof-eval@sha256:78b614a1…`, RLM judge via digest-pinned `InferenceOffer`); live submits still 503 until harvest is wired, a baseline is sealed, and ≥1 topic is open. Empty digest stays fail-closed (do not invent a sha256). Sum is 10000. `relearn`, `relearn-image`, `relearn-agent`, `relearn-mm`, `design`, and `prism` are **removed as products** — no trust-root row, no compose services, no emission, and no leaf may verify. Historical miner stubs stay under [`docs/external-miner/`](docs/external-miner/) so old links do not 404. Frozen specs (`docs/DESIGN_CHALLENGE.md`, `docs/PRISM.md`) remain for xtask gates. Leftover `prism-*` crates are the **Lium harvest stack** used by Proof, not a live Prism challenge. Proof scores operator-published research topics (dynamic `topic_id`, digest-pinned RLM judge, `wta` or `discovery` payout). Naming split (Cortex vs leftover `base` / `BASE_*`): [`docs/NAMING.md`](docs/NAMING.md).

**Vision vs implementation:** start with [`docs/OVERVIEW.md`](docs/OVERVIEW.md) and the [`whitepaper comparison`](docs/WHITEPAPER.md). Do not describe the proposed synthesiser, recursive research judge, durable research corpus, or automatic Proof emission as complete. Current Python judging is partial; Proof uses in-memory submission state and its binary does not drive the payout/emission helpers. A pinned image and `can_score` are not proof of scientific reproduction or end-to-end payment.

PRs require a [Greptile](https://greptile.com) review (`.greptile/`). If the bot is silent, comment `@greptileai review`.

Expand Down Expand Up @@ -52,7 +54,7 @@ Each live challenge has miner docs in this repo. Public repos (when they exist)
| Bounty | this repo [`docs/external-miner/bounty.md`](docs/external-miner/bounty.md) | Miner pairing + report path; subnet **reads** CortexLM/backend public API (does not serve one) |
| Proof | this repo [`docs/external-miner/proof.md`](docs/external-miner/proof.md) | Dynamic operator-published topics + digest-pinned RLM judge |

This control-plane repo is `CortexLM/cortex`. Off/archived miner pointers stay under [`docs/external-miner/`](docs/external-miner/) (`relearn.md`, `relearn-image.md`, `relearn-agent.md`, `relearn-mm.md`) so historical links do not 404; they are not live products. Frozen specs (`docs/DESIGN_CHALLENGE.md`, `docs/PRISM.md`) stay archived. Do not send miners to Design, Prism, or Relearn docs as live work.
This network implementation repo is `CortexLM/cortex`. Off/archived miner pointers stay under [`docs/external-miner/`](docs/external-miner/) (`relearn.md`, `relearn-image.md`, `relearn-agent.md`, `relearn-mm.md`) so historical links do not 404; they are not live products. Frozen specs (`docs/DESIGN_CHALLENGE.md`, `docs/PRISM.md`) stay archived. Do not send miners to Design, Prism, or Relearn docs as live work.

**When a challenge product or public API changes**, agents **must** update:

Expand Down Expand Up @@ -112,6 +114,7 @@ Match CI (`.github/workflows/ci.yml`):

| Need | Start here |
|------|------------|
| Purpose, research reuse, and proposal vs implementation | [`docs/OVERVIEW.md`](docs/OVERVIEW.md), [`docs/WHITEPAPER.md`](docs/WHITEPAPER.md) |
| System map / process topology | [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) |
| Cortex vs leftover `base` names | [`docs/NAMING.md`](docs/NAMING.md) |
| Deploy / Compose / DO topology | [`deploy/README.md`](deploy/README.md) + [`deploy/AGENTS.md`](deploy/AGENTS.md) |
Expand Down
12 changes: 10 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
# Contributing to Cortex

This is the Rust control-plane monorepo for the Cortex Bittensor subnet
([`CortexLM/cortex`](https://github.com/CortexLM/cortex)).
This repository implements Cortex, an autonomous research network on Bittensor.
Start with the [overview](docs/OVERVIEW.md) and
[whitepaper comparison](docs/WHITEPAPER.md) for the purpose and current limits.
Network services use Rust; the research evaluation image uses Python.

## Before you start

Expand Down Expand Up @@ -33,8 +35,14 @@ cargo run -p xtask -- consensus-lint
cargo run -p xtask -- spec-check
cargo run -p xtask -- design-check
cargo run -p xtask -- external-docs-check
cargo clippy -p validator-bin --features dcap --all-targets -- -D warnings
bash deploy/scripts/assert-compose-matrix.sh
```

For changes to the Python evaluation image, install its development dependencies
in an isolated environment and run `python -m pytest eval/tests` from the repo
root. GPU/runtime validation is separate from these contract tests.

Local subnet stack (Docker Compose, secrets via age): see
[deploy/README.md](deploy/README.md) and
[docs/runbooks/local-testnet-e2e.md](docs/runbooks/local-testnet-e2e.md).
Expand Down
26 changes: 0 additions & 26 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading