Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Strategy for auditing preference consistency using Consistency Ratio, cycle enumeration, and mElo to detect and resolve intransitivities.
.claude/skills/yogsoth-ai-coherence-diagnosis/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | -37% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -29% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -33% | 0% |
| case-14 | ✗→✓ | ▲ Improved | -20% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 0% | 0% |
Audit an existing comparison matrix for logical consistency. Detect cycles, quantify transitivity violations, localize problematic judgments, and recommend corrections. Essential as a quality gate before finalizing any ranking.
| Resource | Allocation | |----------|-----------| | Cycle detection | Full matrix scan | | Consistency metric | CR < 0.1 (AHP) or transitivity > 90% | | Repair comparisons | ≤ 20% of original comparisons | | Iterations | 1-3 audit-repair cycles |
yamlcomparison_matrix: {} # pair → winner candidates: [] consistency_metrics: {cr: null, transitivity: null, cycles_count: 0} cycles: [] # [[a>b, b>c, c>a], ...] problematic_pairs: [] # pairs involved in most cycles repair_log: [] # [{pair, old_judgment, new_judgment, reason}] iteration: 0
yamldiagnosis: consistency_ratio: 0.04 transitivity_score: 0.97 cycles_found: 1 cycles_resolved: 1 repairs_made: 2 audit_trail: - {pair: ["b", "d"], original: "b", revised: "d", reason: "..."} final_ranking_valid: true method: consistency-ratio
<!-- BEGIN available-tables (generated) -->
Optional, no fixed order; the final leaf is always a sop.
| Tactic | When to use | | --- | --- | | consistency-audit-loop | Detect preference cycles, localize inconsistent judgments, request corrections, and recompute ratings until consistency threshold is met. |
Optional, no fixed order; the final leaf is always a sop.
| SOP | When to use | | --- | --- | | convergence-check | Evaluate whether the ranking has stabilized by analyzing rating history and computing stability metrics. | | ranking-synthesis | Produce the final ranking artifact from converged ratings and consistency report. | | rating-update | Incorporate a new judgment into the rating model and return updated ratings for all candidates. |
<!-- END available-tables (generated) -->
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-10 | pass→pass | 24,562 | 4,668 | -81% | 1 | 1 | 0% | 1,785 | 1,456 | -18% | 0 | 0 | — |
case-01 | fail→fail | 27,230 | 20,600 | -24% | 1 | 1 | 0% | 5,947 | 4,869 | -18% | 0 | 0 | — |
case-02 | fail→fail | 20,984 | 23,476 | +12% | 1 | 1 | 0% | 4,180 | 5,562 | +33% | 0 | 0 | — |
case-03 | fail→pass | 26,114 | 14,729 | -44% | 1 | 1 | 0% | 5,860 | 3,715 | -37% | 0 | 0 | — |
case-04 | pass→pass | 13,619 | 13,276 | -3% | 1 | 1 | 0% | 2,950 | 3,421 | +16% | 0 | 0 | — |
case-05 | pass→fail | 16,956 | 8,963 | -47% | 1 | 1 | 0% | 3,384 | 2,312 | -32% | 0 | 0 | — |
case-06 | pass→fail | 13,201 | 11,673 | -12% | 1 | 1 | 0% | 2,445 | 2,836 | +16% | 0 | 0 | — |
case-07 | pass→pass | 9,416 | 7,003 | -26% | 1 | 1 | 0% | 1,684 | 1,993 | +18% | 0 | 0 | — |
case-08 | fail→pass | 12,299 | 5,622 | -54% | 1 | 1 | 0% | 2,318 | 1,657 | -29% | 0 | 0 | — |
case-09 | fail→pass | 12,423 | 4,390 | -65% | 1 | 1 | 0% | 2,106 | 1,415 | -33% | 0 | 0 | — |
case-11 | pass→pass | 11,499 | 4,486 | -61% | 1 | 1 | 0% | 2,055 | 1,442 | -30% | 0 | 0 | — |
case-12 | pass→pass | 6,608 | 4,029 | -39% | 1 | 1 | 0% | 1,090 | 1,416 | +30% | 0 | 0 | — |
case-13 | pass→pass | 8,754 | 1,991 | -77% | 1 | 1 | 0% | 1,497 | 1,025 | -32% | 0 | 0 | — |
case-14 | fail→pass | 9,516 | 3,045 | -68% | 1 | 1 | 0% | 1,444 | 1,160 | -20% | 0 | 0 | — |
case-15 | pass→pass | 8,922 | 2,032 | -77% | 1 | 1 | 0% | 1,290 | 1,038 | -20% | 0 | 0 | — |
case-16 | fail→pass | 7,184 | 2,014 | -72% | 1 | 1 | 0% | 1,027 | 1,026 | -0% | 0 | 0 | — |
case-17 | pass→pass | 7,954 | 2,514 | -68% | 1 | 1 | 0% | 1,229 | 1,170 | -5% | 0 | 0 | — |
case-18 | fail→pass | 7,430 | 2,005 | -73% | 1 | 1 | 0% | 1,268 | 1,075 | -15% | 0 | 0 | — |
case-19 | fail→pass | 10,516 | 2,148 | -80% | 1 | 1 | 0% | 1,715 | 1,039 | -39% | 0 | 0 | — |
case-20 | pass→pass | 6,216 | 3,069 | -51% | 1 | 1 | 0% | 1,127 | 1,286 | +14% | 0 | 0 | — |
case-21 | fail→pass | 9,703 | 2,923 | -70% | 1 | 1 | 0% | 1,711 | 1,156 | -32% | 0 | 0 | — |
case-22 | pass→pass | 3,899 | 3,540 | -9% | 1 | 1 | 0% | 736 | 1,401 | +90% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +27 percentage points is the difference between those two pass rates over the 22 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.