Skip to content

M18 — Per-rule toggles for the wand #47

Description

@julia-shtal

Context. rules.ts already carries // TODO(post-v1): per-rule toggles.

Scope

  1. settingsStore / userData/settings.json: add
    wandRuleToggles: Record<ruleId, boolean>, defaulting every existing rule
    id (including M17's new quote rule) to true if the field is absent —
    this must be backward-compatible with settings files written before this
    task existed.
  2. Settings view: new subsection listing each rule by its existing name
    field with a checkbox.
  3. The wand's invocation path filters rules by the enabled ids before
    folding — runRules/the wand transaction builder should only see enabled
    rules.
  4. Confirm with Julia: does adding this optional field require bumping
    SETTINGS_SCHEMA_VERSION per the project's schema-versioning convention
    (../src/shared/schema.ts), or is an additive/backward-compatible field
    exempt? Don't guess — ask before shipping.

Acceptance criteria

  • Disabling a rule and running the wand skips exactly that rule; all
    others still apply.
  • Fresh install / pre-existing settings file with no wandRuleToggles
    field behaves identically to current (all-rules-on) behavior.
  • Toggles persist across restart like every other setting.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions