@pvh-afl/core 1.2.14 → 1.2.15

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 (33) hide show
  1. package/dist/common/circuit-breaker.d.ts +81 -0
  2. package/dist/common/circuit-breaker.d.ts.map +1 -0
  3. package/dist/common/circuit-breaker.js +163 -0
  4. package/dist/common/circuit-breaker.js.map +1 -0
  5. package/dist/common/index.d.ts +1 -0
  6. package/dist/common/index.d.ts.map +1 -1
  7. package/dist/common/index.js +1 -0
  8. package/dist/common/index.js.map +1 -1
  9. package/dist/integrations/commerce/commerce.types.d.ts +59 -0
  10. package/dist/integrations/commerce/commerce.types.d.ts.map +1 -1
  11. package/dist/integrations/commerce/shopify.service.d.ts +17 -1
  12. package/dist/integrations/commerce/shopify.service.d.ts.map +1 -1
  13. package/dist/integrations/commerce/shopify.service.js +202 -0
  14. package/dist/integrations/commerce/shopify.service.js.map +1 -1
  15. package/dist/integrations/integrations.module.d.ts.map +1 -1
  16. package/dist/integrations/integrations.module.js +3 -0
  17. package/dist/integrations/integrations.module.js.map +1 -1
  18. package/dist/integrations/search/index.d.ts +2 -0
  19. package/dist/integrations/search/index.d.ts.map +1 -1
  20. package/dist/integrations/search/index.js +2 -0
  21. package/dist/integrations/search/index.js.map +1 -1
  22. package/dist/integrations/search/search-fallback.service.d.ts +93 -0
  23. package/dist/integrations/search/search-fallback.service.d.ts.map +1 -0
  24. package/dist/integrations/search/search-fallback.service.js +339 -0
  25. package/dist/integrations/search/search-fallback.service.js.map +1 -0
  26. package/dist/integrations/search/search.types.d.ts +10 -0
  27. package/dist/integrations/search/search.types.d.ts.map +1 -1
  28. package/dist/integrations/search/search.types.js.map +1 -1
  29. package/dist/integrations/search/shopify-search.mapper.d.ts +31 -0
  30. package/dist/integrations/search/shopify-search.mapper.d.ts.map +1 -0
  31. package/dist/integrations/search/shopify-search.mapper.js +365 -0
  32. package/dist/integrations/search/shopify-search.mapper.js.map +1 -0
  33. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"shopify.service.js","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shopify.service.js","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.module.d.ts","sourceRoot":"","sources":["../../src/integrations/integrations.module.ts"],"names":[],"mappings":"AAyBA,qBAwCa,kBAAkB;CAAG"}
1
+ {"version":3,"file":"integrations.module.d.ts","sourceRoot":"","sources":["../../src/integrations/integrations.module.ts"],"names":[],"mappings":"AA0BA,qBA0Ca,kBAAkB;CAAG"}
@@ -16,6 +16,7 @@ const capillary_auth_service_1 = require("./loyalty/capillary-auth.service");
16
16
  const capillary_coupon_service_1 = require("./loyalty/capillary-coupon.service");
17
17
  // Search
18
18
  const wizzy_service_1 = require("./search/wizzy.service");
19
+ const search_fallback_service_1 = require("./search/search-fallback.service");
19
20
  // Reviews
20
21
  const judgeme_service_1 = require("./reviews/judgeme.service");
21
22
  // Wishlist
