What if Shopware did not have to boot again on every request? FrankenPHP worker mode is built for that, and it is a separate choice from using FrankenPHP as the web server. I compared it with PHP-FPM on Admin searches and on a music shop with real product photos. The speedup is real. It just does not show up on every page.
AI made code cheap. Trust is not. The old review ritual still pretends a careful human can keep up by reading harder. Then a green test suite lies to you, a 32k-line PR asks for a blessing, and a professional-looking diff hides the real risk. Quality was never living in the scroll bar. The real question is why the system should trust the change at all when attention runs out.
Most teams treat OpenAPI as documentation. This experiment treats it as an executable contract. Every endpoint, every response, every error is validated against the spec automatically. This post explains the testing concept, the metadata system, and the CI pipeline behind it.
The lie is acting like go-live is the full price. After launch: sprawl, upgrades, toy SaaS math vs margin, an eight-point kit, AI speed vs liability, and why skipping tests is luck not engineering.
Running multiple Shopware message workers during indexing causes deadlocks on the product table. This guide explains why, walks through the pitfalls of Symfony Messenger routing, and shows how to configure a dedicated indexer transport consumed by a single worker.
Shopware 6.7 moved caching from the Store-API route layer to the HTTP layer. The old CacheTagsEvent events are deprecated. This guide covers what changed, how to add and invalidate cache tags the new way, how to handle dynamic content via AJAX, and what pitfalls to avoid.