From 83b414882cf7bd9d50de10332273c28f9ab4c02d Mon Sep 17 00:00:00 2001 From: ai-hpc Date: Tue, 25 Aug 2026 01:30:14 +0200 Subject: [PATCH 1/2] docs: reconcile stale deployed-vs-verifier status + fix dead MECHANISM_ROUTER link MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Doc-vs-code drift audit (docs only; no code change): - VALIDATOR.md Status table asserted a hard `FAIL` for "deployed vector vs independent verifier" and told operators to stay in non-writing preview "until the supported release converges." That verdict is stale and contradicts sibling docs: the 2026-07-28 redeploy converged production and cathedral-compute BUILD_STATUS.md reported AGREE (2026-08-07), while cathedral-compute EVIDENCE_LANE.md still says "not converged" — one question, three answers. Reconcile VALIDATOR.md to defer to a LIVE re-derivation (this status moves with each deploy) while keeping the safety caution: confirm the live vector reproduces against the pinned verifier before broadcasting. - MINER_VALIDATOR.md linked deploy/MECHANISM_ROUTER_CONTRACT.md, which does not exist in this repo (it lives in the cathedral monorepo). Point it at the in-repo deeper-contract doc, BOUNDARY.md. For wallscaler review; not self-merged. Co-Authored-By: Claude Opus 4.8 --- MINER_VALIDATOR.md | 2 +- VALIDATOR.md | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/MINER_VALIDATOR.md b/MINER_VALIDATOR.md index 7e4cfc3..46e43bb 100644 --- a/MINER_VALIDATOR.md +++ b/MINER_VALIDATOR.md @@ -3,7 +3,7 @@ SN39 (Cathedral) rewards **two lanes of verified work**, composed into one weight vector each tempo — **70% Intel-TDX compute** / **30% CyberGym vulnerability solving**, with any unfilled share burned. This page is the whole mental model. The deeper contracts are in -[VALIDATOR.md](VALIDATOR.md), [deploy/MECHANISM_ROUTER_CONTRACT.md](deploy/MECHANISM_ROUTER_CONTRACT.md), +[VALIDATOR.md](VALIDATOR.md), [BOUNDARY.md](BOUNDARY.md), and the reward-path docs. ## A miner diff --git a/VALIDATOR.md b/VALIDATOR.md index 80bf37a..e53f022 100644 --- a/VALIDATOR.md +++ b/VALIDATOR.md @@ -30,13 +30,15 @@ UID-aligned Bittensor weight decision. It supports two concurrent paths: | Validator thin-path checks | Implemented | | Concurrent shadow provenance audit | Implemented; default mode | | Full-provenance authority mode | Deprecated; no shipped config profile selects it (removal tracked in #40) | -| Current deployed vector vs independent verifier | `FAIL`: public v1/GPU-allocation contract does not match the v2/fixed-burn/body-binding verifier | +| Current deployed vector vs independent verifier | Re-derive before relying on it — this status moves with each deploy. An earlier release recorded `FAIL` (public v1/GPU-allocation shape vs the v2/fixed-burn/body-binding verifier); the 2026-07-28 redeploy converged production and `cathedral-compute`'s `BUILD_STATUS.md` reported `AGREE` (2026-08-07). Confirm against the live signed vector before broadcasting. | | General validator launch | Pending a scoreable corpus and final acceptance | -The current public contract mismatch is a launch blocker. Shadow mode reports -it but does not veto an otherwise valid thin vector, which is why operators -must remain in non-writing preview modes until the supported release -converges. +Any residual public-contract mismatch is a launch blocker, and shadow mode +reports it but does not veto an otherwise valid thin vector — so confirm the +live signed vector reproduces against the pinned verifier before broadcasting, +and stay in non-writing preview until it does. Do not rely on a static verdict +here or in `BUILD_STATUS.md`; both are dated and must be re-derived against the +live vector. ## What happens on each tick From 24f0971aabc9c4330262535b1c51f66633f9ed11 Mon Sep 17 00:00:00 2001 From: ai-hpc Date: Tue, 25 Aug 2026 01:43:11 +0200 Subject: [PATCH 2/2] docs(VIOLET): fix wrong require-policy default (unpinned -> validated_supply_v1) VIOLET_EXTERNAL_SCORES.md's example said the require-policy default is "unpinned (accepts legacy, v3, and confidential_primary)". The actual default is validated_supply_v1 (scaffold/cli.py:59), which REJECTS a plain confidential_primary/v3 vector (validator_thin.py:3470-3494). Fix the comment. Doc-vs-code drift audit; docs only. For wallscaler review. Co-Authored-By: Claude Opus 4.8 --- docs/VIOLET_EXTERNAL_SCORES.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/VIOLET_EXTERNAL_SCORES.md b/docs/VIOLET_EXTERNAL_SCORES.md index 820cf23..16f52d7 100644 --- a/docs/VIOLET_EXTERNAL_SCORES.md +++ b/docs/VIOLET_EXTERNAL_SCORES.md @@ -90,7 +90,8 @@ CATHEDRAL_EXTERNAL_SCORES_TOKEN_CATHEDRAL_CONFIDENTIAL_TDX= # Per-sourc **Validator policy pin (`confidential_primary_v1`):** operators who run confidential-primary can pin the thin validator so it applies ONLY this contract: ```bash -# CLI flag or env; default is unpinned (accepts legacy, v3, and confidential_primary) +# CLI flag or env. The default PINS validated_supply_v1 (cli.py), which rejects a +# plain confidential_primary/v3 vector — set this explicitly to accept confidential_primary. cathedral-validator serve --require-policy confidential_primary_v1 export CATHEDRAL_VALIDATOR_REQUIRE_POLICY=confidential_primary_v1 ```