Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 17:46
· 31 commits to main since this release
v0.2.0
e139321

Added

  • Catalog metadata on provider packages (ADR 0011): displayName, categories, maintainers, tier (official or community) and validation (simulator or real-platform, with a date and the platform version), and a structured source on every limit (vendor-docs, measured or assumed). They are optional; tapyr provider lint --catalog requires them, and every built-in package has them.
  • tapyr provider list --output json: every package with its catalog metadata, its templates (request path, default interval, metrics) and its limits (value, scope, source), and the catalog categories, versioned by a schemaVersion (provider catalog output).
  • Documentation: the strategy of the provider ecosystem (ADR 0011), and a page of provider ideas beyond networks, with their rate-limit patterns and the engine features some of them still need.
  • Demo compose: SIM_TIME_SCALE runs the simulators faster than real time, to watch the bad-day scenario in minutes instead of hours.

Changed

  • meraki-dashboard is validated against a real Dashboard: every template ran against a DevNet sandbox organization, and an e2e test (TAPYR_E2E_MERAKI_API_KEY) joins those of the Teltonika packages. The uplink metrics stay validated against the simulator only: the sandbox appliance reports no uplink.
  • A newly discovered fan-out instance runs first within the jitter of its interval (10% by default), then at its point of the interval: the first data of a discovery chain no longer waits up to one interval per level (the network devices of the getting started guide could take about 40 minutes, they now come within about 10). Instances loaded from the cached inventory keep their schedule.

Fixed

  • The web UI declared Node.js 22 as its minimum to build from source; Vite 8 needs 22.12 or later.
  • Enabling or changing the live debug (settings.server.debug) by a reload logged "settings changed that take effect after a restart", although the reload applies it, as the Live debug page of the UI says.
  • The instances of a fan-out were not spread over their interval when their keys differ only by their last characters (devices[orgId=1], devices[orgId=2]): their phases came within a second of each other, and they ran in bursts. Phases now come from a hash that mixes the whole key; they move once when upgrading.