Appearance
Full Editing Manual Matrix
Use this matrix immediately before major merges/releases. It complements automated coverage and explicitly covers flows that are currently skipped in Playwright.
Execution metadata
| Field | Value |
|---|---|
| Build/commit under test | |
| Store under test | |
| Tester | |
| Start timestamp (ET) | |
| End timestamp (ET) |
Status legend
PASS: behavior matches expected result.FAIL: behavior diverges; capture logs/screenshots and block merge.N/A: not applicable for this release; explain why.
Matrix
| ID | Area | Scenario | Expected result | Automated coverage | Manual status |
|---|---|---|---|---|---|
| E-001 | Task setup | Create task with product-level filter only | Task creates and appears in history with correct filter summary | Yes (tests/bulk-tasks/filter-and-controls.pw.spec.ts) | |
| E-002 | Tags | Tags add | Matching products gain tag; non-matching products unchanged | Yes (tests/bulk-tasks/basic-actions.pw.spec.ts) | |
| E-003 | Tags | Tags remove | Tag removed only from matching products where present | Partial | |
| E-004 | Title | Replace title | Title updates to expected value/pattern output | Yes (tests/textFields-flow.pw.spec.ts) | |
| E-005 | Description | Append description | Description appends once, preserves existing content | Yes (tests/textFields-flow.pw.spec.ts) | |
| E-006 | SEO | Replace SEO title | SEO title updates and rollback restores prior value | Yes (tests/textFields-flow.pw.spec.ts) | |
| E-007 | SEO | Replace SEO description | SEO description updates and rollback restores prior value | Yes (tests/textFields-flow.pw.spec.ts) | |
| E-008 | SEO | Replace handle | Handle updates to valid slug and rollback succeeds | Yes (tests/textFields-flow.pw.spec.ts) | |
| E-009 | Vendor | Replace vendor | Vendor updates on all matching products | Partial | |
| E-010 | Product type | Replace product type | Product type updates on all matching products | Partial | |
| E-011 | Status | Set status to draft/active | Status transitions to selected target without user errors | Partial | |
| E-012 | Metafield | Set metafield value | Namespace/key/type/value stored exactly; preview and logs reflect set action | Yes (tests/bulk-tasks/basic-actions.pw.spec.ts) | |
| E-013 | Metafield | Remove metafield | Target metafield removed; unrelated metafields untouched | Partial | |
| E-014 | Collections | Add to manual collection | Product added to selected manual collection(s) | Yes (tests/bulk-tasks/basic-actions.pw.spec.ts) | |
| E-015 | Collections | Remove from collection | Product removed from selected collection(s) only | Partial | |
| E-016 | Price | Set price on all variants | Variant prices updated; compare-at behavior matches configured toggles | Yes (tests/bulk-tasks/basic-actions.pw.spec.ts) | |
| E-017 | Price | Increase/decrease percent and round | Computed values and rounding target match expectations | Partial | |
| E-018 | SKU | Replace SKU with variant filter | Only targeted variants update SKU | Yes (tests/bulk-tasks/sku-and-barcode.pw.spec.ts) | |
| E-019 | Barcode | Append barcode suffix with variant filter | Only targeted variants update barcode | Yes (tests/bulk-tasks/sku-and-barcode.pw.spec.ts) | |
| E-020 | Variant targeting | By number | Only Nth matching variant is edited per product | Yes (tests/bulk-variants/variant-actions.pw.spec.ts) | |
| E-021 | Variant targeting | By option value | Only variants matching option rule are edited | Yes (tests/bulk-variants/variant-actions.pw.spec.ts) | |
| E-022 | Variant add | Add new variant row | New variant created with configured option/price/SKU/barcode fields | Partial | |
| E-023 | Variant edit | Edit existing variant fields | Targeted variant fields update correctly | Yes (tests/bulk-variants/variant-actions.pw.spec.ts) | |
| E-024 | Variant delete | Delete targeted variants | Targeted variants removed; guardrails prevent invalid product state | Yes (tests/bulk-variants/variant-actions.pw.spec.ts) | |
| E-025 | Variant clone | Clone variants/options from source product | Target product variants/options mirror source configuration | Skipped (VA-3) | |
| E-026 | Variants & options | Option rename | Option name changes across targeted products and remains consistent in Admin | Partial | |
| E-027 | Variants & options | Options reorder | Option order changes persist and variant data remains valid | Partial | |
| E-028 | Variants & options | Option values reorder | Value order updates for chosen option and variants remain editable | Partial | |
| E-029 | Filtering | Variant SKU rule in filter builder | Variant SKU field rule works as expected in preview/task targeting | Skipped | |
| E-030 | CSV | Import CSV creates jobs (file upload path) | Valid CSV creates queued jobs and surfaces completion status | Skipped | |
| E-031 | CSV | Import CSV creates jobs (paste flow) | Pasted CSV path creates queued jobs successfully | Skipped | |
| E-032 | CSV | CSV validation errors | Invalid CSV rows return clear validation errors, no jobs created | Partial | |
| E-033 | Preview | Preview count and sample rows | Preview reflects filters/actions and gracefully handles transient count errors | Yes (tests/preview.test.ts, tests/previewTable.action.test.ts) | |
| E-034 | Task history | Rollback completed task | Rollback creates inverse job and restores prior values | Yes (tests/rollback-route.test.ts, tests/rollback.server.test.ts) | |
| E-035 | Billing gate | Usage cap redirect and recovery | Over-cap routes to billing/usage, upgrade returns app to editable state | Partial | |
| E-036 | Billing lifecycle | Install -> subscribe -> uninstall auto-cancel -> reinstall -> re-subscribe | Lifecycle succeeds with correct subscription state transitions | Manual-only |
Required pass criteria before merge
- All rows marked
PASSorN/Awith rationale. - Any
FAILrow blocks merge until fixed and re-tested. - Row
E-036must bePASSon the final pre-merge run.