mcpField
C
cheat-bump

cheat-bump

github.com/xbuilderlabマーケティング・グロース7.4k234 回インストール2 日前に更新
リポジトリ

cheat-bump について

cheat-bumpは、cheat-on-contentでコンテンツの実績を評価するクリエイター向けのワークフロースキルです。rubricの全面改訂とbucket境界の再校正を分け、全面改訂にはブラインド再採点や順位検証、監査を設けています。

主な機能

  1. 01rubric全面改訂とbucket再校正を実行
  2. 02校正サンプルの各次元をブラインド再採点
  3. 03新しい式での順位整合性を検証
  4. 04クロスモデル監査とユーザー確認を必須化
  5. 05改訂メモを追記して状態を更新

活用シーン

  1. 01校正データに基づく採点式の改訂
  2. 02過去の実績からbucket境界を再計算
  3. 03新しいrubricによるサンプル順位の確認
  4. 04改訂根拠と制約の記録

MCP 対応

全面改訂フローではクロスモデル監査にmcp__llm-chat__chatを呼び出すことがあります。READMEではブラインド再採点の依存先としてTask toolも挙げています。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/xbuilderlab/cheat-on-content --skill cheat-bump

インストール後、Claude Code で/cheat-bumpを入力して読み込まれたか確認します。

詳細

/cheat-bump — Rubric/Bucket のアップグレード

2つのモードがあります:

モードトリガー内容検証の厳密さ
完全な rubric の更新--propose "<新公式>"公式/次元/重みを変更5ステップ+クロスモデルレビュー(必須)
bucket のみ再校正--bucket-onlybucket の境界のみ再導出データから自動導出、レビューなし

完全な rubric の更新では、shared-references/bump-validation-protocol.md の5ステップを厳守します。bucket のみの再校正は簡易フローで行います。下記の Phase B を参照してください。

概要

入口:用户触发 /cheat-bump
  ↓
[Phase A0: 检测调用模式]
  ↓
  ├─ --bucket-only  →  [Phase B: 轻量 bucket 重校]
  └─ --propose      →  [Phase 0~6: 完整 rubric bump]

Phase A0: 呼び出しモードの振り分け(最初に実行)

ユーザーの引数を読み取ります:

  • --bucket-only が含まれる → Phase B(簡易再校正)に進む
  • --propose "<...>" が含まれる → Phase 0~8(完全な rubric の更新)に進む
  • どちらもない → ユーザーに尋ねます:「何をしますか? 1) rubric の公式を調整/次元を追加・削除する → --propose;2) bucket の境界のみ再導出する → --bucket-only」

ユーザーが「ER が低すぎると思うので調整したい」と言った場合 → --propose のパスです。 ユーザーが「アカウントが大きくなったので、bucket が合わなくなった」と言った場合 → --bucket-only のパスです。 2つのパスを混ぜてはいけません。1回の操作で行うのは1種類の作業だけです。


完全な rubric 更新のフロー

[用户:升级 rubric --propose "ER×1.5→2.0,砍 NA,加 MS"]
  ↓
[Phase 0: 前置门槛检查]
  ↓
[Phase 1: 写出新公式完整方程]
  ↓
[Phase 2: 校准池全量重打分]
  ↓
[Phase 3: 计算排序一致性]
  ↓
[Phase 4: 跨模型独立审核(强制)]
  ↓
[Phase 5: 落地 + cleanup pass]
  ↓
[Phase 6: 更新所有校准样本的 prediction 文件底部追加 Re-scored 行]

