Skip to content

Fix file system sync issues, add granular encryption storage and clea…#76

Open
Amoghhosamane wants to merge 1 commit into
gjwgit:devfrom
Amoghhosamane:Amogh-dev
Open

Fix file system sync issues, add granular encryption storage and clea…#76
Amoghhosamane wants to merge 1 commit into
gjwgit:devfrom
Amoghhosamane:Amogh-dev

Conversation

@Amoghhosamane

@Amoghhosamane Amoghhosamane commented Jul 7, 2026

Copy link
Copy Markdown

Pull Request Details

Description

This PR addresses several bug fixes and feature requests reported in #66:

  • Location delete/unlink leaves stale media-to-location records: Fixed by invalidating cache and notifying the file browser upon media pod service index updates.
  • Cache/Notification Sync Issue: Fixed by triggering directory changes when recursive deletes happen.
  • Granular Encryption Storage: Refactored the storage logic to split the single aggregate encrypted location file into individual smaller files (enc_place_<uuid>.ttl) under data/encrypted_data/. Added a backward-compatible migration path that automatically loads, splits, and removes the legacy aggregate encrypted_places.ttl file if found.
  • Debug 'Clear All Pod Data' Button: Added a dedicated debug action under settings that recursively clears all files and containers in the user's Solid Pod root (preserving /profile to avoid broken sessions), and logs the user out.

Related Issues

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How To Test?

  1. Cache & Directory Sync:
    • Link a location to a media item and then unlink/delete the location. Check that the file browser view updates instantly without stale data.
  2. Granular Encryption Storage:
    • Save multiple encrypted places. Verify on your Solid Pod server that they are stored as separate granular files (e.g., enc_place_<uuid>.ttl).
    • Place a legacy encrypted_places.ttl on the Pod, then run the app. Verify that the app successfully parses, migrates it to individual files, and deletes the old aggregate file.
  3. Clear All Pod Data:
    • Navigate to Settings and click the red Clear All Pod Data (DEBUG) button. Verify that it wipes all data files on the server (except /profile), logs out, and redirects to login.

Checklist

  • Screenshots included here/in linked issue #
  • Changes adhere to the style and coding guidelines
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • Any dependent changes have been merged and published in downstream modules
  • The update contains no confidential information
  • The update has no duplicated content
  • No lint check errors are related to these changes (make prep or flutter analyze lib)
  • Integration test dart test output or screenshot included in issue #
  • I tested the PR on these devices:
    • Android
    • iOS
    • Linux
    • MacOS
    • Windows
    • Web
  • I have identified reviewers
  • The PR has been approved by reviewers

Finalising

  • Merge dev into the this branch
  • Resolve any conflicts
  • Add a one line summary into the CHANGELOG.md
  • Push to the git repository and review
  • Merge the PR into dev
    '@

2. Write body to a temporary file

Set-Content -Path "pr_body.md" -Value $body

3. Create the PR using GitHub CLI

gh pr create --title "Fix file system sync issues, add granular encryption storage and clear all pod data button #66" --body-file pr_body.md --base dev --head Amogh-dev

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Minor Bug Fixes and Feature Enhancements for File System & Storage

1 participant