--- title: 'Bumblebee: web script synthesizer' date: 2025-04-02 layout: post project: true thumbnail: thumb_sm.png --- Work project. Browser session-to-code conversion. Architecture: C# WinForms host, embedded browser, code editor. Browser extension rejected due to security policy and shallow event control. Tool evaluation: - CefSharp: Discarded. API lacked elegance. - WebView2: Selected. Better WinForms integration. Hard dependency on Microsoft Edge--acceptable for corporate Windows environments. Implementation: 1. Interception: Injected JS hooks; internal browser event monitoring (pop-ups/downloads). 2. Transformation: Event → Token → Instruction Table → String. 3. Optimization: Parallel event/text lists processing; rendered in Scintilla.NET Bug: Manual mid-session overrides desync code/event lists, bypassing optimizer. Linear lists inadequate for state synchronization. Need to rethink data structures; look to compiler Abstract Syntax Trees (AST) for intermediate representation. Verdict: Serves its purpose.