Skip to content

chore(release): version packages#657

Merged
frahlg merged 1 commit into
masterfrom
changeset-release/master
Jul 26, 2026
Merged

chore(release): version packages#657
frahlg merged 1 commit into
masterfrom
changeset-release/master

Conversation

@frahlg

@frahlg frahlg commented Jul 24, 2026

Copy link
Copy Markdown
Member

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to master, this PR will be updated.

Releases

ftw@1.12.0

Minor Changes

  • 86a6c83: Accept the canonical driver spellings alongside the current ones, so srcfl/device-drivers can convert its catalog one driver at a time without any site losing telemetry. host.emit reads W and SoC_nom_fract when w and soc are absent, and write, write_registers and now_ms are registered as aliases of modbus_write, modbus_write_multi and millis. Nothing is removed; the older names keep working until the catalog has moved.
  • 7673003: Add the four Blixt L1 host services FTW was still missing, so a driver converted in srcfl/device-drivers runs here unchanged. host.set_model(name) and host.set_rated_w(watts) record the rest of the nameplate beside make and serial, and the host repeats both on every emit so they reach Nova's model and rated_power_w without the driver restating them each poll. host.set_warmup_s(seconds) holds off the first poll for a device that answers Modbus before its registers are meaningful. host.decode_string(registers, start, count) reads ASCII from a register block — two characters per register, high byte first, trailing padding stripped — replacing the byte loop a dozen catalog drivers hand-roll. Nothing is removed and no existing driver behaves differently.
  • a5a797e: Add encrypted Home Link sessions for four bounded, read-only Core views with session-bound one-use grants.
  • e1d8055: Add the first Home Link remote transport: a strict versioned wire and a separate invite-only relay that forwards only encrypted session frames.
  • 8b16975: A driver downloaded from the signed channel can now control the hardware it was ported to control. FTW refused any device-drivers artifact that was not marked read-only, and the channel marked all of them read-only, so the same source file could drive a battery when it shipped with the build and could not when it was downloaded. A driver published with a control path now runs under the same terms as the bundled copy of that same source. A driver that declares itself read-only — a meter, a telemetry gateway — still gets a read-only policy, and a manifest whose read_only and control_enabled disagree is refused outright.
  • a9847e8: Switch driver versions, and switch back when the new one misbehaves. Nothing from the signed channel could be installed at all: the metadata parser only read a DRIVER table written inline, and signed artifacts assign it from a local, so every install failed validation with an empty id and version. The Versions list rendered no rows because it read the version off the wrong object, and its install call omitted the repository id the API requires. Going back to the bundled driver was impossible once a channel version was installed — the bundled copy is not an install, so nothing could activate it — which is the case that matters most, since installing over the bundled driver is the first thing anyone does. Each driver row now says which version runs, whether it came from the channel or your own file, and how well tested it is; the version list offers one click to switch, a standing way back to the copy that shipped with the build, and an undo after a switch.
  • 25c5604: Pick which driver version runs, and see when your own copy has fallen behind. The signed channel keeps every version it has ever published, but rollback only stepped back one, so a specific older version was out of reach from the UI. Each managed driver now has a Versions list showing what is downloaded, what the channel offers, and which one is live. A driver you supply yourself is now also told when the channel has something newer — your copy keeps running until you decide otherwise.
  • a5f9c23: Add opt-in Home Link remote access with local passkey setup, end-to-end encrypted relay sessions, and four bounded read-only views.
  • 1418c00: Add local, revocable Home Link passkey enrollment and verification.
  • f83c6df: Setup now says how well tested a driver is before you pick one. The signed channel carries drivers that have run on customer sites for months alongside ones nobody has put on hardware, and both used to be described identically. Each option now ends in plain words — verified on hardware, in testing, untested — and selecting one shows its version, whether it came from your own override, the signed channel or this build, and what the driver says about its own testing.

Patch Changes

  • c1c9fd6: The bundled drivers/ tree is now a generated snapshot of srcfl/device-drivers, pinned by commit, with CI failing if the two drift. It had become a second source of truth and had already diverged: a Sungrow fix landed upstream while the bundled copy kept reading a battery block on inverters that have no battery, which is what took a customer's SG12RT offline. That copy is now correct, and cannot silently fall behind again.
  • f1bd56f: Accept the shipped Home Link route-handle format in remote browser invites.
  • 1efb08e: Fix Home Link sessions being rejected over a few milliseconds of clock difference between the gateway and the browser. A gateway now issues a session lifetime below the verifier ceiling, so remote passkey access works instead of failing with "Could not reach this home". Reads also reopen a bounded session instead of leaving the page dead until a reload, and a failed session or read now states its cause.
  • b641b2c: Map rated_W, rated_power_W and rated_w onto rated_power_w, the name nova.DerTelemetry reads. None of the three was mapped, so a device's rated AC power has never reached Nova — including from our own zap.lua, which emits rated_power_W.
  • d39ace3: Map driver emit keys onto the names the Nova payload reads. Catalog drivers emit import_wh, export_wh, charge_wh, discharge_wh, lifetime_wh and hz, while DerTelemetry reads total_import_wh, total_export_wh, total_charge_wh, total_discharge_wh, total_generation_wh and freq_hz — so those values never left the gateway. The canonical @srcful/data-models spellings map onto the same names, so the driver catalog can convert without a further host change.
  • 63b5f8b: The update dialog now leads with what the box is running. Every configured component keeps a row in one table — Core, the optimizer and each driver — whether or not it has an update waiting, so a driver only appeared when it was behind and could never be checked otherwise. The summary counts the whole inventory instead of Core alone, and says when the last check ran, which the dialog knew but never showed. Two fixes came out of the same pass: the optimizer row drew "v1.3.2 → v1.3.2" beside the words "up to date", and the notification dot lit for any listed driver rather than only the ones with work waiting. Both channel controls now sit together, so an optimizer tracking beta while Core tracks stable is visible rather than implied, and the dialog no longer implies that the channel governs drivers: only Core and the optimizer subscribe to one, while a driver is pinned to an exact version and takes its channel per install. Core's version is printed once instead of three times; the two backup lists collapse into one section carrying their counts; and Restart, which drops dispatch until Core is healthy again, asks first and no longer carries the same weight as the primary action.
  • bbc3f6e: Update Go network dependencies to include current DNS parser security fixes.
  • b2993b5: Show Home Link as a readable remote energy overview instead of raw JSON, and fix its light and dark theme colours.

@github-actions
github-actions Bot force-pushed the changeset-release/master branch 6 times, most recently from 79c3456 to a804ef4 Compare July 24, 2026 17:33

@miravoss26 miravoss26 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Release PR: consumes 7 changesets and cuts 1.11.4 to 1.12.0 (four Home Link minors plus three patches, including the Go net/DNS-parser security bump).

  • The diff is version metadata only: CHANGELOG.md, package.json, package-lock.json, and the removed .changeset/*.md files. No source or dependency-graph changes here; the features already landed in their own PRs, this just versions them.
  • Security screen: nothing in the diff (no secrets, no new deps, no network/authz changes).

Safe to merge from my read once the release timing suits you.

@miravoss26 miravoss26 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Read the diff. Standard changeset version release chore: consumes the seven Home Link changesets, rolls CHANGELOG.md to 1.12.0, and bumps package.json + package-lock.json to match. No source or config changes, nothing sensitive.

Safe to merge from my read. It's a generated version bump, so the only thing to confirm is that the 1.12.0 changeset set is the intended release contents (it reads as the Home Link passkey/relay work).

@github-actions
github-actions Bot force-pushed the changeset-release/master branch 8 times, most recently from 3672b5a to 509ae51 Compare July 26, 2026 10:15

@miravoss26 miravoss26 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Standard changesets release PR: rolls the 15 pending changesets into CHANGELOG.md and bumps 1.11.4 → 1.12.0. Minor changesets are present (canonical driver spellings, the four Blixt L1 host services, Home Link sessions/relay, the driver-version picker), so a minor bump is correct.

  • ✅ Bump level matches the changesets (minor wins over the patch entries).
  • ✅ Diff is .changeset/*, CHANGELOG.md, package.json, package-lock.json only — no source snuck into the release PR.
  • Security: nothing introduced in this diff (the passkey/relay work is being versioned here, not added). Worth noting one patch entry ships a Go DNS-parser security fix — good to get out.

Safe to merge from my read; cutting the release is your call.

@github-actions
github-actions Bot force-pushed the changeset-release/master branch 2 times, most recently from 1d5a063 to ee567a6 Compare July 26, 2026 15:42
@github-actions
github-actions Bot force-pushed the changeset-release/master branch from ee567a6 to 13d8a4a Compare July 26, 2026 16:18
@frahlg
frahlg merged commit 0a0d050 into master Jul 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants