Weik.io 2026.2.2
Agents on Windows Server from a signed installer, a record of every run of a schedule, telemetry retention and build memory set in the installation settings, CloudEvents on every channel that delivers to another system, and a rollback that says what it erases before it moves anything.
Highlights
API management
A terminator in front of every stack adds the same security headers the hub gives its own replies, a reply with no caching policy carries Cache-Control: no-store, the gateway removes X-Api-Key from every forwarded request, and requests with no credential have an allowance per caller address.
Schedules
Every run of a schedule leaves a record with its start, end and exit code. The schedule's page has a Runs section, and weikio events list lists schedule runs as a family of their own.
Schedules while an agent is cut off
A schedule's run record the hub didn't store while an agent was cut off is kept on the agent's host and published when the agent reaches the hub again.
Events
An event channel with a sink sends its events as CloudEvents, binary unless --cloud-events structured is set, and events the platform publishes carry their CloudEvents attributes as headers.
Observability
How long the log, metric and trace stores keep their records is an installation setting, from 1 to 3650 days, set with weikio settings set or on Settings, Installation. Build memory and the largest telemetry batch are settings too.
Health and Problems
Health and Problems name the same faults in the same words, every problem lists the commands that fix it on lines of their own, and Settings, Platform, Secrets holds the installation's own secrets with what reads each one.
Agents on Windows
Agents run on Windows Server 2022 and 2025, installed from one signed MSI with their own .NET and Java runtimes, as two Windows services.
Upgrades and rollback
upgrade.sh --rollback lists what going back erases and which sign-in providers would stop, and moves nothing until you agree. --yes goes back without asking. upgrade.sh <images.env> --check says before an upgrade whether the installation has the room it needs.
Images
The Weik.io images are on Docker Hub with the exact version as their tag, and images.env pins every image by its digest. No image is tagged latest.
| Image | What it is | Digest |
|---|---|---|
weikio/ | The backend: HTTP API, admin UI, builder and token issuer | sha256: |
weikio/ | The gateway | sha256: |
weikio/ | The agent that runs your integrations | sha256: |
weikio/ | The telemetry forwarder | sha256: |
weikio/ | The log store | sha256: |
weikio/ | The metric store | sha256: |
weikio/ | The trace store | sha256: |
nats: | The message server | sha256: |
traefik: | The TLS terminator | sha256: |
victoriametrics/ | The store program inside weikio/ | sha256: |
otel/ | The OpenTelemetry Collector on your Weik.io servers | sha256: |
victoriametrics/ | The store program inside weikio/ | sha256: |
victoriametrics/ | The store program inside weikio/ | sha256: |
The table shows the start of each digest, and images.env has them in full.
Files
The checksums are from the release's SHA256SUMS files, and the Windows CLI and the agent installer are signed by Adafy Oy. curl -fsSL https://weik.io/install.sh | sh checks the CLI before it places it.
| File | What it is | SHA-256 |
|---|---|---|
| weikio-2026.2.2-linux-x64 | The CLI for Linux x64 | b01fa08d5c5c089ea159cdc4f395e4807109adad7e59cc21728c1a1ddbf78a10 |
| weikio-2026.2.2-win-x64.exe | The CLI for Windows x64, signed by Adafy Oy | 5df5dee65384b4fa5409a3930eeb5734d53d81d5a7154d401ebe6c9b3ce81444 |
| SHA256SUMS | The checksums of the two CLI files | |
| weikio-agent-win-x64-2026.2.2.msi | The agent installer for Windows Server 2022 and 2025, signed by Adafy Oy | 162c9a5b6489c43b4a91c77971abaeb8f295d9607f21b1512540556e752edf3c |
| SHA256SUMS | The checksum of the agent installer | |
| images.env | Every image of the release with its tag and digest, for the install and upgrade.sh | 27f97e787c3f1ba5f059f6025f416d762b52513a8417677ee7f962e5198a6293 |
| images.lock.json | The same images as JSON | 782848e5c00eb7aea1ee2b057b96104cf76d9e97210ca6634fdbb843bf431dd4 |
| SHA256SUMS | The checksums of images.env and images.lock.json |
The open source projects inside the images, with their versions and licences, are listed in Third-party software. The release runs Apache Camel 4.22.1 and 4.18.5, and its store programs, message server and TLS terminator are the same versions as in 2026.2.1.
Upgrade notes
An installation of 2026.2.0 or 2026.2.1 upgrades in place with upgrade.sh, which makes a backup first and keeps every record and every file of yours. Check these before you upgrade:
- Schedule run records have storage of their own in each environment, 1 GiB per environment on a hub with more than one data server and 256 MiB otherwise. Before you upgrade a nearly full installation, run
sudo sh ./upgrade.sh <images.env> --check. It says how much room is short and how to make it. - The upgrade creates each server's message server again once, and every agent's link to the hub drops once.
- Every container of a hub's stack keeps its log in at most three files of 50 MB, so the upgrade creates every container again. A service's
loggingblock indocker-compose.override.yamlchanges the limits. - The log, metric and trace stores run on the images
weikio/weikio-logstore,weikio/weikio-metricstoreandweikio/weikio-tracestore, which start the same store programs on the same volumes. A registry of your own that the stack pulls from needs these three images too. - An agent that is offline with
Maximum Control Line Exceededin its leaf's log needs a new bundle. Issue it withweikio agent credentials <agent> --out <dir>, then copy the bundle's files to the agent's host and run itssetup.sh, orinstall.cmdon Windows. - A rollback to 2026.2.1 keeps the settings 2026.2.1 doesn't have and writes them back at the next upgrade.
$ sudo sh ./upgrade.sh https://weik.io/downloads/releases/2026.2.2/images.envTo go back to the release before, run sudo sh ./upgrade.sh --rollback.
Upgrades and rollback in the docs has the check before an upgrade, the rollback and the rolling upgrade of a hub on several servers.
Security
2026.2.2 closes these gaps and updates these libraries:
- The terminator of every stack gives its replies the
Referrer-Policy,X-Content-Type-OptionsandPermissions-Policyheaders the hub gives its own. A request no route of the terminator serves gets an empty 404 with these headers andStrict-Transport-Security. - A hub reply that names no caching policy of its own carries
Cache-Control: no-store. - The gateway removes the
X-Api-Keyheader from every request it forwards, whatever credential the subscription uses. - A webhook receipt no longer carries the caller's
Cookieheader. It no longer passes the caller'sX-Api-Keyto the channel's integrations, nor the caller'sAuthorizationwhen the gateway subscription checks an API key, a password or a sign-in token. - Requests refused for carrying no credential no longer fill the audit log. Each caller address has an allowance for them, and a request over it gets 429 with the time to wait and leaves no audit record. Sign-in has an allowance of its own, and a sign-in whose e-mail address or password is longer than 1,024 characters is refused with 422.
- A user who isn't a platform administrator can look up 30 e-mail addresses a minute on each hub server. The next lookup gets 429 with
Retry-After, and the audit log records each of their lookups. - A write refused with 409 answers with the record as a read shows it, so the settings and a gateway no longer send the sealed keys of their uploaded certificates in that reply, and a secret no longer sends its sealed value.
- A warning about a channel, transfer or schedule that doesn't exist no longer names a project the caller can't read, and a refusal of an API path that is already taken names the API only to a caller who may read it. A refusal about an external secret store names no internal address of the installation.
weikio loginto an http address on another machine says first that the key will travel unencrypted. An API key typed forweikio login, or a value typed forweikio secret set, is no longer shown on the screen while the output goes to a file or another program.- Every bundle ships log4j 2.25.5, which fixes CVE-2026-49844.
- The admin UI ships DOMPurify 3.4.17 and KaTeX 0.18.10, which fix four published advisories. None of them could be reached through the admin UI.
Known issues
- A 2026.2.1
weikioCLI that reads a trace of more than 5,000 spans from a 2026.2.2 installation shows its first 5,000 spans and doesn't say that the rest were left out. The trace list still shows the trace's full span count and its failure, and a 2026.2.2 CLI says how many spans it left out. - During the upgrade from 2026.2.1, while a server's message server restarts, a call that reads a store's state and lands on a server still on 2026.2.1 can take 5 seconds or time out, a few times per server. Retry the call. Writes in that moment are refused with a retry hint and nothing is lost.
- During the upgrade from 2026.2.0 or 2026.2.1, the upgrade's doctor step can warn that the store of an environment's delivery notices differs from what this release sets, with the fix
docker compose up -d backend. There is nothing to do. The backend sets the store within a minute, and doctor is clean when run again. - On a hub of several servers, a rollback to 2026.2.1 followed by an upgrade to 2026.2.2 again sets the log retention to 30 days when the first server to start the upgrade is not the server that ran the rollback first. Metrics and traces keep their retention values, and no stored log line, metric or trace is erased by this.
weikio settings getshows the value, andweikio settings set --logs-retentionsets it again. A hub on one server is not affected. The fix is planned for 2026.2.3. - If the agent that runs a transfer is cut off from the hub for more than about five minutes, the run summaries of transfers made during the cut are not kept. The transfers themselves run and their files move, but each later run of the same transfer starts only after the dropped summary's tries end, about five minutes per dropped summary, and a transfer that fails during the cut raises no
transfer-failedproblem. The agent's log says so, and the problems list does not. - A schedule runs at most ten runs at a time. While the hub stores no run records, as during a cut between an agent and the hub, a run holds its place for its command's time plus about four and a half minutes of publish tries, or longer when the hub is reached but doesn't answer. A schedule that fires more often than one tenth of that time, about every 28 seconds for a command that ends at once, runs its fires in groups of ten with gaps between the groups, and the fires due in a gap are skipped without a log line and leave no record.
- A schedule's run record that the hub has not stored is kept on the agent's host only after about four and a half minutes of publish tries. If the schedule's deployment stops before those tries end, as when an agent that is cut off from the hub restarts, is upgraded or passes its environment's offline start limit, the records of the runs whose tries are still open are lost. The commands of those runs have run and the agent's log shows how each ended, but the hub lists no record for them and no line says that a record was lost. The fix is planned for 2026.2.3.
- When an integration is stopped, restarted or undeployed, a message that is being handled at that moment is given the integration's stop time to finish. Its log lines are kept, but its trace is not recorded.
- The Windows installer ships 18 programs and libraries from other projects as those projects publish them, without a signature from Adafy Oy or from their makers:
nats-server.exe,otelcol-contrib.exe,rclone.exe,CliWrap.dll,NATS.Client.Abstractions.dll,NATS.Client.Core.dll,NATS.Client.JetStream.dll,NATS.Client.KeyValueStore.dll,NATS.Client.ObjectStore.dll,NATS.Client.OpenTelemetry.dll,NATS.Client.Services.dll,NATS.NKeys.dll,OpenTelemetry.Api.dll,OpenTelemetry.Api.ProviderBuilderExtensions.dll,OpenTelemetry.dll,OpenTelemetry.Exporter.OpenTelemetryProtocol.dll,OpenTelemetry.Exporter.Prometheus.AspNetCore.dllandOpenTelemetry.Extensions.Hosting.dll. The installer itself and the agent's own programs are signed by Adafy Oy. A machine whose policy runs only signed programs needs these 18 files allowed by hand.