Add safe optimization history and rollback foundation
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 5
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
Summary
Add a safe optimization history and rollback foundation for Perform actions that change site behavior or stored settings.
This should become the shared safety layer before deeper optimizers are allowed to change database, autoload, scheduled task, or asset behavior.
Why this matters
Performance tools can break sites when changes are hard to trace or reverse. Perform should record what changed, when it changed, who changed it, and how to roll back where possible. This also creates a better support and release-readiness story for advanced performance modules.
Proposed scope
- Add an internal optimization event log for Perform-managed changes.
- Record:
- module/action
- timestamp
- initiating user ID
- high-level before/after summary
- rollback availability
- validation notes or warnings
- Add a small admin UI for recent optimization history.
- Define a rollback interface modules can implement.
- Add clear confirmations for write actions.
- Keep storage bounded and clearable.
Acceptance criteria
- Existing safe settings changes can record an event without changing their public behavior.
- The history screen lists recent Perform-managed changes.
- The framework supports rollback-capable and non-rollback-capable events.
- Sensitive values are not exposed in the event log.
- Data can be cleared by an administrator.
- Tests cover event creation, retention, permissions, clearing, and sensitive-value redaction.
Notes
This issue should be implemented before any advanced optimizer starts making database or option-write changes automatically.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the existing safe settings changes and the plugin’s admin UI entry points. Define the event history, rollback interface, confirmations, bounded storage, permissions, clearing, and sensitive-value redaction around those flows. Done means recent changes are listed, supported events can indicate rollback availability, and the stated acceptance tests pass without changing existing public behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php, wordpress
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100