Skip to content

feat: Target Groups, Cloud Policy channel, Profiles, and layout reorg - #19

Merged
dernerl merged 2 commits into
mainfrom
feature/cloud-policy-target-groups
Aug 18, 2026
Merged

dernerl merged 2 commits into
mainfrom
feature/cloud-policy-target-groups

Conversation

@dernerl

@dernerl dernerl commented Aug 18, 2026

Copy link
Copy Markdown
Owner

Summary

  • Target Groups: maintain extra favorites for a specific audience (e.g. an Entra group) alongside the base set, either merged in as a subfolder or replacing the base set for that audience.
  • Cloud Policy output: documents/exposes the Edge management service's Cloud configuration policy as a third deployment channel (per-profile, cross-platform) next to GPO/Settings Catalog JSON and Intune macOS Plist.
  • Profiles: multiple fully independent environments (e.g. "OnPrem", "HomeOffice") in one app, each with its own favorites, target groups, and toplevel name. Existing users migrate into a "Default" profile automatically on first launch after updating.
  • Layout reorg: Add Favorite/Add Folder moved into the Favorites tab's header row, Copy/Export moved into the output panel's header row, toolbar now holds only Import actions and the active profile's name. Left pane is now a Favorites/Target Groups tab switch; output panel shows one format at a time (JSON/Plist/Cloud Policy/one tab per non-empty Target Group) instead of stacking every card.

The layout was iterated on with the user via a design mockup before implementation (see linked issues for the reasoning behind the per-profile Cloud Policy channel).

Closes #18. Closes #15. Closes #16.

Test plan

  • swift build succeeds clean
  • App launches and runs without crashes or logged errors, including migrating a pre-existing SwiftData store (Favorite/TargetGroup rows without profileID) into a new Default profile
  • Manual click-through of the new UI (profile switch/rename/delete, tab switching, target group merge vs. replace export, Plist export, Cloud Policy copy) — recommended before/after merge since this session could not capture screenshots to visually confirm

🤖 Generated with Claude Code

Adds a lightweight second favorites tree ("Target Group") for a specific
audience alongside the base set, exported either merged in as a subfolder
or replacing the base set for that audience. Also documents/exposes the
Edge management service's Cloud Policy as a third deployment channel next
to GPO and Intune plist — it's the only one of the three that isn't
device-wide, since it resolves per signed-in profile.

Closes #18.
The Target Groups screen from the previous commit made the single-column
layout too crowded once the base favorites, target groups, and every output
format were all stacked and visible at once. Redesigned collaboratively
(mockup iterated on a design canvas) into a tabbed layout, and folded in the
two other open GUI issues while touching this anyway:

- Profiles (#15): independent named environments (own favorites, target
  groups, toplevel name), switchable from a left-hand rail. Existing users
  migrate into a "Default" profile on first launch.
- Layout reorg (#16): Add Favorite/Add Folder moved into the Favorites tab's
  header row, Copy/Export moved into the output panel's header row, toolbar
  now holds only Import actions and the active profile's name.
- Left pane is now a Favorites/Target Groups tab switch instead of stacking
  both permanently; the output panel shows one format at a time (JSON /
  Plist / Cloud Policy / one tab per non-empty Target Group) instead of
  stacking every card.

Closes #15. Closes #16.
@dernerl
dernerl merged commit a0ddeb9 into main Aug 18, 2026
1 check passed
@dernerl
dernerl deleted the feature/cloud-policy-target-groups branch August 18, 2026 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant