Skip to content

CONV-109: Preserve settings state during navigation#117

Merged
menvil merged 1 commit into
developfrom
feature/CONV-109-preserve-settings-state-during-navigation
May 31, 2026
Merged

CONV-109: Preserve settings state during navigation#117
menvil merged 1 commit into
developfrom
feature/CONV-109-preserve-settings-state-during-navigation

Conversation

@menvil

@menvil menvil commented May 31, 2026

Copy link
Copy Markdown
Owner

CONV-109 — Preserve Settings State During Navigation

Component-local cache so settings survive settings → format → settings for the same target.

  • New optionsByTarget map; rememberCurrentOptions() snapshots $options under the current target when leaving for the format step.
  • selectTargetFormat restores cached options for a returning target, otherwise re-initializes defaults — so switching targets still resets incompatible options.
  • Cache cleared on file remove/replace/back-to-upload. No DB persistence, no presets.

Tests

  • same target restores edited options.quality
  • different target resets to its defaults (no Background color leak)
  • file preserved navigating settings → format

composer test (230), lint, build pass.

🤖 Generated with Claude Code


Summary by cubic

Preserves settings when navigating between Settings and Format for the same target format, so user edits aren’t lost. Implements CONV-109.

  • New Features
    • Adds a per-target options cache (optionsByTarget) scoped to the component; no persistence.
    • Snapshots options on step changes and restores them when returning to the same target; re-initializes defaults when switching targets to avoid leaks.
    • Clears cached options when the file is removed/replaced or on back-to-upload.

Written for commit c774f0e. Summary will update on new commits.

Review in cubic

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@menvil menvil merged commit c7699a2 into develop May 31, 2026
@menvil menvil deleted the feature/CONV-109-preserve-settings-state-during-navigation branch May 31, 2026 17:29
@coderabbitai

coderabbitai Bot commented May 31, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • release

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 878f29b0-126b-4945-998b-544117ba9216

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/CONV-109-preserve-settings-state-during-navigation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant