Feat/automated tests#4
Merged
Merged
Conversation
Document Alpha local stack (Docker + Cloudflare Tunnel), sandbox checklist, and dev/woocommerce compose with woo-lomi bind-mount. Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce run-plugin-tests.sh as the single CI entry point: static parity checks, webhook HMAC contract, Bubble JSON smoke, and Woo build + release zip validation. Add standalone CI workflow on the plugins repo. Co-authored-by: Cursor <cursoragent@cursor.com>
The default checkout token cannot clone the private plugin submodules (bubble, odoo, shopify), which made `submodules: recursive` abort the whole checkout. run-plugin-tests.sh only needs woo (the Bubble JSON smoke test skips gracefully when that submodule is empty), so init the public submodules explicitly. Co-authored-by: Cursor <cursoragent@cursor.com>
verify-lomi-plugins.sh hard-required the shopify and bubble submodules, which are private and not checked out in CI. Guard those platform checks with plugin_present so the public surface (woo, prestashop, magento) is validated in CI while private platforms are validated where available, matching the Bubble JSON smoke test's existing skip behavior. Co-authored-by: Cursor <cursoragent@cursor.com>
Points woo to b825271 (lomiafrica/woo#9), which declares react/react-dom as build-time devDependencies so the automated Woo build passes in CI. Co-authored-by: Cursor <cursoragent@cursor.com>
This was referenced Jun 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes lomiafrica/lomi.#39 (epic lomiafrica/lomi.#45).
Introduces a single CI entry point —
run-plugin-tests.sh— that goes beyond staticverify-lomi-plugins.shwith structured smoke tests for webhooks, Bubble JSON, and the Woo release zip.Depends on: #44 (
docs/dev-environment) — merge that PR first or rebase this branch onto it.What’s new
scripts/run-plugin-tests.shscripts/test_webhook_signature.mjsscripts/test_bubble_json.mjs*.jsonunderbubble/must parsescripts/test_woo_release_zip.shnode_modules, required paths present).github/workflows/ci.ymlsubmodules: recursive)Test matrix
run-plugin-tests.shruns, in order:verify-lomi-plugins.sh— API contract,integration_source, XOF, branding, legacy brand scan, broken imagespnpm install,build,i18n,release.sh, zip inspectionFlags:
--fast— steps 1–3 only (no Woopnpm build)--skip-woo— skip step 4 explicitlyDocs
README.md— documentsrun-plugin-tests.shas the pre-PR gateE2E.md— links automated suite vs manual E2E matrixFollow-up (monorepo)
After merge, bump the
apps/pluginssubmodule pointer in lomiafrica/lomi. and land the pending workflow updates:.github/workflows/app-ci-plugins.yml→run-plugin-tests.sh.github/workflows/app-ci-woo.yml→ same (replaces separate verify + build steps)Out of scope
LOMI_API_KEY) — stays on Bubble release workflowDEV-ENV.md/E2E.mdTest plan
submodules: recursive)./scripts/run-plugin-tests.shpasses locally on Linux/macOS./scripts/run-plugin-tests.sh --fastpasses without Woo buildnode_modulesorresources/leak into the archive