@faststore/core 4.6.0-dev.3 → 4.6.0-dev.5

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.
@@ -1,9 +1,9 @@
1
1
 
2
- > @faststore/core@4.6.0-dev.2 generate /home/runner/work/faststore/faststore/packages/core
2
+ > @faststore/core@4.6.0-dev.4 generate /home/runner/work/faststore/faststore/packages/core
3
3
  > pnpm run gen-types && pnpm run cache-graphql
4
4
 
5
5
 
6
- > @faststore/core@4.6.0-dev.2 gen-types /home/runner/work/faststore/faststore/packages/core
6
+ > @faststore/core@4.6.0-dev.4 gen-types /home/runner/work/faststore/faststore/packages/core
7
7
  > node ../cli/bin/run generate-types .
8
8
 
9
9
  [STARTED] Parse Configuration
@@ -19,7 +19,7 @@
19
19
  [COMPLETED] Generate to /home/runner/work/faststore/faststore/packages/core/@generated/
20
20
  [COMPLETED] Generate outputs
21
21
 
22
- > @faststore/core@4.6.0-dev.2 cache-graphql /home/runner/work/faststore/faststore/packages/core
22
+ > @faststore/core@4.6.0-dev.4 cache-graphql /home/runner/work/faststore/faststore/packages/core
23
23
  > node ../cli/bin/run cache-graphql --config=./discovery.config.default.js --queries=./@generated/persisted-documents.json
24
24
 
25
25
  [Info] - Config file location: /home/runner/work/faststore/faststore/packages/core/discovery.config.default.js
@@ -1,18 +1,20 @@
1
1
 
2
- > @faststore/core@4.6.0-dev.2 test /home/runner/work/faststore/faststore/packages/core
2
+ > @faststore/core@4.6.0-dev.4 test /home/runner/work/faststore/faststore/packages/core
3
3
  > vitest run
4
4
 
5
5
 
6
6
   RUN  v4.0.18 /home/runner/work/faststore/faststore/packages/core
7
7
 
8
- ✓  browser  test/components/ui/ProductGallery/GalleryPageHeightLock.browser.test.tsx (8 tests) 310ms
9
8
  Not implemented: navigation to another Document
10
9
  Not implemented: navigation to another Document
11
- ✓  browser  test/sdk/ui/useScrollRestoration.browser.test.ts (43 tests) 881ms
12
- ✓  browser  test/components/account/ContractSwitcher.browser.test.tsx (13 tests) 2268ms
13
- ✓ shows an error state when the list fails to load  726ms
14
- ✓ requires selecting a contract before Confirm is enabled, then switches (REQ-03)  347ms
15
- ✓  browser  test/sdk/session/reconcileSessionLocale.browser.test.ts (5 tests) 27ms
10
+ ✓  browser  test/components/ui/ProductGallery/GalleryPageHeightLock.browser.test.tsx (8 tests) 329ms
11
+ ✓  browser  test/sdk/ui/useScrollRestoration.browser.test.ts (43 tests) 968ms
12
+ ✓  browser  test/components/account/ContractSwitcher.browser.test.tsx (13 tests) 2506ms
13
+ ✓ shows an error state when the list fails to load  571ms
14
+ ✓ requires selecting a contract before Confirm is enabled, then switches (REQ-03)  321ms
15
+ ✓ keeps Confirm disabled when the selected contract is filtered out  336ms
16
+ ✓ does not reload when the switch returns false  303ms
17
+ ✓  browser  test/sdk/session/reconcileSessionLocale.browser.test.ts (5 tests) 45ms
16
18
  stderr | test/components/RecommendationShelf/RecommendationShelf.browser.test.tsx
17
19
  Error in optimistic validation: TypeError: Failed to parse URL from /api/graphql?operationName=ValidateCartMutation&operationHash=3c71b0d3fc2bade14df68abfa271858beb361b12
18
20
   at node:internal/deps/undici/undici:16416:13
