What You're Seeing
If ShowSort can't follow every group, link, or routine-duplicate rule you've set up, the show page surfaces this in two places:
- A red exclamation triangle appears in the sticky header at the top of the show page.
- A red banner titled "Hard Constraints Not Satisfied" appears under the show order, listing each rule that isn't being followed.

Clicking the red triangle in the sticky header jumps straight to the banner. Inside the banner, each category name is itself a link to the panel where you can edit those rules.
What Triggers It
The warning only shows up for "hard" rules β rules ShowSort is supposed to follow exactly. There are three kinds today:
- Groups β one or more groups aren't sitting next to each other in the current order.
- Links β a "precedes," "follows," or "neighbors" link can't be followed (for example, the target routine is on the wrong side, or the routines aren't side by side when they're required to be).
- Routine Duplicates β a duplicate pair you flagged in a multi-show isn't being followed in the current order.
Each line in the banner names the specific routine, group, or duplicate that's not being followed, so you can find and fix it quickly.
How to Clear It
- Click the category link in the banner (e.g., Groups, Links, or Routine Duplicates) to jump to the relevant panel.
- Loosen or remove the rule, or adjust the order so the rule can be followed:
- Groups β remove a routine from the group, change which routines belong to it, or move group members so they're next to each other.
- Links β change the relation (e.g., from neighbors to follows), point the link at a different routine, or delete the link.
- Routine Duplicates β adjust which routines are paired, or remove the pairing if it's no longer needed.
- Re-run optimization. The banner clears as soon as every rule can be followed.
Why Hard vs. Soft
"Hard" rules are treated as requirements. Everything else β style spacing, balance, quick changes, families, etc. β is a softer preference that ShowSort tries to do well on but won't refuse to produce an order over. If a hard rule can't be followed (for example, because two rules contradict each other), ShowSort still produces the best order it can and flags the rule it couldn't honor so you can decide how to resolve it.