定数

  • READINESS_HEURISTIC —
    • デフォルトの目安:校正プールにサンプルが5件以上あり、かつ、少なくとも1つのサンプル横断の観察に3件以上のサンプルによる裏付けがある
    • ただし、観察のシグナルが特に強い場合、Claude はサンプルが少なくても更新を提案できます:
      • N=3 でも、現在の rubric の仮定を完全に覆す強い反例がある(composite が8.5なのに実績は5w、のような3倍以上の偏差)
      • 1件で単発ながら非常に強い現象が見られる(例:コメント欄に2,000以上の「いいね」を獲得した単一のミームがある)
    • 証拠が弱い場合、Claude はサンプルが十分でも更新を拒否できます:
      • N=10 でも、観察がすべて信頼度の低い断片的なパターンで、明確な方向性がない
      • ユーザーの振り返りに「ざっと見ただけ」といった真剣さに欠ける判断が多い
    • prediction header または cheat-bump の出力には必ず記載します:今回の提案が default-aligned か judgment-driven かを明示し、ユーザーが根拠を確認できるようにします
  • THRESHOLD = 0.8 — 新しい順位と実績の順位の一致度の閾値(4/5)。これは固定です。更新検証における統計的な厳格さを保つためです
  • CROSS_MODEL_AUDIT = true — 外部 LLM に独立したレビューを依頼します。false はオフラインの場合にのみ使用します
  • REQUIRE_CONFIRM = true — 適用前にユーザーから明確な「yes, bump」を求めます

入力

