Skip to content

Add bounded admin performance monitor - #235

Merged
mehul0810 merged 2 commits into
release/1.8.0from
feature/139-admin-performance-monitor
Aug 11, 2026
Merged

Add bounded admin performance monitor#235
mehul0810 merged 2 commits into
release/1.8.0from
feature/139-admin-performance-monitor

Conversation

@mehul0810

Copy link
Copy Markdown
Collaborator

Closes #139

Summary

  • add an opt-in Admin Performance Monitor toggle and dedicated report
  • aggregate admin page, registered AJAX, REST, and cron-adjacent timing, peak memory, and query counts
  • show repeated contexts with explicit review thresholds and next-step guidance
  • provide an administrator-only, nonce-protected clear action
  • retain desktop and 390px report screenshots in hosted WordPress smoke proof

Privacy and overhead boundaries

  • disabled by default; disabled mode registers no capture hooks and performs no report writes
  • no SAVEQUERIES, query text, full URLs, query arguments, payloads, IPs, usernames, emails, or nonces
  • invalid or unregistered AJAX action identifiers become unknown-action
  • per-site non-autoloaded storage, 14-day retention, hard cap of 50 aggregate contexts
  • no frontend/cache behavior changes or automatic remediation

Validation

  • 118 PHP tests / 338 assertions
  • 26 JavaScript tests
  • PHP lint and scoped PHPCS
  • PHPStan
  • JavaScript and CSS lint
  • production frontend build
  • Studio read-only proof: disabled, zero contexts, 14-day/50-context contract, no storage option created
  • hosted WordPress desktop/mobile, clear, disabled/enabled, and lower-privilege proof required before merge

@github-actions

github-actions Bot commented Aug 11, 2026

Copy link
Copy Markdown

WordPress Playground Preview

The changes in this pull request can previewed and tested using a WordPress Playground instance.

Open WordPress Playground Preview

@mehul0810

Copy link
Copy Markdown
Collaborator Author

Hosted validation is green on head 9966788904a7a61b61d96c380d2b6732bcd754b2.

Visual-proof review:

  • The first green smoke artifact revealed that the six-column report clipped important content at 390px.
  • Follow-up 9966788 replaced the narrow table with readable per-context cards.
  • Fresh run 31456877571 passed and produced desktop/mobile screenshots; both were manually reviewed. Desktop retains the compact table, mobile exposes every metric and guidance without document overflow.

Additional local proof under the required Node 24 runtime:

  • JS lint: pass
  • CSS lint: pass
  • JS unit tests: 26/26 pass
  • production frontend build: pass
  • git diff --check: pass

@mehul0810
mehul0810 merged commit 18b22f2 into release/1.8.0 Aug 11, 2026
13 checks passed
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.

1 participant