Andrey Antukh ab6d77954a 🎉 Start the parallel exporter tree with system and browser
New code grows under `exporter.*` instead of extending `app.*`:
`exporter.main` holds the future entry point, `exporter.utils.system`
is an async-aware Integrant-style lifecycle (`init-key`/`halt-key`
multimethods, `ref`s, dependency ordering, `^:async` + `await`, no
promesa chains), and `exporter.browser` ports the whole browser
namespace as a pool service with an injectable factory. Each piece
ships with its tests, registered in the test runner.

AI-assisted-by: muse-spark-1.3-contributor
2026-10-07 17:34:55 +00:00
..