Files
swaits 72dd8fefc4 chore: release 1.0.0
Bump version to 1.0.0 and pin the donglora dep to >=1.0.0,<2.0.0 (PyPI), matching the freshly-published donglora 1.0.0 client.


Also knock out two preexisting lint failures surfaced by the release-time `just check` gauntlet:

* orac/crypto.py: drop the redundant int() wrap around round() (RUF046).

* orac/state.py: widen _state value type to include list[list[float]] so heard_positions type-checks under pyright.
2026-04-22 09:58:12 -06:00

29 lines
1.0 KiB
Markdown

# Changelog
## 1.0.0 — 2026-04-22
Initial public release. Orac is a MeshCore chatbot that uses the
`donglora` client to bridge a LoRa dongle to an Anthropic model.
### Added
- `BotRuntime` orchestrating IO, worker, and log threads against a
`donglora.Dongle` instance.
- ADVERT scheduler with IQR-trimmed mean position derived from heard
repeater adverts.
- Typed `TxQueue` with retry / ack tracking against MeshCore message
IDs.
- DM reply pipeline that calls Claude off the IO loop and enqueues
reply packets at the right priority.
- Structured JSONL event log at `~/.donglora/orac-events.jsonl`.
- `just run` / `just check` / `just events` developer ergonomics.
- `donglora>=1.0.0,<2.0.0` declared as the registry dep; local dev
uses the `[tool.uv.sources]` editable-path override.
### Notes
- Not published to PyPI. Installed from a local checkout only; this
1.0.0 tag captures the point at which the bot runs against the
Protocol v2 stack (`donglora` 1.0 / `donglora-mux` 1.0 /
`donglora-protocol` 1.0).