Contract Status (2026-09-20 governance ruling)
This skill is acalibration adapter auxiliary tool, not registered in executor-registry—the ④ node contract entry point is upstreamcheat-on-content(registry node 4), and the ⑤ deep-scan contract entry point isdbs-content-review+laohan-shencha-content-claims(node 5). The host executes ④⑤ according to registry/whois, and does not route to it merely because this skill directory is visible; this skill's lane routing, contamination prevention, and registration process serve as an operations manual reference.
This is not a second Cheat.cheat-on-content is the only calibration engine; this skill only connects the episode and its calibration lane, avoiding drift in locally forked formulas, prediction rules, or migration rules.
Boundaries That Must Not Be Crossed
- Scoring here by fixed tutorial-style weights is prohibited, estimating and then treating the score as a prediction is prohibited, and separately writing PREDICT / RETRO / BUMP is prohibited.
- Using the historical samples of
tutorial-videoto evaluateopinion-videois prohibited; the two kinds of content must be independent lanes. - Blind prediction must be written by the upstream
cheat-on-contentinto itspredictions/before filming, publishing, and viewing this episode's actual data; the prediction section must not be rewritten. - If the state schema does not match after an upstream version update, only
cheat-migratedry-run may be executed first. Historical lanes must not be migrated before backup and user confirmation.
Routing
Before scoring, the verify-blind-rubric.mjs must not merely check the header:blind-rubric.md must verbatim preserve the source rubric's current complete dimension definitions and placeholder rules. If dimension semantics are abbreviated, omitted, or rewritten, remain PENDING, and after repair re-score in a completely new isolated context.
- First run
laohan-bianpai vendors. When Cheat or dbskill upstream has updates, only record them as to-dos; runvendors --synconly before a new episode or in an independent maintenance window. If it reports a schema migration, stop, do not bypass it, and do not switch rules midway through this episode. - Read
episodes/<slug>/01-口播稿.mdand00-选题.md, and determine the content form.- Tutorials, explicit operational paths, resource delivery →
tutorial-videolane。 - Opinions, commentary, topics, personal judgments →
opinion-videolane。 - When it cannot be determined, stop; do not default to tutorial type.
- Tutorials, explicit operational paths, resource delivery →
- Read the target lane's
.cheat-state.json, and confirmcontent_formconsistency. Opinion videos always use the workflow project'scalibration/opinion-video/; when there is no lane, first create one in that directory using the upstreamcheat-init, and do not reuse a mismatched old directory. - First run
node scripts/verify-blind-rubric.mjs calibration/<content_form>. For the current01-口播稿.md, run the upstreamcheat-score: the main scorer may use the completerubric_notes.mdto parse the formula, but the isolated sub-scorer may only read the verifiedblind-rubric.mdand the current episode draft. Any contamination warning must be discarded and a completely new isolated scoring must be restarted. The complete output must preserve the original isolated JSON (complete script hash, rubric version, per-dimension scores/reasons, input_status, self_check, refusal); the registration script will re-check it, and the Markdown SHA alone must not be registered. Save the warning-free output into the lane, then runnode scripts/register-cheat-score-evidence.mjs ...。- When the lane has no real published sample yet (
calibration_samples=0), the status must be marked as an enum valueCOLD_START_DIAGNOSTIC, not the plain-language “cold-start diagnosis”; the register/prepare scripts and the bianpai gate mechanically judge by that enum value, and must not claim that quality or traffic has been verified, nor overwrite the original template, catchphrases, scenes, pacing, or punchlines in order to improve composite coverage. Scoring suggestions enter the revision candidate list only when they point to a specific comprehension/delivery problem.
- When the lane has no real published sample yet (
- Enter ⑤: fixed calls to
dbs-script-flow、dbs-resonate、dbs-ai-checkandlaohan-shencha CONTENT_CLAIMS; only when the first 5 seconds are judged weak, calldbs-hook. dbs-ai-check only diagnoses specific hit sentences and does not automatically rewrite; once dbs-hook is triggered, fully use the three upstream methods, 3–5 items each, for a total of 10–15 differentiated candidates. It is strictly forbidden to fabricate author experiences, number of interviews, data, results, or cases; when evidence is missing, you must write[需真实证据]. After the report is complete, runnode scripts/stamp-episode-script-hash.mjs episodes/<slug> 04-深扫报告.md 04-事实核验.md, and only then will the two ⑤ reports be written to the same script_hash. A hash match alone is insufficient: ③ must have no explicitly unresolved high risk; the ⑤ deep scan mustreview_status: CLEARandunresolved_issue_count: 0, and fact verification mustfact_check_status: CLEAR、contradicted_count: 0、unverifiable_count: 0; otherwise you must not prepare or register the final blind prediction. ⑤ must also output04-事实主张.json: any PROOF beat must cite theSUPPORTED claim_idbound to the current draft/fact report and same-source evidence,INFERRED(even withinference_note) must not enter a PROOF beat, and a source link itself does not constitute factual proof. Note: the current stamp script only binds the hashes of the two ⑤ reports,04-事实主张.json's PROOF beat boundaries are descriptive-layer constraints, and this time the script will not be changed. - After the ⑤ report matches the current draft hash, first run
node scripts/prepare-cheat-prediction-input.mjs episodes/<slug> calibration/<content_form>. Use the output lane snapshot as the sole input to the upstreamcheat-predict, and write**Script**: <snapshot path>and**Script Hash**: <sha256>in the prediction metadata. Then runnode scripts/register-cheat-prediction.mjs episodes/<slug> calibration/<content_form> predictions/<file>.md v1. It verifies that the prediction is later than the snapshot and that the metadata matches the snapshot, and only then writes03-预测证据.jsonand marks itRECORDED. Any revision invalidates the hash; you must rerun ⑤, prepare a new snapshot, and register a new prediction revision, and must not rewrite the old prediction. 03-校准报告.mdThe beginning must be:
---
calibration_engine: cheat-on-content
content_form: opinion-video # 或 tutorial-video
calibration_root: <相对于本报告的 lane 路径>
script_hash: <01-口播稿.md 的 sha256>
score_status: COMPLETE
prediction_status: PENDING # ⑤完成后才改为 RECORDED
prediction_file: null # RECORDED 时必须是 predictions/...md
---
Then only summarize this issue's score, key revision points, and upstream prediction file paths; do not copy a set of rubric. Run laohan-bianpai status; missing upstream state, hash, or final prediction means BLOCKED.
Historical compatibility
~/.openclaw/workspace-shared/content-ops is the old tutorial-video calibration data, not the default source for all episodes. It remains read-only until it is upgraded to the upstream schema; opinion videos like FDE must not use its old tutorial-style composite as the basis for release.
When to return here
- After publication:
laohan-yunyingonly archives real publication/data/comments, then hands them to the upstreamcheat-publishandcheat-retro。 - When the sample is sufficient: only by the upstream
cheat-bumpshould a full rerun and independent review be performed. - ⑭ retro-handoff must have
feedback_hypotheses: each item binds a uniquehypothesis_id, intervention, expected metric, T+N window, status, and feedback target (① or ④); if a field is missing, bianpai must reject the full workflow. This field is produced by the upstreamcheat-retro. This skill serves as the routing entry from ④ to ⑭. After registering the blind prediction, it must prompt that ⑭ needs to complete this field (for a single episode onlyOBSERVATION/HYPOTHESIS; only with at least two episodes with the same intervention, a fixed window, and a clear control can it be markedUPGRADE_EVIDENCE)。