-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fully delete / wipe remote DWN #805
Comments
should you be able to partial wipe based on a subset of permissions or should wiping be bound only to tenant based activities? i.e I Alice authored 1000 messages to Bob's remote node and has write permission. Can Alice purge records from Bob via wipe or is also, a thought to call it |
@andorsk we are using the word 'prune' already for deep deletes |
Fully deleting and wiping a remote data store are not necessarily the same thing. Wiping removes all content but may leave other metadata, such as the data store identity. That can be a problem when a test shouldn't know a new data store's identity. Fully deleting and starting a new data store avoids this hazard. (I'm particularly sensitive to this effect because it caused me a lot of pain debugging some tests.) |
@andorsk great thoughts. I really appreciate the immediate feedback. Given that @alanhkarp great point! Maybe there's room for multiple methods or a single method with args to allow for toggling partial delete based on some set of permissions and filter vs. full delete vs. wipe/purge. As it stands, I believe I achieved similar results while testing by querying all records available to my DID in my DWN, iterated over them and deleted each one. Then did essentially the same thing for protocols by writing Taking all this into consideration, I think a way to distinguish and outline these feature could be:
Looks like there's already roles for |
Or perhaps
This last case is useful for testing because you don't have to communicate the identity to everyone who needs it for the next test. |
It would be nice, especially for development puposes, to have an easy way to wipe the data store of a remote dwn. @csuwildcat said "We need a command like that, but don't have it." Consider this issue as the starting point for discussion on how to achieve this behavior. My initial idea is something simple: Create a function that proxies the functionality of
web5.dwn.records.query
and runsrecord.delete
on each returned record. Same goes forweb5.dwn.protocols.query
but instead of.delete
do aweb5.dwn.protocols.configure({})
; this could be exposed in @web5/api asweb5.dwn.wipe
. Open to other ideas.The text was updated successfully, but these errors were encountered: