chore: upgrade Edge Node to Holochain 0.7.0 - #149
Merged
Merged
Conversation
Adds a 0.7.0 conductor config template (drops signal_url, which 0.7 rejects via deny_unknown_fields; relay_url now points at the bootstrap host, which serves the iroh relay in 0.7) and points the standard image at the 0.7.0 holochain and hc binaries. The bare bootstrap-host relay_url worked without needing the /relay suffix fallback.
…for Holochain 0.7 kando and volla-messages relay have no 0.7 builds. ziptest v0.6.0-dev.0 is 0.7-built; its .webhapp covers every fixture case (valid/invalid/ missing SHA, bad URL, webhapp extraction) and its create_thing zome function lets multi_install.bats run again with initZomeCalls.
hc 0.7 removed the sandbox call/zome-call/zome-call-auth subcommands in favour of hc client. Also drops the 0.5.6 regex fallback in extract_dna_hash; the 0.7 list-apps JSON matches the jq path. Also filters the "Initialising log output formatting" line that `hc client call` prints to stdout before piping list-apps output to jq in multi_install.bats, matching the same filter already used in happ_tool's extract_dna_hash.
Builds log-harvester from its feat/adapt-to-holo-hosting-agreement branch (0.7 client, lane-pinned agreements, whoami), attaches the app websocket explicitly, passes LANE_DEFINITION_IDS through compose and the deploy templates, and pins unyt.happ to v0.104.0.
Removes the --webrtc option and stops emitting signalServerUrl and stunServerUrls. validate still tolerates them with a warning. Bumps holo_hash to 0.7.0.
…roh-only networking)
…clarify clone branch
v0.1.6 meters the dht-*.db files of Holochain 0.7's flat databases layout and no longer aborts report shipping when the db-size check fails, so the gitignored docker/local-bin/ override that stood in for the unreleased fix is no longer needed.
The previously pinned SHA was orphaned when the 0.7 branch was rebased, so a tagged release build would fail to check it out. Repin and note that a stale pin fails loudly here rather than silently changing what a released image contains.
zippy
force-pushed
the
chore/holochain-0.7.0
branch
from
September 4, 2026 18:07
d8739d5 to
b0fed56
Compare
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.
Upgrades both container images from Holochain 0.6.1 to 0.7.0, along with the hApp tooling, test fixtures, and operator documentation.
What changed
Conductor and CLI
docker/conductor-config-0.7.0.template.yaml. Dropssignal_url, which 0.7 rejects viadeny_unknown_fields, and pointsrelay_urlat the bootstrap host, which serves the iroh relay in 0.7.hc0.7 removed thesandbox call/zome-call/zome-call-authsubcommands.happ_tooland the harvester s6 script now usehc client call -p <port>andhc client zome-call*. The 0.5.6 regex fallback inextract_dna_hashis gone; the 0.7list-appsJSON matches the existing jq path.Test fixtures
.webhappcovers every case the old fixtures did: valid, invalid and missing checksum, bad URL, and webhapp extraction.multi_install.batsis re-enabled using ziptest'screate_thingas an init zome call, and its assertion now measures the app-id count before and after so earlier tests' installs cannot satisfy it.Harvester
feat/adapt-to-holo-hosting-agreementbranch:LANE_DEFINITION_IDSis required, the app websocket is attached by the s6 script rather than the harvester, and the agent key is logged at startup viawhoami.unyt.happpinned to v0.104.0 instead ofreleases/latest, which has been a 0.7 build since v0.101.0.LANE_DEFINITION_IDSplumbed through compose, cloud-init and OpenTofu.Companion components
dht-*.dbfiles of 0.7's flatdatabases/layout. v0.1.5 read the olddatabases/dht/directory, and the resulting error propagated into anunwrap, so the service crash-looped on every 0.7 node.@theweave/wdockerbumped to 0.16.0-dev.4 (the Holochain 0.7 client).happ_config_file0.4.0: iroh-only templates,--webrtcremoved,validatestill accepts and warns about the legacy WebRTC fields.Documentation
deploy/DEPLOYMENT.mdgains an "Upgrading to Holochain 0.7" section written after an empirical spike: the lair keystore survives if everything under the data root exceptksis wiped, so an upgraded node keeps its agent key. The section also disqualifies the generictofu apply -replaceimage-update path, which promises full data preservation and would start a 0.7 conductor on 0.6 databases.Verification
Local runs on this branch head:
The final edgenode run downloaded log-sender v0.1.6 from its release rather than a local build.
Breaking
/datavolumes must be reset before starting a 0.7 image, though the keystore may be kept. See the upgrade section indeploy/DEPLOYMENT.md.LANE_DEFINITION_IDS.Known gap
h2hc-linker v0.1.2 is built against Holochain 0.6 crates. The linker service is not expected to work against a 0.7 conductor until v0.2.0 is released and the image is rebuilt with
LINKER_VERSION=0.2.0. Recorded in the changelog and in the upgrade section.Follow-ups
tools/happ_config_file-v0.4.0after merge, then bumpHAPP_CONFIG_FILE_VERSIONin both Dockerfiles. Until then the images ship the 0.3.0 binary while the docs describe 0.4.0.release.ymlpins the log-harvester checkout to a commit SHA on the 0.7 branch; drop the pin once that branch merges upstream.