@@ -45,8 +47,8 @@ Browserslist: browsers data (caniuse-lite) is 6 months old. Please run:
45
47
  stderr | test/components/RecommendationShelf/RecommendationShelf.browser.test.tsx > RecommendationShelf > renders nothing when there is an error
46
48
  Error fetching recommendations undefined boom for campaign vrn:recommendations:acc:rec-top-items-v2:campaign-1
47
49
 
48
- ✓  browser  test/components/RecommendationShelf/RecommendationShelf.browser.test.tsx (8 tests) 244ms
49
- ✓  browser  test/sdk/recommendations/useRecommendationShelf.browser.test.tsx (10 tests) 104ms
50
+ ✓  browser  test/components/RecommendationShelf/RecommendationShelf.browser.test.tsx (8 tests) 287ms
51
+ ✓  browser  test/sdk/recommendations/useRecommendationShelf.browser.test.tsx (10 tests) 59ms
50
52
  stderr | test/pages/password-protection.browser.test.tsx > PasswordProtectionLogin > posts the password and redirects to the requested return path
51
53
  Warning: An update to PasswordProtectionLogin inside a test was not wrapped in act(...).
52
54
 
@@ -132,6 +134,7 @@ act(() => {
132
134
  This ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act
133
135
  at PasswordProtectionLogin (/home/runner/work/faststore/faststore/packages/core/src/pages/password-protection/index.tsx:19:69)
134
136
 
137
+ ✓  browser  test/sdk/session/getInitialSession.browser.test.ts (6 tests) 15ms
135
138
  stderr | test/pages/password-protection.browser.test.tsx > PasswordProtectionLogin > uses the fallback invalid-password message when API omits an error
136
139
  Warning: An update to PasswordProtectionLogin inside a test was not wrapped in act(...).
137
140
 
@@ -276,12 +279,11 @@ act(() => {
276
279
  This ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act
277
280
  at PasswordProtectionLogin (/home/runner/work/faststore/faststore/packages/core/src/pages/password-protection/index.tsx:19:69)
278
281
 
279
- ✓  browser  test/pages/password-protection.browser.test.tsx (6 tests) 844ms
280
- ✓ renders the password protection form  351ms
281
- ✓  browser  test/sdk/session/getInitialSession.browser.test.ts (6 tests) 13ms
282
- ✓  browser  test/sdk/account/changeContractToken.browser.test.ts (9 tests) 26ms
283
- ✓  browser  test/components/account/OrganizationDrawer.browser.test.tsx (5 tests) 919ms
284
- ✓ renders the menu view with contract details and manage footer  455ms
282
+ ✓  browser  test/pages/password-protection.browser.test.tsx (6 tests) 1802ms
283
+ ✓ renders the password protection form  835ms
284
+ ✓  browser  test/components/account/OrganizationDrawer.browser.test.tsx (5 tests) 1421ms
285
+ ✓ renders the menu view with contract details and manage footer  824ms
286
+ ✓  browser  test/sdk/account/changeContractToken.browser.test.ts (9 tests) 71ms
285
287
  stderr | test/sdk/localization/store-url.browser.test.ts
286
288
  Error in optimistic validation: TypeError: Cannot read properties of undefined (reading 'read')
287
289
  at waitForSessionValidated (/home/runner/work/faststore/faststore/packages/core/src/sdk/cart/waitForSessionValidated.ts:16:32)
@@ -290,10 +292,10 @@ This ensures that you're testing the behavior the user would see in the browser.
290
292
  at a (/home/runner/work/faststore/faststore/packages/sdk/dist/es/index.mjs:354:23)
291
293
   at processTicksAndRejections (node:internal/process/task_queues:103:5)
292
294
 
293
- ✓  browser  test/sdk/localization/store-url.browser.test.ts (3 tests) 11ms
294
- ✓  browser  test/sdk/account/useAvailableContracts.browser.test.ts (6 tests) 32ms
295
- ✓  browser  test/components/templates/SearchPage/SearchWrapper.browser.test.tsx (3 tests) 27ms
296
- ✓  browser  test/sdk/account/useSwitchContract.browser.test.ts (4 tests) 34ms
295
+ ✓  browser  test/sdk/localization/store-url.browser.test.ts (3 tests) 6ms
296
+ ✓  browser  test/components/templates/SearchPage/SearchWrapper.browser.test.tsx (3 tests) 43ms
297
+ ✓  browser  test/sdk/account/useAvailableContracts.browser.test.ts (6 tests) 48ms
298
+ ✓  browser  test/sdk/account/useSwitchContract.browser.test.ts (4 tests) 48ms
297
299
  stderr | test/components/account/doLogout.browser.test.ts
298
300
  Error in optimistic validation: TypeError: Cannot read properties of undefined (reading 'read')
299
301
  at waitForSessionValidated (/home/runner/work/faststore/faststore/packages/core/src/sdk/cart/waitForSessionValidated.ts:16:32)
@@ -302,8 +304,9 @@ This ensures that you're testing the behavior the user would see in the browser.
302
304
  at a (/home/runner/work/faststore/faststore/packages/sdk/dist/es/index.mjs:354:23)
303
305
   at processTicksAndRejections (node:internal/process/task_queues:103:5)
304
306
 
305
- ✓  browser  test/components/account/doLogout.browser.test.ts (1 test) 21ms
306
- ✓  browser  test/components/account/OrganizationDrawerHeader.browser.test.tsx (3 tests) 191ms
307
+ ✓  browser  test/components/account/doLogout.browser.test.ts (1 test) 33ms
308
+ ✓  browser  test/components/account/OrganizationDrawerHeader.browser.test.tsx (3 tests) 275ms
309
+ ✓  browser  test/components/account/OrganizationDrawerFooter.browser.test.tsx (3 tests) 293ms
307
310
  stderr | test/sdk/account/clearPersistedSessionState.browser.test.ts
308
311
  Error in optimistic validation: TypeError: Cannot read properties of undefined (reading 'read')
309
312
  at waitForSessionValidated (/home/runner/work/faststore/faststore/packages/core/src/sdk/cart/waitForSessionValidated.ts:16:32)
@@ -312,13 +315,10 @@ This ensures that you're testing the behavior the user would see in the browser.
312
315
  at a (/home/runner/work/faststore/faststore/packages/sdk/dist/es/index.mjs:354:23)
313
316
   at processTicksAndRejections (node:internal/process/task_queues:103:5)
314
317
 
315
- ✓  browser  test/sdk/account/clearPersistedSessionState.browser.test.ts (1 test) 4ms
316
- ✓  browser  test/components/account/OrganizationDrawerFooter.browser.test.tsx (3 tests) 253ms
317
- ✓  browser  test/utils/isLocalHost.browser.test.ts (3 tests) 4ms
318
- ✓  browser  test/sdk/session/reconcileSessionLocale.disabled.browser.test.ts (1 test) 3ms
319
- ✓  browser  test/components/skeletons/ProductGridSkeleton.browser.test.tsx (2 tests) 31ms
320
- ✓  node  test/utils/localization/bindingPaths.test.ts (71 tests) 21ms
321
- ✓  node  test/server/password-protection-service.test.ts (22 tests) 26ms
318
+ ✓  browser  test/sdk/account/clearPersistedSessionState.browser.test.ts (1 test) 10ms
319
+ ✓  browser  test/utils/isLocalHost.browser.test.ts (3 tests) 5ms
320
+ ✓  browser  test/sdk/session/reconcileSessionLocale.disabled.browser.test.ts (1 test) 4ms
321
+ ✓  node  test/utils/localization/bindingPaths.test.ts (71 tests) 31ms
322
322
  stderr | test/sdk/account/refreshToken.browser.test.ts
323
323
  Error in optimistic validation: TypeError: Cannot read properties of undefined (reading 'read')
324
324
  at waitForSessionValidated (/home/runner/work/faststore/faststore/packages/core/src/sdk/cart/waitForSessionValidated.ts:16:32)
@@ -327,11 +327,13 @@ This ensures that you're testing the behavior the user would see in the browser.
327
327
  at a (/home/runner/work/faststore/faststore/packages/sdk/dist/es/index.mjs:354:23)
328
328
   at processTicksAndRejections (node:internal/process/task_queues:103:5)
329
329
 
330
- ✓  node  test/utils/match-url.test.ts (10 tests) 8ms
331
- ✓  browser  test/sdk/account/refreshToken.browser.test.ts (1 test) 4ms
332
- ✓  node  test/sdk/localization/useBindingSelector.test.tsx (22 tests) 12ms
333
- ✓  node  test/pages/api/unlock.test.ts (15 tests) 125ms
334
- ✓  node  test/sdk/localization/bindingSelector.test.ts (18 tests) 7ms
330
+ ✓  node  test/server/password-protection-service.test.ts (22 tests) 33ms
331
+ ✓  browser  test/components/skeletons/ProductGridSkeleton.browser.test.tsx (2 tests) 41ms
332
+ ✓  browser  test/sdk/account/refreshToken.browser.test.ts (1 test) 7ms
333
+ ✓  node  test/utils/match-url.test.ts (10 tests) 10ms
334
+ ✓  node  test/pages/api/unlock.test.ts (15 tests) 147ms
335
+ ✓  node  test/sdk/localization/useBindingSelector.test.tsx (22 tests) 15ms
336
+ ✓  node  test/sdk/localization/bindingSelector.test.ts (18 tests) 8ms
335
337
  stderr | test/components/search/SearchInputComponent.test.tsx
336
338
  Warning: forwardRef render functions accept exactly two parameters: props and ref. Did you forget to use the ref parameter?
337
339
 
@@ -395,11 +397,11 @@ Warning: React does not recognize the `providerProps` prop on a DOM element. If
395
397
  at Suspense
396
398
  at Wrapper (/home/runner/work/faststore/faststore/packages/core/test/components/search/SearchInputComponent.test.tsx:106:20)
397
399
 
398
- ✓  node  test/components/search/SearchInputComponent.test.tsx (6 tests) 68ms
399
- ✓  node  test/utils/cookieCacheBusting.test.ts (10 tests) 8ms
400
- ✓  node  test/sdk/search/useSearchHistory.test.ts (13 tests) 51ms
401
- ✓  node  test/experimental/myAccountCmsServerSideProps.test.ts (5 tests) 7ms
402
- ✓  node  test/utils/clearCookies.test.ts (20 tests) 17ms
400
+ ✓  node  test/components/search/SearchInputComponent.test.tsx (6 tests) 90ms
401
+ ✓  node  test/utils/cookieCacheBusting.test.ts (10 tests) 19ms
402
+ ✓  node  test/sdk/search/useSearchHistory.test.ts (13 tests) 57ms
403
+ ✓  node  test/experimental/myAccountCmsServerSideProps.test.ts (5 tests) 12ms
404
+ ✓  node  test/utils/clearCookies.test.ts (20 tests) 31ms
403
405
  stderr | test/pages/api/graphql.test.ts > /api/graphql error status propagation > propagates the upstream 400 from a wrapped BadRequestError instead of 500
404
406
  Graphql execution returned with error: [
405
407
  {
@@ -492,64 +494,65 @@ Warning: React does not recognize the `providerProps` prop on a DOM element. If
492
494
  at file:///home/runner/work/faststore/faststore/node_modules/.pnpm/@vitest+runner@4.0.18/node_modules/@vitest/runner/dist/index.js:1653:37
493
495
  at Traces.$ (file:///home/runner/work/faststore/faststore/node_modules/.pnpm/vitest@4.0.18_@opentelemetry+api@1.9.0_@types+node@20.19.13_jiti@2.6.1_jsdom@27.4.0_sas_13be941c57d55f08f06eeaf1c180ddfe/node_modules/vitest/dist/chunks/traces.CCmnQaNT.js:142:27)
494
496
 
495
- ✓  node  test/pages/api/graphql.test.ts (17 tests) 30ms
496
- ✓  node  test/components/quotes/MyAccountListQuotesTable.test.tsx (12 tests) 302ms
497
- ✓  node  test/sdk/orderEntry/useOrderEntryOperation.test.ts (8 tests) 28ms
497
+ ✓  node  test/pages/api/graphql.test.ts (17 tests) 35ms
498
+ ✓  node  test/components/quotes/MyAccountListQuotesTable.test.tsx (12 tests) 373ms
499
+ ✓  node  test/components/quotes/MyAccountListQuotes.test.tsx (9 tests) 838ms
500
+ ✓ navigates with the search term on blur  363ms
501
+ ✓ navigates without a label param when the search is cleared  363ms
502
+ ✓  node  test/components/quotes/quoteFilters.test.ts (23 tests) 41ms
498
503
  stderr | test/sdk/account/useSetPassword.test.ts > useSetPassword > maps wrongcredentials error responses to the existing message
499
504
  Set password request failed: Bad Request
500
505
 
501
- ✓  node  test/sdk/account/useSetPassword.test.ts (6 tests) 31ms
502
- ✓  node  test/components/quotes/MyAccountListQuotes.test.tsx (9 tests) 830ms
503
- ✓ navigates with the search term on blur  361ms
504
- ✓ navigates without a label param when the search is cleared  361ms
505
- ✓  node  test/utils/multipleTemplates.test.ts (8 tests) 5ms
506
- ✓  node  test/components/quotes/quoteFilters.test.ts (23 tests) 29ms
506
+ ✓  node  test/sdk/account/useSetPassword.test.ts (6 tests) 52ms
507
+ ✓  node  test/sdk/orderEntry/useOrderEntryOperation.test.ts (8 tests) 43ms
508
+ ✓  node  test/utils/multipleTemplates.test.ts (8 tests) 6ms
507
509
  ✓  node  test/utils/localization/localizeRedirectDestination.test.ts (11 tests) 6ms
508
- ✓  node  test/sdk/orderEntry/useOrderEntryUpload.test.ts (8 tests) 42ms
509
- ✓  node  test/components/quotes/MyAccountQuotesFilterSlider.test.tsx (5 tests) 121ms
510
- ✓  node  test/sdk/analytics/useStartRecommendationSession.test.ts (6 tests) 47ms
511
- ✓  node  test/sdk/orderEntry/useOrderEntry.test.ts (8 tests) 28ms
512
- ✓  node  test/proxy.localization.test.ts (5 tests) 23ms
510
+ ✓  node  test/sdk/orderEntry/useOrderEntryUpload.test.ts (8 tests) 40ms
511
+ ✓  node  test/components/quotes/MyAccountQuotesFilterSlider.test.tsx (5 tests) 175ms
512
+ ✓  node  test/sdk/analytics/useStartRecommendationSession.test.ts (6 tests) 58ms
513
+ ✓  node  test/sdk/orderEntry/useOrderEntry.test.ts (8 tests) 42ms
514
+ ✓  node  test/proxy.localization.test.ts (5 tests) 37ms
513
515
  ✓  node  test/sdk/account/getMyAccountRoutes.test.ts (10 tests) 6ms
514
- ✓  node  test/sdk/session/syncSalesChannelFromOrderForm.test.ts (6 tests) 5ms
515
- ✓  node  test/server/index.test.ts (7 tests) 874ms
516
- ✓ should handle options and execute  439ms
517
- ✓  node  test/proxy.test.ts (4 tests) 18ms
518
- ✓  node  test/server/webops-api.test.ts (9 tests) 11ms
519
- ✓  node  test/components/quotes/MyAccountQuotesSelectedTags.test.tsx (8 tests) 81ms
520
- ✓  node  test/sdk/orderEntry/useOrderFormItems.test.ts (7 tests) 36ms
521
- ✓  node  test/server/content/service.test.ts (5 tests) 4ms
522
- ✓  node  test/sdk/cart/waitForSessionValidated.test.ts (5 tests) 10ms
516
+ ✓  node  test/server/index.test.ts (7 tests) 1128ms
517
+ ✓ should return a valid merged GraphQL schema  315ms
518
+ ✓ should handle options and execute  554ms
519
+ ✓  node  test/sdk/session/syncSalesChannelFromOrderForm.test.ts (6 tests) 7ms
520
+ ✓  node  test/proxy.test.ts (4 tests) 17ms
521
+ ✓  node  test/server/webops-api.test.ts (9 tests) 12ms
522
+ ✓  node  test/components/quotes/MyAccountQuotesSelectedTags.test.tsx (8 tests) 111ms
523
+ ✓  node  test/server/content/service.test.ts (5 tests) 7ms
524
+ ✓  node  test/sdk/orderEntry/useOrderFormItems.test.ts (7 tests) 41ms
523
525
  ✓  node  test/sdk/account/refreshToken.test.ts (5 tests) 7ms
524
- ✓  node  test/server/cms/global.test.ts (3 tests) 4ms
525
- ✓  node  test/sdk/localization/store-url.test.ts (1 test) 3ms
526
- ✓  node  test/sdk/auth/useAuth.test.ts (5 tests) 26ms
527
- ✓  node  test/components/quotes/MyAccountQuotesStatusSelector.test.tsx (6 tests) 110ms
528
- ✓  node  test/sdk/analytics/hasEnabledRecommendationShelf.test.ts (6 tests) 4ms
529
- ✓  node  test/utils/getRequestHostname.test.ts (12 tests) 5ms
530
- ✓  node  test/pages/api/preview.test.ts (2 tests) 6ms
531
- ✓  node  test/utils/validateSessionRefreshToken.test.ts (6 tests) 4ms
532
- ✓  node  test/components/search/SearchInput.test.ts (6 tests) 5ms
533
- ✓  node  test/server/rootSpan.test.ts (4 tests) 30ms
534
- ✓  node  test/sdk/recommendations/vrn.test.ts (5 tests) 4ms
535
- ✓  node  test/server/cms/index.test.ts (2 tests) 5ms
536
- ✓  node  test/utils/retry.test.ts (5 tests) 10ms
537
- ✓  node  test/components/account/Layout.test.tsx (4 tests) 34ms
538
- ✓  node  test/sdk/recommendations/useRecommendationUserId.test.ts (4 tests) 184ms
539
- ✓  node  test/utils/unlockResponse.test.ts (11 tests) 3ms
526
+ ✓  node  test/sdk/cart/waitForSessionValidated.test.ts (5 tests) 12ms
527
+ ✓  node  test/server/cms/global.test.ts (3 tests) 10ms
528
+ ✓  node  test/sdk/localization/store-url.test.ts (1 test) 4ms
529
+ ✓  node  test/sdk/auth/useAuth.test.ts (5 tests) 34ms
530
+ ✓  node  test/components/quotes/MyAccountQuotesStatusSelector.test.tsx (6 tests) 161ms
531
+ ✓  node  test/sdk/analytics/hasEnabledRecommendationShelf.test.ts (6 tests) 6ms
532
+ ✓  node  test/utils/getRequestHostname.test.ts (12 tests) 8ms
533
+ ✓  node  test/server/rootSpan.test.ts (4 tests) 50ms
534
+ ✓  node  test/pages/api/preview.test.ts (2 tests) 9ms
535
+ ✓  node  test/utils/validateSessionRefreshToken.test.ts (6 tests) 5ms
536
+ ✓  node  test/components/search/SearchInput.test.ts (6 tests) 8ms
537
+ ✓  node  test/sdk/recommendations/vrn.test.ts (5 tests) 6ms
538
+ ✓  node  test/server/cms/index.test.ts (2 tests) 6ms
539
+ ✓  node  test/utils/retry.test.ts (5 tests) 16ms
540
+ ✓  node  test/components/account/Layout.test.tsx (4 tests) 41ms
541
+ ✓  node  test/sdk/recommendations/useRecommendationUserId.test.ts (4 tests) 182ms
542
+ ✓  node  test/utils/unlockResponse.test.ts (11 tests) 7ms
540
543
  ✓  node  test/server/cms/myAccountDefaultSections.test.ts (5 tests) 5ms
541
- ✓  node  test/sdk/recommendations/useRecommendations.test.ts (2 tests) 3ms
542
- ✓  node  test/utils/isLocalHost.test.ts (7 tests) 4ms
543
- ✓  node  test/components/account/OrganizationDrawerBody.test.tsx (3 tests) 41ms
544
- ✓  node  test/utils/userOrderStatus.test.ts (3 tests) 3ms
545
- ✓  node  test/sdk/analytics/utils.test.ts (2 tests) 3ms
546
- ✓  node  test/instrumentation.test.ts (3 tests) 4ms
547
- ✓  node  test/components/auth/ProfileChallenge.test.tsx (3 tests) 32ms
544
+ ✓  node  test/sdk/recommendations/useRecommendations.test.ts (2 tests) 6ms
545
+ ✓  node  test/utils/isLocalHost.test.ts (7 tests) 5ms
546
+ ✓  node  test/utils/userOrderStatus.test.ts (3 tests) 5ms
547
+ ✓  node  test/components/account/OrganizationDrawerBody.test.tsx (3 tests) 55ms
548
+ ✓  node  test/sdk/analytics/utils.test.ts (2 tests) 4ms
549
+ ✓  node  test/components/auth/ProfileChallenge.test.tsx (3 tests) 29ms
550
+ ✓  node  test/instrumentation.test.ts (3 tests) 6ms
548
551
  ✓  node  test/sdk/account/clearPersistedSessionState.test.ts (1 test) 14ms
549
- ✓  node  test/components/quotes/MyAccountQuoteStatusBadge.test.tsx (2 tests) 23ms
552
+ ✓  node  test/components/quotes/MyAccountQuoteStatusBadge.test.tsx (2 tests) 26ms
550
553
 
551
554
   Test Files  82 passed (82)
552
555
   Tests  661 passed (661)
553
-  Start at  15:05:26
554
-  Duration  29.73s (transform 6.68s, setup 0ms, import 23.96s, tests 9.74s, environment 38.48s)
556
+  Start at  13:52:18
557
+  Duration  42.21s (transform 8.23s, setup 0ms, import 32.14s, tests 12.57s, environment 58.03s)
555
558
 
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [4.6.0-dev.5](https://github.com/vtex/faststore/compare/v4.6.0-dev.4...v4.6.0-dev.5) (2026-08-13)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **core:** add experimental.revalidate404 and skip PLP query on notFound ([855a3ee](https://github.com/vtex/faststore/commit/855a3ee2e3393ee092d4b261ad83a8757289e132))
11
+ - **core:** revalidate ISR cache for notFound PDP/PLP paths ([1d1015e](https://github.com/vtex/faststore/commit/1d1015e8874d794c5f54e572afc3c676fabce69c))
12
+
13
+ # [4.6.0-dev.4](https://github.com/vtex/faststore/compare/v4.6.0-dev.3...v4.6.0-dev.4) (2026-08-12)
14
+
15
+ **Note:** Version bump only for package @faststore/core
16
+
6
17
  # [4.6.0-dev.3](https://github.com/vtex/faststore/compare/v4.6.0-dev.2...v4.6.0-dev.3) (2026-08-12)
7
18
 
8
19
  **Note:** Version bump only for package @faststore/core
@@ -191,6 +191,8 @@ module.exports = {
191
191
  nofollow: false,
192
192
  preact: false,
193
193
  enableRedirects: false,
194
+ // ISR window (seconds) for notFound PDP/PLP paths.
195
+ revalidate404: 60 * 5, // 5 minutes
194
196
  enableSearchSSR: false,
195
197
  enableFaststoreMyAccount: false,
196
198
  useIsGiftFromOrderForm: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faststore/core",
3
- "version": "4.6.0-dev.3",
3
+ "version": "4.6.0-dev.5",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -71,11 +71,11 @@
71
71
  "style-loader": "^3.3.1",
72
72
  "swr": "^2.2.5",
73
73
  "use-sync-external-store": "^1.6.0",
74
- "@faststore/diagnostics": "4.6.0-dev.3",
75
- "@faststore/lighthouse": "4.6.0-dev.3",
76
- "@faststore/sdk": "4.6.0-dev.3",
77
- "@faststore/ui": "4.6.0-dev.3",
78
- "@faststore/api": "4.6.0-dev.3"
74
+ "@faststore/api": "4.6.0-dev.5",
75
+ "@faststore/lighthouse": "4.6.0-dev.5",
76
+ "@faststore/diagnostics": "4.6.0-dev.5",
77
+ "@faststore/sdk": "4.6.0-dev.5",
78
+ "@faststore/ui": "4.6.0-dev.5"
79
79
  },
80
80
  "devDependencies": {
81
81
  "@cypress/code-coverage": "^3.12.1",
@@ -191,16 +191,6 @@ export const getStaticProps: GetStaticProps<
191
191
  globalSectionsFooterPromise,
192
192
  ])
193
193
 
194
- const [serverManyProductsData, serverManyProductsVariables] =
195
- await fetchServerManyProducts({
196
- itemsPerPage: cmsPage?.settings?.productGallery?.itemsPerPage,
197
- sort: cmsPage?.settings?.productGallery
198
- ?.sortBySelection as SearchState['sort'],
199
- term: '',
200
- selectedFacets: data?.collection?.meta.selectedFacets,
201
- locale,
202
- })
203
-
204
194
  const notFound = errors.find(isNotFoundError)
205
195
 
206
196
  if (notFound) {
@@ -216,6 +206,7 @@ export const getStaticProps: GetStaticProps<
216
206
 
217
207
  return {
218
208
  notFound: true,
209
+ revalidate: storeConfig.experimental.revalidate404 ?? 60 * 5, // 5 minutes
219
210
  }
220
211
  }
221
212
 
@@ -224,6 +215,16 @@ export const getStaticProps: GetStaticProps<
224
215
  throw errors[0]
225
216
  }
226
217
 
218
+ const [serverManyProductsData, serverManyProductsVariables] =
219
+ await fetchServerManyProducts({
220
+ itemsPerPage: cmsPage?.settings?.productGallery?.itemsPerPage,
221
+ sort: cmsPage?.settings?.productGallery
222
+ ?.sortBySelection as SearchState['sort'],
223
+ term: '',
224
+ selectedFacets: data?.collection?.meta.selectedFacets,
225
+ locale,
226
+ })
227
+
227
228
  const globalSectionsResult = injectGlobalSections({
228
229
  globalSections,
229
230
  globalSectionsHeader,
@@ -47,6 +47,7 @@ import type { PreviewData } from 'src/server/content/types'
47
47
  type StoreConfig = typeof storeConfig & {
48
48
  experimental: {
49
49
  revalidate?: number
50
+ revalidate404?: number
50
51
  enableClientOffer?: boolean
51
52
  }
52
53
  }
@@ -482,6 +483,8 @@ export const getStaticProps: GetStaticProps<
482
483
 
483
484
  return {
484
485
  notFound: true,
486
+ revalidate:
487
+ (storeConfig as StoreConfig).experimental.revalidate404 ?? 60 * 5, // 5 minutes
485
488
  }
486
489
  }
487
490