* fix: give stats initial values
Otherwise the compiler cannot derive the type and thinks `stats.snapshot` returns `{}`
* fix: add type shape to moving averages as well
BREAKING CHANGES:
top level types were updated, multiaddr@9.0.0 is used, dialer and keychain internal property names changed and connectionManager minPeers is not supported anymore
* fix: retimer reschedule does not work as interval
* chore: apply suggestions from code review
Co-authored-by: Jacob Heun <jacobheun@gmail.com>
Co-authored-by: Jacob Heun <jacobheun@gmail.com>
* docs: add initial notes on stats
* feat: initial refactor of stats to metrics
* feat: add support for placeholder metrics
This is helpful for tracking metrics prior to knowing the remote peers id
* fix: add metrics tests and fix issues
* fix: always clear the dial timeout timer
* docs: add metrics to api doc
* chore: apply suggestions from code review
Co-Authored-By: Vasco Santos <vasco.santos@moxy.studio>
* docs: update metrics docs
* fix: call metrics.onDisconnect
* docs(config): add example headers so they appear in the TOC
* docs(config): add metrics configuration
* docs(relay): fix relay configuration docs