9f286b8029145e49b794cfc46cea51160128150d
Handler.Crawl now spawns a goroutine with a 5-minute detached context and returns 202 immediately. Admin UI polls the new GET /admin/discovery/crawl-status every 3s until running=false, then renders CrawlSummary. Bypasses the 60s nginx-gateway proxy_read_timeout entirely — HTTP requests are all sub-second. Concurrency: atomic.Bool guard (CompareAndSwap) replaces TryLock, resultMu RWMutex protects the summary/error state, rateMu protects the rate-limit check. Rate limit semantics unchanged (still applies to admin-session path, bearer-token bypass via context flag).
Description
No description provided
Languages
Go
60.3%
Svelte
20.3%
Dart
11.1%
TypeScript
5%
PLpgSQL
1.1%
Other
2.1%