Kingsbell 0.8.0 is structured as a release candidate. Repository-level validation and Shopify-native packaging are implemented, but a production release still requires authenticated development-store and browser testing.
Automated quality gates
The release workflow combines:
- a deterministic static theme audit;
- strict Shopify Theme Check;
- JSON and schema validation;
- Shopify-native theme packaging;
- an opt-in Shopify Lighthouse workflow;
- manual development-store and release procedures.
A passing package job does not replace functional, accessibility, performance, account, B2B, or checkout testing.
Static theme audit
scripts/qa-theme.mjs validates:
- required Shopify theme files;
- JSON syntax across templates, locales, and configuration;
- JSON section ordering and section-type references;
- section and theme-block schema JSON;
- positive
tabindex; autofocususage;- browser zoom restrictions;
- raw images without alt attributes;
- parser-blocking external scripts;
- unsafe
_blanklinks; - insecure HTTP references;
- hard-coded core storefront routes;
- Sass and unsupported robots template usage;
- JavaScript and CSS asset budgets;
- required layout objects, language, skip link, and focusable main content;
- product app-block support.
The audit writes:
artifacts/theme-qa-report.jsonCI uploads the report for review.
Theme Check
Theme Check is enforced at suggestion severity in the release workflow.
Run it locally:
npm run checkReview every diagnostic. Suppression should be rare, scoped, documented, and justified by verified Shopify behavior.
Package generation
After static validation and Theme Check succeed, package the theme:
npm run packageThe Phase 8 workflow generates:
Kingsbell-0.8.0.zipOnly Shopify theme directories are included by the packaging command. Repository documentation, QA files, design references, scripts, and companion contracts are outside the package boundary.
Install the generated ZIP into a clean development store. Do not approve the exact package unless the installed artifact—not only the branch preview—passes the release checks.
Lighthouse CI
The repository includes a Shopify Lighthouse workflow with minimum scores of:
- performance:
0.60; - accessibility:
0.90.
The job is controlled by the repository variable:
ENABLE_SHOPIFY_LIGHTHOUSEIt remains skipped until a dedicated benchmark development store and required credentials are configured.
A skipped Lighthouse job is not a passed performance or accessibility test.
Use representative pages for benchmarking:
- homepage;
- collection with filters;
- product with multiple media items and variants;
- cart;
- search results;
- editorial article;
- member page where applicable.
Record the tested URL, theme package, store data, device profile, and date so results can be reproduced.
Manual QA documents
The Kingsbell repository includes:
QA-MATRIX.md— functional, accessibility, responsive, browser, performance, SEO, commerce, editorial, and member-state coverage;DEVELOPMENT-STORE-QA.md— store setup and execution procedure;RELEASE-CHECKLIST.md— release, packaging, security, merchant configuration, publication, and rollback controls.
Use these documents as release records, not informal reminders.
Development-store setup
A useful test store should contain:
- products with single and multiple variants;
- sale, sold-out, unavailable, and unit-price products;
- multiple collections and native filters;
- product media in varied aspect ratios;
- pickup availability where supported;
- articles for every editorial template;
- menus with multiple navigation levels;
- a direct customer;
- a tagged member;
- a B2B customer and company context where applicable;
- representative orders;
- markets, currencies, discounts, and shipping rules used by the target store;
- required app blocks and metaobjects.
Do not validate only with ideal placeholder content.
Functional testing
Verify at minimum:
- navigation, search, predictive search, and customer-account links;
- product media, variants, quantity, errors, and add to cart;
- dynamic checkout configuration;
- cart drawer and cart page synchronization;
- collection and search filters, sorting, pagination, and history;
- recommendations and app blocks;
- newsletter, contact, password, and member-request forms;
- blog tags, article templates, reading progress, galleries, and related reading;
- template assignment and theme-editor save behavior;
- member presentation and authoritative private-commerce enforcement.
Accessibility testing
Automated checks are only the first layer. Manually verify:
- keyboard access to all controls;
- logical focus order;
- visible focus indicators;
- skip-link behavior;
- heading structure;
- labels and errors for forms;
- menu, dialog, drawer, tabs, predictive search, and variant-picker semantics;
- alt text and decorative-image handling;
- colour contrast;
- zoom and reflow;
- reduced-motion behavior;
- screen-reader announcements for dynamic cart and validation states.
Test with at least one desktop and one mobile screen reader before production approval.
Responsive and browser testing
Review representative pages at narrow mobile, wide mobile, tablet, laptop, and large desktop widths.
Test current supported versions of major browsers used by the target customers. Include Safari on iOS because media, sticky layout, focus, and viewport behavior can differ materially from Chromium browsers.
Verify:
- navigation and drawers;
- image crops and focal points;
- long titles and translated text;
- filters and option selectors;
- sticky elements;
- forms and virtual keyboards;
- tables, galleries, and tabs;
- account and checkout entry points.
Performance review
In addition to Lighthouse scores, review:
- largest images and video;
- JavaScript and CSS totals;
- third-party app scripts;
- font loading;
- layout shifts;
- cart, predictive search, filter, and recommendation response behavior;
- repeated initialization in the theme editor;
- mobile network performance.
A visually empty test store produces misleading performance results. Use realistic content and app integrations.
SEO and metadata
Verify:
- page titles and meta descriptions;
- canonical URLs;
- product, collection, article, and organization structured data where applicable;
- social preview metadata;
- heading hierarchy;
- indexability of intended public pages;
- redirects and 404 behavior;
- pagination and filtered URLs;
- no accidental exposure of content intended to be private.
Theme controls cannot make a published product private from every Shopify surface.
Release criteria
Do not advance Kingsbell to 1.0.0 until:
- the packaged theme is installed into a clean development store;
- applicable QA matrix rows are signed off;
- Shopify Lighthouse CI passes against the benchmark store;
- private catalog and checkout enforcement are verified independently from Liquid;
- a tested rollback package exists.
Rollback
Before publication:
- retain the currently live theme;
- record its theme ID and configuration state;
- save the approved Kingsbell package;
- define who can publish or roll back;
- test activation of the previous theme;
- document any app, metafield, metaobject, or catalog changes that must also be reversed.
A theme rollback may not undo backend configuration changes.
Current validation boundary
The repository records completion of deterministic static audit, strict Theme Check, schema validation, and Shopify-native package generation.
The following require a configured store and must be recorded separately:
- Shopify authentication and remote theme interaction;
- interactive browser tests;
- theme-editor save tests;
- real customer, order, market, B2B, and checkout flows;
- Lighthouse measurements;
- BrowserStack or physical-device tests.
Release notes must distinguish completed checks from tests that were skipped or unavailable.