summaryrefslogtreecommitdiff
path: root/RELEASE_ROADMAP.md
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-07-17 10:47:27 -0500
committerChristian Cleberg <[email protected]>2026-07-17 10:57:30 -0500
commit54c151e22f8a5d4d7a9c290e79fc7626415f7083 (patch)
treeded06427abb211f40c0144935dddb0a55ee35de6 /RELEASE_ROADMAP.md
parentfbf2d9bf2cf50eb681afe18deac06a96c04004e6 (diff)
downloaddomain-dig-4.7.0.tar.gz
domain-dig-4.7.0.tar.bz2
domain-dig-4.7.0.zip
v4.7.0: Bump version and mark shipped in roadmapv4.7.0
Bump AppVersion/marketing version to 4.7.0 and build number to 39 across the app, widget, and share extension targets. Mark v4.7.0 (comparison, reputation, tags/saved views) shipped in RELEASE_ROADMAP.md and escalate the overdue XCTest-target gap ahead of v5.0.0.
Diffstat (limited to 'RELEASE_ROADMAP.md')
-rw-r--r--RELEASE_ROADMAP.md31
1 files changed, 21 insertions, 10 deletions
diff --git a/RELEASE_ROADMAP.md b/RELEASE_ROADMAP.md
index c6dd564..dd07fa9 100644
--- a/RELEASE_ROADMAP.md
+++ b/RELEASE_ROADMAP.md
@@ -6,7 +6,7 @@ ports, geolocation, subdomains, availability). The next several releases invest
in *reach and surfacing* — getting that data onto more iOS surfaces and into more
workflows — rather than adding raw protocol checks.
-Current version: `v4.6.0`.
+Current version: `v4.7.0`.
## v4.4.1 Patch: Release Readiness — ✅ shipped
@@ -50,15 +50,23 @@ Goal: make monitoring and results feel first-class across contexts.
Deferred: monitoring-alert Live Activities (only the sweep activity shipped) and
Lock Screen accessory widget families (carried over from v4.5.0).
-## v4.7.0 Minor: Intelligence & Comparison
+## v4.7.0 Minor: Intelligence & Comparison — ✅ shipped
Goal: help users interpret and organize, not just collect.
-- **Domain-vs-domain comparison** (side-by-side), extending the existing
- time-based `DiffService` to compare two distinct domains.
-- **Reputation / blocklist signals** as a new optional data source (currently
- absent); surfaced in the report and available to monitoring alerts.
-- **Tags / folders and saved views** for the watchlist to organize large sets.
+- **Domain-vs-domain comparison** — `DiffService.compare(domainA:domainB:)`
+ reuses the existing section-diff builders; `DomainCompareView` (Watchlist
+ toolbar → "Compare Domains") picks two tracked domains and renders the result
+ with the existing diff section UI.
+- **Reputation / blocklist signals** — a new pluggable data source
+ (`ExternalDataService.reputation(domain:)`, Pro+) mirroring the existing
+ ownership/DNS-history/pricing enrichment pattern. Ships with no bundled
+ third-party endpoint; folds a listed status into risk score/factors and
+ insights, so it rides the existing report and monitoring change-severity
+ pipeline rather than needing bespoke monitoring wiring.
+- **Tags and saved views** for the watchlist — freeform tags per tracked
+ domain, tag filter chips, and named saved filter/sort/tag presets
+ (UserDefaults-backed; not yet part of backup/restore).
## v4.8.0 Minor: Reporting & Sharing
@@ -88,6 +96,9 @@ feature releases above will accumulate.
## Cross-cutting note
New feature surfaces (widgets, intents, extensions) each add a target and a
-persistence/entitlement seam. Add at least characterization tests for
-`DomainDataPortabilityService` and the report builders **before** v4.7.0, so the
-v5.0.0 contract and refactor work has a safety net rather than starting from zero.
+persistence/entitlement seam. This project still has **no XCTest target** —
+v4.5.0 through v4.7.0 all shipped without the characterization-test safety net
+originally recommended before v4.7.0. That gap is now larger (comparison,
+reputation, and tags/saved-views all touch persisted models with hand-written
+backward-compatible decoders) and should be the very first thing v5.0.0 does,
+not a later item within it.