feat: image build + smoke CI, pin bundled components#12
Draft
JarbasAl wants to merge 53 commits into
Draft
Conversation
includes https://github.com/JarbasHiveMind/hivemind-http-protocol and https://github.com/JarbasHiveMind/hivemind-audio-binary-protocol since i expect those to become common note: a hivemind.list similar to OVOS is needed to allow plugins to be installed for usage with binary protocol
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
add extra protocols
plugin support
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Add .github/workflows/build.yml: a Buildx Bake based pipeline that validates the compose files and bake graph (smoke job), builds every image on PR/push (no push), and publishes multi-arch images on push to dev (alpha) / master (stable) when Docker Hub credentials are present. base-image wiring relies on Bake contexts, so the build uses docker buildx bake rather than per-Dockerfile docker build. Add scripts/smoke.sh so CI and humans run the same validation: docker compose config on every compose file, bake --print graph render, and an optional local --build. Pin bundled components to released versions instead of unpinned git clones: hivemind-cli==0.5.1a1 and hivemind-core==4.6.0a2 (cli), hivemind-webchat==0.2.2 (webchat), hivemind-matrix-bridge==0.1.1 (matrix-bot), hivemind-flask-chatroom==0.1.0 (chatroom). Add the SAT_* chatroom variables to .env-example so its compose file validates. Refs #11 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
The listener image pinned three hivemind packages to a contributor's personal forks (thalovant/*) at ephemeral commits, plus a hivemind-intent-quota-plugin git ref (51beb55...) that no longer exists — which broke the buildx bake (uv could not fetch the commit). The official packages are on PyPI, and hivemind-core==4.6.0a2 already constrains the plugin-manager/websocket-protocol versions transitively, so the forks were both fragile and conflicting. Switch to the published packages and drop the non-existent intent-quota plugin (no JarbasHiveMind repo / PyPI release). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
hivemind-cli 0.5.1a1 requires ovos-bus-client>=2.0.0a3, but hivemind-core==4.6.0a2 still requires ovos-bus-client<2.0.0 (no released core supports bus-client 2.x yet — core#108). The cli image build failed to resolve. Pin 0.5.0a4, the latest CLI alpha still on bus-client <2.0.0. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
hivemind-matrix-bridge==0.1.1 requires python-matrixbot>=0.4.0, but that project only published up to 0.0.7 — the release is uninstallable. 0.1.2a2 corrects the constraint to >=0.0.7, so the matrix-bot image resolves. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes part of #11.
Branch / release-flow fix
feat/initial. Set repo default todevand createdmasterfrom the current tip so the orgdev(alpha)->master(stable) flow works.devwas stale (only the initial commit). This branch is cut from the real tip (feat/initial), so merging it fast-forwardsdevto current and lands the CI/pinning work in one step. The diff vsdevtherefore includes the existingfeat/initialcontent as well as the new changes below.CI (
.github/workflows/build.yml)smokejob: validates everycompose/docker-compose*.ymlviadocker compose configand renders the Buildx Bake graph.buildjob: builds all images viadocker buildx bake(no push) as a PR/push check. Uses bake (not per-Dockerfiledocker build) because base-image wiring relies on Bakecontexts.publishjob: multi-arch build+push on push todev(alpha) /master(stable), gated onDOCKERHUB_USERNAME/DOCKERHUB_TOKENsecrets being set (skips cleanly otherwise).Smoke script (
scripts/smoke.sh)--build. Runnable by humans.Pinning (item 3)
cli:hivemind-cli==0.5.1a1,hivemind-core==4.6.0a2(was unpinned git clone + barehivemind-core).webchat:hivemind-webchat==0.2.2;matrix-bot:hivemind-matrix-bridge==0.1.1;chatroom:hivemind-flask-chatroom==0.1.0(were unpinned git clones / inline installs).python:3.13.11-slim-trixie@sha256:...); child images consume the locally-builthivemind-basevia bake.SAT_*vars to.env-exampleso the chatroom compose validates.Verification
scripts/smoke.shpassesbash -n. Image build +compose configmust run in CI (this workflow does so).🤖 Generated with Claude Code