Key favorites by z/OSMF profile#64
Merged
Merged
Conversation
Favorites were one global namespace, so a DSN favorited on one system showed up on every other profile's listing. Each favorite now carries the profile it was saved under, every store operation scopes to the active profile's view, and the same pattern can exist independently per profile. The empty profile is the shared view: it is what single-profile sessions write and what favorites saved before keying existed carry, so nothing vanishes on upgrade — legacy entries stay visible (and removable) from every profile. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CS2LZMn2YJdebAiry2jzdP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Favorites were a single global namespace: a DSN favorited on
prodstarred (uselessly) onsandbox, and jumping to it fetched a listing that likely doesn't exist there.Favoritegainsprofile(JSONomitempty); every store operation (Favorites/Matches/Toggle/Add/Rename/SetNote/Remove/Touch/Has) takes the profile and operates on that profile's view.favorites.jsonentries carry, so nothing disappears on upgrade. Shared entries are visible from every profile; removing one removes it everywhere (documented onRemove/Toggle).activeProfile()through all ten call sites; the popup, row markers, toggle, and open/jump actions all follow the active profile automatically on tab switch.Tests: store keying/isolation, same-pattern coexistence with per-profile notes, shared-legacy visibility, reload round-trip, plus a compaz-level test that a favorite toggled under one profile neither stars rows nor appears in the popup after switching profiles.
🤖 Generated with Claude Code
https://claude.ai/code/session_01CS2LZMn2YJdebAiry2jzdP