782535c34f
An unconditional re-raise sent BrowserErrors without long_term_memory (e.g. upload_file's failure paths) into Tools.act's handle_browser_error, which re-raises exactly those — escaping act() as an exception where callers previously got a recoverable ActionResult(error=...). Guard the bypass on long_term_memory being present (the exact condition handle_browser_error formats without re-raising; short_term_memory alone would still re-raise), and flatten plain BrowserErrors to RuntimeError as before. Regression test covers the plain-BrowserError path through tools.act.