Skip to content
This repository was archived by the owner on Aug 3, 2026. It is now read-only.

op1: reject non-canonical data source (data-lock bypass) - #84

Merged
bitzic merged 1 commit into
RalphLabsAI:mainfrom
karpabot:op1-compute-config
Jun 30, 2026
Merged

op1: reject non-canonical data source (data-lock bypass)#84
bitzic merged 1 commit into
RalphLabsAI:mainfrom
karpabot:op1-compute-config

Conversation

@karpabot

Copy link
Copy Markdown

What

Adds a third op1 anti-gaming gate: check_canonical_data_source — reject a bundle whose training config points the data manifest/dir at a miner-host path (/home, /mnt, …).

Found in the wild: king ea576b0a (crazy-m1ner) trained with config.manifest_path = "/home/root/diony/recipe/data/data_manifest.json" + a train.py build_manifest(...) that rebuilds the manifest at runtime — a data-lock bypass (trained on its own data, not the locked canonical data_manifest, possibly contaminated with the held-out). Every 5GTFZCFT bundle does this.

Why the existing scanners miss it: the path lives in final_state.config, not the patch diff — so the restricted/exploit patch scanners never see it. This gate checks the config in op1.

Verified

  • Rejects ea576b0a (/home/root/diony) and any /mnt data dir.
  • Passes the clean king 7fd43cef (data/data_manifest.json, relative) and no-config bundles.
  • ruff clean, 19 integrity tests pass.

Follow-up (stronger): verify the data-manifest hash matches the canonical locked one.

🤖 Generated with Claude Code

… (anti-gaming)

Three op1 gates against gate-gaming, before any compute is spent:
- check_compute_plausibility: tokens_seen/wall_clock_s implied MFU > GPU bf16
  ceiling (>70%) => fabricated wall_clock (under-claimed to win the compute crown).
- check_recipe_config_matches_proof: submitted configs/*.json total_steps must
  equal the steps the proof ran (decoy recipe).
- check_canonical_data_source: config.manifest_path / data_base_dir must not be a
  miner-host path (/home,/mnt,...) — a data-lock bypass training on non-canonical
  (possibly held-out-contaminated) data. NOTE this lives in final_state.config, not
  the patch, so the patch scanners miss it.
Wired into op1_diff_and_integrity. Catches live forgers: 5CtaoQf1 (818k tok/s =
126% MFU) and ea576b0a (manifest_path=/home/root/diony/...). Tests in
test_integrity_trained.py.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@bitzic
bitzic merged commit 74802c0 into RalphLabsAI:main Jun 30, 2026
4 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants