Description
Selettore enterprise di User-Agent string da un pool curato organizzato per categoria — utility per testing del proprio sito sotto diversi browser/device contesti, A/B testing della response server in base al UA, monitoring del comportamento del proprio bot detection. Il pool predefinito è organizzato in 5 categorie semanticamente meaningful: desktop (Chrome/Firefox/Safari/Edge versioni recenti 2024-2026 per le tre piattaforme major Windows/macOS/Linux), mobile (iPhone Safari iOS 17+, Android Chrome 12x recent, Samsung Internet, Opera Mobile), tablet (iPad Safari per landscape orientation, Android tablet Chrome), bot (le UA dei crawler legittimi famosi: Googlebot/2.1, bingbot/2.0, DuckDuckBot, FacebookBot, Twitterbot, LinkedInBot, Slackbot, Telegrambot — utile per testare il proprio social embed cards), custom (pool definito dal customer per use case specifici aziendali). Tre strategie di selezione complementari per coprire i pattern d'uso: (1) random — pesca uniforme dalla pool selezionata, ogni invocazione del nodo restituisce un UA diverso (pattern naturale per test di breadth coverage); (2) deterministic — seed-based, prende un input field (es. user_id, session_id, transaction_id) come seed per il deterministic hash → garantisce che la stessa key produca SEMPRE lo stesso UA tra invocazioni multiple del workflow (pattern per testing reproducibile + A/B testing user-stable); (3) sequential — round-robin time-based, ruota il pool su una sliding window per garantire uniform distribution del UA usage nel tempo (pattern per monitoring distributo del proprio sito senza skew). Politica etica enterprise: questo nodo è progettato per testing del PROPRIO sito o servizio cliente authorized — il pool include FlowForge/1.0 RFC-compliant UA per dichiarare onestamente l'identità del crawler. NON usarlo per spoof identità di browser legittimi verso siti di terzi che potrebbero considerarlo violazione ToS — il SaaS multi-tenant FlowForge non garantisce protezione legale per questo abuse case. Output: { userAgent (string completa da passare in input al nodo downstream), category, strategyUsed, seedUsed?, poolIndex }. Use case: testare il proprio sito e-commerce con diversi UA per verificare che il responsive design funziona su tutti i form-factor (loop su category=mobile + verifica che la checkout button è visibile above-the-fold); A/B testing della response server (HTML/JSON/different) in base al UA pattern; monitoring del proprio bot detection comportamento (passare un UA "bot" e verificare se il sito serve la versione semplificata SEO-optimized); generazione di dataset di test per QA del proprio sito; integrazione con action_web_fetch_advanced come userAgentCustom per testing reproducibile della response server in workflow di regression test.
