Skip to content

Complete v4.5.0: Run Sweep intent, detail deep link, and portfolio widget#4

Merged
ccleberg merged 2 commits into
mainfrom
feat/v4.5.0-remainder
Jul 17, 2026
Merged

Complete v4.5.0: Run Sweep intent, detail deep link, and portfolio widget#4
ccleberg merged 2 commits into
mainfrom
feat/v4.5.0-remainder

Conversation

@ccleberg

@ccleberg ccleberg commented Jul 17, 2026

Copy link
Copy Markdown
Member

Finishes the v4.5.0 "Home Screen & Shortcuts reach" scope. The v4.5.0 tag shipped only the intents slice; this delivers the deferred pieces so the tag can be moved to represent the full release.

What

  • Run Sweep intentRunSweepIntent opens the app and runs refreshAllTrackedDomains() via the in-process router; exposed in DomainDigShortcuts.
  • Deep links — extends domaindig:// with sweep and domain (detail). .detail presents TrackedDomainDetailView; .sweep refreshes the watchlist. DomainDigDeepLink moved to Shared/ so the widget can build links.
  • Portfolio widget — a WidgetKit extension (DomainDigWidgetExtension) with small/medium/large widgets showing portfolio health counts, per-domain status, and certificate countdowns. Tapping a domain deep-links into its detail.
  • App Groupgroup.net.cleberg.DomainDig. The app writes a DomainDigWidgetData snapshot on launch/foreground and on watchlist changes and reloads timelines; the widget reads the same store.
  • Docs: roadmap + README updated to reflect shipped v4.4.1/v4.5.0.

Widget target

Added widget extension wiring (embed phase, target dependency, App Group entitlements, Shared/ sync group compiled into both targets).

Verification

  • xcodebuild build (scheme DomainDig, iOS 26 sim) → BUILD SUCCEEDED; widget compiles under APPLICATION_EXTENSION_API_ONLY=YES and embeds in DomainDig.app/PlugIns/.
  • Installed + launched on simulator: no crash (App Group entitlement OK); confirmed the app writes valid widgetData JSON to the group.net.cleberg.DomainDig container that the widget reads.

Note

Deferred to a later minor: Lock Screen accessory widget families.

ccleberg added 2 commits July 17, 2026 00:27
…dget

Finishes the v4.5.0 "Home Screen & Shortcuts reach" scope that the tag shipped
partially:

- Add RunSweepIntent (opens the app and runs refreshAllTrackedDomains via the
  in-process router) and expose it in DomainDigShortcuts.
- Extend the domaindig:// scheme with `sweep` and `domain` (detail) actions;
  route .detail to present TrackedDomainDetailView and .sweep to refresh the
  watchlist. Move DomainDigDeepLink into Shared/ so the widget can build links.
- Add a WidgetKit extension (DomainDigWidgetExtension) with small/medium/large
  Portfolio widgets showing health counts, per-domain status, and certificate
  countdowns; tapping a domain deep-links into its detail.
- Share portfolio state via an App Group (group.net.cleberg.DomainDig): the app
  writes a DomainDigWidgetData snapshot on launch/foreground and on watchlist
  changes and reloads timelines; the widget reads the same store.
Update RELEASE_ROADMAP.md to show v4.4.1 and v4.5.0 as shipped (with the actual
delivered scope), set the current version to v4.5.0, and note the deferred Lock
Screen widget families. Refresh the README release target to v4.5.0.
@sonarqubecloud

Copy link
Copy Markdown

@ccleberg ccleberg self-assigned this Jul 17, 2026
@ccleberg ccleberg added the enhancement New feature or request label Jul 17, 2026
@ccleberg
ccleberg merged commit 065e1e7 into main Jul 17, 2026
2 checks passed
@ccleberg
ccleberg deleted the feat/v4.5.0-remainder branch July 17, 2026 05:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant