@mohasinac/appkit 4.58.0 → 4.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (556) hide show
  1. package/dist/.build-stamp.json +3 -3
  2. package/dist/_internal/server/jobs/handlers/messages.d.ts +1 -1
  3. package/dist/_internal/server/jobs/handlers/messages.js +1 -1
  4. package/dist/_internal/shared/types/base-document.d.ts +1 -1
  5. package/dist/constants/seed-meta.d.ts +113 -0
  6. package/dist/constants/seed-meta.js +91 -0
  7. package/dist/index.d.ts +0 -131
  8. package/dist/index.js +50 -294
  9. package/dist/server.d.ts +0 -69
  10. package/dist/server.js +0 -69
  11. package/package.json +4 -2
  12. package/scripts/seed-cli.mjs +69 -1
  13. package/dist/features/tester/seed-data/_happy-path.d.ts +0 -23
  14. package/dist/features/tester/seed-data/_happy-path.js +0 -710
  15. package/dist/features/tester/seed-data/_money-flows.d.ts +0 -23
  16. package/dist/features/tester/seed-data/_money-flows.js +0 -610
  17. package/dist/features/tester/seed-data/authored/_types.d.ts +0 -57
  18. package/dist/features/tester/seed-data/authored/_types.js +0 -35
  19. package/dist/features/tester/seed-data/authored/account-auth__profile-settings.d.ts +0 -2
  20. package/dist/features/tester/seed-data/authored/account-auth__profile-settings.js +0 -226
  21. package/dist/features/tester/seed-data/authored/account-auth__signup-login.d.ts +0 -2
  22. package/dist/features/tester/seed-data/authored/account-auth__signup-login.js +0 -329
  23. package/dist/features/tester/seed-data/authored/addresses__address-filters.d.ts +0 -2
  24. package/dist/features/tester/seed-data/authored/addresses__address-filters.js +0 -41
  25. package/dist/features/tester/seed-data/authored/addresses__postal-lookup.d.ts +0 -2
  26. package/dist/features/tester/seed-data/authored/addresses__postal-lookup.js +0 -76
  27. package/dist/features/tester/seed-data/authored/addresses__postal-validation.d.ts +0 -2
  28. package/dist/features/tester/seed-data/authored/addresses__postal-validation.js +0 -78
  29. package/dist/features/tester/seed-data/authored/addresses__state-picker.d.ts +0 -2
  30. package/dist/features/tester/seed-data/authored/addresses__state-picker.js +0 -59
  31. package/dist/features/tester/seed-data/authored/addresses__unban-request.d.ts +0 -2
  32. package/dist/features/tester/seed-data/authored/addresses__unban-request.js +0 -77
  33. package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.d.ts +0 -2
  34. package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.js +0 -151
  35. package/dist/features/tester/seed-data/authored/admin__bans-and-trust.d.ts +0 -2
  36. package/dist/features/tester/seed-data/authored/admin__bans-and-trust.js +0 -265
  37. package/dist/features/tester/seed-data/authored/admin__blog-faqs.d.ts +0 -2
  38. package/dist/features/tester/seed-data/authored/admin__blog-faqs.js +0 -131
  39. package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.d.ts +0 -2
  40. package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.js +0 -143
  41. package/dist/features/tester/seed-data/authored/admin__bulk-actions.d.ts +0 -2
  42. package/dist/features/tester/seed-data/authored/admin__bulk-actions.js +0 -207
  43. package/dist/features/tester/seed-data/authored/admin__bundles.d.ts +0 -2
  44. package/dist/features/tester/seed-data/authored/admin__bundles.js +0 -144
  45. package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.d.ts +0 -2
  46. package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.js +0 -265
  47. package/dist/features/tester/seed-data/authored/admin__catalog-listings.d.ts +0 -2
  48. package/dist/features/tester/seed-data/authored/admin__catalog-listings.js +0 -318
  49. package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.d.ts +0 -2
  50. package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.js +0 -177
  51. package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.d.ts +0 -2
  52. package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.js +0 -165
  53. package/dist/features/tester/seed-data/authored/admin__content-deletes.d.ts +0 -2
  54. package/dist/features/tester/seed-data/authored/admin__content-deletes.js +0 -267
  55. package/dist/features/tester/seed-data/authored/admin__content-marketing.d.ts +0 -2
  56. package/dist/features/tester/seed-data/authored/admin__content-marketing.js +0 -188
  57. package/dist/features/tester/seed-data/authored/admin__coupons.d.ts +0 -2
  58. package/dist/features/tester/seed-data/authored/admin__coupons.js +0 -215
  59. package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.d.ts +0 -2
  60. package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.js +0 -202
  61. package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.d.ts +0 -2
  62. package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.js +0 -249
  63. package/dist/features/tester/seed-data/authored/admin__media-watermark.d.ts +0 -2
  64. package/dist/features/tester/seed-data/authored/admin__media-watermark.js +0 -148
  65. package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.d.ts +0 -2
  66. package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.js +0 -350
  67. package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.d.ts +0 -2
  68. package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.js +0 -129
  69. package/dist/features/tester/seed-data/authored/admin__site-system.d.ts +0 -2
  70. package/dist/features/tester/seed-data/authored/admin__site-system.js +0 -586
  71. package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.d.ts +0 -2
  72. package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.js +0 -260
  73. package/dist/features/tester/seed-data/authored/admin__users-trust.d.ts +0 -2
  74. package/dist/features/tester/seed-data/authored/admin__users-trust.js +0 -569
  75. package/dist/features/tester/seed-data/authored/buying__bidding.d.ts +0 -2
  76. package/dist/features/tester/seed-data/authored/buying__bidding.js +0 -449
  77. package/dist/features/tester/seed-data/authored/buying__browsing-search.d.ts +0 -2
  78. package/dist/features/tester/seed-data/authored/buying__browsing-search.js +0 -684
  79. package/dist/features/tester/seed-data/authored/buying__buying-checkout.d.ts +0 -2
  80. package/dist/features/tester/seed-data/authored/buying__buying-checkout.js +0 -546
  81. package/dist/features/tester/seed-data/authored/buying__buying-coupons.d.ts +0 -2
  82. package/dist/features/tester/seed-data/authored/buying__buying-coupons.js +0 -379
  83. package/dist/features/tester/seed-data/authored/buying__cart.d.ts +0 -2
  84. package/dist/features/tester/seed-data/authored/buying__cart.js +0 -1264
  85. package/dist/features/tester/seed-data/authored/buying__image-tile-layout.d.ts +0 -2
  86. package/dist/features/tester/seed-data/authored/buying__image-tile-layout.js +0 -122
  87. package/dist/features/tester/seed-data/authored/buying__my-orders.d.ts +0 -2
  88. package/dist/features/tester/seed-data/authored/buying__my-orders.js +0 -279
  89. package/dist/features/tester/seed-data/authored/buying__offers.d.ts +0 -2
  90. package/dist/features/tester/seed-data/authored/buying__offers.js +0 -1127
  91. package/dist/features/tester/seed-data/authored/buying__order-detail-actions.d.ts +0 -2
  92. package/dist/features/tester/seed-data/authored/buying__order-detail-actions.js +0 -153
  93. package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.d.ts +0 -2
  94. package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.js +0 -252
  95. package/dist/features/tester/seed-data/authored/buying__product-detail.d.ts +0 -2
  96. package/dist/features/tester/seed-data/authored/buying__product-detail.js +0 -474
  97. package/dist/features/tester/seed-data/authored/buying__return-request.d.ts +0 -2
  98. package/dist/features/tester/seed-data/authored/buying__return-request.js +0 -165
  99. package/dist/features/tester/seed-data/authored/buying__reviews-pagination.d.ts +0 -2
  100. package/dist/features/tester/seed-data/authored/buying__reviews-pagination.js +0 -260
  101. package/dist/features/tester/seed-data/authored/buying__reviews.d.ts +0 -2
  102. package/dist/features/tester/seed-data/authored/buying__reviews.js +0 -128
  103. package/dist/features/tester/seed-data/authored/buying__spares-and-groups.d.ts +0 -2
  104. package/dist/features/tester/seed-data/authored/buying__spares-and-groups.js +0 -96
  105. package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.d.ts +0 -2
  106. package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.js +0 -283
  107. package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.d.ts +0 -2
  108. package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.js +0 -169
  109. package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.d.ts +0 -2
  110. package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.js +0 -105
  111. package/dist/features/tester/seed-data/authored/buying__wishlist-history.d.ts +0 -2
  112. package/dist/features/tester/seed-data/authored/buying__wishlist-history.js +0 -374
  113. package/dist/features/tester/seed-data/authored/community-support__messages.d.ts +0 -2
  114. package/dist/features/tester/seed-data/authored/community-support__messages.js +0 -200
  115. package/dist/features/tester/seed-data/authored/community-support__public-profile.d.ts +0 -2
  116. package/dist/features/tester/seed-data/authored/community-support__public-profile.js +0 -54
  117. package/dist/features/tester/seed-data/authored/community-support__support-tickets.d.ts +0 -2
  118. package/dist/features/tester/seed-data/authored/community-support__support-tickets.js +0 -76
  119. package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.d.ts +0 -4
  120. package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.js +0 -590
  121. package/dist/features/tester/seed-data/authored/content-discovery__blog.d.ts +0 -2
  122. package/dist/features/tester/seed-data/authored/content-discovery__blog.js +0 -110
  123. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.d.ts +0 -2
  124. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.js +0 -149
  125. package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.d.ts +0 -2
  126. package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.js +0 -145
  127. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.d.ts +0 -2
  128. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.js +0 -174
  129. package/dist/features/tester/seed-data/authored/content-discovery__coupons.d.ts +0 -2
  130. package/dist/features/tester/seed-data/authored/content-discovery__coupons.js +0 -169
  131. package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.d.ts +0 -2
  132. package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.js +0 -209
  133. package/dist/features/tester/seed-data/authored/content-discovery__event-participation.d.ts +0 -2
  134. package/dist/features/tester/seed-data/authored/content-discovery__event-participation.js +0 -207
  135. package/dist/features/tester/seed-data/authored/content-discovery__events.d.ts +0 -2
  136. package/dist/features/tester/seed-data/authored/content-discovery__events.js +0 -377
  137. package/dist/features/tester/seed-data/authored/content-discovery__faq-help.d.ts +0 -2
  138. package/dist/features/tester/seed-data/authored/content-discovery__faq-help.js +0 -87
  139. package/dist/features/tester/seed-data/authored/content-discovery__notifications.d.ts +0 -2
  140. package/dist/features/tester/seed-data/authored/content-discovery__notifications.js +0 -147
  141. package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.d.ts +0 -2
  142. package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.js +0 -209
  143. package/dist/features/tester/seed-data/authored/content-discovery__parts-database.d.ts +0 -2
  144. package/dist/features/tester/seed-data/authored/content-discovery__parts-database.js +0 -167
  145. package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.d.ts +0 -2
  146. package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.js +0 -73
  147. package/dist/features/tester/seed-data/authored/content-discovery__search.d.ts +0 -2
  148. package/dist/features/tester/seed-data/authored/content-discovery__search.js +0 -363
  149. package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.d.ts +0 -2
  150. package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.js +0 -340
  151. package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.d.ts +0 -2
  152. package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.js +0 -88
  153. package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.d.ts +0 -2
  154. package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.js +0 -78
  155. package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.d.ts +0 -2
  156. package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.js +0 -76
  157. package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.d.ts +0 -2
  158. package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.js +0 -62
  159. package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.d.ts +0 -2
  160. package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.js +0 -163
  161. package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.d.ts +0 -2
  162. package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.js +0 -61
  163. package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.d.ts +0 -2
  164. package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.js +0 -89
  165. package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.d.ts +0 -2
  166. package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.js +0 -95
  167. package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.d.ts +0 -2
  168. package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.js +0 -191
  169. package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.d.ts +0 -2
  170. package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.js +0 -158
  171. package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.d.ts +0 -2
  172. package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.js +0 -82
  173. package/dist/features/tester/seed-data/authored/design-ux__footer-theme.d.ts +0 -2
  174. package/dist/features/tester/seed-data/authored/design-ux__footer-theme.js +0 -106
  175. package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.d.ts +0 -2
  176. package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.js +0 -88
  177. package/dist/features/tester/seed-data/authored/design-ux__general-design.d.ts +0 -2
  178. package/dist/features/tester/seed-data/authored/design-ux__general-design.js +0 -204
  179. package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.d.ts +0 -2
  180. package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.js +0 -301
  181. package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.d.ts +0 -2
  182. package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.js +0 -90
  183. package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.d.ts +0 -2
  184. package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.js +0 -85
  185. package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.d.ts +0 -2
  186. package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.js +0 -407
  187. package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.d.ts +0 -2
  188. package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.js +0 -88
  189. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.d.ts +0 -2
  190. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.js +0 -84
  191. package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.d.ts +0 -2
  192. package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.js +0 -214
  193. package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.d.ts +0 -2
  194. package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.js +0 -275
  195. package/dist/features/tester/seed-data/authored/index.d.ts +0 -2
  196. package/dist/features/tester/seed-data/authored/index.js +0 -301
  197. package/dist/features/tester/seed-data/authored/page-wiring__data-loss.d.ts +0 -2
  198. package/dist/features/tester/seed-data/authored/page-wiring__data-loss.js +0 -125
  199. package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.d.ts +0 -2
  200. package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.js +0 -85
  201. package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.d.ts +0 -2
  202. package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.js +0 -92
  203. package/dist/features/tester/seed-data/authored/page-wiring__reachability.d.ts +0 -2
  204. package/dist/features/tester/seed-data/authored/page-wiring__reachability.js +0 -115
  205. package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.d.ts +0 -2
  206. package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.js +0 -137
  207. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.d.ts +0 -2
  208. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.js +0 -263
  209. package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.d.ts +0 -2
  210. package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.js +0 -229
  211. package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.d.ts +0 -2
  212. package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.js +0 -325
  213. package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.d.ts +0 -2
  214. package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.js +0 -126
  215. package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.d.ts +0 -2
  216. package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.js +0 -141
  217. package/dist/features/tester/seed-data/authored/public-pages__store-tabs.d.ts +0 -2
  218. package/dist/features/tester/seed-data/authored/public-pages__store-tabs.js +0 -115
  219. package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.d.ts +0 -2
  220. package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.js +0 -253
  221. package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.d.ts +0 -2
  222. package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.js +0 -93
  223. package/dist/features/tester/seed-data/authored/search-and-nav__header-search.d.ts +0 -3
  224. package/dist/features/tester/seed-data/authored/search-and-nav__header-search.js +0 -185
  225. package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.d.ts +0 -2
  226. package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.js +0 -82
  227. package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.d.ts +0 -2
  228. package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.js +0 -60
  229. package/dist/features/tester/seed-data/authored/selling__become-seller.d.ts +0 -2
  230. package/dist/features/tester/seed-data/authored/selling__become-seller.js +0 -117
  231. package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.d.ts +0 -2
  232. package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.js +0 -148
  233. package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.d.ts +0 -2
  234. package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.js +0 -108
  235. package/dist/features/tester/seed-data/authored/selling__listing-a-product.d.ts +0 -2
  236. package/dist/features/tester/seed-data/authored/selling__listing-a-product.js +0 -274
  237. package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.d.ts +0 -2
  238. package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.js +0 -145
  239. package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.d.ts +0 -2
  240. package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.js +0 -336
  241. package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.d.ts +0 -2
  242. package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.js +0 -136
  243. package/dist/features/tester/seed-data/authored/selling__media-limits.d.ts +0 -2
  244. package/dist/features/tester/seed-data/authored/selling__media-limits.js +0 -135
  245. package/dist/features/tester/seed-data/authored/selling__product-upload-details.d.ts +0 -2
  246. package/dist/features/tester/seed-data/authored/selling__product-upload-details.js +0 -155
  247. package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.d.ts +0 -2
  248. package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.js +0 -138
  249. package/dist/features/tester/seed-data/authored/selling__sectionised-forms.d.ts +0 -2
  250. package/dist/features/tester/seed-data/authored/selling__sectionised-forms.js +0 -191
  251. package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.d.ts +0 -2
  252. package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.js +0 -138
  253. package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.d.ts +0 -2
  254. package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.js +0 -106
  255. package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.d.ts +0 -2
  256. package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.js +0 -192
  257. package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.d.ts +0 -2
  258. package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.js +0 -109
  259. package/dist/features/tester/seed-data/authored/selling__seller-guide.d.ts +0 -2
  260. package/dist/features/tester/seed-data/authored/selling__seller-guide.js +0 -34
  261. package/dist/features/tester/seed-data/authored/selling__seller-listing-types.d.ts +0 -2
  262. package/dist/features/tester/seed-data/authored/selling__seller-listing-types.js +0 -348
  263. package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.d.ts +0 -2
  264. package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.js +0 -87
  265. package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.d.ts +0 -2
  266. package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.js +0 -90
  267. package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.d.ts +0 -2
  268. package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.js +0 -85
  269. package/dist/features/tester/seed-data/authored/selling__seller-orders.d.ts +0 -2
  270. package/dist/features/tester/seed-data/authored/selling__seller-orders.js +0 -213
  271. package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.d.ts +0 -2
  272. package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.js +0 -192
  273. package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.d.ts +0 -2
  274. package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.js +0 -77
  275. package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.d.ts +0 -2
  276. package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.js +0 -165
  277. package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.d.ts +0 -2
  278. package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.js +0 -116
  279. package/dist/features/tester/seed-data/authored/seo__canonical-and-host.d.ts +0 -2
  280. package/dist/features/tester/seed-data/authored/seo__canonical-and-host.js +0 -127
  281. package/dist/features/tester/seed-data/authored/seo__og-images.d.ts +0 -2
  282. package/dist/features/tester/seed-data/authored/seo__og-images.js +0 -107
  283. package/dist/features/tester/seed-data/authored/seo__page-metadata.d.ts +0 -2
  284. package/dist/features/tester/seed-data/authored/seo__page-metadata.js +0 -120
  285. package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.d.ts +0 -2
  286. package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.js +0 -105
  287. package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.d.ts +0 -2
  288. package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.js +0 -58
  289. package/dist/features/tester/seed-data/authored/tools__sticker-tracer.d.ts +0 -2
  290. package/dist/features/tester/seed-data/authored/tools__sticker-tracer.js +0 -284
  291. package/dist/features/tester/seed-data/index.d.ts +0 -2
  292. package/dist/features/tester/seed-data/index.js +0 -2
  293. package/dist/features/tester/seed-data/tester-checklist-seed-data.d.ts +0 -2
  294. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +0 -7601
  295. package/dist/features/tester/seed-data/tester-responses-seed-data.d.ts +0 -2
  296. package/dist/features/tester/seed-data/tester-responses-seed-data.js +0 -95
  297. package/dist/features/tester/seed-data/tester-window.d.ts +0 -25
  298. package/dist/features/tester/seed-data/tester-window.js +0 -66
  299. package/dist/seed/_helpers/brand-rows.d.ts +0 -35
  300. package/dist/seed/_helpers/brand-rows.js +0 -600
  301. package/dist/seed/_helpers/category-content-generated.d.ts +0 -24
  302. package/dist/seed/_helpers/category-content-generated.js +0 -1853
  303. package/dist/seed/_helpers/category-content.d.ts +0 -68
  304. package/dist/seed/_helpers/category-content.js +0 -731
  305. package/dist/seed/_helpers/category-forest.d.ts +0 -4
  306. package/dist/seed/_helpers/category-forest.js +0 -824
  307. package/dist/seed/_helpers/category-images-generated.d.ts +0 -57
  308. package/dist/seed/_helpers/category-images-generated.js +0 -618
  309. package/dist/seed/_helpers/category-models/chunk0.d.ts +0 -2
  310. package/dist/seed/_helpers/category-models/chunk0.js +0 -2648
  311. package/dist/seed/_helpers/category-models/chunk1.d.ts +0 -2
  312. package/dist/seed/_helpers/category-models/chunk1.js +0 -2318
  313. package/dist/seed/_helpers/category-models/chunk2.d.ts +0 -2
  314. package/dist/seed/_helpers/category-models/chunk2.js +0 -2560
  315. package/dist/seed/_helpers/category-models/chunk3.d.ts +0 -2
  316. package/dist/seed/_helpers/category-models/chunk3.js +0 -2196
  317. package/dist/seed/_helpers/category-models/chunk4.d.ts +0 -2
  318. package/dist/seed/_helpers/category-models/chunk4.js +0 -1732
  319. package/dist/seed/_helpers/category-models.d.ts +0 -12
  320. package/dist/seed/_helpers/category-models.js +0 -45
  321. package/dist/seed/_helpers/category-names.d.ts +0 -54
  322. package/dist/seed/_helpers/category-names.js +0 -118
  323. package/dist/seed/_helpers/category-parts-glossary-map.d.ts +0 -1
  324. package/dist/seed/_helpers/category-parts-glossary-map.js +0 -2499
  325. package/dist/seed/_helpers/category-parts.d.ts +0 -9
  326. package/dist/seed/_helpers/category-parts.js +0 -15022
  327. package/dist/seed/_helpers/category-tree.d.ts +0 -27
  328. package/dist/seed/_helpers/category-tree.js +0 -119
  329. package/dist/seed/_helpers/character-features.d.ts +0 -10
  330. package/dist/seed/_helpers/character-features.js +0 -120
  331. package/dist/seed/_helpers/final-sale-fixtures.d.ts +0 -35
  332. package/dist/seed/_helpers/final-sale-fixtures.js +0 -61
  333. package/dist/seed/_helpers/franchise-rows.d.ts +0 -43
  334. package/dist/seed/_helpers/franchise-rows.js +0 -189
  335. package/dist/seed/_helpers/media.d.ts +0 -67
  336. package/dist/seed/_helpers/media.js +0 -172
  337. package/dist/seed/_helpers/part-colours-generated.d.ts +0 -18
  338. package/dist/seed/_helpers/part-colours-generated.js +0 -273
  339. package/dist/seed/_helpers/product-search-txt.d.ts +0 -18
  340. package/dist/seed/_helpers/product-search-txt.js +0 -23
  341. package/dist/seed/_helpers/search-txt-wrappers.d.ts +0 -26
  342. package/dist/seed/_helpers/search-txt-wrappers.js +0 -58
  343. package/dist/seed/addresses-seed-data.d.ts +0 -2
  344. package/dist/seed/addresses-seed-data.js +0 -78
  345. package/dist/seed/authenticity-knowledge-seed-data.d.ts +0 -78
  346. package/dist/seed/authenticity-knowledge-seed-data.js +0 -10729
  347. package/dist/seed/bey-products-seed-data.d.ts +0 -18
  348. package/dist/seed/bey-products-seed-data.js +0 -18011
  349. package/dist/seed/beys/chunk0.d.ts +0 -17
  350. package/dist/seed/beys/chunk0.js +0 -36733
  351. package/dist/seed/beys/chunk1.d.ts +0 -17
  352. package/dist/seed/beys/chunk1.js +0 -35728
  353. package/dist/seed/beys/chunk2.d.ts +0 -17
  354. package/dist/seed/beys/chunk2.js +0 -35857
  355. package/dist/seed/beys/chunk3.d.ts +0 -17
  356. package/dist/seed/beys/chunk3.js +0 -34476
  357. package/dist/seed/beys-seed-data.d.ts +0 -18
  358. package/dist/seed/beys-seed-data.js +0 -11
  359. package/dist/seed/bids-seed-data.d.ts +0 -2
  360. package/dist/seed/bids-seed-data.js +0 -206
  361. package/dist/seed/blog-posts-seed-data.d.ts +0 -6
  362. package/dist/seed/blog-posts-seed-data.js +0 -442
  363. package/dist/seed/carousel-slides-seed-data.d.ts +0 -2
  364. package/dist/seed/carousel-slides-seed-data.js +0 -411
  365. package/dist/seed/carousels-seed-data.d.ts +0 -2
  366. package/dist/seed/carousels-seed-data.js +0 -36
  367. package/dist/seed/cart-seed-data.d.ts +0 -2
  368. package/dist/seed/cart-seed-data.js +0 -241
  369. package/dist/seed/catalogue-seed-data.d.ts +0 -2
  370. package/dist/seed/catalogue-seed-data.js +0 -112
  371. package/dist/seed/categories-seed-data.d.ts +0 -3
  372. package/dist/seed/categories-seed-data.js +0 -816
  373. package/dist/seed/claimed-coupons-seed-data.d.ts +0 -2
  374. package/dist/seed/claimed-coupons-seed-data.js +0 -85
  375. package/dist/seed/coupon-usage-seed-data.d.ts +0 -9
  376. package/dist/seed/coupon-usage-seed-data.js +0 -55
  377. package/dist/seed/coupons-seed-data.d.ts +0 -2
  378. package/dist/seed/coupons-seed-data.js +0 -226
  379. package/dist/seed/defaults/categories.d.ts +0 -2
  380. package/dist/seed/defaults/categories.js +0 -12
  381. package/dist/seed/defaults/faqs.d.ts +0 -2
  382. package/dist/seed/defaults/faqs.js +0 -40
  383. package/dist/seed/events-seed-data.d.ts +0 -7
  384. package/dist/seed/events-seed-data.js +0 -482
  385. package/dist/seed/factories/address.factory.d.ts +0 -21
  386. package/dist/seed/factories/address.factory.js +0 -44
  387. package/dist/seed/factories/bid.factory.d.ts +0 -15
  388. package/dist/seed/factories/bid.factory.js +0 -33
  389. package/dist/seed/factories/blog-post.factory.d.ts +0 -15
  390. package/dist/seed/factories/blog-post.factory.js +0 -22
  391. package/dist/seed/factories/carousel.factory.d.ts +0 -11
  392. package/dist/seed/factories/carousel.factory.js +0 -17
  393. package/dist/seed/factories/cart.factory.d.ts +0 -25
  394. package/dist/seed/factories/cart.factory.js +0 -35
  395. package/dist/seed/factories/category.factory.d.ts +0 -11
  396. package/dist/seed/factories/category.factory.js +0 -16
  397. package/dist/seed/factories/coupon.factory.d.ts +0 -21
  398. package/dist/seed/factories/coupon.factory.js +0 -43
  399. package/dist/seed/factories/faq.factory.d.ts +0 -10
  400. package/dist/seed/factories/faq.factory.js +0 -15
  401. package/dist/seed/factories/notification.factory.d.ts +0 -18
  402. package/dist/seed/factories/notification.factory.js +0 -39
  403. package/dist/seed/factories/order.factory.d.ts +0 -20
  404. package/dist/seed/factories/order.factory.js +0 -20
  405. package/dist/seed/factories/payout.factory.d.ts +0 -21
  406. package/dist/seed/factories/payout.factory.js +0 -38
  407. package/dist/seed/factories/product.factory.d.ts +0 -27
  408. package/dist/seed/factories/product.factory.js +0 -80
  409. package/dist/seed/factories/review.factory.d.ts +0 -14
  410. package/dist/seed/factories/review.factory.js +0 -52
  411. package/dist/seed/factories/session.factory.d.ts +0 -15
  412. package/dist/seed/factories/session.factory.js +0 -31
  413. package/dist/seed/factories/store.factory.d.ts +0 -23
  414. package/dist/seed/factories/store.factory.js +0 -47
  415. package/dist/seed/factories/user.factory.d.ts +0 -19
  416. package/dist/seed/factories/user.factory.js +0 -56
  417. package/dist/seed/faq-seed-data.d.ts +0 -18
  418. package/dist/seed/faq-seed-data.js +0 -1956
  419. package/dist/seed/firestore-indexes.d.ts +0 -12
  420. package/dist/seed/firestore-indexes.js +0 -31
  421. package/dist/seed/grouped-listings-seed-data.d.ts +0 -2
  422. package/dist/seed/grouped-listings-seed-data.js +0 -283
  423. package/dist/seed/history-seed-data.d.ts +0 -12
  424. package/dist/seed/history-seed-data.js +0 -70
  425. package/dist/seed/homepage-sections-seed-data.d.ts +0 -2
  426. package/dist/seed/homepage-sections-seed-data.js +0 -1034
  427. package/dist/seed/index.d.ts +0 -100
  428. package/dist/seed/index.js +0 -115
  429. package/dist/seed/lottery-entries-seed-data.d.ts +0 -2
  430. package/dist/seed/lottery-entries-seed-data.js +0 -108
  431. package/dist/seed/manifest.d.ts +0 -16
  432. package/dist/seed/manifest.js +0 -235
  433. package/dist/seed/media-assets-seed-data.d.ts +0 -22
  434. package/dist/seed/media-assets-seed-data.js +0 -5593
  435. package/dist/seed/model-composition-seed-data.d.ts +0 -15
  436. package/dist/seed/model-composition-seed-data.js +0 -9032
  437. package/dist/seed/notifications-seed-data.d.ts +0 -2
  438. package/dist/seed/notifications-seed-data.js +0 -606
  439. package/dist/seed/offers-seed-data.d.ts +0 -2
  440. package/dist/seed/offers-seed-data.js +0 -398
  441. package/dist/seed/orders-seed-data.d.ts +0 -2
  442. package/dist/seed/orders-seed-data.js +0 -845
  443. package/dist/seed/part-glossary/chunk0.d.ts +0 -9
  444. package/dist/seed/part-glossary/chunk0.js +0 -35448
  445. package/dist/seed/part-glossary/chunk1.d.ts +0 -9
  446. package/dist/seed/part-glossary/chunk1.js +0 -40494
  447. package/dist/seed/part-glossary/chunk2.d.ts +0 -9
  448. package/dist/seed/part-glossary/chunk2.js +0 -51242
  449. package/dist/seed/part-glossary/chunk3.d.ts +0 -9
  450. package/dist/seed/part-glossary/chunk3.js +0 -53337
  451. package/dist/seed/part-glossary/chunk4.d.ts +0 -9
  452. package/dist/seed/part-glossary/chunk4.js +0 -51454
  453. package/dist/seed/part-glossary-seed-data.d.ts +0 -15
  454. package/dist/seed/part-glossary-seed-data.js +0 -25
  455. package/dist/seed/payouts-seed-data.d.ts +0 -2
  456. package/dist/seed/payouts-seed-data.js +0 -302
  457. package/dist/seed/product-features-seed-data.d.ts +0 -3
  458. package/dist/seed/product-features-seed-data.js +0 -366
  459. package/dist/seed/products-art-seed-data.d.ts +0 -2
  460. package/dist/seed/products-art-seed-data.js +0 -289
  461. package/dist/seed/products-auctions-seed-data.d.ts +0 -2
  462. package/dist/seed/products-auctions-seed-data.js +0 -475
  463. package/dist/seed/products-beyblade-x-seed-data.d.ts +0 -2
  464. package/dist/seed/products-beyblade-x-seed-data.js +0 -476
  465. package/dist/seed/products-catalogue/chunk0.d.ts +0 -12
  466. package/dist/seed/products-catalogue/chunk0.js +0 -7262
  467. package/dist/seed/products-catalogue/chunk1.d.ts +0 -12
  468. package/dist/seed/products-catalogue/chunk1.js +0 -7290
  469. package/dist/seed/products-catalogue/chunk10.d.ts +0 -12
  470. package/dist/seed/products-catalogue/chunk10.js +0 -7290
  471. package/dist/seed/products-catalogue/chunk11.d.ts +0 -12
  472. package/dist/seed/products-catalogue/chunk11.js +0 -7005
  473. package/dist/seed/products-catalogue/chunk12.d.ts +0 -12
  474. package/dist/seed/products-catalogue/chunk12.js +0 -7002
  475. package/dist/seed/products-catalogue/chunk13.d.ts +0 -12
  476. package/dist/seed/products-catalogue/chunk13.js +0 -7002
  477. package/dist/seed/products-catalogue/chunk14.d.ts +0 -12
  478. package/dist/seed/products-catalogue/chunk14.js +0 -7002
  479. package/dist/seed/products-catalogue/chunk15.d.ts +0 -12
  480. package/dist/seed/products-catalogue/chunk15.js +0 -7002
  481. package/dist/seed/products-catalogue/chunk16.d.ts +0 -12
  482. package/dist/seed/products-catalogue/chunk16.js +0 -7002
  483. package/dist/seed/products-catalogue/chunk17.d.ts +0 -12
  484. package/dist/seed/products-catalogue/chunk17.js +0 -7002
  485. package/dist/seed/products-catalogue/chunk18.d.ts +0 -12
  486. package/dist/seed/products-catalogue/chunk18.js +0 -4398
  487. package/dist/seed/products-catalogue/chunk2.d.ts +0 -12
  488. package/dist/seed/products-catalogue/chunk2.js +0 -7268
  489. package/dist/seed/products-catalogue/chunk3.d.ts +0 -12
  490. package/dist/seed/products-catalogue/chunk3.js +0 -7264
  491. package/dist/seed/products-catalogue/chunk4.d.ts +0 -12
  492. package/dist/seed/products-catalogue/chunk4.js +0 -7268
  493. package/dist/seed/products-catalogue/chunk5.d.ts +0 -12
  494. package/dist/seed/products-catalogue/chunk5.js +0 -7258
  495. package/dist/seed/products-catalogue/chunk6.d.ts +0 -12
  496. package/dist/seed/products-catalogue/chunk6.js +0 -7268
  497. package/dist/seed/products-catalogue/chunk7.d.ts +0 -12
  498. package/dist/seed/products-catalogue/chunk7.js +0 -7311
  499. package/dist/seed/products-catalogue/chunk8.d.ts +0 -12
  500. package/dist/seed/products-catalogue/chunk8.js +0 -7304
  501. package/dist/seed/products-catalogue/chunk9.d.ts +0 -12
  502. package/dist/seed/products-catalogue/chunk9.js +0 -7309
  503. package/dist/seed/products-catalogue-seed-data.d.ts +0 -2
  504. package/dist/seed/products-catalogue-seed-data.js +0 -60
  505. package/dist/seed/products-classifieds-seed-data.d.ts +0 -7
  506. package/dist/seed/products-classifieds-seed-data.js +0 -435
  507. package/dist/seed/products-digital-codes-seed-data.d.ts +0 -7
  508. package/dist/seed/products-digital-codes-seed-data.js +0 -395
  509. package/dist/seed/products-live-items-seed-data.d.ts +0 -7
  510. package/dist/seed/products-live-items-seed-data.js +0 -269
  511. package/dist/seed/products-preorders-seed-data.d.ts +0 -2
  512. package/dist/seed/products-preorders-seed-data.js +0 -360
  513. package/dist/seed/products-prize-draws-seed-data.d.ts +0 -7
  514. package/dist/seed/products-prize-draws-seed-data.js +0 -427
  515. package/dist/seed/products-spares-seed-data.d.ts +0 -2
  516. package/dist/seed/products-spares-seed-data.js +0 -368
  517. package/dist/seed/products-standard-seed-data.d.ts +0 -2
  518. package/dist/seed/products-standard-seed-data.js +0 -632
  519. package/dist/seed/products-stickers-seed-data.d.ts +0 -2
  520. package/dist/seed/products-stickers-seed-data.js +0 -319
  521. package/dist/seed/reviews-seed-data.d.ts +0 -1
  522. package/dist/seed/reviews-seed-data.js +0 -185
  523. package/dist/seed/runner.d.ts +0 -2
  524. package/dist/seed/runner.js +0 -125
  525. package/dist/seed/scammers-seed-data.d.ts +0 -2
  526. package/dist/seed/scammers-seed-data.js +0 -235
  527. package/dist/seed/seed-market-config.d.ts +0 -48
  528. package/dist/seed/seed-market-config.js +0 -199
  529. package/dist/seed/seed-purpose.d.ts +0 -299
  530. package/dist/seed/seed-purpose.js +0 -440
  531. package/dist/seed/sessions-seed-data.d.ts +0 -3
  532. package/dist/seed/sessions-seed-data.js +0 -116
  533. package/dist/seed/shipments-seed-data.d.ts +0 -5
  534. package/dist/seed/shipments-seed-data.js +0 -185
  535. package/dist/seed/site-settings-seed-data.d.ts +0 -2
  536. package/dist/seed/site-settings-seed-data.js +0 -1069
  537. package/dist/seed/store-addresses-seed-data.d.ts +0 -18
  538. package/dist/seed/store-addresses-seed-data.js +0 -71
  539. package/dist/seed/store-extensions-seed-data.d.ts +0 -11
  540. package/dist/seed/store-extensions-seed-data.js +0 -292
  541. package/dist/seed/stores-seed-data.d.ts +0 -6
  542. package/dist/seed/stores-seed-data.js +0 -242
  543. package/dist/seed/support-tickets-seed-data.d.ts +0 -16
  544. package/dist/seed/support-tickets-seed-data.js +0 -239
  545. package/dist/seed/tax-codes-seed-data.d.ts +0 -34
  546. package/dist/seed/tax-codes-seed-data.js +0 -100
  547. package/dist/seed/test-data-ttl.d.ts +0 -29
  548. package/dist/seed/test-data-ttl.js +0 -31
  549. package/dist/seed/test-utils.d.ts +0 -49
  550. package/dist/seed/test-utils.js +0 -110
  551. package/dist/seed/types.d.ts +0 -89
  552. package/dist/seed/types.js +0 -15
  553. package/dist/seed/users-seed-data.d.ts +0 -2
  554. package/dist/seed/users-seed-data.js +0 -597
  555. package/dist/seed/wishlists-seed-data.d.ts +0 -12
  556. package/dist/seed/wishlists-seed-data.js +0 -54
@@ -1,2 +0,0 @@
1
- import type { AuthoredCase } from "./_types";
2
- export declare const authored: Record<string, AuthoredCase>;
@@ -1,213 +0,0 @@
1
- /*
2
- * WHY: Authored six-part procedures for the selling/seller-orders page.
3
- * WHAT: 11 case(s), keyed by full checklist id.
4
- *
5
- * Written by hand, case by case, against the label each one states. There is no
6
- * generator: the authoring scripts were deleted once it was clear they were
7
- * scaffolding around work that is simply writing.
8
- *
9
- * 🛑 THE SELLER SEES LESS OF A MANUAL PAYMENT THAN THE ADMIN DOES, on purpose. The
10
- * proof screenshot is a bank or UPI capture and stays admin-only; the seller gets
11
- * a status badge and the reference. Three cases here check the seller CANNOT do
12
- * what only an admin may — verify, request a re-upload, or reject as fraud.
13
- *
14
- * @tag domain:tester
15
- * @tag layer:seed
16
- * @tag pattern:none
17
- * @tag access:server-only
18
- * @tag consumers:seed-data/authored/index.ts
19
- * @tag sideEffects:none
20
- */
21
- export const authored = {
22
- "checklist-selling-seller-orders-view-orders": {
23
- roles: ["seller"],
24
- startPage: "/store/orders",
25
- steps: [
26
- "Sign in as tyson@beybladearena.in / TempPass123!.",
27
- "Open /store/orders and read every row's primary label.",
28
- "Check each names the ITEM and shows its thumbnail rather than only an order id.",
29
- "Read the availability or scope tabs offered and select each in turn.",
30
- "Read every status filter and select each, noting any that returns nothing.",
31
- "Open one order and read its detail.",
32
- ],
33
- expectedBehaviour: "Every order carries its item title and image denormalised onto the document precisely so a list row needs no extra fetch. A row reading 'Order {id}' is a row-mapper that threw that away, leaving the seller to open each order to find out what it is.",
34
- expectedUiState: "Rows name the product with a thumbnail, and a multi-item order shows a '+N more' style suffix rather than only the first item. The order id is present but de-emphasised. Scope tabs read Active / Closed / All. Every status filter returns rows or is genuinely empty.",
35
- endResult: "Read-only; nothing persists beyond the URL.",
36
- },
37
- "checklist-selling-seller-orders-seller-order-manual-payment-badge": {
38
- roles: ["seller"],
39
- startPage: "/store/orders",
40
- steps: [
41
- "Sign in as tyson@beybladearena.in / TempPass123!.",
42
- "Open /store/orders and find an order paid by cash or UPI.",
43
- "Read its manual-payment badge in the list and note the state it reports.",
44
- "Open the order and read the badge and the payment reference there.",
45
- "Look for the buyer's uploaded proof screenshot anywhere on the page.",
46
- "Look for any control to verify, request a re-upload, or reject the payment.",
47
- ],
48
- expectedBehaviour: "The state is DERIVED from two fields rather than stored, so every surface computes the same four states — awaiting payment, awaiting verification, re-upload requested, resolved. A stored mirror would drift the first time a write path forgot it.",
49
- expectedUiState: "The badge states which of the four the order is in, in both the list and the detail. The reference is shown. The proof SCREENSHOT is not — it is a bank or UPI capture and is admin-only. No verify, re-upload or reject control is offered to the seller.",
50
- expectedData: { proofScreenshotVisibleToSeller: false },
51
- endResult: "Read-only. A visible screenshot or an actionable verify control here is a permissions finding, not a UI one.",
52
- },
53
- "checklist-selling-seller-orders-confirm-payment": {
54
- roles: ["seller"],
55
- startPage: "/store/orders",
56
- steps: [
57
- "Sign in as tyson@beybladearena.in / TempPass123!.",
58
- "Open /store/orders and open an order awaiting payment verification.",
59
- "Read every control the page offers.",
60
- "Look specifically for a control that would mark the payment verified.",
61
- "Sign out and sign in as admin@letitrip.in / TempPass123!.",
62
- "Open the same order in /admin/orders and read the controls offered there.",
63
- ],
64
- expectedBehaviour: "Verifying a manual payment is an admin and moderator action. The seller is the beneficiary of the payment, so letting them confirm it is the party with the incentive marking their own money received — the split is deliberate and the admin view is where the control lives.",
65
- expectedUiState: "The seller's view offers no verify control. The admin's view offers Verify alongside Request re-upload and Reject as fraud, with the proof screenshot visible. A verify control on the seller's page is the failure.",
66
- endResult: "Do not verify anything. Read-only on both sides.",
67
- },
68
- "checklist-selling-seller-orders-request-reupload": {
69
- roles: ["seller", "admin"],
70
- startPage: "/store/orders",
71
- steps: [
72
- "Sign in as tyson@beybladearena.in / TempPass123! and open an order whose proof has been submitted.",
73
- "Confirm no re-upload control is offered to the seller.",
74
- "Sign out and sign in as admin@letitrip.in / TempPass123!.",
75
- "Open the same order in /admin/orders and use Request re-upload, typing a note.",
76
- "Sign in as the buyer who placed that order and open the order's payment page.",
77
- "Read whether the upload form is active again and what the deadline shows.",
78
- ],
79
- expectedBehaviour: "Only an admin may request a re-upload, and doing so reopens the buyer's window. The note is required — a re-upload request with no reason leaves the buyer resubmitting the same thing.",
80
- expectedUiState: "The seller has no such control. The admin's request requires a note before it will submit. The buyer's payment page becomes active again with an extended deadline rather than staying locked.",
81
- endResult: "The order is left in the re-upload-requested state. Note that a corrected re-upload must clear that state — an order stuck in it is invisible to both the auto-approve sweep and the admin queue, and stalls forever.",
82
- },
83
- "checklist-selling-seller-orders-reject-fraud": {
84
- roles: ["seller", "admin"],
85
- startPage: "/store/orders",
86
- steps: [
87
- "Sign in as tyson@beybladearena.in / TempPass123! and open an order awaiting verification.",
88
- "Confirm no reject-as-fraud control is offered.",
89
- "Sign out and sign in as admin@letitrip.in / TempPass123!.",
90
- "Open the same order in /admin/orders and read the reject-as-fraud control and what it requires.",
91
- "Read any confirmation dialog it opens, without confirming it.",
92
- "Cancel out of the dialog.",
93
- ],
94
- expectedBehaviour: "Rejecting as fraud is admin-only and requires a note, because it cancels the order, restores stock and enqueues a seven-day ban cascade against the buyer. A destructive action of that reach must carry a confirmation naming what it will do — one without it executes immediately with no warning.",
95
- expectedUiState: "The seller has no such control. The admin's version requires a note and opens a confirmation that names the consequences rather than asking a generic 'Are you sure?'. Cancelling leaves the order untouched.",
96
- endResult: "Nothing is rejected. Cancel rather than confirm — this action bans a real account for seven days.",
97
- },
98
- "checklist-selling-seller-orders-mark-shipped": {
99
- roles: ["seller"],
100
- startPage: "/store/orders",
101
- steps: [
102
- "Sign in as tyson@beybladearena.in / TempPass123!.",
103
- "Open /store/orders and open an order that is ready to ship.",
104
- "Use the mark-shipped control and read what it asks for.",
105
- "Type 'QA Carrier mark-shipped' as the carrier and 'QATRACK118427' as the tracking number, then submit.",
106
- "RELOAD the order and read its status, carrier and tracking number.",
107
- "Open /store/orders and check the row's status has moved too.",
108
- "Check the scope tabs — the order should still be under Active, not Closed.",
109
- ],
110
- inputs: { carrier: "QA Carrier mark-shipped", trackingNumber: "QATRACK118427" },
111
- expectedBehaviour: "Marking shipped records the carrier and tracking number alongside the status. Shipping is manual here — there is no carrier integration — so the seller's typed values ARE the tracking data, and a status change that discards them leaves the buyer with nothing to follow.",
112
- expectedUiState: "After the reload the order reads as shipped and holds both the carrier and the tracking number. The list row reflects the new status. The order stays in the Active scope, since shipped is not a closed state.",
113
- expectedData: { trackingNumber: "QATRACK118427" },
114
- endResult: "The order is shipped and carries its tracking data. A status that moved while the carrier and tracking are blank is the failure.",
115
- },
116
- "checklist-selling-seller-orders-tracking-visible": {
117
- roles: ["seller", "buyer"],
118
- startPage: "/store/orders",
119
- steps: [
120
- "Sign in as tyson@beybladearena.in / TempPass123! and open the order marked shipped in the previous case.",
121
- "Read the carrier and tracking number shown.",
122
- "Sign out and sign in as the buyer who placed that order.",
123
- "Open /user/orders and open the same order.",
124
- "Read the carrier and tracking number there.",
125
- "Open the order's tracking page and read what it shows.",
126
- ],
127
- inputs: { trackingNumber: "QATRACK118427" },
128
- expectedBehaviour: "What the seller entered reaches the buyer. The buyer's tracking page renders a timeline from the order's real per-status dates — a status with no recorded date shows no timestamp rather than a guessed one, because a fabricated date is worse than a missing one.",
129
- expectedUiState: "Both sides show the same carrier and tracking number. The buyer's tracking page renders a timeline with real dates against the statuses that have them, and an em-dash against those that do not.",
130
- endResult: "Read-only on the buyer side. A tracking page that is blank, or that shows invented dates for every status, are both failures.",
131
- },
132
- "checklist-selling-seller-orders-whatsapp-admin-share": {
133
- roles: ["seller"],
134
- startPage: "/store/orders",
135
- steps: [
136
- "Sign in as tyson@beybladearena.in / TempPass123!.",
137
- "Open /store/orders and open an order.",
138
- /*
139
- * 🛑 NO SUCH CONTROL EXISTS TODAY, AND ABSENCE IS THE EXPECTED ANSWER.
140
- *
141
- * Measured 2026-09-29: SELLER_ROW_ACTIONS.orders is
142
- * [VIEW, EDIT, TRACK, RESEND] — no share. SellerOrdersView mentions
143
- * WhatsApp only as the buyer's purchased add-on flag
144
- * only as `wa.me` links, and every one of those in
145
- * the codebase is on the contact page, the chat button or the buyer's own
146
- * payment page. The registry's WhatsApp actions are store SETUP
147
- * (whatsapp-connect, catalog-sync, catalog-import).
148
- *
149
- * The case is kept rather than deleted because it guards a real risk the
150
- * day someone adds one: an order share is exactly the control that would
151
- * paste a buyer's address and phone into a third-party app. Written so
152
- * that absence PASSES and a leaky implementation FAILS — which is the
153
- * only shape that stays useful while the feature does not exist.
154
- */
155
- "Look for a WhatsApp or generic share control on the order — in the row actions, the detail drawer and the full detail page.",
156
- "If none exists anywhere, record that and stop: no share control is the expected state and the case passes.",
157
- "If one does exist, trigger it and read the message it composes before sending anything.",
158
- "Check that message for the buyer's full phone number, full address and any payment identifier.",
159
- "Close without sending.",
160
- ],
161
- expectedBehaviour: "The share composes a message about the order. What it must not do is put more of the buyer's data into a third-party app than the seller needs to fulfil — a share that pastes a full address and phone into an outbound message has moved PII somewhere no policy here covers.",
162
- expectedUiState: "No share control is present on the row actions, the drawer or the detail page — that is the current expected state and it passes. If one IS present, the composed message identifies the order and what it contains; read exactly what buyer data it includes and record it, and a full payment identifier in that message is a finding regardless of anything else.",
163
- endResult: "Nothing is sent. Report precisely which buyer fields the message carries — that is the substance of this case.",
164
- },
165
- "checklist-selling-seller-orders-seller-auction-forfeit-notification": {
166
- roles: ["seller"],
167
- startPage: "/store",
168
- steps: [
169
- "Sign in as tyson@beybladearena.in / TempPass123!.",
170
- "Open /store and open the notification list.",
171
- "Look for any notification about an auction win that lapsed unpaid.",
172
- "Read its title, body and destination if one exists.",
173
- "Open the store's auctions list and find an auction whose win was forfeited.",
174
- "Read what state that auction is now in.",
175
- ],
176
- expectedBehaviour: "When a win lapses unpaid the bid is forfeited and the buyer is notified. Whether the SELLER is notified is the question this case answers rather than assumes — for an unpaid buyout the seller is deliberately not told, because nothing was ever sold, and the same reasoning may or may not apply here.",
177
- expectedUiState: "Record what the seller actually receives. If a notification exists it has a readable title, a body and a destination that resolves. If none exists, record that as the observed behaviour rather than as a failure.",
178
- endResult: "Read-only. This case documents behaviour; report what happened rather than forcing a yes or no.",
179
- },
180
- "checklist-selling-seller-orders-seller-order-detail-full-page": {
181
- roles: ["seller"],
182
- startPage: "/store/orders",
183
- steps: [
184
- "Sign in as tyson@beybladearena.in / TempPass123!.",
185
- "Open /store/orders and open an order's detail panel from the list.",
186
- "Write down every field label and section it shows.",
187
- "Note the order id and close the panel.",
188
- "Open that order's standalone detail page directly by URL.",
189
- "Write down every field and section, and compare the two lists.",
190
- "Reload the standalone page and confirm it still loads the same order.",
191
- ],
192
- expectedBehaviour: "The panel and the page render from one shared content component, so their fields match by construction. The standalone page exists because a panel cannot be bookmarked or sent to someone — and an order is exactly the record a seller needs to share.",
193
- expectedUiState: "Both surfaces show the same fields and sections with the same values. The standalone page survives a reload on the same order. A field in one and not the other means a second copy of the content component has appeared and the two will drift.",
194
- endResult: "Read-only; nothing persists.",
195
- },
196
- "checklist-selling-seller-orders-seller-new-order-notification-reaches-seller": {
197
- roles: ["buyer", "seller"],
198
- startPage: "/products/product-beyblade-burst-valkyrie",
199
- steps: [
200
- "Sign in as rehan.sheikh@gmail.com / TempPass123!.",
201
- "Add product-beyblade-burst-valkyrie (₹999, Beyblade Arena) to the cart.",
202
- "Open /checkout, select the first saved address, choose Cash on Delivery, and place the order.",
203
- "Sign out and sign in as tyson@beybladearena.in / TempPass123!, who owns that store.",
204
- "Open /store and read the notification bell.",
205
- "Open the notification list, read the newest entry's title and body, and click it.",
206
- "Read where it lands.",
207
- ],
208
- inputs: { productId: "product-beyblade-burst-valkyrie", paymentMethod: "Cash on Delivery" },
209
- expectedBehaviour: "A new order notifies the store that received it. The audience is a property of the EVENT, not of the person — the same account is a buyer elsewhere, so the notification has to be addressed to the store portal rather than to whichever dashboard the user happens to open.",
210
- expectedUiState: "The bell shows an unread count and the newest entry names the new order with a readable body. Clicking it opens that order in the STORE portal, not the buyer's own order page.",
211
- endResult: "The order exists and the notification survives a reload. No notification at all means the hook did not fire; one landing in the buyer portal means the audience was resolved from the person rather than the event.",
212
- },
213
- };
@@ -1,2 +0,0 @@
1
- import type { AuthoredCase } from "./_types";
2
- export declare const authored: Record<string, AuthoredCase>;
@@ -1,192 +0,0 @@
1
- /*
2
- * WHY: Authored six-part procedures for the selling/seller-shipping-payouts-setup page.
3
- * WHAT: 10 case(s), keyed by full checklist id.
4
- *
5
- * Written by hand, case by case, against the label each one states. There is no
6
- * generator: the authoring scripts were deleted once it was clear they were
7
- * scaffolding around work that is simply writing.
8
- *
9
- * 🛑 SEPARATE PAGES WERE CONSOLIDATED INTO TABS, so the old URLs are live links in
10
- * bookmarks, emails and guides. Three cases here are about that seam: old URLs
11
- * must still land, the tab must be written back to the URL so a deep link works
12
- * in both directions, and a search box must only promise what its corpus can
13
- * deliver.
14
- *
15
- * @tag domain:tester
16
- * @tag layer:seed
17
- * @tag pattern:none
18
- * @tag access:server-only
19
- * @tag consumers:seed-data/authored/index.ts
20
- * @tag sideEffects:none
21
- */
22
- export const authored = {
23
- "checklist-selling-seller-shipping-payouts-setup-shipping-page": {
24
- roles: ["seller"],
25
- startPage: "/store/shipping",
26
- steps: [
27
- "Sign in as tyson@beybladearena.in / TempPass123!.",
28
- "Open /store/shipping and read every field and section.",
29
- "Note which shipping options the store currently offers and their rates.",
30
- "Read whether a free-shipping threshold is configurable and what it is set to.",
31
- "Reload the page and confirm the same values are shown.",
32
- ],
33
- expectedBehaviour: "The page renders the store's real shipping configuration. Free shipping is DERIVED from who pays rather than being a field of its own, so a control labelled 'free shipping' has to write the field the read side actually consults — a filter on a field the document does not have matches nothing forever.",
34
- expectedUiState: "Every configured option and rate is shown with real values rather than blanks. Reloading reproduces them.",
35
- endResult: "Read-only; nothing persists.",
36
- },
37
- "checklist-selling-seller-shipping-payouts-setup-shipping-configs-crud": {
38
- roles: ["seller"],
39
- startPage: "/store/shipping",
40
- steps: [
41
- "Sign in as tyson@beybladearena.in / TempPass123!.",
42
- "Open /store/shipping and create a config named 'QA Shipping configs-crud' with a rate of 99.",
43
- "Save, RELOAD, and read every field of it.",
44
- "Edit only its rate to 149, save, RELOAD, and read every field again including the name.",
45
- "Open /store/products, then that product's editor, and check the new config is offered as a shipping choice.",
46
- "Delete the config and RELOAD to confirm.",
47
- ],
48
- inputs: { name: "QA Shipping configs-crud", rateBefore: 99, rateAfter: 149 },
49
- expectedBehaviour: "Create, edit and delete persist, and an edit to one field leaves the others alone. A new config becomes available to the listing forms immediately — a config that exists only on its own settings page is a config no listing can use.",
50
- expectedUiState: "After each reload the config holds exactly what was saved. Following the rate edit the name is unchanged. The config appears in a product editor's shipping choices.",
51
- endResult: "The config is deleted by the final step.",
52
- },
53
- "checklist-selling-seller-shipping-payouts-setup-payout-methods-crud": {
54
- roles: ["seller"],
55
- startPage: "/store/payouts",
56
- steps: [
57
- "Sign in as tyson@beybladearena.in / TempPass123!.",
58
- "Open the store's payout methods and read the existing ones.",
59
- "Note how any existing account number or UPI id is displayed.",
60
- "Add a method named 'QA Payout methods-crud' with test details and save.",
61
- "RELOAD and read how the new method's details are displayed.",
62
- "Open the browser's View Source and search for the full account identifier you typed.",
63
- "Delete the method.",
64
- ],
65
- inputs: { name: "QA Payout methods-crud" },
66
- expectedBehaviour: "Payout details are PII-encrypted at rest and shown masked. This is one of the few places a seller's bank identifier exists in the product at all, so the source check is the real assertion — a masked display over an unmasked payload is a leak that looks like a fix.",
67
- expectedUiState: "Existing and new methods both show masked identifiers rather than full ones. The full identifier does not appear anywhere in the page source, including the embedded data payload.",
68
- expectedData: { fullIdentifierInSource: 0 },
69
- endResult: "The method is deleted by the final step. A full account number in the source fails the case regardless of how the page renders.",
70
- },
71
- "checklist-selling-seller-shipping-payouts-setup-payout-settings-page": {
72
- roles: ["seller"],
73
- startPage: "/store/payouts",
74
- steps: [
75
- "Sign in as tyson@beybladearena.in / TempPass123!.",
76
- "Open /store/payouts and read every field and toggle.",
77
- "Read whether the payout schedule, hold period and minimum amount are shown.",
78
- "Change one editable setting and save.",
79
- "RELOAD and read every setting again.",
80
- "Restore the changed setting.",
81
- ],
82
- expectedBehaviour: "The page shows the seller's own payout settings and saves what they change. Platform-side figures such as the hold period and the minimum payout amount are informational here — they are not buyer-facing and were once being published by an unauthenticated public endpoint, so a seller seeing them is correct and a public page showing them is not.",
83
- expectedUiState: "Settings render with real values and the changed one survives the reload. Every other setting is unchanged after the save.",
84
- endResult: "The setting is restored by the final step.",
85
- },
86
- "checklist-selling-seller-shipping-payouts-setup-consolidated-tabs-old-urls": {
87
- roles: ["seller"],
88
- startPage: "/store/shipping",
89
- steps: [
90
- "Sign in as tyson@beybladearena.in / TempPass123!.",
91
- /*
92
- * 🛑 THE URLS ARE NAMED NOW. This said "each of the pre-consolidation
93
- * URLs" and listed none, so the tester had to guess which ones existed —
94
- * and a guess that misses the one that regressed reports a clean pass.
95
- *
96
- * These are the real shims under /store, each a page.tsx whose whole body
97
- * is a redirect. Two of them carry a TAB, which is the part worth
98
- * checking: /store/payout-settings redirects to ?tab=settings, and
99
- * /store/print-center forwards its own query onto /store/fulfillment.
100
- * Landing on the right page but the FIRST tab is the regression this case
101
- * exists for, and it is invisible unless the URLs are enumerated.
102
- */
103
- "Open each of these pre-consolidation URLs directly in the address bar, one at a time: /store/payout-methods, /store/payout-settings, /store/shipping-configs, /store/print-center, /store/auctions, /store/pre-orders, /store/prize-draws, /store/slug.",
104
- "For each, read where the browser lands and which tab is open.",
105
- "Note any that 404 or land on the first tab rather than the one they name.",
106
- "Read the final URL each one settles on.",
107
- ],
108
- expectedBehaviour: "An old URL lands on the consolidated page WITH its own tab open. These URLs are live in bookmarks, emails and guides, so a 404 breaks links that were correct when they were written — and landing on tab one is only marginally better, since the user still has to hunt.",
109
- expectedUiState: "Every old URL resolves and opens the tab it corresponds to. None 404s and none lands on the default tab. Specifically: /store/payout-settings settles on /store/payouts with the settings tab open (its shim appends ?tab=settings), /store/payout-methods settles on /store/payouts, /store/shipping-configs on /store/shipping, /store/print-center on /store/fulfillment carrying any query it was given, /store/slug on /store/storefront, and /store/auctions, /store/pre-orders and /store/prize-draws each on /store/products carrying its own ?listingType= (auction, pre-order, prize-draw) — arriving without that parameter is the regression, because the page then shows every type. Record any that 404 or land on the default tab, by URL.",
110
- endResult: "Read-only; nothing persists.",
111
- },
112
- "checklist-selling-seller-shipping-payouts-setup-consolidated-tabs-url-writeback": {
113
- roles: ["seller"],
114
- startPage: "/store/shipping",
115
- steps: [
116
- "Sign in as tyson@beybladearena.in / TempPass123!.",
117
- "Open /store/shipping and read the URL. It is the consolidated page: /store/shipping-configs now redirects here, as /store/payout-methods and /store/payout-settings both redirect to /store/payouts.",
118
- "Click a different tab and read the URL again.",
119
- "Copy that URL, open it in a new tab, and read which tab is open.",
120
- "Press the browser back button and read which tab is shown.",
121
- "Open the page with an unknown tab value in the URL and read what happens.",
122
- ],
123
- expectedBehaviour: "Selecting a tab writes it to the URL, so the deep link works in both directions and back walks the tabs. An unknown value falls back to the default quietly — the realistic cause is a stale bookmark from a renamed tab, which is not an error condition.",
124
- expectedUiState: "The URL changes with the tab and reopening it lands on that tab. Back returns to the previous tab. An unknown value opens the default with no error banner and no blank panel.",
125
- endResult: "Read-only; nothing persists beyond the URL.",
126
- },
127
- "checklist-selling-seller-shipping-payouts-setup-print-center-selection-deeplink": {
128
- roles: ["seller"],
129
- startPage: "/store/print-center",
130
- steps: [
131
- "Sign in as tyson@beybladearena.in / TempPass123!.",
132
- "Open /store/print-center — it REDIRECTS to /store/fulfillment and carries the query string with it, which is the whole mechanism this case depends on — then switch to the 'Print centre' tab and select two items to print.",
133
- "Read the URL and check the selection is represented in it.",
134
- "Copy the URL and open it in a new tab.",
135
- "Read whether the same two items are selected on arrival.",
136
- "Reload and read the selection again.",
137
- ],
138
- expectedBehaviour: "A print selection is deep-linkable so it can be reopened or handed to a colleague. Holding it in component state alone means the URL describes a different page than the one on screen, and reloading loses the work.",
139
- expectedUiState: "The URL encodes the selection, the pasted URL arrives with the same two items selected, and a reload preserves them. A selection lost on reload is the failure.",
140
- endResult: "Clear the selection; nothing is printed.",
141
- },
142
- "checklist-selling-seller-shipping-payouts-setup-search-box-promises-match-corpus": {
143
- roles: ["seller"],
144
- startPage: "/store/products",
145
- steps: [
146
- "Sign in as tyson@beybladearena.in / TempPass123!.",
147
- "Open each store listing page that has a search box and read its placeholder text.",
148
- "Write down what each placeholder claims to search — title, sku, buyer, id.",
149
- "For each page, search a value of every kind its placeholder names.",
150
- "Write down any kind the placeholder names that returns nothing when it should match.",
151
- "Search zzzznope on each page and confirm zero results.",
152
- ],
153
- inputs: { nonsenseQuery: "zzzznope" },
154
- expectedBehaviour: "A placeholder is a promise about what the corpus can match. Naming a field the search index does not carry produces a search that fails for a reason the user cannot see — they conclude the record does not exist. Placeholders promising something unmatchable have been found and removed before.",
155
- expectedUiState: "Every kind a placeholder names returns results when a matching value is searched. 'zzzznope' returns zero everywhere. A placeholder promising a field that matches nothing is the finding, quoted with the page it is on.",
156
- expectedData: { unkeptPlaceholderPromises: 0 },
157
- endResult: "Read-only; nothing persists beyond the URL.",
158
- },
159
- "checklist-selling-seller-shipping-payouts-setup-exact-search-boxes-commit-on-enter": {
160
- roles: ["seller"],
161
- startPage: "/store/orders",
162
- steps: [
163
- "Sign in as tyson@beybladearena.in / TempPass123!.",
164
- "Open a store listing whose search is exact-match and read its helper text.",
165
- "Type a full matching value but do NOT press Enter — wait five seconds and read the rows.",
166
- "Press Enter and read the rows.",
167
- "Clear the box, type a partial value, press Enter, and read the rows.",
168
- "Type zzzznope, press Enter, and read the rows.",
169
- ],
170
- inputs: { nonsenseQuery: "zzzznope" },
171
- expectedBehaviour: "An exact-match box commits on Enter rather than searching as you type. Encrypted fields can only be matched through a blind index, so a partial value cannot match — searching mid-typing would fire a query per keystroke, every one of which is guaranteed to return nothing.",
172
- expectedUiState: "Nothing changes while typing. Enter runs the search and the full value returns its rows. The partial value returns none, and the helper text explains that matching is exact. 'zzzznope' returns none.",
173
- endResult: "Read-only; nothing persists beyond the URL.",
174
- },
175
- "checklist-selling-seller-shipping-payouts-setup-consolidated-tabs-command-palette": {
176
- roles: ["seller"],
177
- startPage: "/store",
178
- steps: [
179
- "Sign in as tyson@beybladearena.in / TempPass123!.",
180
- "Open /store and open the command palette or header search.",
181
- "Type shipping and read the results.",
182
- "Click the result and read which page and which tab it opens.",
183
- "Repeat with payout, reading the results and where they land.",
184
- "Type zzzznope and read the results.",
185
- ],
186
- inputs: { query1: "shipping", query2: "payout", nonsenseQuery: "zzzznope" },
187
- expectedBehaviour: "Search reaches individual TABS, not only the consolidated page, because a tab is where the setting actually is. Landing on the page's first tab and leaving the seller to hunt is the same failure as the old-URL case, arriving from a different direction.",
188
- expectedUiState: "Both queries return entries that open the consolidated page ON the relevant tab. 'zzzznope' returns nothing rather than the full list of settings.",
189
- expectedData: { nonsenseResultCount: 0 },
190
- endResult: "Read-only; nothing persists.",
191
- },
192
- };
@@ -1,2 +0,0 @@
1
- import type { AuthoredCase } from "./_types";
2
- export declare const authored: Record<string, AuthoredCase>;
@@ -1,77 +0,0 @@
1
- /*
2
- * WHY: Authored six-part procedures for the seller side of Part Two —
3
- * listing a spare, and the shared group-stock/rules editor.
4
- * WHAT: 4 case(s), keyed by full checklist id.
5
- *
6
- * 🛑 "Stock is independent per listing" is the whole premise of the shared
7
- * editor, so the round trip that proves it (edit one, reload, check the
8
- * OTHER member) is the case that actually matters here — not whether the
9
- * form submits.
10
- *
11
- * @tag domain:tester
12
- * @tag layer:seed
13
- * @tag pattern:none
14
- * @tag access:server-only
15
- * @tag consumers:seed-data/authored/index.ts
16
- * @tag sideEffects:none
17
- */
18
- const SELLER_SIGNIN = "Sign in as a seller account that owns store-beyblade-arena.";
19
- export const authored = {
20
- "checklist-selling-spares-seller-and-group-editing-seller-can-list-a-spare": {
21
- roles: ["seller"],
22
- startPage: "/store/spares",
23
- steps: [
24
- SELLER_SIGNIN,
25
- "Click \"List a Spare\".",
26
- "Fill in title, price, colourway, and a stock quantity, then Publish.",
27
- "Return to /store/spares.",
28
- ],
29
- expectedBehaviour: "The seller product-shell accepts `listingType: \"spares\"` the same way it accepts the other nine types — this is the one new entry in `ProductListingMode`, so a missing wiring here would show as a form that silently fails to save or a blank listing-type dropdown.",
30
- expectedUiState: "The new spare appears in the /store/spares list with the colourway shown as its distinguishing column (not a size column, which the other print types use), the price entered, and status Published.",
31
- endResult: "BEFORE spares existed, there was no seller-facing way to list one at all. AFTER: creating one is the same shape as creating a sticker or an art print, just under a different type.",
32
- },
33
- "checklist-selling-spares-seller-and-group-editing-group-stock-edit-is-independent": {
34
- roles: ["seller"],
35
- startPage: "/store/products",
36
- steps: [
37
- SELLER_SIGNIN,
38
- "Open the editor for a group PARENT product (one with \"isGroupParent\").",
39
- "In the Members list, note the current stock figures for two different children, A and B.",
40
- "In the shared stock editor, change ONLY child A's stock to a new number. Leave B's input untouched.",
41
- "Click \"Save group stock\".",
42
- "Reload the editor and re-read both children's stock figures.",
43
- ],
44
- expectedBehaviour: "`PATCH .../group/stock` writes ONLY the member rows named in the request body — `saveGroupStock()` sends just the touched ids via `stockDraft`/`motDraft`, never a blanket broadcast across every child. Stock is independent per listing by design: a spare is one physical object a seller happens to have, and selling or restocking one must not touch another's figure.",
45
- expectedUiState: "After reload, child A shows the NEW figure you entered. Child B shows EXACTLY the figure it had before — unchanged to the unit. This is the single most important assertion in this group: a shared pool bug would show up as B silently changing when only A was edited.",
46
- endResult: "BEFORE this editor existed, each child's stock could only be edited by opening its own separate product page — tedious but safe. AFTER: editing is faster AND must remain exactly as safe. If B's figure moved at all, the editor is pooling stock rather than editing independent listings, which contradicts the feature's entire premise.",
47
- },
48
- "checklist-selling-spares-seller-and-group-editing-group-rules-save-and-reload": {
49
- roles: ["seller"],
50
- startPage: "/store/products",
51
- steps: [
52
- SELLER_SIGNIN,
53
- "Open a group parent's editor and find the \"Selection rules\" form.",
54
- "Change the min, max, per-item cap, and discount fields to new values different from what they currently show.",
55
- "Click \"Save rules\".",
56
- "Reload the editor page.",
57
- "As a buyer (different tab/session), open that group's public picker.",
58
- ],
59
- expectedBehaviour: "`PATCH .../group` writes only the keys present in the body, via the `in` test rather than a spread — so saving rules must not blank the group title, and reloading must show exactly what was saved, not a stale cached value. The public picker reads the SAME stored fields through `readGroupRules`, so it must reflect the new numbers on its very next load, with no separate publish step.",
60
- expectedUiState: "After reload, the editor's four rule fields show the NEW values you typed, not the old ones and not blank. The buyer-facing picker, opened fresh, states the NEW rules in its rule-summary text — if it still shows the old numbers, something is caching the group document past this write.",
61
- endResult: "BEFORE: a group had no rules to edit at all. AFTER: a seller's edit is live on the storefront immediately, and a reload of the editor proves the write actually persisted rather than only updating client-side state.",
62
- },
63
- "checklist-selling-spares-seller-and-group-editing-group-stock-partial-failure-reported": {
64
- roles: ["seller"],
65
- startPage: "/store/products",
66
- steps: [
67
- SELLER_SIGNIN,
68
- "Open a group parent's editor in TWO browser tabs.",
69
- "In tab 1, unlink one child from the group and confirm it.",
70
- "Switch to tab 2 (which still shows the now-unlinked child in its member list) and, without reloading, edit that same child's stock PLUS a different, still-valid child's stock.",
71
- "Click \"Save group stock\" in tab 2.",
72
- ],
73
- expectedBehaviour: "The route re-fetches the CURRENT member list server-side before writing, so the unlinked child's id is no longer a member and is rejected — but the request must not fail as a whole. The still-valid child's stock edit must still be written. This is the 207-style partial result the route is built for.",
74
- expectedUiState: "A toast or message reports a partial result (e.g. \"Updated 1; 1 could not be updated.\"). Reloading the editor shows the still-valid child's stock at its NEW value — the save for that row was not discarded just because the other row was stale.",
75
- endResult: "BEFORE this endpoint existed, there was no shared editor and so no partial-failure case to handle. AFTER: a stale row (the common case when two admins or two tabs edit the same group near-simultaneously) costs nothing to the rows that were still valid.",
76
- },
77
- };
@@ -1,2 +0,0 @@
1
- import type { AuthoredCase } from "./_types";
2
- export declare const authored: Record<string, AuthoredCase>;