Repository navigation
Releases: webdevtodayjason/daybreak
Release list
daybreak 0.1.1
Daybreak 0.1.1
Adds account_auth_key() to device.py: the device's own account API can
hand over a working gateway key directly, no TiinyOS needed. Not wired into
key() automatically -- this server runs unattended (a reboot, a redeploy),
and key() is documented to never block or print, so this is a plain
capability for an operator's own one-off use.
Daybreak 0.1.0
The first release tiinyapp.farm can install.
What is in it
A daybreak script that runs the pipeline and the wall in one process. It takes
--port N, reads TIINYAPP_PORT when it is not given, and Ctrl-C or SIGTERM stops
both halves cleanly. python3 pipeline.py and python3 server.py still work exactly
as the README says, and they are still what systemd runs on the Pi.
daybreak --selfcheck builds a database, serves the wall on a spare loopback port,
reads / and /healthz back and exits. No device, no network, 0.6 s in the farm's
offline container.
The device is found rather than configured twice. TIINY_HOST and TIINY_KEY still
work, and when they are unset Daybreak reads ~/.tiinyapps/device.json, which is what
farm device writes. With no device at all the wall still serves, keeps collecting
articles, and says on the page that nothing is being analysed yet. The queue drains in
order from where it stopped once you name one, because an article with no device is
left pending rather than stamped with an error it can never come back from.
It also runs on a Tiiny that is not the one in the rack. The chat model is whatever you
have loaded: it asks the device, prefers Ornith-1.0-35B if it is there, and otherwise
takes the first loaded model that is not an embedder, a voice or an image model.
TIINY_CHAT_MODEL and TIINY_EMBED_MODEL override. The device lease falls back to an
in-process lock when OneLane is not installed, which is what the README always said
happened and did not.
The archive
daybreak-0.1.0.tar.gz is built by scripts/release.py from an explicit contents
list. It leaves out audio.py, devtherm.py, r2.py and deploy/: the first two
import subprocess for ffmpeg and ssh and tiinyapp.farm forbids shell access in a
listed app, and R2 offsite sync is inert without four R2_* variables a farm install
does not have. All four are still in the repository, and a clone still records audio,
reads thermals, syncs offsite and installs on a Pi.
MIT licensed.