Buyer-journey artifact rebuilt
Rebuilt the stale buyer-journey artifact so the acceptance suite and publish readiness read the same bytes a sale would ship.
Every entry is a real change from the product's git history, dated the day it landed. Nothing here is a promise about the future — the roadmap below each entry says what is next, without dates we do not have.
Rebuilt the stale buyer-journey artifact so the acceptance suite and publish readiness read the same bytes a sale would ship.
The HTML report now renders through the shared brand/report theme — consistent typography and styling across the product family.
Every run now writes an HTML + Markdown report the buyer can keep, print and forward, and every finding says what to do next — including the honest "no compatible release exists; ask the vendor for a date".
Same day: the demo is now produced by running the product (a demo run is evidence, not an illustration), the shipped zip matches the source it was committed with, and a fleet-sweep typo that could mislabel every shop as conflicted was fixed and covered by a test.
The product stopped being called "Preflight". The paid deliverable was rewritten to retire the earlier engagement framing, an MIT licence was added, and a buyer-journey acceptance suite (33 tests) was wired to the publish gate.
The free hosted checker went live: paste a composer.lock, get the per-plugin report server-side. No install, nothing stored (counters only).
A CONFLICT now splits into "fixable by plugin update" vs "genuinely blocking": the tool asks Packagist and the Shopware store whether a target-compatible release exists, and says honestly when it cannot answer.
The first working version: a declared-state reader (composer.lock + custom/plugins), a 37-rule composer-semantics evaluator, per-plugin verdicts with the excluding constraint quoted, a CLI with human and JSON output, honest limits, and a demo shop that exercises every verdict.
composer update --dry-run executor — the definitive check, run safely.The source of this page is the product's git history. If you spot a change that is not listed, the fix is in the repo, not in a promise.