MyVault Release Notes
All releases are archived here. Current version: v1.8.4 (2026-05-16).
v1.8.4
2026-05-16
1. New features
- Custom Date Picker: A new year/month/day triple-column scroll wheel design with independent scrolling and automatic adaptation of days per month.
- Smart Visibility for Analytics: Analytics modules are now automatically hidden when data is empty to keep the interface clean.
- Cloud Sync Toggle Confirmation: Added a secondary confirmation mechanism for the Cloud Sync switch to effectively prevent accidental toggling.
- Chart Sharing: Charts in the Analytics page now support direct sharing as images.
2. Bug fixes
- Fixed occasional crashes when toggling the Cloud Sync switch in specific scenarios.
- Resolved an issue where the search bar was occasionally missing in the brand and category selectors.
- Eliminated potential thread safety hazards related to CoreData.
- Fixed an issue where iCloud backup page content was being blocked by system components.
- Resolved compilation warnings related to dSYM and AudioSession.
3. Experience optimizations
- Brand Selector Upgrade: Introduced segmented controls and search optimizations for faster brand discovery.
- Style Unification: Standardized the text styles for batch operation mode status.
- Search & Visual Optimization: Improved the search experience for purchase channel management and refined the visual layout of the PDF export page.
v1.8.3
2026-05-13
1. New features
- Batch Action Mode: Added a new batch operation settings page; Pro users can now enable long-press multi-select mode to manage multiple assets at once.
- Brand Library Expansion: Added logos for Oral-B, Laifen, Braun, Beizi, Chanel, Gucci, JD.com, and more; the brand selector now fully utilizes native iOS list components.
- Purchase Channel Expansion: Added icons for JD.com and Pang Dong Lai; unified Pinduoduo channel naming.
- Record Management Enhancement: Added individual deletion for asset storylines and maintenance records, including confirmation dialogs to prevent accidental deletions.
- iCloud Device Sync: Added a cross-device sync list to view and manage authorized sync devices.
- Tag Management Optimization: Tag addition is now handled via a top-right button popup for a more intuitive experience.
- Share App: Added a share button in Settings for one-tap sharing of the App Store link.
- Multilingual Permission Prompts: Added localized EN/ZH copy for app permission requests.
2. Bug fixes
- Fixed missing title and prompt text in the tag addition popup.
- Cleaned up deprecated brand resource files to eliminate potential loading issues.
- Synchronized CoreData data model updates to ensure database structure consistency with code.
3. Optimizations
- Brand Selector Refactor: Fully migrated from a custom layout to native iOS list components for improved fluidity and system consistency.
- Import Result Page Visual Upgrade: Statistics now use large monospaced fonts, failure details are highlighted in red, and buttons feature rounded shadows.
- Category Editing Improvement: Moved to a standalone editing page that supports separate EN/ZH names and icon selection.
- Multilingual Copy Expansion: Added over 60 localized strings covering scenarios such as batch actions, record deletion, and category editing.
- iCloud Device Management Enhancement: Supports swipe-to-delete for non-current devices, with real-time deletion sync to the cloud.
- Asset Depreciation Icon Update: Replaced the depreciation status icon with a more intuitive downward trend icon.
- App Launch Stability: Optimized the view refresh mechanism during persistent container reconstruction.
v1.8.2
2026-05-12
1. New features
- Local Notification System: Introduced
LocalNotificationServicesupporting weekly log reminders, holding duration milestones (1 week/month/6 months/anniversary), and iCloud backup success/error push notifications. - Depreciated Value Field: Added
depreciatedValuethroughout the app—Add/Edit interface, CSV import/export, and data models. - Lifecycle Status Expansion: Added support for gifted date, lost date, and depreciated date; status is automatically inferred during import.
- Category Template Library: Introduced
CategoryTemplateLibrarywith 17 built-in categories (Photography, Audio, Luxury, Bags, Jewelry, Watches, Vehicles, Home, Appliances, Sports, Outdoor, Collectibles, Precious Metals, Art, etc.), including icons, colors, aliases, and Pinyin. - Pro Membership Value Propositions: Added four-dimensional value cards covering Limitless Management, Deep Insights, Seamless Sync, and Exclusive Perks.
- Subscription Disclosure & Legal Links: Added subscription disclosure card (auto-renewal terms) and Privacy Policy/Terms of Use buttons to the Pro upgrade page.
- Share App: Added a share button in Settings to share the App Store link via the system share sheet.
- Batch Action Toggle: Added a toggle in Settings to enable batch operations; long-press to enter multi-select mode.
2. Optimizations
- Pro Upgrade Page Refactor: Extracted
purchaseSectioninto an independent view handling five loading states; addedlegalDisclosureview. - Authentication Manager: Added
isAuthenticatingto prevent duplicate prompts; fixed biometric cancellation behavior; added device-auth-based passcode reset. - Simplified Edit Interface: Changed status selection from a popup confirmation to a direct dropdown Menu.
- Enhanced CSV Import/Export: Import headers now support multi-alias mapping for depreciated value/status dates; Export headers are fully localized (20+ keys); automatic iCloud sync trigger after import.
- UI Refinement: Added ZStack background to purchase channel settings; English category names only show if different from localized names; unified Dashboard card APIs; adaptive text scaling; data clearing sorted by dependency.
- Localization: Added 100+ EN/ZH strings covering Pro descriptions, notification settings, CSV headers, depreciation labels, etc.
3. Bug fixes
- Auth Flow: Prevent redirect to passcode entry when Face ID/Touch ID is cancelled; added
isAuthenticatingdebounce. - LocationManager: Thread-safe completion callbacks via
deliverCompletion. - holdingDays Calculation: Unified usage of
item.resolvedHoldingDays()instead of manual calculation. - Dead Code Cleanup: Removed unused variables/methods in
EditItemView,SettingsView, andBrandManagementView. - Paywall Parameter Fix: Dynamic variable for cloud sync lock source instead of hardcoded string.
v1.8.1
2026-05-09
1. New features
- DailyCostCurveCard: a brand-new chart that visualizes daily asset or expense changes with instant linear/log toggles.
2. Feature optimizations
- Dashboard: rebuilt layout for higher FPS, sticky time filters, smarter card order, better AllocationChartCard grouping (by category/city, etc.), upgraded AssetCurveSummaryCard visuals, smoother AnalysisMetricToggle interactions, and faster Overview / Status / Cycle analysis cards.
- ViewModels: DashboardViewModel processing is now far richer (+103 LOC) and ItemListViewModel manages list data with improved caching + transforms.
- Lists: ItemListFilterComponents were redesigned, AssetOverviewCard expanded with new display modes (+621 LOC), and ItemListView + ItemRowComponents received cleaner layouts.
3. Bug fixes
- Resolved AppPreferences issues plus ContentView layout regressions.
- Localization pass added/fixed 18 EN strings and 46 Simplified Chinese strings.
4. Technical improvements
- Net code growth of +540 lines across 21 files (+952 / -412).
- Theme engine now swaps seamlessly between light/dark.
- Localization now unifies on the
.l()helper.
v1.8
2026-05-08
1. Experience polish
- Dashboard experience: the time filter bar now sticks to the top, cards were rearranged, and asset-metric math moved onto background threads so switching time ranges or fiscal years remains smooth.
- Global search performance: asset lists gained index + dictionary maps, new range / time filters, and a 250 ms debounce to avoid heavy recompute while typing.
- File import flow: template download, paginated history, live progress logs, and Pro entitlement reminders make every import step and error state transparent.
- Storage space panel: added breakdowns for PDF, certificates, database, cache, and photos with one-tap cleanup plus a background scanner to tally usage in real time.
- Pro upgrade entry: surfaces your status (Free / Monthly / Annual / Lifetime) and falls back through product lookups when StoreKit hiccups to keep the purchase button active.
- Asset detail layout: asset ID and status chips now share one row, copy confirmation animates more clearly, and the delete action sits inside a full-width danger zone at the bottom for consistency.
2. New capabilities
- Asset curve modes: toggle linear vs. logarithmic trends under Settings → Personalization and see charts respond instantly.
- Security settings module: manage Face ID, Touch ID, numeric passcodes, or the “no passcode” mode independently with guided verification + setup flows.
- Asset identity overlay & Storyline tools: pop open certificates, preview/share PDFs, and write stories inside a dedicated modal editor.
- Local image & export cleanup: the new image manager stores / deduplicates asset photos, while a weekly scheduler reclaims exported files to prevent bloat.
3. Bug fixes
- Settings component references: co-located
SettingsRowand friends to resolve “Cannot find SettingsRow” compile errors. - Import field validation: normalized CSV / Markdown headers and halt imports when name or price is missing, avoiding silent failures.
- Subscription status refresh: when StoreKit product batches fail we retry per item and listen for transaction updates to keep membership states current.
v1.7
2026-04-27
1. Feature polish
- Asset overview card: Net Worth now mirrors the value of assets currently in use, quantity shows “Total / In Use”, and the Net Worth copy is left-aligned with Total Assets.
- Asset detail page: the date range renders once instead of per section, and brand logos/info/maintenance cards auto-switch palettes in dark / black-gold themes to avoid white-on-white.
- Asset Storyline: redesigned as an expandable / collapsible timeline list, every item carries an automatic timestamp, and the empty state adds helper text plus a “+” shortcut to add stories.
- Maintenance record card: includes a “+” entry button for quick creation and shows a “No maintenance records yet” hint when empty.
2. New capabilities
- Import failure breakdown: after an import, highlight rows missing names, invalid prices, duplicated within the file, or already existing in the library so issues can be fixed faster.
- Storyline entry composer: introduced
StorylineEntryComposerso multiple story records can be written and saved directly from the detail view.
3. Bug fixes
- Asset card / grid status restore: list and grid views once again display badges, now backed by
normalizedStatusto work with legacy data. - Asset detail & edit status: initialization and display logic now share the same source to keep both pages consistent.
- Import format conflict: renamed the duplicated
FormatCardcomponent toImportFormatCardto resolve compile errors. - App icon bundle: removed duplicate “xxx 2.png” assets inside the AppIcon set to clear the “unassigned children” warnings.
- Brand logo backgrounds: force brand logos with white backgrounds to stay neutral in the black-gold theme for visual consistency.
v1.6
2026-04-21
1. Cloud Sync & Settings
- New Cloud Sync sub-page consolidates sync status, account state, recent success/failure logs, plus backup & restore entry points.
- Sync toggle is smoother with fewer UI hitches and a timeout fallback.
- Settings copy refresh: “Asset display” → “Asset views”, “Card/Grid mode” renamed, visuals now align with the Cloud Sync page.
2. File Import flow
- Slimmer layout with centered CTAs, bilingual template download text, and paginated import history.
- After import you can jump straight back to Home to review results.
- Purchase-date parsing handles more formats for better compatibility.
3. Asset view modes
- Introduced Card, Grid, and Minimal views with automatic preference memory.
- Status icons unified across card/grid; “In Use” gains a subtle breathing animation, Minimal view spacing tightened.
4. Analytics
- Asset curve switches to a single-line filter mode.
- Card order and status readouts tweaked for clearer trends.
5. Asset editing
- Added the missing Status field and standardized the page title to “Edit Asset”.
6. Stability & localization
- Lower crash risk on launch, stronger persistence handling, more resilient import + sync flows.
- More complete EN / ZH localization plus visual alignment between Settings and Cloud Sync.
7. Notes
- Cloud Sync still depends on the device’s iCloud / CloudKit environment; extremely unusual date formats may still require manual fixes.
v1.5
2026-04-17
1. Item input & editing
- Added a brand-search modal with curated filtering, auto category suggestion, and themed icons.
- Purchase info refresh: channel / city pickers + custom input, city history suggestions, and formatted price fields.
- Photo block moved to row one with unified thumbnail chips and delete control.
- “Additional notes” renamed to “Asset Story Log” (EN / ZH localized).
- Tag / space fields now respect Settings toggles and auto-clear data when disabled.
2. Batch Edit
- Batch views reuse the brand-search modal, dynamically show tag / space sections, and drop the legacy batch-location field.
- BatchEditPayload / Service now pivot on SpaceNode & TagSet data, writing back to the brand library.
- City history + custom chips added for parity with the single-item form.
3. Brand system
- Brand schema expanded with English, Chinese, pinyin, and logo metadata for normalized search.
- CSV import normalizes brand names and prioritizes logo matches.
- Brand manager redesigned with tighter rows, multilingual search, “My / Disabled” tabs, and full metadata propagation.
4. Settings & preferences
- Added a space-management toggle, tighter layout, and selectors (language / theme / currency) that collapse after selection.
- Global thousands-separator toggle for currency display across cards and pickers.
5. Other UX polish
- ImagePicker and Maintenance sheets now match Add Item behavior.
- FileImportView dedupe + auto backfill for brands, categories, and locations.
v1.0
2026-03-24
- Asset management: create, edit, and delete records.
- Classification system: categories, tags, brand library, spaces, and locations.
- Asset photos: capture via camera or import from photo library.
- Maintenance logs for repairs, cleaning, upgrades, etc.
- Analytics: total value, averages, daily cost, category stats.
- Purchase calendar, global search, batch operations.
- CSV import, e-commerce link parsing, AI photo capture.
- Backup / restore via
.zip, plus data export.
v0.1
2026-02-27
- Project kickoff: core information architecture, asset model, and Local-First principles defined.