必須ソース
--propose テキストユーザー引数。不足している場合は質問します
rubric_notes.mdユーザープロジェクトのルート
predictions/*.md 全件校正プールのデータ
.cheat-state.json状態

ワークフロー

Phase 0: 前提条件の確認

bump-validation-protocol.md の「禁止する場合」の項目を一つずつ確認します:

確認項目失敗時の対応
校正プールの総サンプル数と観察の強さClaude が判断します。READINESS_HEURISTIC に従い、デフォルトは5件以上ですが、特例(強い反例/強いミーム)は認められます。デフォルトの基準を満たさない場合、Claude はなぜそれでも更新を提案するのかを明示的に説明する必要があります(「サンプルはN=3件しかありませんが、XではcompositeがYなのに対し実績がZで、W倍の偏差があります」など)。ユーザーが根拠を確認できるようにします
前回の更新以降の新しい校正数と観察の成熟度Claude が判断します。新しいサンプルを3件以上にすることをデフォルトで推奨しますが、3件連続で同じ方向を示す強い証拠がある場合は、さらに待つ必要はありません
in_progress_session == null拒否します:「未完了の in-progress 予測があります。先にそのフローを完了するか、state をクリアしてください」
トリガー条件が成立している(系統的な偏差/サンプル横断の新しい観察/新しい次元を裏付ける十分な証拠)警告しますが、処理はブロックしません。なぜ今更新するのかをユーザーに尋ねます

条件を満たした場合 → Phase 1 に進みます。

Phase 1: 新しい公式を完全な方程式として書き出す

ユーザーの簡単な説明だけを受け入れてはいけません。完全な方程式に展開します:

当前:v2  composite = (ER×1.5 + SR×1.5 + HP×1.5 + QL + NA + AB + SAT) / 8.5 × 2.0
提议:v2.1  composite = (ER×2.0 + HP×1.5 + MS×1.5 + QL + SR + TS + SAT) / 9.0 × 2.0

变化总结:
- ER ×1.5 → ×2.0(升)
- SR ×1.5 → ×1.0(降)
- 新增 MS ×1.5(Memetic Shareability)
- 新增 TS ×1.0(Topic Shareability)
- 删除 NA(与 HP 重叠)
- 删除 AB(被 TS 替代)
- 归一化常数 8.5 → 9.0
- 公式总维度数:7 → 7(净变化 0)

ユーザーの提案が曖昧な場合(例:「ER の重みを少し上げて」)→ 具体的な数値を尋ね、推測してはいけません。

Phase 2: 校正プール全体の再スコアリング(blind sub-agent の使用が必須)

predictions/*.md を Glob し、完全な振り返りセクションがあるすべてのファイルを校正プールとして扱います。

更新はこのツールで最もリスクの高い操作です。すべての再スコアリングで cheat-score-blind sub-agent を使用する必要があります。inline での再スコアリングでは、メインの Claude がすでに実績を見ているため、順位の一致は真のシグナルではなく過剰適合になります。

必須制約
  • self-scored へのフォールバックは認めません。/cheat-predict には --skip-blind flag がありますが、/cheat-bump にはありません。Task tool が使用できない場合 → 更新を中止し、ユーザーに「先に Task tool の問題を解決してから更新してください」と報告します
  • 「composite のみを再計算し、dim は再スコアリングしない」は認めません。新しい公式が重みを調整するだけで次元を追加しない場合でも、すべての prediction のすべての dim を sub-agent がスクリプトを再確認して評価する必要があります。理由:古い dim のスコア自体が汚染されている可能性があり、重みが変わったからといって古い dim が有効であるとは限りません
各 prediction について:
  1. prediction ファイルを解析し、対応する scripts/<id>.md のパスを取得します(Script Path header フィールドから)
  2. スクリプトファイルが存在し、hash が header の Script Hash と一致することを確認します。一致しない場合は警告します(スクリプトが変更されています)が、それでも sub-agent を起動します
  3. Task tool を通じて cheat-score-blind sub-agent を起動します:
    Spawn cheat-score-blind sub-agent.
    
    Input:
      script_path: <prediction header 的 Script Path>
      rubric_notes_path: rubric_notes.md
      sidecar_path: .cheat-cache/bump-rescores/<prediction-id>.json
    
    Task: 按 rubric_notes 当前公式(已是新版 vN+1)给 script 打分。
    返回严格 JSON。写 sidecar 文件用于 bump 主流程批量读取。
    
    不要读 state file / predictions/ / videos/ 任何其他文件。
    不要询问用户 —— 你没有用户。
    不要读这份 prediction 文件本身 —— 你只看 script + rubric。
    
  4. sub-agent の完了を待ち → sidecar JSON を読み込み → メインフローで新しい公式を使って composite を計算します
  5. 「再スコアリング表」を .cheat-cache/bump-rescores.json に書き込みます(集計)。各 entry に blind: true の印を付けます。bump の phase 5 の cleanup 時に、このフィールドを新しいスコアとともに prediction ファイルの Re-scored under v<N+1> 行に書き込みます
汚染が残っているかどうかの正直な記載

sub-agent を使っていても、残存する汚染要因が2種類あるため、bump report に正直に記載する必要があります:

種類要因記載フィールド
モデルの事前知識による汚染sub-agent も Claude であり、RLHF を共有しているmodel_prior_warning: true(デフォルトで true、無効化不可)
ユーザー自身による rubric 設計の偏りrubric_notes.md はユーザーが作成したものであり、自然とユーザー自身の内容に適合しているrubric_self_designed: true(デフォルトで true、無効化不可)

この2つの注意点は、ユーザーに channel C(クロスモデル監査)が省略できないことを示します。bump レポートの末尾には必ず次を出力します:「上記の順位一致は channel A 内での一致です。最終決定は channel C audit の合格を待つ必要があります。」

失敗モード
症状対処
ある prediction の script ファイルが見つからないsub-agent はその項目を skip し、メインフローは「N 件が script 欠落により除外された」とレポートを集約します。残りの有効プール < MIN_SAMPLES → abort bump
sub-agent が refusal != null を返すTask を最大 3 回再送します。それでも失敗 → その項目を rescore_failed: true とマークし、キャリブレーションプールから除外
Task tool 全体が利用不可abort bump し、ユーザーに「Task tool は bump のハード依存です。本当にオフライン環境であれば、/cheat-bump --bucket-only を実行して軽量ブランチに進んでください」と案内
sub-agent の出力に contamination_signal が含まれるsuspicious: true とマークしますが除外はしません——bump report の末尾にこれらの疑わしい項目を列挙し、ユーザーに審査してもらいます
Phase 3: ソート整合性の計算
每个样本:
  new_composite_rank: 用新公式排序的 rank
  actual_plays_rank: 用实际播放排序的 rank
  delta: |new_rank - actual_rank|

输出对照表:
| 样本 | composite (v2) | composite (v2.1) | rank (new) | actual | rank (actual) | delta |
|---|---|---|---|---|---|---|
| 仓鼠 | 9.41 | 9.55 | 1 | 124.8w | 1 | 0 |
| 停止期待 | 8.24 | 9.11 | 2 | 71.1w | 2 | 0 |
| 老板废话 | 7.65 | 8.11 | 4 | 39.6w | 3 | 1 |
| 求职悖论 | 8.47 | 7.56 | 5 | 16.8w | 4 | 1 |
| 谁问你了 | 8.24 | 7.00 | 6 | 11.7w | 5 | 1 |

排序一致性:4/5 在 |delta| ≤ 1
Pairwise no-regression:旧公式做对的所有 pair 在新公式下未颠倒 ✓

判定:

  • ソート整合性 < THRESHOLD(デフォルト 0.8) → ローカル拒否、Phase 4 に進む前に明確に失敗を報告
  • pairwise に回帰が出現 → ローカル拒否

THRESHOLD はプロトコルにハードコードされています——一時的に下げることは許可されません(それ自体が別の bump が必要なメタ意思決定です)。

Phase 4: クロスモデル独立審査(必須、escape hatch を除く)

CROSS_MODEL_AUDIT=true(デフォルト):

mcp__llm-chat__chat を呼び出します:

prompt:
你是一个独立审稿人。下面是一个内容创作者准备升级的 rubric 公式。
请独立判定两件事:
1. 排序一致性:新公式给样本的排序与实际表现排序,是否真的在 ≥80% 样本上一致?
2. 解释力:新公式相比旧公式,是否更好地解释了校准池的实绩分布?

数据:
旧公式:(ER×1.5 + SR×1.5 + HP×1.5 + QL + NA + AB + SAT) / 8.5 × 2.0
新公式:(ER×2.0 + HP×1.5 + MS×1.5 + QL + SR + TS + SAT) / 9.0 × 2.0

校准池:
[Phase 2 重打表的完整 JSON]

排序对照:
[Phase 3 表格的完整 JSON]

输出格式:
- 判定:PASS 或 REJECT
- 理由:≥100 字
- 关键风险:[如有,列出新公式的潜在问题]

外部 LLM の返信を受信 → 判定をパース。

判定ロジック:

  • ローカル PASS + 外部 PASS → 通過、Phase 5 へ進む
  • ローカル PASS + 外部 REJECT → REJECT とみなす。衝突は少なくとも一方の解釈が不安定であることを意味します
  • ローカル REJECT → Phase 3 で既に終了済み
  • mcp__llm-chat__chat が利用不可 → グレースフルデグレードで CROSS_MODEL_AUDIT=false にし、state file に last_bump_self_audited: true をマーク

CROSS_MODEL_AUDIT=false:

  • ローカル判定のみに依存
  • state file に継続的にマークし、cheat-status はユーザーに「今回の bump は自審です。mcp__llm-chat__chat の設定を推奨します」と継続的に通知
Phase 5: 反映 + cleanup pass

審査通過後、REQUIRE_CONFIRM=true → ユーザーに確認:「新公式がローカル審査と外部審査の両方に PASS しました。最終確認:bump を反映して実行しますか?これは rubric_notes.md + rubric-memo.md を変更し、吸収済みのいくつかの観察を削除します。'yes, bump' と回答した場合のみ実行します。」

ユーザー確認後:

5a. rubric_notes.md を更新(汎用言語のみを記載、動画名 / 実績は含めない)
  • 冒頭の metadata を更新:
    • **現在のバージョン**: vN+1
    • **Last bumped at**: <ISO 8601>
    • **Upgrade memos**: [rubric-memo.md](rubric-memo.md) を参照(ポインタ、Memo の内容は複製しない)
  • バージョン早見表に 1 行追加(バージョン番号 + 公式シグネチャのみ、証拠サンプルは含めない)
  • 「現在のスコアリング次元」の段落を更新(NA / AB を削除、MS / TS を追加)
  • 派生証拠の段落で、新次元にアンカー説明が必要な場合 → 汎用言語を使用:
    • ✅ 許可:「派生証拠:高抽象密度サンプル → CC=1 → 低 reach」
    • ❌ 禁止:「派生証拠:『停止期待』CC=1 → 実績 13.7w」(動画名 + 実績の数値)
    • 禁止パターンにヒット → その段落を rubric-memo.md の「派生証拠」サブ段落に抽出し、元の位置は汎用言語で置き換え
5b. Memo を rubric-memo.md に書き込む(append モード、履歴を上書きしない)

bump-validation-protocol.md Step 5 + templates/rubric-memo.template.md の形式に従い、Memo の 1 段落をファイル末尾に append:

  • トリガー観察(実際の観察 ID を含む)
  • 証拠データ(キャリブレーションプール再スコア表 + ソート対照、実際の動画名 + 実績を含む)
  • 派生証拠(実際のサンプル名 + 実績を含む)
  • 診断
  • 新公式
  • クロスモデル審査結論の引用(モデル名 + 判定 + 理由の抜粋を含む)
  • 既知の限界

rubric-memo.md の既存内容は絶対に上書きしない——bump memo は時系列順に累積されます。

5c. cleanup pass(observation-lifecycle.md の「cleanup pass 強制タイミング」に従う)

rubric_notes.md 内で実行(rubric-memo.md は触らない):

  • 新次元として吸収済みの観察 → 削除(例:観察 E が MS として吸収された → 観察 E を削除)
  • 新データによって覆された観察 → 削除
  • 仍未解決の観察 → 新バージョンの「検証待ち仮説」段落に移行
  • 検証済みの「規則」→「規則の沈殿エリア」に移動
5d. 整理 + セルフチェック
  • rubric_notes.md の全文を読み直し、読者が 60 秒以内に現在のルールを理解できることを確認——600 行を超えると追加清算をトリガー
  • leak guard のセルフチェック:rubric_notes.md に対して grep -E '\\d+\\s*[wWmMkK万]|播放|实绩|实际' を実行 → ヒットがあれば → abort bump + ロールバックし、ユーザーに「rubric_notes.md に禁止コンテンツ(実績 / 再生数)が書き込まれました」と通知。これらのコンテンツは rubric-memo.md に置くべきで、rubric_notes.md には置きません
Phase 6: キャリブレーションサンプルのバッチ更新

各キャリブレーションサンプルの prediction ファイルに対して、末尾に append(予測段落は触らない、振り返り段落も触らない):


---
**Re-scored under v2.1 on 2026-05-04**: composite=8.24 → 9.11 (blind: true)
(rubric bump 时全量重算,由 cheat-score-blind sub-agent 独立打分;详见 rubric-memo.md 的 v2 → v2.1 升级 Memo)

blind: true フィールドは必須——このレコードを将来読む人に「これは channel B の隔離スコアリングであり、メイン Claude の自己評価ではない」と伝えます。Phase 2 で sub-agent の失敗により除外された prediction がある場合 → Re-scored 行はありません(元のまま)。

Edit ツールを使用し、各ファイルの最末尾にマッチさせます。

Phase 7: state file の更新
{
  "rubric_version": "v2.1",
  "last_bump_at": "<ISO timestamp>",
  "last_bump_self_audited": false,
  "consecutive_directional_errors": [],
  "calibration_samples_at_last_bump": <current value>
}

consecutive_directional_errors をクリア——新しい rubric でカウントし直します。

Phase 8: コンソールレポート
✅ Rubric 已升级 v2 → v2.1

变化:
- ER ×1.5 → ×2.0
- SR ×1.5 → ×1.0
- 新增 MS / TS
- 删除 NA / AB

校准池重打:5/5 通过排序检查(4/5 一致 + 0 pairwise 回归)
跨模型审核:✅ PASS
Cleanup pass:删除观察 D 和 E(已吸收为 QL 重定义和 MS 维度)

下一篇预测起按 v2.1 公式打分。
所有历史预测文件已追加 Re-scored 标记。

Phase B:bucket-only 再キャリブレーション(軽量ブランチ)

/cheat-bump --bucket-only [--scheme ratio|absolute|percentile]

完全な bump との本質的な違い:bucket 境界はルールの一部ではなく、データ派生量です。それを再派生するにはクロスモデル審査は不要——派生アルゴリズムは決定論的であり、「判断」の要素がありません。

B1: アルゴリズムの選択(利用可能なサンプル数に応じて自動派生、state に scheme を保存しない)
アルゴリズム適用境界の派生方式
ratio(デフォルト N=1-4)小サンプル前回 / 直近 3 件の中央値 × {0.3 / 1 / 3 / 10 / 30}
absolute(デフォルト N=5-9)中サンプルキャリブレーションプールの中央値 × {0.3 / 1 / 3 / 10 / 30}、固定境界
percentile(デフォルト N≥10)大サンプルキャリブレーションプールの実績 percentile {30 / 60 / 85 / 95 / 100}

--scheme パラメータにより、ユーザーはデフォルトを明示的に上書きできます:

  • --scheme ratio で ratio を強制(N≥5 でも)
  • --scheme absolute で absolute を強制
  • --scheme percentile で percentile を強制(N≥3 を要求、それ以外はエラー)

--scheme 未指定 → 上表に従い自動派生。

旧設計には bucket_scheme state フィールドがありました——v1.1 で削除。すべての skill はリアルタイムで calibration_samples からアルゴリズムを派生し、「現在どれを使っているか」を永続化する必要はありません。これにより「scheme を切り替えた後に同期を忘れる」という状態の不整合問題を回避できます。

B2: 派生新边界

读 predictions/*.md 中所有有 actual_plays 的样本。

ratio 模式:

baseline = median(最近 3 篇 actual_plays)
buckets = {
  "退步": (-inf, baseline * 0.3),
  "持平": (baseline * 0.3, baseline * 1),
  "命中": (baseline * 1, baseline * 3),
  "小爆": (baseline * 3, baseline * 10),
  "大爆": (baseline * 10, +inf),
}

absolute 模式:

baseline = median(全部校准池 actual_plays)
buckets = {
  "底部": (-inf, baseline * 0.3),
  "基础盘": (baseline * 0.3, baseline * 1),
  "命中": (baseline * 1, baseline * 3),
  "爆款": (baseline * 3, baseline * 10),
  "现象级": (baseline * 10, +inf),
}

percentile 模式:

sorted_plays = sorted(全部校准池 actual_plays)
buckets = {
  "底部":   ≤ p30,
  "基础盘": p30 - p60,
  "命中":   p60 - p85,
  "小爆":   p85 - p95,
  "大爆":   ≥ p95,
}
B3: 报告变化 + 用户确认
当前 bucket scheme: ratio
proposed scheme: absolute
baseline: 4.2w 中位数(基于 5 篇校准样本)

新边界:
- 底部:   < 1.3w
- 基础盘: 1.3w - 4.2w
- 命中:   4.2w - 12.6w
- 爆款:   12.6w - 42w
- 现象级: > 42w

派生说明:
- 5 篇实绩:1.5w / 3.8w / 4.2w / 5.6w / 18w
- 中位数 4.2w,新桶按 ×{0.3, 1, 3, 10} 派生

确认应用?(yes / no)
B4: 落地

用户确认后:

  1. 编辑 rubric_notes.md 的 "Bucket 方案" 段,替换为新表
  2. 更新 .cheat-state.json 的 baseline_plays 字段(bucket scheme 不持久化——下次 cheat-predict 实时派生)
  3. 在 rubric_notes.md 的 bucket 段顶部追加一行变更记录:v2 buckets recalibrated on YYYY-MM-DD: scheme=absolute, baseline=4.2w (基于 N=10 个样本)
  4. 不修改任何 prediction 文件——历史预测的 bucket 标签保持原样(在该样本写入时的方案下做出的判断)
B5: 对未来预测的影响

下一次 /cheat-predict 起按新 bucket 派生。历史 prediction 文件里的 bucket 标签不重算——bucket 是预测时的语义判断,事后改写会破坏盲度。

Phase B 不做的事
  • 不重打 composite(公式没变)
  • 不重新审核观察段(rubric 没变)
  • 不调跨模型审核(确定性派生无需判断)
  • 不要求严格的样本数门槛(按 READINESS_HEURISTIC 由 Claude 判断;ratio 模式 N=1 就能跑)

Key Rules

  1. 5 步不可跳(仅完整 rubric bump)。任何"先简化跑一下"的请求都拒绝
  2. THRESHOLD 写死(仅完整 rubric bump)。不允许动态调整
  3. 跨模型审核是默认(仅完整 rubric bump)。关闭审核需要在 state file 显式标记
  4. cleanup pass 是 bump 的一部分(仅完整 rubric bump)。不允许 bump 完不清理观察段
  5. REQUIRE_CONFIRM(两种模式都要)。最后落地前必须用户明确说 "yes, bump" 或 "yes, recalibrate"
  6. bucket 重校不动历史预测。bucket 是预测时语义,事后改写破坏盲度

Refusals

  • 「跳过校准池重打,直接换公式」 → 拒绝。原则 #2
  • 「跳过 cheat-score-blind sub-agent,主 Claude 直接重打就行」 → 拒绝。bump 不接受任何 self-scored fallback——sub-agent 不可用 → abort bump,不接受"自审"
  • 「跳过外部 LLM 审核」 → 仅当 CROSS_MODEL_AUDIT=false 显式设置
  • 「这次 THRESHOLD 调到 3/5 让它过」 → 拒绝。改 THRESHOLD 是元层级 bump
  • 「保留所有旧观察作为历史」 → 违反原则 #3
  • 「先 bump,cleanup 下次再做」 → 拒绝。cleanup 是 bump 的一部分
  • 「只重算 composite 不重打 dim」 → 拒绝。新权重 × 旧 dim 仍是旧污染。每个 dim 都由 sub-agent 重审 script
  • 「把 Memo 全文写进 rubric_notes.md 顶部,方便我读」 → 拒绝。rubric_notes.md 是 blind sub-agent 白名单——含视频名 / 实绩 → 通过白名单泄漏。Memo 写 rubric-memo.md(白名单外),rubric_notes.md 只放公式 + 通用语言维度定义 + 指针
  • 「派生证据段保留真实视频名,让 rubric 读起来更具体」 → 拒绝。在 rubric_notes.md 必须用通用语言("高抽象密度样本");带视频名的派生证据写 rubric-memo.md

Integration

  • 上游:/cheat-retro 检测到 ≥3 同向偏差 → 提议跑 /cheat-bump
  • 依赖:mcp__llm-chat__chat(如配置)+ Task tool(spawn cheat-score-blind)
  • 修改:
    • rubric_notes.md(结构性更新,绝不写真实视频名 / 实绩)
    • rubric-memo.md(新——append Memo 全文,含证据 + 派生证据)
    • 所有 predictions/*.md(追加 Re-scored 行,不动预测段)
    • .cheat-state.json
  • 下游:下一篇 /cheat-predict 自动按新 rubric_version 打分

コメント