Changelog v1.10.0Latest
Multi-browser engine support (Chromium, Firefox, WebKit), deterministic seeds (--seed), and expanded pluggable failure detectors.
v1.10.0LatestOct 22, 2026Syncing from GitHub…
Added
- Multi-Browser Engine Support (
--browser firefox|webkit|chromium):loki runandloki recordcan now drive Firefox and WebKit (Safari) in addition to Chromium.- Generated
repro_test.pyscripts replay on the same engine the incident was captured with.
- Deterministic Random Seed (
--seed):- Chaos sessions can be repeated with the same seed to reproduce the exact sequence of random actions.
- Expanded Failure Detection:
- Detects
requestfailedevents, 4xx responses, unhandled promise rejections, and silent console errors. - Detectors are now pluggable (
src/loki/engine/detectors.py).
- Detects
Bug Fixes
- Standalone Binary Could Not Launch Browsers (
src/loki/engine/browser.py, #22):- The binary built from
loki.specnow shares Playwright's per-user browser cache instead of looking for browsers inside the bundle. A user-providedPLAYWRIGHT_BROWSERS_PATHis always respected. - Missing engines are installed once through Playwright's bundled driver (previously the auto-install re-invoked
loki.exewith invalid arguments) and reused on later runs.
- The binary built from
- Raw JSON in LLM Errors (
src/loki/ai/llm.py, #20, PR [#21](https://github.com/Elabsurdo984/loki-agent/pull/21)):- Provider failures are now summarized in one line (quota, authentication, connection) instead of dumping the raw payload, with a quota-specific tip in
loki fix.
- Provider failures are now summarized in one line (quota, authentication, connection) instead of dumping the raw payload, with a quota-specific tip in
- Invalid
--duration/--fault-rateValues (src/loki/cli.py, #23, PR [#30](https://github.com/Elabsurdo984/loki-agent/pull/30)):--durationmust be at least 1 and--fault-ratemust be between 0.0 and 1.0. Bad values are rejected at parse time with exit code 2, before any browser starts (also inloki chat's/run).
- CLI Help Assertions on CI: ANSI escape sequences are stripped in
--helptests across runners.
Internal
- Adopted the standard
src/layout and configured PyPI trusted publishing. - Extracted run and heal use-cases into a services layer, moved
IncidentReporttoloki.models, and added a persona registry. - Routed all LLM calls through a single
llmmodule, and slash commands inloki chatthrough the CLI's own parser. - Split the sandbox into browser, devices, and detectors modules, and moved the repro scripts and HTML report into templates.
Contributors
- @Elabsurdo984
- @dbdefault made their first contribution (PR [#21](https://github.com/Elabsurdo984/loki-agent/pull/21)).
- @O1sumitkumar made their first contribution (PR [#30](https://github.com/Elabsurdo984/loki-agent/pull/30)).
Upgrade
bash
uv tool upgrade loki-chaos-agent# or directly from LOKI:loki update
