Recommendations

Every change to the model triggers a full analysis pass. SpecLogician turns the results of that pass into prioritized, actionable recommendations — concrete next steps for whoever is driving the loop, whether a developer or an LLM coding agent.

Where recommendations come from

Recommendations are derived from the analysis artifacts the reasoning engine produces, not from heuristics:

  • Coverage gaps — complement decomposition surfaces (state, action) regions no scenario covers, each described by precise constraints and a sample model.
  • Reachability violations — a --bad scenario that is reachable (a safety violation) or a --goal scenario that is unreachable (a liveness violation) becomes a high-priority item, accompanied by the relevant path or disconnection.
  • Contradictions and overlaps — scenarios whose predicates conflict, subsume one another, or leave intent ambiguous are flagged for resolution.
  • Validity issues — predicates or transitions that fail to type-check against the domain base.
  • Evidence gaps — formal components with no linked requirement, test, or trace, and traces that no scenario explains.

Built for the refinement loop

Because each recommendation points at a specific component or region, it maps directly onto an edit:

  • add a guard predicate or fix a transition to block a violation path,
  • add a missing scenario to cover an uncovered region,
  • relax over-constrained predicates so a goal becomes reachable,
  • or link a component back to the evidence that justifies it.

Recommendations are surfaced in the dashboard (ranked by priority) and in CLI output, and progress metrics — such as scenarios_valid_pct and reachability_pct — give a clear target to optimize toward. For the iteration patterns that put these recommendations to work, see Workflows.