Browse Source

suppress no filters to merge error from NDK

master^2
Silberengel 2 months ago
parent
commit
5407bcd7fc
  1. 21
      src/lib/utils/subscription_search.ts

21
src/lib/utils/subscription_search.ts

@ -339,6 +339,18 @@ export async function searchBySubscription( @@ -339,6 +339,18 @@ export async function searchBySubscription(
ndk,
);
console.log("subscription_search: Created search filter:", searchFilter);
// AI-NOTE: Validate filter to prevent "No filters to merge!" error from NDK
if (!searchFilter.filter || Object.keys(searchFilter.filter).length === 0) {
console.error(
"subscription_search: Invalid or empty filter created:",
searchFilter,
);
throw new Error(
`Failed to create valid filter for search type: ${searchType}`,
);
}
const primaryRelaySet = createPrimaryRelaySet(searchType, ndk);
console.log(
"subscription_search: Created primary relay set with",
@ -1076,6 +1088,15 @@ function searchOtherRelaysInBackground( @@ -1076,6 +1088,15 @@ function searchOtherRelaysInBackground(
Array.from(ndk.pool.relays.values()).map((r: any) => r.url),
);
// AI-NOTE: Validate filter before subscribing to prevent "No filters to merge!" error
if (!searchFilter.filter || Object.keys(searchFilter.filter).length === 0) {
console.warn(
"subscription_search: Invalid or empty filter, skipping background search",
searchFilter,
);
return Promise.resolve(createSearchResult(searchState, searchType, ""));
}
// Subscribe to events from other relays
const sub = ndk.subscribe(
searchFilter.filter,

Loading…
Cancel
Save