Idea: undelete / trashbin using beforestorage

Hey folks, after spending some time last week having to programmatically undo some accidental content deletions using zc.beforestorage and ZEXP exports to tempfiles in a run-script, I was thinking... How feasible would it be to create a user experience that leveraged beforestorage + ZEXP in a general way, allowing a time-bombed recovery window?

Everything I did to recover my users' content could be triggered from a user-action, provided a manifest of deleted paths and metadata (e.g. copied catalog brain content) was kept (hello, IObjectRemovedEvent subscriber), and individual items could be selected. This is probably a facility needing restriction to managers in the site root.

Insane? If not, this might be a good late addition to the GSoC idea list, or something that could turn into a PLIP?

Sean

@seanupton,
I like... but.... to get this into GSOC now, I'd recommend that you write up a PLIP and plan on this being an addon before making it to core, also plan to be a mentor on the project.
You can borrow ideas from recent pips here: https://github.com/plone/Products.CMFPlone/issues?q=is%3Aopen+is%3Aissue+label%3A"03+type%3A+feature+(plip)"