=== Creaholik Stackwise - Conflicts, Compatibility & Speed Audit ===
Contributors: creaholik
Tags: performance, compatibility, conflict, debug, plugins
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.1.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Find out which of your plugins are fighting each other, duplicating code, or quietly slowing your site down.

== Description ==

Nobody can see what their plugins are doing to each other. Two of them ship different copies of the same library. Three register the same background job. One was abandoned in 2021 and costs 340 milliseconds on every page load. Nothing warns you, because from WordPress's point of view nothing is wrong.

Stackwise reads every plugin on your site and checks it against every other one — and against your PHP version and the WordPress you are running.

**What it finds**

* Two plugins declaring the same function or class, and whether that will white-screen your site or merely make one of them stop working.
* The same library bundled several times over, and which copy actually runs.
* Script and style handles two plugins are fighting over — the usual reason a colour picker or a date field silently stops working.
* Plugins that quietly depend on other plugins, so you know what breaks *before* you deactivate something.
* Scheduled jobs left behind by plugins that were deleted years ago.
* Plugins nobody has updated in years, which is the commonest way a working site becomes an unsafe one.

**What each plugin actually costs**

Stackwise loads your own front page once per plugin, each time with that one plugin switched off, and times the difference. That is a measurement, not an estimate from file sizes — and it changes nothing for your visitors.

**It tells you what to do about it**

Findings are sorted into what is urgent, what is worth doing, and what is fine. Updates come first, because most conflicts are just old versions and updating clears them for free. Every finding that needs a person is written out in plain language, with the actual steps.

**What it will not do**

Stackwise never edits another plugin's files. It reads. Nothing here expires, degrades into a nag, or turns off after a trial — every finding on this page is yours permanently and in full.

**Writing the fix**

Some conflicts can be corrected from outside the plugin, without touching it. Doing that means generating a small PHP file and putting it on your site, which the WordPress.org directory does not allow a hosted plugin to do — so that half of Stackwise is a separate download from creaholik.com. This plugin will tell you which of your findings could be fixed that way. It is information you should have either way.

== External services ==

Stackwise talks to one external service, and only after you connect an account.

**Stackwise Control** — https://creaholik.com

This is our own service. It is what an account, a plan and a generated fix are
administered by. Creating an account is free and optional: everything Stackwise
finds, measures and explains works without one, permanently.

* **Creating an account or signing in.** Your email address and password are
  sent to creaholik.com over an encrypted connection. The password is never
  stored on your site. If you choose Google or GitHub instead, a browser tab
  opens at that provider and no password reaches this site or ours at all.
* **Connecting this site.** Your site address and the Stackwise version are sent,
  so the site can claim one of the seats on your plan. Your site is given a
  token of its own, which works nowhere else and can be revoked on its own.
* **Checking your plan.** Your site address and the plugin version, at most once
  an hour and when you open the Licence tab. The answer is which plan you are
  on and what is left of this month's allowance.
* **Pressing "Write the fix" or "Write my report".** The finding, the names of
  the plugins involved, and a bounded window of the source code around the lines
  in question. That source belongs to publicly distributed plugins. Your
  database, your uploads, your wp-config.php, your posts and your visitors'
  data are never sent.
* **Paying.** Checkout, changing plan and cancelling all happen on Stripe's own
  pages. No card details are entered on your site or ours.

**Helping Stackwise get better (optional, off by default)**

If you switch it on in the Licence tab, Stackwise reports what it found and what
it did, so the same conflict is recognised on the next site rather than worked
out again. Nothing is sent until you do. This
is: which plugins are installed and at what version, the conflicts found between
them, and what Stackwise did about them — fixes written, features switched off,
updates taken or held back.

It never includes your posts, your users, your settings, your uploads or your
own theme or plugin code. It can be switched off again at any time, and a site
that has not connected an account sends nothing at all — not a ping, not a
version, not a count.

Terms: https://creaholik.com/terms — Privacy: https://creaholik.com/privacy-policy

Stackwise also asks WordPress.org for plugin update information through
WordPress's own update APIs, and loads your own site over HTTP to time it. That
loopback request goes to your site and nowhere else.

== Changelog ==

= 1.1.0 =
* The dashboard opens with what to do next, not with a list of findings.
* Nothing reloads the page any more; actions redraw the part they changed.
* Trim, Optimize, the removal check, generated files and cleanup are one tab.
* Accounts: sign in with an email address, Google or GitHub, from the Licence
  tab. Each site holds its own token — there is no licence key to carry around.
* Plans, allowances and feature gates are answered by the service, so an
  upgrade reaches every connected site by itself.
* Every control that spends part of your allowance now says so before you press
  it, including switching a plugin feature off — which always did, silently.
* Optional reporting of what Stackwise finds and does, off unless you connect.

= 0.1.0 =
* First release: symbol collision engine, removal ledger, measured plugin cost.
