---
title: "Decision options and limits checker"
type: "skill"
url: "https://useaiblocks.com/skills/constrained-decision-auditor"
updated: "2026-10-28"
first_published: "2026-10-25"
job: "Think it through and decide"
tested: true
licence: "MIT"
source: "https://github.com/magnus919/agent-skills/tree/92c327e525da69c9ad3812fd223a1770e977c2e3/constrained-optimization"
instructions: "https://useaiblocks.com/skills/constrained-decision-auditor/SKILL.md"
---

# Decision options and limits checker

> Bring options, rules and evidence. Get a check of which choices meet the rules and what remains unknown.

Share the decision, options, rules and evidence. It checks each option against the rules and reviews the numbers and open questions.

Free skill for the job "Think it through and decide" · Level: intermediate · Thinking: medium · Tested · Updated 2026-10-28

## Links

- Page: https://useaiblocks.com/skills/constrained-decision-auditor
- Instructions (SKILL.md): https://useaiblocks.com/skills/constrained-decision-auditor/SKILL.md
- All files (zip): https://useaiblocks.com/skills/constrained-decision-auditor.zip
- JSON version: https://useaiblocks.com/skills/constrained-decision-auditor.json
- In your AI: connect https://useaiblocks.com/mcp and ask "Use AI Blocks to get constrained-decision-auditor"

## What it does

Bring goals, limits and candidate choices. Check the math, then get a decision with clear proof limits.

## What you give it

- Your decision variables, with units and bounds.
- Your goals, and whether each should go up or down.
- Your hard limits (must hold) and soft preferences (nice to have).
- Candidate solutions you want checked.
- Solver status, bound or log (optional).
- The name of the person who owns the decision (optional).

## What you get

- A written problem with units, limits and tolerances.
- A feasibility check of each candidate, done again from scratch.
- The worst limit violation for each candidate.
- A clear note on whether the result is proven best, or only the best found.
- A chosen solution or tradeoff set, with an owner and a recheck trigger.

## Example: what goes in and what comes out

### What goes in

- Your decision variables, with units and bounds
- Your goals and which way each should go
- Your hard limits and soft preferences
- Candidate solutions you want checked
- Solver status, bound or log (optional)

### What comes out

- **Formulation record**: Variables, units, goals, hard and soft limits, tolerances, the feasibility check and the compute budget, written before any solving.
- **Baselines**: A known feasible choice and a simple comparison, with what each one proves and does not prove.
- **Solution audit**: Each limit and goal recomputed from the returned choice, with the worst violation and whether it is feasible.
- **Solver evidence**: Solver status, bound or gap, run time and open unknowns, kept apart from the feasibility result.
- **Decision**: The chosen feasible solution or Pareto set, with the tradeoff reason and the owner.
- **Recheck trigger**: What would make you re-run the optimization or roll back the decision.

## Use it when

- A solver or spreadsheet gave you an answer and you want to check it before acting.
- You must pick between several plans that all have to meet a budget, capacity or time limit.
- Two goals pull against each other and you need to see the tradeoff.
- Someone says a result is optimal and you want to know if that is proven.

## Skip it when

- You need to fit a statistical model or test a cause. Ask a data scientist or a stats tool instead.
- You want to train or tune a machine learning model. Use an ML engineer or your ML tool's tuning guide.
- You need help running a named solver or cloud service. Follow that tool's own guide, then bring the result here to audit.

## How to use it

1. Open Claude, ChatGPT or Gemini. Paste the skill text into the chat. No code or paid tool is needed.
2. Paste your variables, units, bounds, goals and limits. List any candidate solutions and solver status.
3. Ask your AI to write the formulation record first. Check that it matches your real problem.
4. Ask it to audit each candidate and recompute every limit. If a fact is missing, it should say so, not guess.
5. Read the decision and the open unknowns. Share the owner and recheck trigger with your team before you act.

## What to do next