@@ -44,6 +45,7 @@ exports.IntegrationsModule = IntegrationsModule = tslib_1.__decorate([
44
45
  capillary_coupon_service_1.CapillaryCouponService,
45
46
  // Search
46
47
  wizzy_service_1.WizzyService,
48
+ search_fallback_service_1.SearchFallbackService,
47
49
  // Reviews
48
50
  judgeme_service_1.JudgeMeService,
49
51
  // Wishlist
@@ -62,6 +64,7 @@ exports.IntegrationsModule = IntegrationsModule = tslib_1.__decorate([
62
64
  capillary_auth_service_1.CapillaryAuthService,
63
65
  capillary_coupon_service_1.CapillaryCouponService,
64
66
  wizzy_service_1.WizzyService,
67
+ search_fallback_service_1.SearchFallbackService,
65
68
  judgeme_service_1.JudgeMeService,
66
69
  swish_service_1.SwishService,
67
70
  azure_blob_service_1.AzureBlobService,
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.module.js","sourceRoot":"","sources":["../../src/integrations/integrations.module.ts"],"names":[],"mappings":";;;;AAAA,2CAAwC;AACxC,+DAA2D;AAC3D,yEAAoE;AAEpE,8BAA8B;AAC9B,gEAAoE;AACpE,4EAAuE;AACvE,kFAA6E;AAC7E,iEAA4D;AAC5D,uDAAmD;AACnD,oBAAoB;AACpB,6EAAwE;AACxE,iFAA4E;AAC5E,SAAS;AACT,0DAAsD;AACtD,UAAU;AACV,+DAA2D;AAC3D,WAAW;AACX,yDAAqD;AACrD,UAAU;AACV,qEAAgE;AAChE,2EAAsE;AAEtE,iEAAiE;AA0C1D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IAxC9B,IAAA,eAAM,EAAC;QACN,SAAS,EAAE;YACT,wCAAkB;YAClB,iDAAsB;YACtB,WAAW;YACX,wCAAsB;YACtB,2CAAmB;YACnB,iDAAsB;YACtB,MAAM;YACN,qCAAgB;YAChB,4BAAY;YACZ,UAAU;YACV,6CAAoB;YACpB,iDAAsB;YACtB,SAAS;YACT,4BAAY;YACZ,UAAU;YACV,gCAAc;YACd,WAAW;YACX,4BAAY;YACZ,UAAU;YACV,qCAAgB;YAChB,2CAAmB;SACpB;QACD,OAAO,EAAE;YACP,wCAAkB;YAClB,gEAAgE;YAChE,wCAAsB;YACtB,2CAAmB;YACnB,iDAAsB;YACtB,4BAAY;YACZ,6CAAoB;YACpB,iDAAsB;YACtB,4BAAY;YACZ,gCAAc;YACd,4BAAY;YACZ,qCAAgB;YAChB,2CAAmB;SACpB;KACF,CAAC;GACW,kBAAkB,CAAG"}
1
+ {"version":3,"file":"integrations.module.js","sourceRoot":"","sources":["../../src/integrations/integrations.module.ts"],"names":[],"mappings":";;;;AAAA,2CAAwC;AACxC,+DAA2D;AAC3D,yEAAoE;AAEpE,8BAA8B;AAC9B,gEAAoE;AACpE,4EAAuE;AACvE,kFAA6E;AAC7E,iEAA4D;AAC5D,uDAAmD;AACnD,oBAAoB;AACpB,6EAAwE;AACxE,iFAA4E;AAC5E,SAAS;AACT,0DAAsD;AACtD,8EAAyE;AACzE,UAAU;AACV,+DAA2D;AAC3D,WAAW;AACX,yDAAqD;AACrD,UAAU;AACV,qEAAgE;AAChE,2EAAsE;AAEtE,iEAAiE;AA4C1D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IA1C9B,IAAA,eAAM,EAAC;QACN,SAAS,EAAE;YACT,wCAAkB;YAClB,iDAAsB;YACtB,WAAW;YACX,wCAAsB;YACtB,2CAAmB;YACnB,iDAAsB;YACtB,MAAM;YACN,qCAAgB;YAChB,4BAAY;YACZ,UAAU;YACV,6CAAoB;YACpB,iDAAsB;YACtB,SAAS;YACT,4BAAY;YACZ,+CAAqB;YACrB,UAAU;YACV,gCAAc;YACd,WAAW;YACX,4BAAY;YACZ,UAAU;YACV,qCAAgB;YAChB,2CAAmB;SACpB;QACD,OAAO,EAAE;YACP,wCAAkB;YAClB,gEAAgE;YAChE,wCAAsB;YACtB,2CAAmB;YACnB,iDAAsB;YACtB,4BAAY;YACZ,6CAAoB;YACpB,iDAAsB;YACtB,4BAAY;YACZ,+CAAqB;YACrB,gCAAc;YACd,4BAAY;YACZ,qCAAgB;YAChB,2CAAmB;SACpB;KACF,CAAC;GACW,kBAAkB,CAAG"}
@@ -2,4 +2,6 @@ export * from './wizzy.service';
2
2
  export * from './wizzy.types';
3
3
  export * from './search.types';
4
4
  export * from './search.mapper';
5
+ export * from './shopify-search.mapper';
6
+ export * from './search-fallback.service';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/search/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/search/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC"}
@@ -5,4 +5,6 @@ tslib_1.__exportStar(require("./wizzy.service"), exports);
5
5
  tslib_1.__exportStar(require("./wizzy.types"), exports);
6
6
  tslib_1.__exportStar(require("./search.types"), exports);
7
7
  tslib_1.__exportStar(require("./search.mapper"), exports);
8
+ tslib_1.__exportStar(require("./shopify-search.mapper"), exports);
9
+ tslib_1.__exportStar(require("./search-fallback.service"), exports);
8
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/search/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,0DAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/search/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,0DAAgC;AAChC,kEAAwC;AACxC,oEAA0C"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Search Fallback Service
3
+ *
4
+ * Serves search from Shopify when the search vendor (Wizzy) is unavailable,
5
+ * and holds the circuit breaker that decides whether the vendor is worth
6
+ * calling at all. Wizzy's own service is untouched: classification happens
7
+ * here, from the IntegrationResponse it already returns.
8
+ *
9
+ * See afl-brand-tommy/docs/SEARCH-FALLBACK-IMPLEMENTATION.md.
10
+ */
11
+ import { BreakerState } from '../../common/circuit-breaker';
12
+ import { IntegrationError } from '../integration.types';
13
+ import { ShopifyCommerceService } from '../commerce/shopify.service';
14
+ import { SearchProductsResponse, AutocompleteResponse, SearchMapperConfig } from './search.types';
15
+ import { WizzyFilterRequest } from './wizzy.types';
16
+ export interface SearchFallbackConfig {
17
+ enabled: boolean;
18
+ maxConcurrentFallbacks: number;
19
+ /** Skip Wizzy entirely — for verifying the fallback path. */
20
+ forceFallback: boolean;
21
+ breaker: {
22
+ failureThreshold: number;
23
+ failureRateThreshold: number;
24
+ minimumCalls: number;
25
+ windowMs: number;
26
+ openMs: number;
27
+ maxOpenMs: number;
28
+ probeIntervalMs: number;
29
+ };
30
+ }
31
+ export declare const DEFAULT_FALLBACK_CONFIG: SearchFallbackConfig;
32
+ export declare class FallbackUnavailableError extends Error {
33
+ readonly originalError?: IntegrationError | undefined;
34
+ constructor(originalError?: IntegrationError | undefined);
35
+ }
36
+ export declare class SearchFallbackService {
37
+ private readonly shopify;
38
+ private config;
39
+ private breaker;
40
+ private brand;
41
+ private mapperConfig;
42
+ private inFlight;
43
+ constructor(shopify: ShopifyCommerceService);
44
+ configure(brand: string, config?: Partial<SearchFallbackConfig>, mapperConfig?: SearchMapperConfig): void;
45
+ isEnabled(): boolean;
46
+ /**
47
+ * Whether Wizzy should be called for this request. False means the breaker is
48
+ * open (or the fallback is forced), so the caller goes straight to Shopify.
49
+ */
50
+ shouldCallWizzy(): boolean;
51
+ /** Record a Wizzy outcome. Caller errors are not vendor failures. */
52
+ recordWizzyOutcome(success: boolean, errorCode?: string): void;
53
+ /** Should this error fall back at all? Caller errors must stay visible. */
54
+ isFallbackableError(errorCode?: string): boolean;
55
+ /**
56
+ * A products payload we can actually map. Wizzy can answer HTTP 200 with
57
+ * `status: 1` and still omit `payload.result`; that is a broken vendor
58
+ * response, not an empty result set (an empty result set is `result: []`).
59
+ */
60
+ isUsableProductsPayload(data?: {
61
+ payload?: {
62
+ result?: unknown;
63
+ };
64
+ }): boolean;
65
+ /** Same guard for the autocomplete payload shape. */
66
+ isUsableAutocompletePayload(data?: {
67
+ payload?: unknown;
68
+ }): boolean;
69
+ getBreakerState(): BreakerState;
70
+ getSnapshot(): Record<string, unknown>;
71
+ /** Keyword search fallback via the Storefront `search` query. */
72
+ searchProducts(query: string, productsCount: number, originalError?: IntegrationError, requestedFacetKeys?: string[]): Promise<SearchProductsResponse>;
73
+ /**
74
+ * Collection listing fallback via `collection(handle:)`.
75
+ *
76
+ * Shopify paginates by cursor and we hold no cursor state, so page N is
77
+ * served by over-fetching N*size and slicing. Beyond Shopify's `first`
78
+ * ceiling the page is reported as empty rather than wrong.
79
+ */
80
+ filterProducts(filters: WizzyFilterRequest, originalError?: IntegrationError): Promise<SearchProductsResponse>;
81
+ /** Autocomplete fallback via `predictiveSearch`. */
82
+ autocomplete(query: string, limit: number, originalError?: IntegrationError): Promise<AutocompleteResponse>;
83
+ /**
84
+ * Concurrency guard. Without a cache, an outage turns full search traffic
85
+ * into live Storefront calls; shedding past the cap keeps a vendor outage
86
+ * from becoming a Shopify outage.
87
+ */
88
+ private guarded;
89
+ /** Translate the Wizzy filter request into Shopify ProductFilter inputs. */
90
+ private toShopifyFilters;
91
+ private toCollectionSortKey;
92
+ }
93
+ //# sourceMappingURL=search-fallback.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-fallback.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/search/search-fallback.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAkB,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAKrE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAEnB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,6DAA6D;IAC7D,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED,eAAO,MAAM,uBAAuB,EAAE,oBAarC,CAAC;AAWF,qBAAa,wBAAyB,SAAQ,KAAK;IACrC,QAAQ,CAAC,aAAa,CAAC,EAAE,gBAAgB;gBAAhC,aAAa,CAAC,EAAE,gBAAgB,YAAA;CAItD;AAED,qBACa,qBAAqB;IAOpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,OAAO,CAAC,MAAM,CAAiD;IAC/D,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,YAAY,CAA6C;IACjE,OAAO,CAAC,QAAQ,CAAK;gBAEQ,OAAO,EAAE,sBAAsB;IAE5D,SAAS,CACP,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,OAAO,CAAC,oBAAoB,CAAM,EAC1C,YAAY,GAAE,kBAA0C,GACvD,IAAI;IAiBP,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,eAAe,IAAI,OAAO;IAY1B,qEAAqE;IACrE,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAiC9D,2EAA2E;IAC3E,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAIhD;;;;OAIG;IACH,uBAAuB,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,GAAG,OAAO;IAI3E,qDAAqD;IACrD,2BAA2B,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO;IAIlE,eAAe,IAAI,YAAY;IAI/B,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAStC,iEAAiE;IAC3D,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,gBAAgB,EAChC,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC5B,OAAO,CAAC,sBAAsB,CAAC;IAwBlC;;;;;;OAMG;IACG,cAAc,CAClB,OAAO,EAAE,kBAAkB,EAC3B,aAAa,CAAC,EAAE,gBAAgB,GAC/B,OAAO,CAAC,sBAAsB,CAAC;IA+FlC,oDAAoD;IAC9C,YAAY,CAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,gBAAgB,GAC/B,OAAO,CAAC,oBAAoB,CAAC;IAYhC;;;;OAIG;YACW,OAAO;IAyCrB,4EAA4E;IAC5E,OAAO,CAAC,gBAAgB;IAyCxB,OAAO,CAAC,mBAAmB;CAQ5B"}
@@ -0,0 +1,339 @@
1
+ "use strict";
2
+ /**
3
+ * Search Fallback Service
4
+ *
5
+ * Serves search from Shopify when the search vendor (Wizzy) is unavailable,
6
+ * and holds the circuit breaker that decides whether the vendor is worth
7
+ * calling at all. Wizzy's own service is untouched: classification happens
8
+ * here, from the IntegrationResponse it already returns.
9
+ *
10
+ * See afl-brand-tommy/docs/SEARCH-FALLBACK-IMPLEMENTATION.md.
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.SearchFallbackService = exports.FallbackUnavailableError = exports.DEFAULT_FALLBACK_CONFIG = void 0;
14
+ const tslib_1 = require("tslib");
15
+ const common_1 = require("@nestjs/common");
16
+ const logger_1 = require("../../common/logger");
17
+ const circuit_breaker_1 = require("../../common/circuit-breaker");
18
+ const shopify_service_1 = require("../commerce/shopify.service");
19
+ const search_types_1 = require("./search.types");
20
+ const shopify_search_mapper_1 = require("./shopify-search.mapper");
21
+ exports.DEFAULT_FALLBACK_CONFIG = {
22
+ enabled: false,
23
+ maxConcurrentFallbacks: 25,
24
+ forceFallback: false,
25
+ breaker: {
26
+ failureThreshold: 5,
27
+ failureRateThreshold: 0.5,
28
+ minimumCalls: 10,
29
+ windowMs: 30_000,
30
+ openMs: 60_000,
31
+ maxOpenMs: 300_000,
32
+ probeIntervalMs: 15_000,
33
+ },
34
+ };
35
+ /** Wizzy error codes that mean "our request was wrong", not "the vendor is down". */
36
+ const CALLER_ERROR_CODES = ['BAD_REQUEST', 'NOT_CONFIGURED'];
37
+ /** Variant option name carrying colour in this store's Shopify catalogue. */
38
+ const COLOUR_OPTION_NAME = 'Brand Colour';
39
+ /** Shopify's `first` ceiling — bounds the over-fetch used for deep pages. */
40
+ const SHOPIFY_MAX_FIRST = 250;
41
+ class FallbackUnavailableError extends Error {
42
+ originalError;
43
+ constructor(originalError) {
44
+ super(originalError?.message ?? 'Search is unavailable');
45
+ this.originalError = originalError;
46
+ this.name = 'FallbackUnavailableError';
47
+ }
48
+ }
49
+ exports.FallbackUnavailableError = FallbackUnavailableError;
50
+ let SearchFallbackService = class SearchFallbackService {
51
+ shopify;
52
+ config = exports.DEFAULT_FALLBACK_CONFIG;
53
+ breaker = new circuit_breaker_1.CircuitBreaker({ name: 'wizzy' });
54
+ brand = '';
55
+ mapperConfig = search_types_1.DEFAULT_MAPPER_CONFIG;
56
+ inFlight = 0;
57
+ constructor(shopify) {
58
+ this.shopify = shopify;
59
+ }
60
+ configure(brand, config = {}, mapperConfig = search_types_1.DEFAULT_MAPPER_CONFIG) {
61
+ this.brand = brand;
62
+ this.config = {
63
+ ...exports.DEFAULT_FALLBACK_CONFIG,
64
+ ...config,
65
+ breaker: { ...exports.DEFAULT_FALLBACK_CONFIG.breaker, ...(config.breaker ?? {}) },
66
+ };
67
+ this.mapperConfig = mapperConfig;
68
+ this.breaker = new circuit_breaker_1.CircuitBreaker({ name: 'wizzy', ...this.config.breaker });
69
+ logger_1.logger.info('Search fallback configured', {
70
+ brand,
71
+ enabled: this.config.enabled,
72
+ forceFallback: this.config.forceFallback,
73
+ });
74
+ }
75
+ isEnabled() {
76
+ return this.config.enabled;
77
+ }
78
+ /**
79
+ * Whether Wizzy should be called for this request. False means the breaker is
80
+ * open (or the fallback is forced), so the caller goes straight to Shopify.
81
+ */
82
+ shouldCallWizzy() {
83
+ if (!this.config.enabled)
84
+ return true;
85
+ if (this.config.forceFallback)
86
+ return false;
87
+ const decision = this.breaker.canAttempt();
88
+ if (decision.reason === 'probe') {
89
+ logger_1.logger.warn('Wizzy breaker probing', { brand: this.brand });
90
+ }
91
+ return decision.allowed;
92
+ }
93
+ /** Record a Wizzy outcome. Caller errors are not vendor failures. */
94
+ recordWizzyOutcome(success, errorCode) {
95
+ if (!this.config.enabled)
96
+ return;
97
+ if (success) {
98
+ const before = this.breaker.getState();
99
+ this.breaker.recordSuccess();
100
+ if (before === 'OPEN') {
101
+ logger_1.logger.warn('Wizzy breaker closed — vendor recovered', { brand: this.brand });
102
+ }
103
+ return;
104
+ }
105
+ if (errorCode && CALLER_ERROR_CODES.includes(errorCode)) {
106
+ logger_1.logger.error('Wizzy rejected our request; not counted against the breaker', {
107
+ brand: this.brand,
108
+ errorCode,
109
+ });
110
+ return;
111
+ }
112
+ const before = this.breaker.getState();
113
+ this.breaker.recordFailure();
114
+ const after = this.breaker.getState();
115
+ if (before === 'CLOSED' && after === 'OPEN') {
116
+ logger_1.logger.warn('Wizzy breaker opened', {
117
+ brand: this.brand,
118
+ errorCode,
119
+ snapshot: this.breaker.getSnapshot(),
120
+ });
121
+ }
122
+ }
123
+ /** Should this error fall back at all? Caller errors must stay visible. */
124
+ isFallbackableError(errorCode) {
125
+ return !errorCode || !CALLER_ERROR_CODES.includes(errorCode);
126
+ }
127
+ /**
128
+ * A products payload we can actually map. Wizzy can answer HTTP 200 with
129
+ * `status: 1` and still omit `payload.result`; that is a broken vendor
130
+ * response, not an empty result set (an empty result set is `result: []`).
131
+ */
132
+ isUsableProductsPayload(data) {
133
+ return Array.isArray(data?.payload?.result);
134
+ }
135
+ /** Same guard for the autocomplete payload shape. */
136
+ isUsableAutocompletePayload(data) {
137
+ return Boolean(data?.payload) && typeof data?.payload === 'object';
138
+ }
139
+ getBreakerState() {
140
+ return this.breaker.getState();
141
+ }
142
+ getSnapshot() {
143
+ return {
144
+ enabled: this.config.enabled,
145
+ forceFallback: this.config.forceFallback,
146
+ inFlightFallbacks: this.inFlight,
147
+ breaker: this.breaker.getSnapshot(),
148
+ };
149
+ }
150
+ /** Keyword search fallback via the Storefront `search` query. */
151
+ async searchProducts(query, productsCount, originalError, requestedFacetKeys) {
152
+ return this.guarded('search', originalError, async () => {
153
+ // The shopper's query is passed through untouched.
154
+ const result = await this.shopify.searchProducts({
155
+ query,
156
+ first: Math.min(productsCount, SHOPIFY_MAX_FIRST),
157
+ });
158
+ if (!result.success || !result.data) {
159
+ throw new FallbackUnavailableError(originalError ?? result.error);
160
+ }
161
+ return (0, shopify_search_mapper_1.mapShopifySearchResponse)(result.data.products, result.data.totalCount, result.data.filters, 1, productsCount, this.mapperConfig, requestedFacetKeys);
162
+ });
163
+ }
164
+ /**
165
+ * Collection listing fallback via `collection(handle:)`.
166
+ *
167
+ * Shopify paginates by cursor and we hold no cursor state, so page N is
168
+ * served by over-fetching N*size and slicing. Beyond Shopify's `first`
169
+ * ceiling the page is reported as empty rather than wrong.
170
+ */
171
+ async filterProducts(filters, originalError) {
172
+ return this.guarded('filter', originalError, async () => {
173
+ const handle = filters.categories?.[0];
174
+ const page = Math.max(1, filters.page ?? 1);
175
+ const perPage = filters.productsCount ?? 20;
176
+ const facetKeys = (filters.facets ?? []).map((f) => f.key);
177
+ // No collection handle means this was a filtered keyword search; the
178
+ // keyword path is the closer analogue.
179
+ if (!handle) {
180
+ const result = await this.shopify.searchProducts({
181
+ query: filters.q ?? '',
182
+ first: Math.min(perPage, SHOPIFY_MAX_FIRST),
183
+ filters: this.toShopifyFilters(filters),
184
+ });
185
+ if (!result.success || !result.data) {
186
+ throw new FallbackUnavailableError(originalError ?? result.error);
187
+ }
188
+ return (0, shopify_search_mapper_1.mapShopifySearchResponse)(result.data.products, result.data.totalCount, result.data.filters, page, perPage, this.mapperConfig, facetKeys);
189
+ }
190
+ const needed = page * perPage;
191
+ if (needed > SHOPIFY_MAX_FIRST) {
192
+ logger_1.logger.warn('Fallback pagination beyond Shopify window', {
193
+ brand: this.brand,
194
+ handle,
195
+ page,
196
+ perPage,
197
+ });
198
+ return {
199
+ products: [],
200
+ total: 0,
201
+ pages: Math.floor(SHOPIFY_MAX_FIRST / perPage),
202
+ currentPage: page,
203
+ productsPerPage: perPage,
204
+ hasExactMatch: false,
205
+ facets: [],
206
+ source: 'shopify',
207
+ };
208
+ }
209
+ const result = await this.shopify.getCollectionProducts({
210
+ handle,
211
+ first: needed,
212
+ filters: this.toShopifyFilters(filters),
213
+ sortKey: this.toCollectionSortKey(filters),
214
+ reverse: filters.sort?.[0]?.order === 'desc',
215
+ });
216
+ if (!result.success) {
217
+ throw new FallbackUnavailableError(originalError ?? result.error);
218
+ }
219
+ // Unknown handle: an empty page is the correct answer, not an error.
220
+ if (!result.data) {
221
+ return {
222
+ products: [],
223
+ total: 0,
224
+ pages: 0,
225
+ currentPage: page,
226
+ productsPerPage: perPage,
227
+ hasExactMatch: false,
228
+ facets: [],
229
+ source: 'shopify',
230
+ };
231
+ }
232
+ const windowStart = (page - 1) * perPage;
233
+ const slice = result.data.products.slice(windowStart, windowStart + perPage);
234
+ const mapped = (0, shopify_search_mapper_1.mapShopifySearchResponse)(slice, result.data.totalCount, result.data.filters, page, perPage, this.mapperConfig, facetKeys);
235
+ mapped.collectionTitle = result.data.title;
236
+ return mapped;
237
+ });
238
+ }
239
+ /** Autocomplete fallback via `predictiveSearch`. */
240
+ async autocomplete(query, limit, originalError) {
241
+ return this.guarded('autocomplete', originalError, async () => {
242
+ const result = await this.shopify.predictiveSearch(query, limit);
243
+ if (!result.success || !result.data) {
244
+ throw new FallbackUnavailableError(originalError ?? result.error);
245
+ }
246
+ return (0, shopify_search_mapper_1.mapShopifyAutocompleteResponse)(result.data, this.mapperConfig);
247
+ });
248
+ }
249
+ /**
250
+ * Concurrency guard. Without a cache, an outage turns full search traffic
251
+ * into live Storefront calls; shedding past the cap keeps a vendor outage
252
+ * from becoming a Shopify outage.
253
+ */
254
+ async guarded(endpoint, originalError, run) {
255
+ if (!this.config.enabled) {
256
+ throw new FallbackUnavailableError(originalError);
257
+ }
258
+ if (this.inFlight >= this.config.maxConcurrentFallbacks) {
259
+ logger_1.logger.error('Search fallback shed — concurrency cap reached', {
260
+ brand: this.brand,
261
+ endpoint,
262
+ inFlight: this.inFlight,
263
+ });
264
+ throw new FallbackUnavailableError(originalError);
265
+ }
266
+ this.inFlight++;
267
+ try {
268
+ const result = await run();
269
+ logger_1.logger.warn('Search served by Shopify fallback', {
270
+ brand: this.brand,
271
+ endpoint,
272
+ breakerState: this.breaker.getState(),
273
+ });
274
+ return result;
275
+ }
276
+ catch (error) {
277
+ if (error instanceof FallbackUnavailableError)
278
+ throw error;
279
+ logger_1.logger.error('Search fallback failed', {
280
+ brand: this.brand,
281
+ endpoint,
282
+ error: error instanceof Error ? error.message : 'Unknown',
283
+ });
284
+ throw new FallbackUnavailableError(originalError);
285
+ }
286
+ finally {
287
+ this.inFlight--;
288
+ }
289
+ }
290
+ /** Translate the Wizzy filter request into Shopify ProductFilter inputs. */
291
+ toShopifyFilters(filters) {
292
+ const out = [];
293
+ if (filters.inStock?.includes(true)) {
294
+ out.push({ available: true });
295
+ }
296
+ // Wizzy sends ranges as an array of { gte, lte }.
297
+ const range = (filters.sellingPrice ?? filters.price)?.[0];
298
+ if (range && (range.gte !== undefined || range.lte !== undefined)) {
299
+ out.push({ price: { min: range.gte, max: range.lte } });
300
+ }
301
+ for (const color of filters.colors ?? []) {
302
+ out.push({ variantOption: { name: COLOUR_OPTION_NAME, value: color } });
303
+ }
304
+ for (const size of filters.sizes ?? []) {
305
+ out.push({ variantOption: { name: 'Size', value: size } });
306
+ }
307
+ for (const brand of filters.brands ?? []) {
308
+ out.push({ productVendor: brand });
309
+ }
310
+ // Wizzy carries colour/product-type selections on `attributes`, keyed by
311
+ // attribute id (e.g. `product_Basic Colour`).
312
+ for (const [key, values] of Object.entries(filters.attributes ?? {})) {
313
+ const lowerKey = key.toLowerCase();
314
+ for (const value of values ?? []) {
315
+ if (lowerKey.includes('colour') || lowerKey.includes('color')) {
316
+ out.push({ variantOption: { name: COLOUR_OPTION_NAME, value } });
317
+ }
318
+ else if (lowerKey.includes('product_type')) {
319
+ out.push({ productType: value });
320
+ }
321
+ }
322
+ }
323
+ return out;
324
+ }
325
+ toCollectionSortKey(filters) {
326
+ const field = filters.sort?.[0]?.field;
327
+ if (field === 'sellingPrice' || field === 'price')
328
+ return 'PRICE';
329
+ if (field === 'createdAt')
330
+ return 'CREATED';
331
+ return 'COLLECTION_DEFAULT';
332
+ }
333
+ };
334
+ exports.SearchFallbackService = SearchFallbackService;
335
+ exports.SearchFallbackService = SearchFallbackService = tslib_1.__decorate([
336
+ (0, common_1.Injectable)(),
337
+ tslib_1.__metadata("design:paramtypes", [shopify_service_1.ShopifyCommerceService])
338
+ ], SearchFallbackService);
339
+ //# sourceMappingURL=search-fallback.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-fallback.service.js","sourceRoot":"","sources":["../../../src/integrations/search/search-fallback.service.ts"],"names":[],"mappings":"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"}
@@ -117,6 +117,8 @@ export interface SearchProduct {
117
117
  /** All color/size swatches for the product (all variants) */
118
118
  swatches: WizzyProductSwatches | null;
119
119
  }
120
+ /** Upstream that served a search response. */
121
+ export type SearchSource = 'wizzy' | 'shopify';
120
122
  /**
121
123
  * Unified search response for product filter/search endpoints
122
124
  * Combines mapped products with Wizzy metadata (facets, pagination)
@@ -138,6 +140,12 @@ export interface SearchProductsResponse {
138
140
  facets: WizzyFacet[];
139
141
  /** Collection title (fetched from Shopify) */
140
142
  collectionTitle?: string;
143
+ /**
144
+ * Which upstream served this response. Absent means Wizzy (the normal path);
145
+ * 'shopify' means the search vendor was unavailable and the Shopify fallback
146
+ * answered, so facets are partial and `searchedKey` is not present.
147
+ */
148
+ source?: SearchSource;
141
149
  /**
142
150
  * Opaque key minted by /products/search. The client stores it scoped to the
143
151
  * search (`search:<q>`) or collection (`collection:<handle>`) and echoes it
@@ -217,6 +225,8 @@ export interface AutocompleteResponse {
217
225
  products: SearchProduct[];
218
226
  /** searchedKey from `payload.products.filters.searchedKey`, when present. */
219
227
  searchedKey?: string;
228
+ /** Which upstream served this response. See SearchProductsResponse.source. */
229
+ source?: SearchSource;
220
230
  }
221
231
  /**
222
232
  * Normalized trending searches response