Changelog
What has shipped.
InnovaEdge has been continuously deployed since June 2026. Formal release tagging began on 27 August 2026, when release rings were introduced — so v1.0.0 is the first tagged build, not the first working one.
Production currently runs v1.6.322. The notes below are written through v1.6.97; the releases since are tagged but not yet written up.
01 — Release history
Newest first, one badge for what is actually live.
Every entry below is a real tag or a real tag range. Where one entry covers several tags, the version says so — one entry per tag would be a log, not a changelog. Exactly one carries the production badge, and it is not always the newest one.
v1.6.94 – v1.6.97 2026-09-07
An agent can price a tier and hand its buyer to us, and Modbus discovery stops guessing at the served config.
- The platform speaks the Universal Commerce Protocol. An AI agent discovers a profile at a well-known path, negotiates capabilities, prices any tier for a fleet size from the published rates, and on Complete is handed to a person through the demo form with the buyer's details pre-filled. Nothing is provisioned or charged through the protocol; contact details are never echoed back, never placed in a URL, and are wiped when the session expires.
- Self-hosted Modbus discovery now runs its scan rounds on the full configuration the device is actually served, filling in only the pull-channel pieces that are missing, and carries the serial settings the engine insists on — so a sweep no longer fails on a bare manifest the engine would refuse.
- A manufacturer-cloud devices tab in the platform console: find devices, tick them, and deliver them to an organisation or tenant in one action.
v1.6.92 – v1.6.93 2026-09-06
Modbus register numbers that match the manual, a designer that authors the bus, and commands that report back.
- Modbus register numbers use the firmware's six-digit convention everywhere — the number you read off the equipment manual is the number you type, with no re-basing between the manual, the profile and the device.
- The profile designer became a templated-config designer: the bus and the workload — instances and read blocks — are authored in the signal designer rather than typed by hand.
- Every command sent to a device keeps a per-device ring of acknowledgements — what was queued, whether it was received, what it answered — and the command status endpoint exposes it, so a queued reboot or describe is no longer a guess.
v1.6.91 2026-09-06
Modbus discovery, profiles that build the twin, and a delivery loop that knows when to stop.
- A Modbus discovery run probes stations and register ranges in batches, records which come back live, and promotes the result to a draft profile — the same evidence-gated path CAN discovery already used.
- Publishing an equipment profile now also creates the matching twin equipment type, so one act fills both ends of the platform: what the device reads, and what the ontology knows the equipment is.
- The unattended reconcile loop no longer re-pushes a non-converging device forever. It prefers the pull channel, never opens a manufacturer-cloud job for a device that cannot pull, and gives up after a bounded number of heals — the device stays alerted, and stops generating dead jobs.
v1.6.61 – v1.6.90 2026-09-05
Resumable OTA over thin links, a modular engine core, and the manufacturer-cloud account made auditable.
- A bundle is served in byte ranges alongside a manifest, so a device on a slow cellular link pulls one socket-sized chunk at a time, verifies it, and resumes from where it stopped rather than starting the transfer again. Progress is reported per device while it runs. Engines 1.50 through 1.65.
- The engine splits into a lean universal core that fetches its components on demand, so a device carries what it needs rather than one monolithic body, and the console shows which components a device has fetched.
- Every object the platform creates in a manufacturer-cloud account is recorded, journalled on every mutation, and reconciled against that account: owned, foreign, or missing. "Which of these are ours?" became answerable from either side, and a foreign object is never deleted without an explicit confirmation.
- A device can be transferred from your inventory to a customer tenant from the device drawer, completing the path from adopted hardware to a tenant fleet.
v1.6.31 – v1.6.60 2026-09-02
Tier entitlements throughout the console, and billing that understands a reseller.
- Account tiers, usage metrics and tier gating, advisory first: entitlements travel on the session, tier-gated affordances lock rather than fail, and an upgrade hint names the tier that unlocks the feature instead of refusing without saying why.
- A customer tenant inherits its parent's tier and bills into the parent's allowance, so usage pools across a reseller's whole customer base; a sub-org can instead bill on its own.
- The flow editor became a real canvas — pan and zoom, drag to wire, select, tidy, collapsible panels — compiling to the same table definition the form editor produces.
- The i3X server gained a per-tenant namespace on an owned, configurable domain.
v1.6.3 – v1.6.30 2026-09-01
Onboarding closes its own loop: a blank device reaches a landed beacon without a person in the middle.
- A device reports its own routing identity rather than being told what it is, IMEI is canonical, and the first-config trigger fires from the device side — so the path from unconfigured hardware to a device reporting home completes itself.
- Alerts latch instead of flapping, and a heal is retried rather than assumed.
- A publish channel that can connect but can never succeed is now detected as a failure rather than waiting forever, and a device that never reboots is no longer counted as having installed.
v1.6.2 2026-08-29
Artifact integrity — the device-facing build outputs are verified, not assumed.
- The engine .lua set and X304 agent bundle are baked into the release image from a pinned contract revision and asserted present at startup, so a deployment cannot silently ship without the firmware a fleet is told to flash.
v1.6.1 2026-08-28
Device-facing artifacts ship inside the image, and a device that has never been heard from is told so.
- Engine and X304 agent bundles baked from the pinned contract revision; health reporting asserts their presence rather than assuming it.
- A device that has never beaconed is distinguished from one that is merely late, and the guidance names the action that fixes it rather than advising an indefinite wait.
v1.6.0 2026-08-28
Multi-tenant security hardening and device clock integrity.
- Tenant isolation closed across fleet discovery, engine artifact selection, device licensing and capability reads.
- Device clock integrity: an unset or skewed device clock misdates every row it lands, so it is now raised with the consequence stated instead of silently corrupting time-ordered reads.
v1.5.0 2026-08-28
Mutation ordering, and broker credentials that survive a failed delivery.
- A refused or previewed request no longer leaves state changed; destructive steps run last and a failed publish rolls back.
- A minted broker credential whose delivery fails is re-sent rather than locking the device out on a password it never received.
v1.4.0 – v1.4.3 2026-08-28
Usage metering, billing, ingest throughput and error reporting.
- Per-organization metering of broker messages, bytes, sink storage and active devices, surfaced in the product.
- A bounded ingest queue with worker threads keeps a slow sink from dropping the broker session; drops are counted, never silent.
- Opt-in error reporting with frame locals forced off and credential-shaped fields redacted before send.
- Deploy fixes: the OTA bootstrap paradox resolved, and per-device broker credentials no longer churned on every dry run.
v1.2.0 – v1.3.0 2026-08-27
Performance — pooling, group commit, and latest-value reads.
- Current-state reads served from a latest-value table instead of scanning the whole heartbeat history.
- Process-wide Postgres connection pooling; ingest group commit replaces an fsync per message.
- Adoptions promoted from a single JSONB document to an indexed table, so org-scoped lists no longer load every tenant's devices.
v1.0.0 – v1.1.4 2026-08-27
First tagged release, plus the release and operations engineering around it.
- v1.0.0 is the first tagged build of a product continuously deployed since June 2026.
- Release rings: production pinned to a release, with a preflighted, health-gated promote and automatic rollback.
- Whole-instance backups — control database, telemetry sink and broker security configuration — pulled offsite with freshness monitoring.
- Partner and agency console: organization detail across members, invitations, keys, devices and tenants.
- Auth hardening: failed sign-ins audited, remaining guessable endpoints rate-limited, the OpenAPI document put behind a session.
Where to go next
Roadmap
What is building now and what is planned, with nothing marked shipped before it is.
What the platform does
Fleet, twins, OTA, automations and the agent surface, end to end.
Supported devices
Which hardware is sovereign, native, bridged or telemetry-only — and which is not reached at all.
Want to know what is coming next?
This page is the record of what already shipped. The roadmap is where things are headed.