summaryrefslogtreecommitdiff
path: root/DomainDig/AppVersion.swift
Commit message (Collapse)AuthorAgeFilesLines
* chore: cut v5.0.0 release (version bump)v5.0.0Christian Cleberg10 days1-1/+1
| | | | | | | | | | | | | Bumps the app to 5.0.0 now that all four v5.0.0 workstreams have landed: - AppVersion.current 4.9.0 -> 5.0.0 - MARKETING_VERSION 4.9.0 -> 5.0.0 across all targets (app, widget, share extension, and both test bundles) - CURRENT_PROJECT_VERSION 44 -> 45 across all targets - RELEASE_ROADMAP.md: v5.0.0 marked shipped, "Current version" -> v5.0.0 The three version sources are kept in lockstep, matching the v4.4.1 alignment policy. App Store archive/submit remains a manual step outside the repo.
* chore: bump to v4.9.0; record the release in the roadmapv4.9.0Christian Cleberg13 days1-1/+1
| | | | | | | | | | | | | | | | | | MARKETING_VERSION 4.8.3 -> 4.9.0 and CURRENT_PROJECT_VERSION 43 -> 44 across all targets, with AppVersion.current aligned — the three-way consistency v4.4.1 established. The roadmap gains the v4.9.0 entry: the full accessibility pass (#21 phases 0-5 — semantic colours, light mode and the appearance setting, Dynamic Type reflow and tap targets, VoiceOver, colour independence and motion/transparency), the audit harness with seeded fixtures and the engaged enforcement ratchet, the manual verification checklist, and Swift 6 language mode adoption (#27). Deferred device passes are named rather than implied. The v5.0.0 "establish a test target" bullet is rewritten to match reality: a UI test target now exists with an enforcement gate; what remains for v5.0.0 is unit coverage of the deterministic core.
* v4.8.3: Clear SonarCloud new-code issuesChristian Cleberg2026-07-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the 4 reported bugs and ~97 code smells flagged in the new-code period. No behavior changes. Bugs (swift:S3923) — DomainInspectionService's confidenceFor* helpers each returned `error == nil ? .low : .low`, an inert conditional. Simplified to `return .low` and dropped the now-unused `error` parameter. Smells: - Merged 14 identical `.empty`/`.error` switch branches in DomainViewModel - Consolidated duplicate implementations (clearPresentedResults/reset, String.nonEmpty/nilIfEmpty, ExportFormat.id/fileExtension) - Extracted nested ternaries into TLSGrade.tone, EmailSecurityGrade.tone, and ChangeImpactClassification.color; removed ContentView.impactColor and the duplicate mapping in BatchResultsView - Documented empty closures and singleton inits - Marked unused protocol-conformance parameters `_` - Renamed CloudSyncTrigger.`import` to `imported` (raw value preserved) and SSLSessionDelegate's _serverTrust/_tlsMetadata - Merged nested ifs in the DER parser; flattened closure nesting in PortScanService and IntegrationService - Replaced two-case switches with if/else Left open: S107 (init parameter counts), S115 (constants mirroring DoH and ipapi JSON keys), S1075 (false positives on https:// literals), and two S117 hits on SwiftUI $binding shorthand. These want a Won't Fix resolution in SonarCloud, not a code change.
* v4.8.2: Bump version and mark shipped in roadmapv4.8.2Christian Cleberg2026-07-201-1/+1
| | | | | | | | Bump AppVersion/marketing version to 4.8.2 and build number to 42 across the app, widget, and share extension targets. Mark v4.8.2 (delivery visibility for disabled integrations, forced queue retries, unreachable-domain reporting, Swift 6 concurrency warnings, synced StoreKit configuration) shipped in RELEASE_ROADMAP.md and record the UAT follow-ups as resolved.
* v4.8.1: Bump version and mark shipped in roadmapChristian Cleberg2026-07-201-1/+1
| | | | | | | | Bump AppVersion/marketing version to 4.8.1 and build number to 41 across the app, widget, and share extension targets. Mark v4.8.1 (scheduled report tap target, completed Pro gate, markdown underline rendering, DNS record dedup, inspect tab keyboard behavior) shipped in RELEASE_ROADMAP.md, and note the three follow-ups filed during UAT.
* v4.8.0: Bump version and mark shipped in roadmapChristian Cleberg2026-07-201-1/+1
| | | | | | | Bump AppVersion/marketing version to 4.8.0 and build number to 40 across the app, widget, and share extension targets. Mark v4.8.0 (markdown/PDF export, scheduled reports, stronger share affordances, verified local API consistency) shipped in RELEASE_ROADMAP.md.
* v4.7.0: Bump version and mark shipped in roadmapv4.7.0Christian Cleberg2026-07-171-1/+1
| | | | | | | 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.
* Implement v4.6.0: sweep Live Activity, share extension, iPad split view, ↵Christian Cleberg2026-07-171-1/+1
| | | | | | | | | | | | | | | | actionable notifications - Sweep Live Activity: SweepActivityAttributes (Shared/), lock-screen + Dynamic Island UI in the widget extension, driven by SweepActivityController wired into the batch pipeline (begin/update/end); NSSupportsLiveActivities in Info.plist. - Share extension (DomainDigShareExtension): accepts a web URL from the share sheet, extracts the host, and hands it to the app via the App Group inbox (DomainDigShareInbox); the app consumes it on activation and inspects it. - iPad layout: RootTabView uses NavigationSplitView in the regular size class and the tab bar in compact. - Actionable notifications: per-domain threadIdentifier grouping, a Re-inspect action, and tap routing into the domain detail via the intent router. - Bump version to 4.6.0 (build 38) across app, widget, and share targets.
* DomainDig v4.5.0: Add App Intents, Shortcuts, and a domaindig:// deep linkChristian Cleberg2026-07-161-1/+1
| | | | | | | | | | | - Add InspectDomainIntent that runs the headless inspection pipeline and returns a summary for Shortcuts, Spotlight, the Action button, and Siri - Add AddToWatchlistIntent that opens the app and tracks a domain through the existing premium-checked path via an in-process router - Register the domaindig:// URL scheme with inspect/watch deep links routed in RootTabView (onOpenURL) - Expose both intents through DomainDigShortcuts (AppShortcutsProvider) - Bump AppVersion/marketing version to 4.5.0 and build number to 37
* DomainDig v4.4.1: Consolidate Audit Mode and remove the CLI targetv4.4.1Christian Cleberg2026-07-161-1/+1
| | | | | | | | | | | - Make DomainDig/DomainDig/Audit* the single active Audit Mode implementation (models, views, exporter) with an Audit tab and session/export UI - Include audit sessions in backup/restore lifecycle counts, summaries, and merge behavior via DomainDataPortabilityService - Remove the DomainDigCLI target, source file, scheme, and all project references; keep the shared inspection/report pipeline for the app - Align AppVersion.current to 4.4.1 and refresh README/architecture docs - Add RELEASE_ROADMAP.md
* feat(v3.6.0): add iCloud sharing for workflows and tracked domainsChristian Cleberg2026-04-231-1/+1
| | | | | | | | | | | | | | | | - implement CloudKit sharing (CKShare) for TrackedDomain and DomainWorkflow - support read-only and editable permissions - add Share actions and shared state indicators in UI - handle shared record ownership and participant roles - implement deterministic conflict resolution to prevent duplication - ensure compatibility with existing iCloud sync layer - maintain local-first behavior with graceful offline handling - remove debug logging for domain availability/rdap messages notes: - no custom backend or accounts introduced - sharing is Apple ecosystem only (iCloud-based) - large history data remains local-only
* feat(v3.4.0): add backup, restore, and data portabilityChristian Cleberg2026-04-231-1/+1
| | | | | | | | | | | • introduce versioned DomainDig backup format • add full backup export/import with merge and replace modes • implement data validation and conflict handling • add partial exports for tracked domains, workflows, and history • add Data Portability settings section • support Files/iCloud Drive import and export • harden migrations for evolving local models • extend CLI with backup export and validation
* feat(v3.2.0): add Data+ tier and external data integrationsChristian Cleberg2026-04-221-2/+2
| | | | | | | | | | - introduce Data+ tier for advanced data features - add ownership history and DNS history - expand subdomain discovery with external sources - add domain pricing insights - implement local usage/credit system - integrate external data service layer with rate limiting - extend export and CLI for Data+ features
* feat(v3​.1​.0): add ​Store​Kit integration and ​Pro tierChristian Cleberg2026-04-221-1/+1
| | | | | | | | | • implement Purchase​Service using StoreKit 2 • activate feature tiers based on entitlement • add minimal paywall and restore flow • enforce free-tier limits with upgrade paths • integrate Pro status into settings • ensure clean and non-intrusive monetization flow
* feat(v3.0.0): unify platform architecture and introduce feature tiersChristian Cleberg2026-04-221-1/+1
| | | | | | | | | | | * consolidate DomainReport as canonical data model * add feature tier system (free/pro/data+ scaffolding) * apply clean feature gating across workflows and tracking * refactor app structure for maintainability * standardize navigation and settings * add data lifecycle controls * ensure consistency across UI, export, and CLI * stabilize internal inspection API
* feat(v2.9.0): add risk scoring and deterministic insight engineChristian Cleberg2026-04-221-1/+1
| | | | | | | | | * introduce domain risk assessment with transparent factors * add insight engine for actionable observations * implement cross-domain insights for workflows * improve DNS, subdomain, email, and TLS interpretation * classify change impact severity * include insights and risk in export
* feat(v2.8.0): add workflows and repeatable inspection automationChristian Cleberg2026-04-221-1/+1
| | | | | | | | | | * introduce DomainWorkflow model and persistence * add WorkflowsView and execution flow * support batch inspection via workflows * add workflow-based export (TXT/CSV/JSON) * enable bulk add from history/watchlist * add quick actions for common operations * integrate workflows with tracking and history
* feat(v2.7.0): add provenance, confidence, and reproducibility metadataChristian Cleberg2026-04-221-0/+7
* add result provenance across major sections * introduce confidence levels for ambiguous outputs * distinguish observed facts from inferred summaries * expand snapshot metadata for reproducibility * improve error classification and partial snapshot handling * include provenance and confidence in export * add local notes for tracked domains and history