Skip to content

Enable/disable individual recipes and whole blocks (as toggles) #73

Description

@ApocDev

Add the ability to toggle recipes within a block on/off, and to toggle an entire block on/off, so that disabled items are kept in the plan but excluded from the solve and rollups.

Why

Two concrete uses:

  • Comparing alternatives. Keep two recipes for the same output side by side and flip between them to see which is the better path, without deleting and re-adding one each time.
  • Placeholder / staged planning. Sketch out future work but only count what's active for now. For example, a block covering T1–T4 buildings where only T1 is enabled today; T2–T4 stay in place as a visible reminder to come back to, but don't affect rates, building counts, byproducts, or power.

Behavior

  • A disabled recipe stays in the block (still listed, still editable) but is treated as absent by the solver — no contribution to inputs/outputs, building counts, or any rollup.
  • A disabled block stays in the factory (still visible, still openable) but contributes nothing to factory-wide production, byproduct balance, power/pollution, etc.
  • Disabled state is persisted in the store and clearly shown in the UI (e.g. dimmed row/card with a toggle).

Open questions

  • How disabled recipes/blocks interact with byproduct sinks and cross-block matching — presumably they simply drop out of the graph while disabled.
  • Whether the AI assistant should be aware of disabled state (skip it when reasoning, or be able to propose enabling/disabling).

Relates to the block composition epic (#33).

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: plannerProduction block / planning modelarea: webWeb UI (React/TanStack/vite-plus)enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions