Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Find blockers and showstoppers using TOC, TRIZ contradiction analysis, and Pre-mortem techniques.
.claude/skills/yogsoth-ai-constraint-identification/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 61% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 68% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 16% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 114% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 34% | 0% |
Purpose: Systematically discover what could prevent a candidate from being implemented. Uses Theory of Constraints to find bottlenecks, TRIZ to surface contradictions, and Pre-mortem to anticipate failures before they occur.
When to use:
| Metric | Target | |--------|--------| | Constraints identified | >= 3 per candidate | | Hard constraints classified | >= 1 | | Removal paths designed | >= 1 per removable constraint |
| Key | Type | Description | |-----|------|-------------| | candidate | object | The candidate under assessment | | constraints] | array | All identified constraints | | hard_constraints] | array | Non-negotiable blockers | | soft_constraints] | array | Constraints that can be worked around | | assumptions] | array | Unvalidated beliefs that may become constraints | | removal_paths{} | map | Constraint -> removal path mapping |
| Tactic | When | |--------|------| | constraint-drilling | Default — full constraint discovery, classification, and removal path design |
| SOP | Purpose | |-----|---------| | constraint-identification-sop | Discover constraints | | constraint-classification | Sort into hard/soft/assumptions | | removability-assessment | Score how removable each constraint is | | removal-path | Design steps to remove a constraint |
constraint-identification-sop to discover all constraints using TOC, TRIZ, and Pre-mortemconstraint-classification to sort themremovability-assessmentremoval-pathyamlconstraint_analysis: candidate: <name> total_constraints: N hard_constraints: - {constraint, severity, rationale} soft_constraints: - {constraint, severity, workaround_sketch} assumptions: - {assumption, risk_if_false, validation_method} removal_paths: - {constraint, removability: 0.X, steps: [...], timeline, resources} showstopper_verdict: <yes/no> showstopper_reason: <if yes>
<!-- BEGIN available-tables (generated) -->
Optional, no fixed order; the final leaf is always a sop.
| Tactic | When to use | | --- | --- | | constraint-drilling | Identify constraints, classify them by type and severity, assess removability, and design removal paths for removable constraints. |
<!-- END available-tables (generated) -->
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 23,255 | 26,607 | +14% | 1 | 1 | 0% | 3,580 | 4,846 | +35% | 0 | 0 | — |
case-02 | pass→pass | 19,060 | 23,682 | +24% | 1 | 1 | 0% | 2,857 | 4,925 | +72% | 0 | 0 | — |
case-03 | pass→fail | 21,834 | 27,992 | +28% | 1 | 1 | 0% | 3,498 | 3,764 | +8% | 0 | 0 | — |
case-04 | fail→pass | 16,007 | 21,160 | +32% | 1 | 1 | 0% | 2,768 | 4,464 | +61% | 0 | 0 | — |
case-05 | fail→pass | 9,118 | 10,021 | +10% | 1 | 1 | 0% | 1,550 | 2,598 | +68% | 0 | 0 | — |
case-06 | fail→pass | 14,098 | 10,332 | -27% | 1 | 1 | 0% | 2,139 | 2,490 | +16% | 0 | 0 | — |
case-07 | fail→pass | 9,819 | 17,633 | +80% | 1 | 1 | 0% | 1,752 | 3,747 | +114% | 0 | 0 | — |
case-08 | pass→pass | 22,849 | 14,636 | -36% | 1 | 1 | 0% | 1,838 | 3,233 | +76% | 0 | 0 | — |
case-09 | pass→pass | 23,946 | 17,237 | -28% | 1 | 1 | 0% | 2,481 | 2,654 | +7% | 0 | 0 | — |
case-10 | pass→pass | 13,977 | 19,233 | +38% | 1 | 1 | 0% | 2,401 | 3,690 | +54% | 0 | 0 | — |
case-11 | fail→fail | 19,789 | 16,390 | -17% | 1 | 1 | 0% | 3,201 | 3,465 | +8% | 0 | 0 | — |
case-12 | fail→pass | 11,956 | 11,907 | -0% | 1 | 1 | 0% | 2,061 | 2,758 | +34% | 0 | 0 | — |
case-21 | pass→pass | 21,730 | 23,488 | +8% | 1 | 1 | 0% | 3,535 | 4,952 | +40% | 0 | 0 | — |
case-13 | fail→pass | 7,830 | 10,165 | +30% | 1 | 1 | 0% | 1,627 | 2,608 | +60% | 0 | 0 | — |
case-14 | pass→pass | 17,920 | 10,197 | -43% | 1 | 1 | 0% | 2,880 | 2,933 | +2% | 0 | 0 | — |
case-15 | pass→fail | 13,597 | 10,063 | -26% | 1 | 1 | 0% | 2,133 | 2,305 | +8% | 0 | 0 | — |
case-16 | pass→pass | 12,040 | 13,407 | +11% | 1 | 1 | 0% | 1,898 | 2,816 | +48% | 0 | 0 | — |
case-17 | fail→pass | 11,083 | 10,374 | -6% | 1 | 1 | 0% | 1,806 | 2,429 | +34% | 0 | 0 | — |
case-18 | fail→pass | 13,327 | 14,065 | +6% | 1 | 1 | 0% | 2,311 | 3,748 | +62% | 0 | 0 | — |
case-19 | fail→pass | 16,452 | 10,153 | -38% | 1 | 1 | 0% | 3,015 | 2,640 | -12% | 0 | 0 | — |
case-20 | pass→pass | 15,452 | 21,567 | +40% | 1 | 1 | 0% | 3,344 | 5,231 | +56% | 0 | 0 | — |
case-22 | pass→pass | 19,111 | 26,980 | +41% | 1 | 1 | 0% | 3,783 | 5,345 | +41% | 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 +32 percentage points is the difference between those two pass rates over the 22 comparable cases. 3 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.