Feat: Add orphan polling task for delayed Kalshi results

This commit is contained in:
2026-03-15 18:39:58 -07:00
parent b8f2406622
commit 83ab2830b6

View File

@@ -33,6 +33,7 @@ async function main() {
let latestMarketState = null; let latestMarketState = null;
// Handles markets that rotated BEFORE Kalshi posted the final result
async function processOrphans() { async function processOrphans() {
if (paper._resetting) return; if (paper._resetting) return;
try { try {
@@ -53,10 +54,8 @@ async function main() {
} }
} }
// Settle delayed positions before continuing // Check orphans immediately on startup, then every 60 seconds
await processOrphans(); await processOrphans();
// Continuously check open positions every 60s for delayed results
setInterval(processOrphans, 60000); setInterval(processOrphans, 60000);
const tracker = new MarketTracker(); const tracker = new MarketTracker();
@@ -91,7 +90,6 @@ async function main() {
if (paper._resetting) return; if (paper._resetting) return;
// Only attempt to settle and notify if the result is already available
if (result) { if (result) {
const settledPositions = await paper.settle(ticker, result); const settledPositions = await paper.settle(ticker, result);
if (settledPositions) { if (settledPositions) {