Skip to content

v1.1.0-alpha.1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Jun 04:03
· 32 commits to main since this release
v1.1.0-alpha.1
2ddb7e7

First pre-release of the 1.1 line — a near-complete rewrite. The bot gains a
full web UI, moves all configuration into SQLite, and is now distributed under
the OwlShack name. This is an alpha: expect rough edges and please
report issues.

Highlights

  • New web UI (React SPA at :8080). Operator-console aesthetic over a
    single embedded static binary — no separate frontend to host.
  • Configuration lives in SQLite, not files. A first-run setup wizard
    bootstraps a node; config files become one-time imports. Per-resource config
    screens (Radio, MQTT, Companions, Bots/triggers) edit one thing at a time and
    reload in place — most changes apply with no restart and no dropped sessions.
  • Rebrand to OwlShack.

Web UI

  • Overview / Peers / Map — live peer count and type spectrum, searchable
    peer table, Leaflet map of geolocated peers with type filters and GPS
    track visualization (altitude-colored).
  • Packets — live stream grouped by hash with a detail panel (route, hops,
    signal, observation timeline, raw hex).
  • Trace — interactive path builder + result timeline.
  • Companions → chat — channels and DMs per companion, with delivery status,
    retry, and reply/quote affordances.
  • Contacts / Channels / Repeaters — per-companion management.
  • Repeater Detail — login, status telemetry, CLI terminal with
    autocomplete, neighbours, and a full settings panel (radio, position map
    picker, advert intervals, routing, owner info, security/ACL).

Node monitoring

  • Type-agnostic background poller writing time-series metrics + latest-snapshot
    state, with per-node intervals, on-demand polls, and UI staleness indicators.
  • Telemetry decoding (battery, MCU temp, external sensors) gated by the remote
    node's sharing prefs.

Contacts & peers (this release)

  • Contacts are now self-contained address-book records — each caches its own
    name, type, location, routing path, feature flags and last-seen, refreshed
    from adverts and path learning. Deleting a discovered peer no longer touches a
    saved contact.
  • Per-companion routing — DMs route from the contact's own learned path;
    companions never share a route to a peer.
  • Discovered-peer deletion — individual and bulk, from the Peers and Map
    pages.
  • Cross-linking + self-add prevention — every entity is reachable to its
    detail view from anywhere it's shown; you can't add your own node as a contact.

MQTT observer

  • Configurable broker presets (LetsMesh, Waev, MeshMapper, …), templated
    packet/status topics, and per-broker auth (Ed25519 JWT or basic).
  • Fixes: UTC zone-aware timestamps in payloads; shutdown is panic-safe against
    in-flight deliveries.

Other

  • Room-server chat (login, post, ACK-gated push), repeater ACL surface, and
    unified first-heard reception with a total-heard count.
  • CI guards :latest and the GitHub release flag for pre-release tags.

Upgrade notes

  • Config moves into the database. On first run, point the binary at your
    existing config file once (-config path) to import it; after that the DB is
    the source of truth and the file is no longer read. The legacy
    nodeType/[[bot]]/[[observer]] format imports cleanly.
  • The schema is created/migrated automatically on startup.

Full changelog: v1.0.6...v1.1.0-alpha.1