An imported binned wiki page whose 30 days are up gets a week from the day it arrives (Q142 / X4) #1055

Closed
opened 2026-10-03 23:40:30 +00:00 by claude-bot · 1 comment
Collaborator

Follow-up to #1009 (PR #1016). Owner's decision, 2026-10-03 (Q142, option a; to be recorded as D270).

Today. An import puts a binned wiki page straight into the bin, keeping the day it was binned. A page binned 29 days before the export and imported a few days later arrives already overdue. The import does not delete it, but the nightly clean-up does on its next run, which could be minutes later.

Decided. A page whose bin time is already up when it arrives gets a week from the day of the import. A page that still has time left keeps its original day. The GM who imports a campaign gets a chance to look in the bin before anything in it is destroyed.

Build.

  • At import, for a wiki_bin page whose deleted_at plus the bin's grace is already in the past at the moment of the import, set its effective destruction to seven days after the import. Check how the purge computes "due" first: it may be simplest to store an adjusted deleted_at, or a separate "not before" stamp. The bin's list must show the date the purge will actually use.
  • Tests: an overdue page survives a purge run straight after the import and goes after seven days; a page with 20 days left, and one with 2 days left, are unchanged (only a page already overdue gets the week); the bin shows the right "going on" date for both.
  • Docs: docs/API.md's export/import section, and the decisions table (D270).
Follow-up to #1009 (PR #1016). **Owner's decision, 2026-10-03 (Q142, option a; to be recorded as D270).** **Today.** An import puts a binned wiki page straight into the bin, keeping the day it was binned. A page binned 29 days before the export and imported a few days later arrives already overdue. The import does not delete it, but the nightly clean-up does on its next run, which could be minutes later. **Decided.** A page whose bin time is already up when it arrives gets **a week from the day of the import**. A page that still has time left keeps its original day. The GM who imports a campaign gets a chance to look in the bin before anything in it is destroyed. **Build.** - At import, for a `wiki_bin` page whose `deleted_at` plus the bin's grace is already in the past at the moment of the import, set its effective destruction to seven days after the import. Check how the purge computes "due" first: it may be simplest to store an adjusted `deleted_at`, or a separate "not before" stamp. The bin's list must show the date the purge will actually use. - Tests: an overdue page survives a purge run straight after the import and goes after seven days; a page with 20 days left, and one with 2 days left, are unchanged (only a page already overdue gets the week); the bin shows the right "going on" date for both. - Docs: `docs/API.md`'s export/import section, and the decisions table (D270).
rbrooks referenced this issue from a commit 2026-10-04 00:07:07 +00:00
Author
Collaborator

Done in PR #1059, merged to main on 2026-10-04 with CI green. D270 is recorded (PR #1056).

  • Behaviour. An imported binned page that is already overdue at the moment of the import gets seven days from the import. A page with any time left keeps its original day.
  • Storage. No migration: the page is stored with an adjusted deleted_at, so the date the bin shows is the date the purge uses. The stamp is still set in the INSERT.
  • Re-export. A re-export and re-import does not extend it again.
  • One known trade-off, written in docs/API.md: an extended page's stored binned date is not the day it was really binned.

It reaches dev with the next prerelease.

Done in PR #1059, merged to main on 2026-10-04 with CI green. D270 is recorded (PR #1056). - **Behaviour.** An imported binned page that is already overdue at the moment of the import gets seven days from the import. A page with any time left keeps its original day. - **Storage.** No migration: the page is stored with an adjusted `deleted_at`, so the date the bin shows is the date the purge uses. The stamp is still set in the INSERT. - **Re-export.** A re-export and re-import does not extend it again. - **One known trade-off**, written in `docs/API.md`: an extended page's stored binned date is not the day it was really binned. It reaches dev with the next prerelease.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
rbrooks/Quest-Board#1055
No description provided.