- [Decision checklist runner](https://useaiblocks.com/skills/decision-checklist-runner): Decide what to do
- [Decision backup planner](https://useaiblocks.com/skills/decision-tripwire-planner): Decide what to do
- [Third option finder](https://useaiblocks.com/skills/third-option-finder): Decide what to do

## Sources and credits

- From magnus919: https://github.com/magnus919/agent-skills/tree/92c327e525da69c9ad3812fd223a1770e977c2e3/constrained-optimization, shared under the MIT licence (original name: constrained-optimization).
- [constrained-optimization skill](https://github.com/magnus919/agent-skills/tree/92c327e525da69c9ad3812fd223a1770e977c2e3/constrained-optimization), magnus919: Original instructions and supporting files, with attribution and the MIT licence. Display copy describes the task.

## Instructions (SKILL.md)

## Constrained optimization

Use this methodology to turn an optimization request into a defensible decision record.

<!-- needs: written by tools/add-needs.mjs for AI Blocks; not part of the original skill. Edit that tool, not this section. -->
### Before you start
Use the material below to do this job. If facts or tool access are missing, explain what you can finish and what must wait.

**What you need** (use your own material or the linked skill):
- **Your question** (yours): the decision or problem, and what a good outcome looks like.

**Makes it better (optional):**
- **A spreadsheet** (yours): a spreadsheet with its data, formulas and charts.

How to start:
1. **Look first.** Use what they've already attached, pasted or put in their about-me note. In a coding assistant with file access, look in the project too for these by name.
2. **Check what's missing.** Look for your question, a spreadsheet. They can attach files, paste the details, or share a file path your assistant can read. Ask only for missing facts that change the result. If they ask you to start with what they have, complete the parts you can and mark the gaps.
3. **Do the job.** Follow the skill below with the facts and tools you have. Mark each gap with `MISSING:` where it belongs and never invent a fact to fill it.
<!-- /needs -->

### Workflow

1. **Frame the decision.** Name the decision maker, feasible action window, variable domains (continuous, integer, categorical, binary), bounds, units, and whether each variable is controllable.
2. **State objectives.** Write objective direction, units, aggregation, baseline, and acceptable tradeoffs. Keep multiple objectives separate until a decision maker chooses weights, lexicographic priority, epsilon constraints, or a Pareto review.
3. **Classify constraints.** Mark each as hard (must hold), soft (preference with an explicit penalty or relaxation), or informational. Define equality/inequality tolerance, feasibility predicate, and how violations are measured. Never hide a hard violation in a penalty score.
4. **Establish baselines.** Validate a known feasible incumbent, a simple exact or bounded baseline where available, and a heuristic baseline when exact solving is impractical. State what each baseline proves and does not prove.
5. **Choose the method.** Match solver family to domains, smoothness, scale, and proof needs. An exact solver can establish optimality or a bound when its status and gap support it; a heuristic supplies a candidate and empirical evidence. Do not call timeout or unknown an infeasible result.
6. **Run a fair comparison.** Fix an objective/constraint implementation, feasibility checker, compute budget, stopping rule, and reporting schema. For stochastic methods, use equal budgets and declared seeds/repeats. Keep solver configuration separate from the formulation.
7. **Independently validate.** Recompute objective and every constraint from the returned decision using an independent implementation or checker. Report feasible-best, violation magnitude, bound/gap, status, runtime, and unresolved unknowns separately.
8. **Decide and monitor.** Select a feasible solution or Pareto set with the tradeoff rationale, sensitivity/robustness evidence, owner, and rollback/re-optimization trigger. Record “infeasible under these constraints” only when infeasibility is proven or independently certified.

### Routing and exit

Load `references/formulation-and-evidence.md` for formulation, feasibility, solver status, bounds/gaps, and comparison rules. Load `references/multiobjective-and-robustness.md` for Pareto decisions and stochastic sensitivity. Use [the formulation record](templates/formulation-record.md) to define the problem before solving, and [the solution audit](templates/solution-audit.md) to verify a returned candidate.

This skill owns decision formulation and evidence. Route statistical estimation, causal questions, and uncertainty models to `data-scientist`; route ML hyperparameter/model training optimization to `ml-engineering`; route operation of a named solver or cloud service to its tool skill. Stop when variables, objective units, hard constraints, feasibility checker, or budget are undefined. Complete when the formulation and solution audit record the decision, supporting evidence, unresolved limits, and owner.

For the official solver-result references and their version/applicability limits, read [the source index](references/source-index.md).

### When not to use

Do not use this skill for inferential statistics, causal inference, or statistical model fitting. Do not use it for ML training/model selection methodology or for solver-specific installation and runbooks.

<!-- next: written by tools/add-needs.mjs for AI Blocks; not part of the original skill. Edit that tool, not this section. -->
### After this
When you've handed it back, suggest what they could do next in one short question. It's a suggestion: if they're done, that's fine. Offer these, and say they can type their own:
- The [Decision checklist runner](https://useaiblocks.com/skills/decision-checklist-runner). It takes the plan and audit report.
- The [Decision backup planner](https://useaiblocks.com/skills/decision-tripwire-planner). It takes the audit report.
- The [Third option finder](https://useaiblocks.com/skills/third-option-finder). It takes the plan.
If they pick one and that skill is added here, carry straight on with what you just made. If not, give the link and say what to bring.
<!-- /next -->
