diff --git a/.jules/sentinel.md b/.jules/sentinel.md
index b5d9250..77c2eba 100644
--- a/.jules/sentinel.md
+++ b/.jules/sentinel.md
@@ -12,3 +12,7 @@
**Vulnerability:** XSS risk via unsanitized `<` characters in `JSON.stringify` output injected into `` to break out of the context and inject malicious scripts.
**Prevention:** Always replace `<` with `\u003c` when injecting JSON output into script tags, e.g., `JSON.stringify(data).replace(/ {
headers: {
Accept: "application/json",
},
+ signal: AbortSignal.timeout(NODE_PROBE_TIMEOUT_MS),
});
if (!response.ok) {
diff --git a/src/lib/snap-market.ts b/src/lib/snap-market.ts
index 19b7c1a..63f8103 100644
--- a/src/lib/snap-market.ts
+++ b/src/lib/snap-market.ts
@@ -1,6 +1,7 @@
import { SNAP, correctedSnapFdv } from "@/lib/snap";
export const SNAP_MARKET_REVALIDATE = 30;
+const MARKET_FETCH_TIMEOUT_MS = 10_000;
type DexPeriod = {
buys?: number;
@@ -79,6 +80,7 @@ export async function getSnapMarketData(): Promise {
"user-agent": "hypersnap.org market data checker",
},
next: { revalidate: SNAP_MARKET_REVALIDATE },
+ signal: AbortSignal.timeout(MARKET_FETCH_TIMEOUT_MS),
});
if (!response.ok) {