Skip to content
Get started

Resolve Spec Conflicts

Castaly builds from the Project Spec. Before implementation starts, it checks whether the Spec contradicts itself. If it finds a conflict, Build stops before code changes and Castaly asks you to clarify the right direction.

This is not a failure state. It is a safety check that keeps Castaly from building against requirements that disagree with each other.

Build needs one source of truth

Castaly can only build reliably when the Spec points to one clear product definition.

Conflicts are caught before code

When possible, Castaly stops before implementation starts, so nothing half-built is left behind.

AI suggests ways forward

Castaly explains the conflict and offers suggested resolutions so you usually only need to choose or clarify.

You stay in control

Resolving a conflict updates the Spec and Graph, but Build still waits for you to press Build again.

  1. You press Build

    Build starts with a check against the current Project Spec, not code generation.

  2. Castaly checks the Spec

    Castaly looks for requirements that contradict each other, such as two sections describing different login rules.

  3. Conflicts block Build if found

    If conflicts exist, the Project enters Build blocked and Castaly shows a Conflict Card in Chat.

  4. A clean Spec continues to Build Plan

    If no conflicts are found, Castaly generates the Build Plan for you to review and accept.

If Castaly discovers a Spec conflict while a Build is already running, it uses the same resolution flow: the Project becomes Build blocked, Chat becomes available again, and the affected Graph nodes show Blocked.

A Conflict Card appears in Chat with the title Build is blocked by spec conflicts. One card can contain one or more conflicts.

Conflict title

A short name for the contradiction Castaly found.

Short explanation

A plain-language summary of why the requirements disagree.

Suggested resolutions

Three AI-suggested options, labeled A, B, and C.

Custom answer

A field for your own resolution when none of the suggested options is quite right.

View sources

An expandable source list showing the Spec files and line references that created the conflict.

Progress

The card header shows how many conflicts have been answered, such as 1 / 3 answered.

When there are only one or two conflicts, they are expanded by default. With three or more, Castaly opens the first one and keeps the others collapsed so the card stays readable.

  1. Read the explanation

    Start with the conflict title and short explanation to understand what Castaly needs you to decide.

  2. View sources if needed

    Open View sources when you want to see the Spec files and lines behind the conflict.

  3. Choose or write a resolution

    Pick A, B, or C, or write a Custom answer if you want a different rule.

  4. Resolve every conflict item

    Each conflict needs an answer before Apply resolutions becomes available.

  5. Apply the resolutions

    Click Apply resolutions to let Castaly update the Spec and Graph from your choices.

You can also use Use recommended answers to select Castaly’s recommended option for each open conflict. It only selects the answers; it does not apply them until you confirm.

Use Keep editing when you are not ready to apply the full card.

  • If you answered some conflicts, Castaly applies those selected resolutions and returns you to Chat.
  • If you have not answered anything, Castaly simply returns you to Chat so you can clarify in your own words.
  • The card becomes part of the Chat history, so its state is preserved when you return later.
  1. Castaly updates the Spec

    Your selected or custom answers are written into the Project Spec.

  2. The Graph updates

    Affected Graph nodes update from the revised Spec, and resolved conflict state is reflected in the workspace.

  3. The Conflict Card is saved

    The card stays in Chat history and shows the final answers you applied.

  4. You press Build again

    Castaly does not automatically restart Build. Press Build again when the updated Spec and Graph look right.

SurfaceWhat you see
Project statusBuild blocked
ChatA Conflict Card titled Build is blocked by spec conflicts
GraphAffected nodes show Blocked
Build PlanNot generated until the Spec conflict check passes
Not Build failed

Build failed means implementation, tests, or deployment broke after execution started.

Not Preview failed

Preview failed means Castaly could not prepare the running preview.

Not Configuration required

Configuration required means a runtime secret is missing. It does not block Build or Preview.

Not a code error

A Spec conflict is a requirements problem. Castaly needs a clearer definition before it can safely build.

Next: Start a Build explains how a clean Spec becomes a Build Plan.