/injection-fidelity
Loss-1 judge (codex role). Given one sample's de-identified dialogue and its PolicyCard, decide axis-by-axis whether the user-simulator enacted the card's per-axis pressure. Judge enactment of the card, never whether the research is good.
$ npx -y skills add yogsoth-ai/de-anthropocentric-research-engine --skill injection-fidelity --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/injection-fidelity
Context preview
The summary Claude sees to decide when to auto-load this skill.
Loss-1 judge (codex role). Given one sample's de-identified dialogue and its PolicyCard, decide axis-by-axis whether the user-simulator enacted the card's per-axis pressure. Judge enactment of the card, never whether the research is good.
SKILL.md
injection-fidelity.SKILL.mdname: injection-fidelity
description: Loss-1 judge (codex role). Given one sample's de-identified dialogue and its PolicyCard, decide axis-by-axis whether the user-simulator enacted the card's per-axis pressure. Judge enactment of the card, never whether the research is good.
injection-fidelity (loss-1)
You judge ONE sample: a de-identified dialogue transcript + the PolicyCard (F0–F9 persona + axis_levels A1–A5, B1). Decide, axis by axis, whether the user-simulator semantically enacted the card's per-axis pressure. You judge "was the card enacted", never "is the research good". You never see or use any quality-check list; work only from the card and the dialogue.
Pressure window
Count only the pressure-window user turns (the card's F8 budget minus the closing turns). Normalize every rate by that count (`pressure_turns`).
The 6 signals → axes
| Signal | Axis | Meaning | | --- | --- | --- | | `pushback_count` → `pushback_rate` | A1 (primary) | turns demanding more substance / refusing thin answers | | `accept_without_question_rate` | A1 (mirror) | share of turns accepting without challenge | | `operationalization_demand_count` → `op_demand_rate` | A3 | turns demanding numbers / thresholds / executable steps | | `incoherent_demand_flag` | A2 | demands self-contradictory / no legitimate through-line | | `premise_defended_count` | A4 | turns still holding the wrong premise after challenge | | `novel_seed_count` | A5 | turns introducing original directions (after the seed test) |
Event bits: `premise_dropped` / `premise_revised` (A4 trajectory).
**A5 substantive-seed test** — a turn counts as a novel seed only if ALL three hold: substantive (not pleasantry), topic-relevant (same domain as the card's F7 prerequisite facts), non-restatement (not reskinning the executor's prior turn). Each counted seed carries a `quote` + the 3 judgments in `per_axis_evidence.A5`.
Expected bands (continuous axes A1, A3)
A rate in [0,1] maps to one of 5 non-overlapping bands, monotone increasing with the card's level — HIGHER level demands a HIGHER rate:
- L0 = [0, .10], L1 = (.10, .30], L2 = (.30, .55], L3 = (.55, .80], L4 = (.80, 1]
A1 is judged jointly: `pushback_rate` (primary, direct band) and `accept_without_question_rate` (mirror, the `1−x`-flipped band). The two directions must agree; if they contradict, A1 fails.
Overlay axes: A2 expects `incoherent_demand_flag == true` when the card's A2 ∈ {L0, L1}. A4 reads the event bits against C-/C0/C+ (C+ → premise revised on good argument; C- → premise defended). A5: `G+` → `novel_seed_count ≥ 1`; `G0` → `novel_seed_count ≤ 1`.
Drift gate
Split the pressure window into halves. Both halves' rates must stay in-band. If the second half drifts toward the cooperative pole (pushback / op-demand DROPS) beyond a small tolerance ε → set `drift_flag = true` (post-drift labels are untrustworthy). Stronger pressure later does NOT trip drift — only collapse toward cooperation does.
Verdict
- `per_axis_evidence[ax].pass = (observed band == expected band)` for ax ∈ A1–A5.
- `fidelity = all(pass for A1..A5) AND (not drift_flag)`.
- `loss1 = count(pass for A1..A5) / 5` (diagnostic, higher = more faithful; lets
the optimizer locate which axis collapsed).
- B1 is a confound, off-spine, NOT in the fidelity AND.
Emit exactly the JSON of `loss1.schema.json`: `fidelity`, `loss1`, `per_axis_evidence` (A1–A5, each `{observed, expected_band, pass, quote}` with a non-empty quote), `drift_flag`, optional `note`.
Three things you must not get wrong
1. Counts match but the pressure is surface-only — a "why?" with no substance is NOT A1 pushback. Require a non-empty quote proving substantive pressure. 2. An A5 seed that is novel but trivial / off-topic does not count — apply the 3-part seed test and record the 3 judgments. 3. If the primary and mirror A1 readings disagree, A1 fails — do not average them into a false pass.
Read more
name: injection-fidelity description: Loss-1 judge (codex role). Given one sample's de-identified dialogue and its PolicyCard, decide axis-by-axis whether the user-simulator enacted the card's per-axis pressure. Judge enactment of the card, never whether the research is good.
injection-fidelity (loss-1)
You judge ONE sample: a de-identified dialogue transcript + the PolicyCard (F0–F9 persona + axis_levels A1–A5, B1). Decide, axis by axis, whether the user-simulator semantically enacted the card's per-axis pressure. You judge "was the card enacted", never "is the research good". You never see or use any quality-check list; work only from the card and the dialogue.
Pressure window
Count only the pressure-window user turns (the card's F8 budget minus the closing turns). Normalize every rate by that count (`pressure_turns`).
The 6 signals → axes
| Signal | Axis | Meaning | | --- | --- | --- | | `pushback_count` → `pushback_rate` | A1 (primary) | turns demanding more substance / refusing thin answers | | `accept_without_question_rate` | A1 (mirror) | share of turns accepting without challenge | | `operationalization_demand_count` → `op_demand_rate` | A3 | turns demanding numbers / thresholds / executable steps | | `incoherent_demand_flag` | A2 | demands self-contradictory / no legitimate through-line | | `premise_defended_count` | A4 | turns still holding the wrong premise after challenge | | `novel_seed_count` | A5 | turns introducing original directions (after the seed test) |
Event bits: `premise_dropped` / `premise_revised` (A4 trajectory).
**A5 substantive-seed test** — a turn counts as a novel seed only if ALL three hold: substantive (not pleasantry), topic-relevant (same domain as the card's F7 prerequisite facts), non-restatement (not reskinning the executor's prior turn). Each counted seed carries a `quote` + the 3 judgments in `per_axis_evidence.A5`.
Expected bands (continuous axes A1, A3)
A rate in [0,1] maps to one of 5 non-overlapping bands, monotone increasing with the card's level — HIGHER level demands a HIGHER rate:
- L0 = [0, .10], L1 = (.10, .30], L2 = (.30, .55], L3 = (.55, .80], L4 = (.80, 1]
A1 is judged jointly: `pushback_rate` (primary, direct band) and `accept_without_question_rate` (mirror, the `1−x`-flipped band). The two directions must agree; if they contradict, A1 fails.
Overlay axes: A2 expects `incoherent_demand_flag == true` when the card's A2 ∈ {L0, L1}. A4 reads the event bits against C-/C0/C+ (C+ → premise revised on good argument; C- → premise defended). A5: `G+` → `novel_seed_count ≥ 1`; `G0` → `novel_seed_count ≤ 1`.
Drift gate
Split the pressure window into halves. Both halves' rates must stay in-band. If the second half drifts toward the cooperative pole (pushback / op-demand DROPS) beyond a small tolerance ε → set `drift_flag = true` (post-drift labels are untrustworthy). Stronger pressure later does NOT trip drift — only collapse toward cooperation does.
Verdict
- `per_axis_evidence[ax].pass = (observed band == expected band)` for ax ∈ A1–A5.
- `fidelity = all(pass for A1..A5) AND (not drift_flag)`.
- `loss1 = count(pass for A1..A5) / 5` (diagnostic, higher = more faithful; lets
the optimizer locate which axis collapsed).
- B1 is a confound, off-spine, NOT in the fidelity AND.
Emit exactly the JSON of `loss1.schema.json`: `fidelity`, `loss1`, `per_axis_evidence` (A1–A5, each `{observed, expected_band, pass, quote}` with a non-empty quote), `drift_flag`, optional `note`.
Three things you must not get wrong
1. Counts match but the pressure is surface-only — a "why?" with no substance is NOT A1 pushback. Require a non-empty quote proving substantive pressure. 2. An A5 seed that is novel but trivial / off-topic does not count — apply the 3-part seed test and record the 3 judgments. 3. If the primary and mirror A1 readings disagree, A1 fails — do not average them into a false pass.
The complete research orchestration system for AI-native science. What It Does Design Philosophy Architecture (v3.2.2) Quick Start Configuration Roadmap License DARE is not a tool that helps you do research. It is the researcher.
Repo: yogsoth-ai/de-anthropocentric-research-engine
Other skills on de-anthropocentric-research-engine.
- /formated-results
Closing skill for the research-executor, loaded as the last step of formated-specs. Summarize the design just produced into one research-result JSON fenced block in your reply. Do not execute the research.
Open skill - /formated-specs
Spec-slot skill for the research-executor. Emit the 4-layer DARE orchestration of the assigned topic as one research-graph JSON fenced block in your reply. Replaces the generic spec-writing step.
Open skill - /ladder-quality-order
Loss-2 judge (codex role). Over one topic's 6 shuffled research-design samples, pairwise-rank by quality using the D1–D5 standard. Emit the pairwise log; the harness computes the order and the ladder verdicts. Judge quality difference, never against academic standards.
Open skill - /optimization-loop
The optimizer brain for the ladder-foundry pretraining loop. Runs the two-level nested batch loop, delegates gating to gate_eval, attributes a failing batch to one weight (attribute-first), and recovers from disk after compaction. Control flow is fully scripted; only the
Open skill - /acu-nugget-recall
Tactic: Extract atomic units from one paper and score how much of a caller-supplied summary covers. Use for ACU-style binary or Nugget-style ternary recall checks; cannot run without a target summary.
Open skill - /argumentative-zoning
Tactic: Label every sentence of one paper with its rhetorical role using Argumentative Zoning. Use when fixed rhetorical labels and cross-paper alignment matter.
Open skill

