Diff of the two buildlogs:

--
--- b1/build.log	2025-02-01 14:53:51.336643928 +0000
+++ b2/build.log	2025-02-01 14:58:07.788997989 +0000
@@ -1,6 +1,6 @@
 I: pbuilder: network access will be disabled during build
-I: Current time: Fri Mar  6 09:12:57 -12 2026
-I: pbuilder-time-stamp: 1772831577
+I: Current time: Sun Feb  2 04:53:53 +14 2025
+I: pbuilder-time-stamp: 1738421633
 I: Building the build Environment
 I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
 I: copying local configuration
@@ -22,51 +22,83 @@
 dpkg-source: info: unpacking mender-connect_2.3.0+ds1-1.debian.tar.xz
 I: Not using root during the build.
 I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/3523670/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/D01_modify_environment starting
+debug: Running on infom01-amd64.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 Feb  1 14:54 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/D02_print_environment starting
 I: set
-  BUILDDIR='/build/reproducible-path'
-  BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
-  BUILDUSERNAME='pbuilder1'
-  BUILD_ARCH='amd64'
-  DEBIAN_FRONTEND='noninteractive'
+  BASH=/bin/sh
+  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
+  BASH_ALIASES=()
+  BASH_ARGC=()
+  BASH_ARGV=()
+  BASH_CMDS=()
+  BASH_LINENO=([0]="12" [1]="0")
+  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
+  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+  BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
+  BASH_VERSION='5.2.37(1)-release'
+  BUILDDIR=/build/reproducible-path
+  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+  BUILDUSERNAME=pbuilder2
+  BUILD_ARCH=amd64
+  DEBIAN_FRONTEND=noninteractive
   DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 '
-  DISTRIBUTION='unstable'
-  HOME='/root'
-  HOST_ARCH='amd64'
+  DIRSTACK=()
+  DISTRIBUTION=unstable
+  EUID=0
+  FUNCNAME=([0]="Echo" [1]="main")
+  GROUPS=()
+  HOME=/root
+  HOSTNAME=i-capture-the-hostname
+  HOSTTYPE=x86_64
+  HOST_ARCH=amd64
   IFS=' 	
   '
-  INVOCATION_ID='16eab1af7235450abbf681046665d0f1'
-  LANG='C'
-  LANGUAGE='en_US:en'
-  LC_ALL='C'
-  MAIL='/var/mail/root'
-  OPTIND='1'
-  PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
-  PBCURRENTCOMMANDLINEOPERATION='build'
-  PBUILDER_OPERATION='build'
-  PBUILDER_PKGDATADIR='/usr/share/pbuilder'
-  PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
-  PBUILDER_SYSCONFDIR='/etc'
-  PPID='3523670'
-  PS1='# '
-  PS2='> '
+  INVOCATION_ID=50c4b6dba27a4cac83051060b8590e3b
+  LANG=C
+  LANGUAGE=et_EE:et
+  LC_ALL=C
+  MACHTYPE=x86_64-pc-linux-gnu
+  MAIL=/var/mail/root
+  OPTERR=1
+  OPTIND=1
+  OSTYPE=linux-gnu
+  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+  PBCURRENTCOMMANDLINEOPERATION=build
+  PBUILDER_OPERATION=build
+  PBUILDER_PKGDATADIR=/usr/share/pbuilder
+  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+  PBUILDER_SYSCONFDIR=/etc
+  PIPESTATUS=([0]="0")
+  POSIXLY_CORRECT=y
+  PPID=2922828
   PS4='+ '
-  PWD='/'
-  SHELL='/bin/bash'
-  SHLVL='2'
-  SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.3X3Bu2rr/pbuilderrc_m1Zj --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.3X3Bu2rr/b1 --logfile b1/build.log mender-connect_2.3.0+ds1-1.dsc'
-  SUDO_GID='109'
-  SUDO_UID='104'
-  SUDO_USER='jenkins'
-  TERM='unknown'
-  TZ='/usr/share/zoneinfo/Etc/GMT+12'
-  USER='root'
-  _='/usr/bin/systemd-run'
+  PWD=/
+  SHELL=/bin/bash
+  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+  SHLVL=3
+  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.3X3Bu2rr/pbuilderrc_km87 --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.3X3Bu2rr/b2 --logfile b2/build.log mender-connect_2.3.0+ds1-1.dsc'
+  SUDO_GID=109
+  SUDO_UID=104
+  SUDO_USER=jenkins
+  TERM=unknown
+  TZ=/usr/share/zoneinfo/Etc/GMT-14
+  UID=0
+  USER=root
+  _='I: set'
 I: uname -a
-  Linux infom02-amd64 6.12.9+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.9-1~bpo12+1 (2025-01-19) x86_64 GNU/Linux
+  Linux i-capture-the-hostname 6.1.0-30-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.124-1 (2025-01-12) x86_64 GNU/Linux
 I: ls -l /bin
-  lrwxrwxrwx 1 root root 7 Nov 22  2024 /bin -> usr/bin
-I: user script /srv/workspace/pbuilder/3523670/tmp/hooks/D02_print_environment finished
+  lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/D02_print_environment finished
  -> Attempting to satisfy build-dependencies
  -> Creating pbuilder-satisfydepends-dummy package
 Package: pbuilder-satisfydepends-dummy
@@ -283,7 +315,7 @@
 Get: 149 http://deb.debian.org/debian unstable/main amd64 libglib2.0-bin amd64 2.82.4-2 [127 kB]
 Get: 150 http://deb.debian.org/debian unstable/main amd64 libglib2.0-dev-bin amd64 2.82.4-2 [52.1 kB]
 Get: 151 http://deb.debian.org/debian unstable/main amd64 libglib2.0-dev amd64 2.82.4-2 [52.9 kB]
-Fetched 104 MB in 3s (36.6 MB/s)
+Fetched 104 MB in 2s (63.1 MB/s)
 Preconfiguring packages ...
 Selecting previously unselected package libdbus-1-3:amd64.
 (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19840 files and directories currently installed.)
@@ -786,8 +818,8 @@
 Setting up tzdata (2025a-1) ...
 
 Current default time zone: 'Etc/UTC'
-Local time is now:      Fri Mar  6 21:14:24 UTC 2026.
-Universal Time is now:  Fri Mar  6 21:14:24 UTC 2026.
+Local time is now:      Sat Feb  1 14:55:48 UTC 2025.
+Universal Time is now:  Sat Feb  1 14:55:48 UTC 2025.
 Run 'dpkg-reconfigure tzdata' if you wish to change it.
 
 Setting up libsysprof-capture-4-dev:amd64 (47.2-1) ...
@@ -918,7 +950,11 @@
 Building tag database...
  -> Finished parsing the build-deps
 I: Building the package
-I: Running cd /build/reproducible-path/mender-connect-2.3.0+ds1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S  > ../mender-connect_2.3.0+ds1-1_source.changes
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/A99_set_merged_usr starting
+Not re-configuring usrmerge for unstable
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/reproducible-path/mender-connect-2.3.0+ds1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../mender-connect_2.3.0+ds1-1_source.changes
 dpkg-buildpackage: info: source package mender-connect
 dpkg-buildpackage: info: source version 2.3.0+ds1-1
 dpkg-buildpackage: info: source distribution unstable
@@ -940,191 +976,191 @@
 dh_auto_build -O--buildsystem=golang -- \
 	-ldflags "-X github.com/mendersoftware/mender-connect/config.Version="
 	cd _build && go install -trimpath -v -p 12 -ldflags "-X github.com/mendersoftware/mender-connect/config.Version=" github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils
-internal/profilerecord
 internal/coverage/rtcov
+internal/runtime/syscall
 internal/race
+internal/runtime/atomic
+internal/profilerecord
+internal/goarch
 internal/godebugs
+internal/cpu
 internal/goos
-internal/byteorder
-internal/goarch
-internal/runtime/syscall
 internal/unsafeheader
 internal/goexperiment
-internal/cpu
+internal/byteorder
 sync/atomic
 internal/asan
-internal/runtime/atomic
 internal/itoa
-internal/msan
+runtime/internal/math
+internal/abi
+runtime/internal/sys
 cmp
 math/bits
-unicode/utf8
-runtime/internal/math
+internal/msan
 internal/chacha8rand
-runtime/internal/sys
-internal/abi
-unicode
+unicode/utf8
 encoding
+unicode
 github.com/mendersoftware/go-lib-micro/ws/shell
+github.com/mendersoftware/go-lib-micro/ws
 unicode/utf16
 log/internal
-github.com/mendersoftware/go-lib-micro/ws
 crypto/internal/alias
 crypto/subtle
 crypto/internal/boring/sig
 container/list
 vendor/golang.org/x/crypto/cryptobyte/asn1
-internal/nettrace
 vendor/golang.org/x/crypto/internal/alias
-internal/runtime/exithook
-internal/bytealg
+internal/nettrace
 github.com/vmihailenco/msgpack/v5/msgpcode
-math
 github.com/vmihailenco/tagparser/v2/internal
 github.com/mendersoftware/go-lib-micro/ws/menderclient
 github.com/mendersoftware/go-lib-micro/ws/portforward
+internal/runtime/exithook
+internal/bytealg
+math
 internal/stringslite
 runtime
-internal/reflectlite
 iter
-sync
+internal/reflectlite
 internal/weak
-maps
+sync
 slices
+maps
 internal/bisect
 internal/testlog
 internal/singleflight
 runtime/cgo
 errors
-strconv
-internal/godebug
 internal/oserror
-sort
 io
 path
+internal/godebug
 crypto/internal/edwards25519/field
+sort
+strconv
 vendor/golang.org/x/net/dns/dnsmessage
-crypto/internal/nistec/fiat
 math/rand/v2
+crypto/internal/nistec/fiat
 syscall
-math/rand
-crypto/internal/edwards25519
-strings
 bytes
+strings
 hash
+crypto/internal/edwards25519
+reflect
 crypto/internal/randutil
+math/rand
+crypto/rc4
 internal/concurrent
+crypto
 hash/crc32
+crypto/md5
 unique
-reflect
-crypto/rc4
-net/netip
-crypto
-github.com/vmihailenco/tagparser/v2/internal/parser
-crypto/cipher
-vendor/golang.org/x/text/transform
 html
-bufio
 regexp/syntax
-crypto/md5
 net/http/internal/ascii
-github.com/vmihailenco/tagparser/v2
 net/http/internal/testcert
-crypto/des
+bufio
+crypto/cipher
+vendor/golang.org/x/text/transform
+github.com/vmihailenco/tagparser/v2/internal/parser
+net/netip
+github.com/vmihailenco/tagparser/v2
 crypto/internal/boring
+crypto/des
 crypto/sha1
+crypto/sha256
 crypto/aes
 crypto/sha512
 crypto/hmac
-crypto/sha256
 vendor/golang.org/x/crypto/hkdf
 time
+internal/syscall/unix
 internal/syscall/execenv
 regexp
-internal/syscall/unix
 context
-io/fs
 github.com/mendersoftware/go-lib-micro/ws/filetransfer
+io/fs
 internal/poll
 internal/fmtsort
 encoding/binary
 internal/filepathlite
 embed
 crypto/internal/nistec
-github.com/mendersoftware/mender-connect/client/dbus/test
-os
 encoding/base64
+vendor/golang.org/x/crypto/internal/poly1305
 vendor/golang.org/x/crypto/chacha20
 golang.org/x/sys/unix
-vendor/golang.org/x/crypto/internal/poly1305
+os
 encoding/pem
-crypto/ecdh
-fmt
 io/ioutil
-vendor/golang.org/x/sys/cpu
-path/filepath
+fmt
 os/signal
-net
-vendor/golang.org/x/crypto/sha3
-vendor/golang.org/x/crypto/chacha20poly1305
+path/filepath
+vendor/golang.org/x/sys/cpu
+crypto/ecdh
 os/exec
 github.com/mendersoftware/mender-connect/procps
 github.com/creack/pty
+vendor/golang.org/x/crypto/chacha20poly1305
+vendor/golang.org/x/crypto/sha3
 github.com/pkg/errors
-text/tabwriter
 github.com/xrash/smetrics
+text/tabwriter
 encoding/json
-log
 flag
 github.com/russross/blackfriday/v2
 net/url
+log
 text/template/parse
-os/user
 compress/flate
-github.com/mendersoftware/mender-connect/client/dbus
 math/big
 encoding/hex
-vendor/golang.org/x/text/unicode/bidi
 vendor/golang.org/x/text/unicode/norm
-compress/gzip
+vendor/golang.org/x/text/unicode/bidi
 vendor/golang.org/x/net/http2/hpack
 mime
 mime/quotedprintable
-text/template
-vendor/golang.org/x/text/secure/bidirule
-github.com/cpuguy83/go-md2man/v2/md2man
 net/http/internal
 github.com/vmihailenco/msgpack/v5
+compress/gzip
+vendor/golang.org/x/text/secure/bidirule
 database/sql/driver
 github.com/davecgh/go-spew/spew
 github.com/pmezard/go-difflib/difflib
 gopkg.in/yaml.v3
-vendor/golang.org/x/net/idna
 runtime/debug
+text/template
+github.com/cpuguy83/go-md2man/v2/md2man
 github.com/sirupsen/logrus
 github.com/stretchr/objx
+vendor/golang.org/x/net/idna
 github.com/go-ozzo/ozzo-validation/v4
 github.com/urfave/cli/v2
 crypto/rand
 crypto/elliptic
-crypto/internal/bigmod
 crypto/internal/boring/bbig
+crypto/internal/bigmod
+crypto/dsa
 encoding/asn1
+github.com/mendersoftware/mender-connect/session/model
 crypto/ed25519
-crypto/internal/hpke
 crypto/internal/mlkem768
-crypto/dsa
-github.com/mendersoftware/mender-connect/session/model
-crypto/rsa
+crypto/internal/hpke
 crypto/x509/pkix
 vendor/golang.org/x/crypto/cryptobyte
+crypto/rsa
 crypto/ecdsa
-github.com/mendersoftware/mender-connect/utils
+github.com/mendersoftware/mender-connect/client/dbus/test
+github.com/mendersoftware/mender-connect/client/dbus
+os/user
+net
 github.com/mendersoftware/mender-connect/config
+github.com/mendersoftware/mender-connect/utils
 github.com/mendersoftware/mender-connect/limits/filetransfer
-crypto/x509
 vendor/golang.org/x/net/http/httpproxy
 net/textproto
+crypto/x509
 vendor/golang.org/x/net/http/httpguts
 mime/multipart
 crypto/tls
@@ -1141,8 +1177,8 @@
 github.com/stretchr/testify/mock
 github.com/mendersoftware/mender-connect/app
 github.com/mendersoftware/mender-connect/client/dbus/mocks
-github.com/mendersoftware/mender-connect/session/mocks
 github.com/mendersoftware/mender-connect/client/mender/mocks
+github.com/mendersoftware/mender-connect/session/mocks
 github.com/mendersoftware/mender-connect/cli
 github.com/mendersoftware/mender-connect
 make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
@@ -1152,20 +1188,20 @@
 	--bus-type=system \
 	--max-wait=600 \
 	-t dh_auto_test
-DBus daemon: unix:path=/tmp/dbus-FFjhRgvcRJ,guid=ee7808c2dfbcf615827ca42669ab43c8
-task-0: Started with PID: 3529080
+DBus daemon: unix:path=/tmp/dbus-EVLAiJdNCP,guid=2ba725a1782206e69d49264b679e3615
+task-0: Started with PID: 2954938
 task-0: 	cd _build && go test -vet=off -v -p 12 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils
 task-0: === RUN   TestMainExitCodes
 task-0: unknown	runtime: go1.23.5
-task-0: --- PASS: TestMainExitCodes (0.01s)
+task-0: --- PASS: TestMainExitCodes (0.00s)
 task-0: === RUN   TestMainRequiresConfig
-task-0: time="2026-03-06T09:15:04-12:00" level=info msg="No configuration files present. Using defaults"
-task-0: time="2026-03-06T09:15:04-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
-task-0: time="2026-03-06T09:15:04-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:04-12:00" level=error msg="please provide a user to run the shell as"
+task-0: time="2025-02-02T04:56:29+14:00" level=info msg="No configuration files present. Using defaults"
+task-0: time="2025-02-02T04:56:29+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
+task-0: time="2025-02-02T04:56:29+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:29+14:00" level=error msg="please provide a user to run the shell as"
 task-0: --- PASS: TestMainRequiresConfig (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect	0.025s
+task-0: ok  	github.com/mendersoftware/mender-connect	0.005s
 task-0: ?   	github.com/mendersoftware/mender-connect/cli	[no test files]
 task-0: ?   	github.com/mendersoftware/mender-connect/client/dbus/mocks	[no test files]
 task-0: ?   	github.com/mendersoftware/mender-connect/client/dbus/test	[no test files]
@@ -1176,79 +1212,79 @@
 task-0:     daemon_test.go:143: starting mock httpd with websockets
 task-0: newShellTransaction sendMessage(SpwanShell)=<nil>
 task-0:     daemon_test.go:166: read message: type, session_id, data new, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2026-03-06T09:15:04-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532482"
+task-0: time="2025-02-02T04:56:29+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2959072"
 task-0: newShellTransaction (0) sendMessage=&{Header:{Proto:1 MsgType:new SessionID:c4993deb-26b4-4c58-aaee-fd0c9e694328 Properties:map[status:1]} Body:[83 104 101 108 108 32 115 116 97 114 116 101 100]},<nil>
 task-0: newShellTransaction (1) sendMessage=<nil>
 task-0: newShellTransaction (2) sendMessage=<nil>
 task-0: newShellTransaction (3) sendMessage=<nil>
 task-0: newShellTransaction (4) sendMessage=<nil>
-task-0:     daemon_test.go:175: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, echo newShellTransaction.5139 > /tmp/TestMenderShellExec833804148
-task-0:     daemon_test.go:182: read message: type, session_id, data shell, undefined-session-id, rm -f /tmp/TestMenderShellExec833804148
-task-0: time="2026-03-06T09:15:04-12:00" level=error msg="session not found"
+task-0:     daemon_test.go:175: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, echo newShellTransaction.5395917 > /tmp/TestMenderShellExec3100552385
+task-0:     daemon_test.go:182: read message: type, session_id, data shell, undefined-session-id, rm -f /tmp/TestMenderShellExec3100552385
+task-0: time="2025-02-02T04:56:29+14:00" level=error msg="session not found"
 task-0:     daemon_test.go:185: route message error: session not found
 task-0:     daemon_test.go:189: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, thiscommand probably does not exist
 task-0:     daemon_test.go:196: read message: type, session_id, data stop, undefined-session-id, 
-task-0: time="2026-03-06T09:15:04-12:00" level=error msg="routeMessage: StopShellMessage: session not found for id undefined-session-id"
+task-0: time="2025-02-02T04:56:29+14:00" level=error msg="routeMessage: StopShellMessage: session not found for id undefined-session-id"
 task-0:     daemon_test.go:199: route message error: routeMessage: StopShellMessage: session not found for id undefined-session-id
 task-0:     daemon_test.go:203: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2026-03-06T09:15:08-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: time="2025-02-02T04:56:33+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
 task-0:     daemon_test.go:209: checking command execution results
-task-0:     daemon_test.go:212: checking if /tmp/TestMenderShellExec833804148 contains newShellTransaction.5139
-task-0:     daemon_test.go:215: got: 'newShellTransaction.5139'
-task-0: --- PASS: TestMenderShellSessionStart (8.02s)
+task-0:     daemon_test.go:212: checking if /tmp/TestMenderShellExec3100552385 contains newShellTransaction.5395917
+task-0:     daemon_test.go:215: got: 'newShellTransaction.5395917'
+task-0: --- PASS: TestMenderShellSessionStart (8.01s)
 task-0: === RUN   TestMenderShellStopByUserId
 task-0:     daemon_test.go:253: starting mock httpd with websockets
 task-0: newShellStopByUserId starting
 task-0: (0) newShellStopByUserId sendMessage: <nil>
 task-0:     daemon_test.go:278: read message: type, session_id, data new, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2026-03-06T09:15:14-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532927"
+task-0: time="2025-02-02T04:56:39+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2961773"
 task-0: (1) newShellStopByUserId sendMessage: <nil>
 task-0: (2) newShellStopByUserId sendMessage: <nil>
 task-0: (3) newShellStopByUserId sendMessage: <nil>
 task-0:     daemon_test.go:292: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2026-03-06T09:15:14-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
-task-0: time="2026-03-06T09:15:14-12:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
-task-0: time="2026-03-06T09:15:18-12:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 3532927, termination error: error waiting for the process: signal: interrupt"
-task-0: time="2026-03-06T09:15:18-12:00" level=error msg="process error on exit: error waiting for the process: signal: interrupt"
+task-0: time="2025-02-02T04:56:39+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: time="2025-02-02T04:56:39+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
+task-0: time="2025-02-02T04:56:43+14:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 2961773, termination error: error waiting for the process: signal: interrupt"
+task-0: time="2025-02-02T04:56:43+14:00" level=error msg="process error on exit: error waiting for the process: signal: interrupt"
 task-0:     daemon_test.go:299: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2026-03-06T09:15:18-12:00" level=error msg="routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328"
+task-0: time="2025-02-02T04:56:43+14:00" level=error msg="routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328"
 task-0:     daemon_test.go:302: route message error: routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328
-task-0: --- PASS: TestMenderShellStopByUserId (7.02s)
+task-0: --- PASS: TestMenderShellStopByUserId (7.01s)
 task-0: === RUN   TestMenderShellUnknownMessage
 task-0:     daemon_test.go:332: starting mock httpd with websockets
 task-0: newShellUnknownMessage starting
 task-0: (0) newShellStopByUserId sendMessage: <nil>
 task-0:     daemon_test.go:357: read message: proto, type, session_id, data 1, does-not-exist, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: --- PASS: TestMenderShellUnknownMessage (2.00s)
+task-0: --- PASS: TestMenderShellUnknownMessage (2.01s)
 task-0: === RUN   TestMenderShellSessionLimitPerUser
 task-0:     daemon_test.go:391: starting mock httpd with websockets
 task-0: newShellMulti: starting
 task-0: 
-task-0:     daemon_test.go:424: read message: type, session_id, data new, c82bc4f5-4c22-44b0-8d76-f9f2fd74d6ef, 
-task-0: time="2026-03-06T09:15:21-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532955"
-task-0:     daemon_test.go:424: read message: type, session_id, data new, 1d712efa-8c41-4c8d-9b36-dff5e9c71f11, 
-task-0: time="2026-03-06T09:15:21-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532956"
-task-0:     daemon_test.go:433: read message: type, session_id, data new, 7fac0670-a984-4f90-9b3d-8979ebbeb0e8, 
-task-0: time="2026-03-06T09:15:21-12:00" level=error msg="user has too many open sessions"
+task-0:     daemon_test.go:424: read message: type, session_id, data new, fc0389fa-4e03-4073-99b6-917d23a161a9, 
+task-0: time="2025-02-02T04:56:46+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2963605"
+task-0:     daemon_test.go:424: read message: type, session_id, data new, 8b6685fc-43f8-4715-b734-130a86899a2d, 
+task-0: time="2025-02-02T04:56:46+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2963606"
+task-0:     daemon_test.go:433: read message: type, session_id, data new, d6cdb163-167b-4c5b-9385-1d664951b2e7, 
+task-0: time="2025-02-02T04:56:46+14:00" level=error msg="user has too many open sessions"
 task-0:     daemon_test.go:436: route message error: user has too many open sessions
-task-0: --- PASS: TestMenderShellSessionLimitPerUser (0.01s)
+task-0: --- PASS: TestMenderShellSessionLimitPerUser (0.00s)
 task-0: === RUN   TestMenderShellStopDaemon
 task-0: --- PASS: TestMenderShellStopDaemon (0.00s)
 task-0: === RUN   TestMenderShellReadMessage
 task-0:     daemon_test.go:502: starting mock httpd with websockets
-task-0: --- PASS: TestMenderShellReadMessage (10.00s)
+task-0: --- PASS: TestMenderShellReadMessage (10.01s)
 task-0: === RUN   TestMenderShellMaxShellsLimit
 task-0:     daemon_test.go:546: starting mock httpd with websockets
 task-0: newShellMulti: starting
 task-0: 
 task-0: newShellMulti: starting
 task-0: 
-task-0:     daemon_test.go:578: read message: type, session_id, data new, cdde8d7e-94a6-426f-99e3-3170de04d3c0, 
-task-0: time="2026-03-06T09:15:32-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3533032"
-task-0:     daemon_test.go:578: read message: type, session_id, data new, 092569ef-3d6a-4268-84bd-f98f7fb34e8b, 
-task-0: time="2026-03-06T09:15:33-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3533033"
-task-0:     daemon_test.go:587: read message: type, session_id, data new, f22c3ce2-a138-477d-bc70-47b1b4963e1d, 
-task-0: time="2026-03-06T09:15:33-12:00" level=error msg="too many shells spawned"
+task-0:     daemon_test.go:578: read message: type, session_id, data new, 54d5db6a-82de-411f-a08c-6bacb9a8c00f, 
+task-0: time="2025-02-02T04:56:57+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2965756"
+task-0:     daemon_test.go:578: read message: type, session_id, data new, c9467e15-f5f3-481f-890b-12f78e109a55, 
+task-0: time="2025-02-02T04:56:58+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2965849"
+task-0:     daemon_test.go:587: read message: type, session_id, data new, ca8f129b-a1b7-4cab-8d98-31d80f120c6e, 
+task-0: time="2025-02-02T04:56:58+14:00" level=error msg="too many shells spawned"
 task-0:     daemon_test.go:590: route message error: too many shells spawned
 task-0: --- PASS: TestMenderShellMaxShellsLimit (2.01s)
 task-0: === RUN   TestMenderShellNeedsReconnect
@@ -1258,25 +1294,25 @@
 task-0: === RUN   TestMenderShellReadEvent
 task-0: --- PASS: TestMenderShellReadEvent (0.00s)
 task-0: === RUN   TestOutputStatus
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="mender-connect daemon vunknown"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg=" status: "
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="  shells: 0/2"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="  sessions: 4"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   id:c82bc4f5-4c22-44b0-8d76-f9f2fd74d6ef status:0 started:Fri Mar 6 21:15:21 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   expires:Fri Mar 6 21:17:29 +0000 UTC 2026 active:Fri Mar 6 21:15:21 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   id:1d712efa-8c41-4c8d-9b36-dff5e9c71f11 status:0 started:Fri Mar 6 21:15:21 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   expires:Fri Mar 6 21:17:29 +0000 UTC 2026 active:Fri Mar 6 21:15:21 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   id:cdde8d7e-94a6-426f-99e3-3170de04d3c0 status:0 started:Fri Mar 6 21:15:32 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   expires:Fri Mar 6 21:32:36 +0000 UTC 2026 active:Fri Mar 6 21:15:32 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   id:092569ef-3d6a-4268-84bd-f98f7fb34e8b status:0 started:Fri Mar 6 21:15:33 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   expires:Fri Mar 6 21:32:37 +0000 UTC 2026 active:Fri Mar 6 21:15:33 +0000 UTC 2026"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="  file-transfer:"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   total: tx/rx 0/0"
-task-0: time="2026-03-06T09:15:34-12:00" level=info msg="   1m: tx rx 0.00 0.00 (w)"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="mender-connect daemon vunknown"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg=" status: "
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="  shells: 0/2"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="  sessions: 4"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   id:fc0389fa-4e03-4073-99b6-917d23a161a9 status:0 started:Sat Feb 1 14:56:46 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   expires:Sat Feb 1 14:58:54 +0000 UTC 2025 active:Sat Feb 1 14:56:46 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   id:8b6685fc-43f8-4715-b734-130a86899a2d status:0 started:Sat Feb 1 14:56:46 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   expires:Sat Feb 1 14:58:54 +0000 UTC 2025 active:Sat Feb 1 14:56:46 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   id:54d5db6a-82de-411f-a08c-6bacb9a8c00f status:0 started:Sat Feb 1 14:56:57 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   expires:Sat Feb 1 15:14:01 +0000 UTC 2025 active:Sat Feb 1 14:56:57 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   id:c9467e15-f5f3-481f-890b-12f78e109a55 status:0 started:Sat Feb 1 14:56:58 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   expires:Sat Feb 1 15:14:02 +0000 UTC 2025 active:Sat Feb 1 14:56:58 +0000 UTC 2025"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="  file-transfer:"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   total: tx/rx 0/0"
+task-0: time="2025-02-02T04:56:59+14:00" level=info msg="   1m: tx rx 0.00 0.00 (w)"
 task-0: --- PASS: TestOutputStatus (0.00s)
 task-0: === RUN   TestTimeToSweepSessions
 task-0: --- PASS: TestTimeToSweepSessions (4.00s)
@@ -1301,16 +1337,16 @@
 task-0: === NAME  TestMessageMainLoop
 task-0:     daemon_test.go:993: ok: expected to run forever
 task-0: === RUN   TestMessageMainLoop/ws-nil-error
-task-0: time="2026-03-06T09:16:26-12:00" level=error msg="session c82bc4f5-4c22-44b0-8d76-f9f2fd74d6ef, health check failed, connection with the client lost"
-task-0: time="2026-03-06T09:16:26-12:00" level=info msg="session c82bc4f5-4c22-44b0-8d76-f9f2fd74d6ef status:0 stopping shell"
-task-0: time="2026-03-06T09:16:26-12:00" level=error msg="session 1d712efa-8c41-4c8d-9b36-dff5e9c71f11, health check failed, connection with the client lost"
-task-0: time="2026-03-06T09:16:26-12:00" level=info msg="session 1d712efa-8c41-4c8d-9b36-dff5e9c71f11 status:0 stopping shell"
-task-0: time="2026-03-06T09:16:30-12:00" level=info msg="session c82bc4f5-4c22-44b0-8d76-f9f2fd74d6ef successfully stopped"
-task-0: time="2026-03-06T09:16:30-12:00" level=info msg="session 1d712efa-8c41-4c8d-9b36-dff5e9c71f11 successfully stopped"
-task-0: time="2026-03-06T09:16:37-12:00" level=error msg="session cdde8d7e-94a6-426f-99e3-3170de04d3c0, health check failed, connection with the client lost"
-task-0: time="2026-03-06T09:16:37-12:00" level=info msg="session cdde8d7e-94a6-426f-99e3-3170de04d3c0 status:0 stopping shell"
-task-0: time="2026-03-06T09:16:38-12:00" level=error msg="session 092569ef-3d6a-4268-84bd-f98f7fb34e8b, health check failed, connection with the client lost"
-task-0: time="2026-03-06T09:16:38-12:00" level=info msg="session 092569ef-3d6a-4268-84bd-f98f7fb34e8b status:0 stopping shell"
+task-0: time="2025-02-02T04:57:51+14:00" level=error msg="session 8b6685fc-43f8-4715-b734-130a86899a2d, health check failed, connection with the client lost"
+task-0: time="2025-02-02T04:57:51+14:00" level=info msg="session 8b6685fc-43f8-4715-b734-130a86899a2d status:0 stopping shell"
+task-0: time="2025-02-02T04:57:51+14:00" level=error msg="session fc0389fa-4e03-4073-99b6-917d23a161a9, health check failed, connection with the client lost"
+task-0: time="2025-02-02T04:57:51+14:00" level=info msg="session fc0389fa-4e03-4073-99b6-917d23a161a9 status:0 stopping shell"
+task-0: time="2025-02-02T04:57:55+14:00" level=info msg="session 8b6685fc-43f8-4715-b734-130a86899a2d successfully stopped"
+task-0: time="2025-02-02T04:57:55+14:00" level=info msg="session fc0389fa-4e03-4073-99b6-917d23a161a9 successfully stopped"
+task-0: time="2025-02-02T04:58:02+14:00" level=error msg="session 54d5db6a-82de-411f-a08c-6bacb9a8c00f, health check failed, connection with the client lost"
+task-0: time="2025-02-02T04:58:02+14:00" level=info msg="session 54d5db6a-82de-411f-a08c-6bacb9a8c00f status:0 stopping shell"
+task-0: time="2025-02-02T04:58:03+14:00" level=error msg="session c9467e15-f5f3-481f-890b-12f78e109a55, health check failed, connection with the client lost"
+task-0: time="2025-02-02T04:58:03+14:00" level=info msg="session c9467e15-f5f3-481f-890b-12f78e109a55 status:0 stopping shell"
 task-0: === NAME  TestMessageMainLoop
 task-0:     daemon_test.go:993: ok: expected to run forever
 task-0: --- PASS: TestMessageMainLoop (30.00s)
@@ -1348,9 +1384,9 @@
 task-0:     --- PASS: TestRouteMessage/ok,_session_router (0.00s)
 task-0:     --- PASS: TestRouteMessage/error,_session_router (0.00s)
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_0_with_0
-task-0: time="2026-03-06T09:16:40-12:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
+task-0: time="2025-02-02T04:58:05+14:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_0
-task-0: time="2026-03-06T09:16:40-12:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
+task-0: time="2025-02-02T04:58:05+14:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_some_with_many
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_some
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_many
@@ -1364,14 +1400,14 @@
 task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_many (0.00s)
 task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_1_with_many (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/app	96.089s
+task-0: ok  	github.com/mendersoftware/mender-connect/app	96.070s
 task-0: === RUN   TestBusGet
 task-0: --- PASS: TestBusGet (0.00s)
 task-0: === RUN   TestBusProxyNew
 task-0: === RUN   TestBusProxyNew/ok
 task-0: === RUN   TestBusProxyNew/ko,_wrong_path
 task-0: 
-task-0: (process:3532644): GLib-GIO-CRITICAL **: 09:15:10.050: g_dbus_proxy_new_sync: assertion 'g_variant_is_object_path (object_path)' failed
+task-0: (process:2959682): GLib-GIO-CRITICAL **: 04:56:31.615: g_dbus_proxy_new_sync: assertion 'g_variant_is_object_path (object_path)' failed
 task-0: --- PASS: TestBusProxyNew (0.00s)
 task-0:     --- PASS: TestBusProxyNew/ok (0.00s)
 task-0:     --- PASS: TestBusProxyNew/ko,_wrong_path (0.00s)
@@ -1393,7 +1429,7 @@
 task-0: === RUN   TestError
 task-0: --- PASS: TestError (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/client/dbus	0.223s
+task-0: ok  	github.com/mendersoftware/mender-connect/client/dbus	0.210s
 task-0: === RUN   TestNewAuthClientDefaultDBusAPI
 task-0: --- PASS: TestNewAuthClientDefaultDBusAPI (0.00s)
 task-0: === RUN   TestNewAuthClient
@@ -1419,61 +1455,61 @@
 task-0:     --- PASS: TestAuthClientFetchJWTToken/ok (0.00s)
 task-0:     --- PASS: TestAuthClientFetchJWTToken/error (0.00s)
 task-0: === RUN   TestAuthClientWaitForJwtTokenStateChange
+task-0: === RUN   TestAuthClientWaitForJwtTokenStateChange/error
 task-0: === RUN   TestAuthClientWaitForJwtTokenStateChange/ok-no-params
 task-0: === RUN   TestAuthClientWaitForJwtTokenStateChange/ok-with-params
-task-0: === RUN   TestAuthClientWaitForJwtTokenStateChange/error
 task-0: --- PASS: TestAuthClientWaitForJwtTokenStateChange (0.00s)
+task-0:     --- PASS: TestAuthClientWaitForJwtTokenStateChange/error (0.00s)
 task-0:     --- PASS: TestAuthClientWaitForJwtTokenStateChange/ok-no-params (0.00s)
 task-0:     --- PASS: TestAuthClientWaitForJwtTokenStateChange/ok-with-params (0.00s)
-task-0:     --- PASS: TestAuthClientWaitForJwtTokenStateChange/error (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/client/mender	0.020s
+task-0: ok  	github.com/mendersoftware/mender-connect/client/mender	0.005s
 task-0: === RUN   Test_readConfigFile_noFile_returnsError
 task-0: --- PASS: Test_readConfigFile_noFile_returnsError (0.00s)
 task-0: === RUN   Test_readConfigFile_brokenContent_returnsError
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest420352704/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest420352704/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
+task-0: time="2025-02-02T04:56:31+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest2284094564/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
+task-0: time="2025-02-02T04:56:31+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest2284094564/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
 task-0: --- PASS: Test_readConfigFile_brokenContent_returnsError (0.00s)
 task-0: === RUN   Test_LoadConfig_correctConfFile_returnsConfiguration
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3257111942/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3257111942/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1020338488/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1020338488/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
 task-0: --- PASS: Test_LoadConfig_correctConfFile_returnsConfiguration (0.00s)
 task-0: === RUN   TestConfigurationMergeSettings
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: fallback.config"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: fallback.config"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: main.config"
 task-0: --- PASS: TestConfigurationMergeSettings (0.00s)
 task-0: === RUN   Test_LoadConfig_various_errors
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2488270518/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2488270518/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2488270518/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2488270518/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2488270518/mender-connect.conf"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="ShellCommand /bin/ls is not present in /etc/shells"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest2488270518/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest2488270518/mender-connect.conf (Error parsing config file: json: cannot unmarshal number into Go struct field MenderShellConfigFromFile.ShellCommand of type string)"
-task-0: --- PASS: Test_LoadConfig_various_errors (0.12s)
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest2879036400/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest2879036400/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest2879036400/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest2879036400/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: /tmp/mendertest2879036400/mender-connect.conf"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=error msg="ShellCommand /bin/ls is not present in /etc/shells"
+task-0: time="2025-02-02T04:56:31+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest2879036400/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
+task-0: time="2025-02-02T04:56:31+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest2879036400/mender-connect.conf (Error parsing config file: json: cannot unmarshal number into Go struct field MenderShellConfigFromFile.ShellCommand of type string)"
+task-0: --- PASS: Test_LoadConfig_various_errors (0.03s)
 task-0: === RUN   TestConfigurationNeitherFileExistsIsNotError
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="No configuration files present. Using defaults"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="No configuration files present. Using defaults"
 task-0: --- PASS: TestConfigurationNeitherFileExistsIsNotError (0.00s)
 task-0: === RUN   TestShellArgumentsEmptyDefaults
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: main.config"
-task-0: time="2026-03-06T09:15:10-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: main.config"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="Loaded configuration file: main.config"
-task-0: --- PASS: TestShellArgumentsEmptyDefaults (0.00s)
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-02-02T04:56:31+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-02-02T04:56:31+14:00" level=info msg="Loaded configuration file: main.config"
+task-0: --- PASS: TestShellArgumentsEmptyDefaults (0.01s)
 task-0: === RUN   TestServerArgumentsDeprecated
-task-0: --- PASS: TestServerArgumentsDeprecated (0.01s)
+task-0: --- PASS: TestServerArgumentsDeprecated (0.04s)
 task-0: === RUN   TestGetStateDirPath
 task-0: --- PASS: TestGetStateDirPath (0.00s)
 task-0: === RUN   TestGetConfDirPath
@@ -1488,22 +1524,22 @@
 task-0: === RUN   TestMenderShowVersion
 task-0: --- PASS: TestMenderShowVersion (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/config	0.144s
+task-0: ok  	github.com/mendersoftware/mender-connect/config	0.084s
 task-0: === RUN   TestNewConnection
 task-0:     connection_test.go:97: starting mock httpd with websockets
 task-0: --- PASS: TestNewConnection (0.00s)
 task-0: === RUN   TestConnection_ReadMessage
 task-0:     connection_test.go:126: starting mock httpd with websockets
 task-0:     connection_test.go:143: read: 'hello'
-task-0: --- PASS: TestConnection_ReadMessage (1.01s)
+task-0: --- PASS: TestConnection_ReadMessage (1.00s)
 task-0: === RUN   TestConnection_WriteMessage
 task-0:     connection_test.go:149: starting mock httpd with websockets
 task-0: --- PASS: TestConnection_WriteMessage (1.00s)
 task-0: === RUN   TestConnection_Close
 task-0:     connection_test.go:174: starting mock httpd with websockets
-task-0: --- PASS: TestConnection_Close (1.01s)
+task-0: --- PASS: TestConnection_Close (1.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/connection	3.033s
+task-0: ok  	github.com/mendersoftware/mender-connect/connection	3.015s
 task-0: === RUN   TestGetWriteTimeout
 task-0: --- PASS: TestGetWriteTimeout (0.00s)
 task-0: === RUN   TestGetWsScheme
@@ -1511,24 +1547,24 @@
 task-0: === RUN   TestConnect
 task-0: --- PASS: TestConnect (2.01s)
 task-0: === RUN   TestReconnect
-task-0: 2026/03/06 09:15:12 [130 163 104 100 114 129 165 112 114 111 116 111 205 0 1 164 98 111 100 121 196 5 100 117 109 109 121]
-task-0: 2026/03/06 09:15:12 http: panic serving 127.0.0.1:41762: websocket: close 1006 (abnormal closure): unexpected EOF
-task-0: goroutine 18 [running]:
+task-0: 2025/02/02 04:56:33 [130 163 104 100 114 129 165 112 114 111 116 111 205 0 1 164 98 111 100 121 196 5 100 117 109 109 121]
+task-0: 2025/02/02 04:56:33 http: panic serving 127.0.0.1:50170: websocket: close 1006 (abnormal closure): unexpected EOF
+task-0: goroutine 5 [running]:
 task-0: net/http.(*conn).serve.func1()
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:1947 +0xbe
 task-0: panic({0x736900?, 0xa0f350?})
 task-0: 	/usr/lib/go-1.23/src/runtime/panic.go:785 +0x132
-task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x82e0a8?, 0xc000136000?}, 0xc00011fb38?)
+task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x82e0a8?, 0xc0000bc000?}, 0xc0000abb38?)
 task-0: 	/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1df
-task-0: net/http.HandlerFunc.ServeHTTP(0xc0000be338?, {0x82e0a8?, 0xc000136000?}, 0x6accf6?)
+task-0: net/http.HandlerFunc.ServeHTTP(0xc00014e338?, {0x82e0a8?, 0xc0000bc000?}, 0x6accf6?)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2220 +0x29
-task-0: net/http.(*ServeMux).ServeHTTP(0x46c9f9?, {0x82e0a8, 0xc000136000}, 0xc00021e000)
+task-0: net/http.(*ServeMux).ServeHTTP(0x46c9f9?, {0x82e0a8, 0xc0000bc000}, 0xc0000a2000)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2747 +0x1ca
-task-0: net/http.serverHandler.ServeHTTP({0xc0002060c0?}, {0x82e0a8?, 0xc000136000?}, 0x6?)
+task-0: net/http.serverHandler.ServeHTTP({0xc00009c0c0?}, {0x82e0a8?, 0xc0000bc000?}, 0x6?)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3210 +0x8e
-task-0: net/http.(*conn).serve(0xc00020a000, {0x82e5d0, 0xc0001d0030})
+task-0: net/http.(*conn).serve(0xc00009e000, {0x82e5d0, 0xc0001e8030})
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2092 +0x5d0
-task-0: created by net/http.(*Server).Serve in goroutine 10
+task-0: created by net/http.(*Server).Serve in goroutine 23
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3360 +0x485
 task-0: --- PASS: TestReconnect (2.01s)
 task-0: === RUN   TestConnectFailed
@@ -1538,17 +1574,35 @@
 task-0: === RUN   TestWriteFailed
 task-0: --- PASS: TestWriteFailed (0.00s)
 task-0: === RUN   TestExponentialBackoffTimeCalculation
+task-0: 2025/02/02 04:56:35 http: panic serving 127.0.0.1:50180: read tcp 127.0.0.1:8999->127.0.0.1:50180: read: connection reset by peer
+task-0: goroutine 36 [running]:
+task-0: net/http.(*conn).serve.func1()
+task-0: 	/usr/lib/go-1.23/src/net/http/server.go:1947 +0xbe
+task-0: panic({0x7507a0?, 0xc000228140?})
+task-0: 	/usr/lib/go-1.23/src/runtime/panic.go:785 +0x132
+task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x82e0a8?, 0xc0000bc0e0?}, 0xc000079b38?)
+task-0: 	/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1df
+task-0: net/http.HandlerFunc.ServeHTTP(0xc0002b8098?, {0x82e0a8?, 0xc0000bc0e0?}, 0x6accf6?)
+task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2220 +0x29
+task-0: net/http.(*ServeMux).ServeHTTP(0x46c9f9?, {0x82e0a8, 0xc0000bc0e0}, 0xc0000a2140)
+task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2747 +0x1ca
+task-0: net/http.serverHandler.ServeHTTP({0xc00009c420?}, {0x82e0a8?, 0xc0000bc0e0?}, 0x6?)
+task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3210 +0x8e
+task-0: net/http.(*conn).serve(0xc000208240, {0x82e5d0, 0xc0002823c0})
+task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2092 +0x5d0
+task-0: created by net/http.(*Server).Serve in goroutine 53
+task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3360 +0x485
 task-0: --- PASS: TestExponentialBackoffTimeCalculation (0.00s)
 task-0: === RUN   TestResetBackoff
 task-0: --- PASS: TestResetBackoff (0.00s)
 task-0: === RUN   TestMaxBackoff
 task-0: --- PASS: TestMaxBackoff (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/connectionmanager	4.030s
+task-0: ok  	github.com/mendersoftware/mender-connect/connectionmanager	4.019s
 task-0: === RUN   TestGetCounters
 task-0: --- PASS: TestGetCounters (8.04s)
 task-0: === RUN   TestUpdateCounters
-task-0:     limits_test.go:160: after 18s; +{24576 24576 1663.3268261488847 1663.3268261488847 {14007020409078037859 8037942831 0x7eb0a0} {14007020409078037930 8037942901 0x7eb0a0}} 1663.00 vs 1663.33=0.33 1663.00 vs 1663.33=0.33
+task-0:     limits_test.go:160: after 18s; +{24576 24576 1663.3268261488847 1663.3268261488847 {13970073040458798342 8039470403 0x7eb0a0} {13970073040458798402 8039470463 0x7eb0a0}} 1663.00 vs 1663.33=0.33 1663.00 vs 1663.33=0.33
 task-0: --- PASS: TestUpdateCounters (20.01s)
 task-0: === RUN   TestPermit_PreserveOwnerGroup
 task-0: --- PASS: TestPermit_PreserveOwnerGroup (0.00s)
@@ -1611,11 +1665,11 @@
 task-0:     --- PASS: TestPermit_UploadFile/suid_bit_not_allowed_in_modes (0.00s)
 task-0:     --- PASS: TestPermit_UploadFile/suid_bit_allowed_in_modes (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/limits/filetransfer	28.061s
+task-0: ok  	github.com/mendersoftware/mender-connect/limits/filetransfer	28.056s
 task-0: === RUN   TestMenderShellProcPs
-task-0: --- PASS: TestMenderShellProcPs (4.02s)
+task-0: --- PASS: TestMenderShellProcPs (4.01s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/procps	4.021s
+task-0: ok  	github.com/mendersoftware/mender-connect/procps	4.009s
 task-0: === RUN   TestFileTransferUpload
 task-0: === PAUSE TestFileTransferUpload
 task-0: === RUN   TestFileTransferDownload
@@ -1629,20 +1683,20 @@
 task-0: === RUN   TestRunCommand
 task-0: --- PASS: TestRunCommand (0.00s)
 task-0: === RUN   TestPortForwardHandler
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="portForwardHandler(unknown message type\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="port-forward: new session/c1: tcp/localhost:33069"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="portForwardHandler(dial tcp 127.0.0.1:33069: connect: connection refused)"
-task-0: time="2026-03-06T09:15:10-12:00" level=info msg="port-forward: new session/c1: dummy/localhost:40101"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="portForwardHandler(unknown protocol: dummy\ngithub.com/mendersoftware/mender-connect/session.(*MenderPortForwarder).Connect\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:74\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).portForwardHandlerNew\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:276\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).ServeProtoMsg\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:205\ngithub.com/mendersoftware/mender-connect/session.TestPortForwardHandler\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward_test.go:120\ntesting.tRunner\n\t/usr/lib/go-1.23/src/testing/testing.go:1690\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
-task-0: time="2026-03-06T09:15:10-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
+task-0: time="2025-02-02T04:56:32+14:00" level=error msg="portForwardHandler(unknown message type\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
+task-0: time="2025-02-02T04:56:32+14:00" level=info msg="port-forward: new session/c1: tcp/localhost:41167"
+task-0: time="2025-02-02T04:56:32+14:00" level=error msg="portForwardHandler(dial tcp 127.0.0.1:41167: connect: connection refused)"
+task-0: time="2025-02-02T04:56:32+14:00" level=info msg="port-forward: new session/c1: dummy/localhost:39879"
+task-0: time="2025-02-02T04:56:32+14:00" level=error msg="portForwardHandler(unknown protocol: dummy\ngithub.com/mendersoftware/mender-connect/session.(*MenderPortForwarder).Connect\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:74\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).portForwardHandlerNew\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:276\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).ServeProtoMsg\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:205\ngithub.com/mendersoftware/mender-connect/session.TestPortForwardHandler\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward_test.go:120\ntesting.tRunner\n\t/usr/lib/go-1.23/src/testing/testing.go:1690\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
+task-0: time="2025-02-02T04:56:32+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
+task-0: time="2025-02-02T04:56:32+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
 task-0: --- PASS: TestPortForwardHandler (0.00s)
 task-0: === RUN   TestPortForwardHandlerSuccessfulConnection
-task-0: time="2026-03-06T09:15:12-12:00" level=info msg="port-forward: new session/c1: tcp/localhost:40893"
-task-0: time="2026-03-06T09:15:13-12:00" level=info msg="port-forward: new session/c2: tcp/localhost:40893"
-task-0: time="2026-03-06T09:15:13-12:00" level=info msg="port-forward: stop session/c1"
-task-0: time="2026-03-06T09:15:13-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
-task-0: --- PASS: TestPortForwardHandlerSuccessfulConnection (3.22s)
+task-0: time="2025-02-02T04:56:34+14:00" level=info msg="port-forward: new session/c1: tcp/localhost:43169"
+task-0: time="2025-02-02T04:56:34+14:00" level=info msg="port-forward: new session/c2: tcp/localhost:43169"
+task-0: time="2025-02-02T04:56:34+14:00" level=info msg="port-forward: stop session/c1"
+task-0: time="2025-02-02T04:56:35+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7291\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7258\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_amd64.s:1700)"
+task-0: --- PASS: TestPortForwardHandlerSuccessfulConnection (3.21s)
 task-0: === RUN   TestRouter
 task-0: === PAUSE TestRouter
 task-0: === RUN   TestRouterRace
@@ -1651,33 +1705,35 @@
 task-0: === PAUSE TestSessionListen
 task-0: === RUN   TestMenderShellStartStopShell
 task-0:     session_test.go:587: starting mock httpd with websockets
-task-0: time="2026-03-06T09:15:13-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532925"
+task-0: time="2025-02-02T04:56:35+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2960731"
 task-0:     session_test.go:631: created session:
 task-0:          id:c4993deb-26b4-4c58-aaee-fd0c9e694328,
-task-0:          createdAt:Fri Mar 6 21:15:13 +0000 UTC 2026,
-task-0:          expiresAt:Fri Mar 6 21:32:17 +0000 UTC 2026
-task-0:          now:Fri Mar 6 09:15:13 -1200 -12 2026
-task-0: time="2026-03-06T09:15:13-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532926"
-task-0: time="2026-03-06T09:15:13-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
-task-0: time="2026-03-06T09:15:17-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:4 stopping shell"
-task-0: time="2026-03-06T09:15:17-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0:          createdAt:Sat Feb 1 14:56:35 +0000 UTC 2025,
+task-0:          expiresAt:Sat Feb 1 15:13:39 +0000 UTC 2025
+task-0:          now:Sun Feb 2 04:56:35 +1400 +14 2025
+task-0: time="2025-02-02T04:56:35+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2960732"
+task-0: time="2025-02-02T04:56:35+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: time="2025-02-02T04:56:35+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
+task-0: time="2025-02-02T04:56:39+14:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 2960731, termination error: error waiting for the process: signal: interrupt"
+task-0: time="2025-02-02T04:56:39+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:4 stopping shell"
+task-0: time="2025-02-02T04:56:39+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
 task-0: --- PASS: TestMenderShellStartStopShell (8.02s)
 task-0: === RUN   TestMenderShellCommand
 task-0:     session_test.go:680: starting mock httpd with websockets
-task-0: time="2026-03-06T09:15:21-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532962"
-task-0: time="2026-03-06T09:15:21-12:00" level=error msg="error reading stdout: read /dev/ptmx: file already closed"
+task-0: time="2025-02-02T04:56:43+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2962848"
 task-0: --- PASS: TestMenderShellCommand (0.00s)
 task-0: === RUN   TestMenderShellShellAlreadyStartedFailedToStart
 task-0:     session_test.go:757: starting mock httpd with websockets
-task-0: time="2026-03-06T09:15:21-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532963"
-task-0: time="2026-03-06T09:15:21-12:00" level=error msg="failed to start shell: shell is already running"
-task-0: time="2026-03-06T09:15:21-12:00" level=error msg="failed to start shell: fork/exec thatissomethingelse/bin/sh: no such file or directory"
+task-0: time="2025-02-02T04:56:43+14:00" level=error msg="error reading stdout: read /dev/ptmx: file already closed"
+task-0: time="2025-02-02T04:56:43+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2962849"
+task-0: time="2025-02-02T04:56:43+14:00" level=error msg="failed to start shell: shell is already running"
+task-0: time="2025-02-02T04:56:43+14:00" level=error msg="failed to start shell: fork/exec thatissomethingelse/bin/sh: no such file or directory"
 task-0: --- PASS: TestMenderShellShellAlreadyStartedFailedToStart (0.00s)
 task-0: === RUN   TestMenderShellSessionExpire
-task-0: time="2026-03-06T09:15:21-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532965"
-task-0: --- PASS: TestMenderShellSessionExpire (4.00s)
+task-0: time="2025-02-02T04:56:43+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2962851"
+task-0: --- PASS: TestMenderShellSessionExpire (4.01s)
 task-0: === RUN   TestMenderShellSessionUpdateWS
-task-0: time="2026-03-06T09:15:25-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532996"
+task-0: time="2025-02-02T04:56:47+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2963863"
 task-0: --- PASS: TestMenderShellSessionUpdateWS (0.00s)
 task-0: === RUN   TestMenderShellSessionGetByUserId
 task-0: --- PASS: TestMenderShellSessionGetByUserId (0.00s)
@@ -1690,285 +1746,289 @@
 task-0: === RUN   TestMenderSessionTerminateExpired
 task-0:     session_test.go:1142: created session:
 task-0:          id:c4993deb-26b4-4c58-aaee-fd0c9e694328,
-task-0:          createdAt:Fri Mar 6 21:15:25 +0000 UTC 2026,
-task-0:          expiresAt:Fri Mar 6 21:15:33 +0000 UTC 2026
-task-0:          now:Fri Mar 6 09:15:25 -1200 -12 2026
-task-0: time="2026-03-06T09:15:25-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3532998"
-task-0: time="2026-03-06T09:15:41-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0:          createdAt:Sat Feb 1 14:56:47 +0000 UTC 2025,
+task-0:          expiresAt:Sat Feb 1 14:56:55 +0000 UTC 2025
+task-0:          now:Sun Feb 2 04:56:47 +1400 +14 2025
+task-0: time="2025-02-02T04:56:47+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2963865"
+task-0: time="2025-02-02T04:57:03+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
 task-0: --- PASS: TestMenderSessionTerminateExpired (20.01s)
 task-0: === RUN   TestMenderSessionTerminateAll
 task-0:     session_test.go:1194: created session:
-task-0:          id:b23231d1-957f-469d-8800-4a231e7b76fb,
-task-0:          createdAt:Fri Mar 6 21:15:45 +0000 UTC 2026,
-task-0:          expiresAt:Fri Mar 6 21:15:53 +0000 UTC 2026
-task-0:          now:Fri Mar 6 09:15:45 -1200 -12 2026
-task-0: time="2026-03-06T09:15:45-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3533169"
+task-0:          id:91021f56-d09a-4f89-acd8-6c3e68e58a7a,
+task-0:          createdAt:Sat Feb 1 14:57:07 +0000 UTC 2025,
+task-0:          expiresAt:Sat Feb 1 14:57:15 +0000 UTC 2025
+task-0:          now:Sun Feb 2 04:57:07 +1400 +14 2025
+task-0: time="2025-02-02T04:57:07+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2970971"
 task-0:     session_test.go:1210: created session:
-task-0:          id:1aa88cc4-5d92-420d-87d2-233289c8febf,
-task-0:          createdAt:Fri Mar 6 21:15:45 +0000 UTC 2026,
-task-0:          expiresAt:Fri Mar 6 21:15:53 +0000 UTC 2026
-task-0:          now:Fri Mar 6 09:15:45 -1200 -12 2026
-task-0: time="2026-03-06T09:15:45-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3533170"
-task-0: time="2026-03-06T09:15:45-12:00" level=info msg="session 1aa88cc4-5d92-420d-87d2-233289c8febf status:0 stopping shell"
-task-0: time="2026-03-06T09:15:49-12:00" level=error msg="session 1aa88cc4-5d92-420d-87d2-233289c8febf, shell pid 3533170, termination error: error waiting for the process: signal: interrupt"
-task-0: time="2026-03-06T09:15:49-12:00" level=info msg="session b23231d1-957f-469d-8800-4a231e7b76fb status:0 stopping shell"
+task-0:          id:fc60520e-0c23-4cab-b2ac-bb69e4d13c73,
+task-0:          createdAt:Sat Feb 1 14:57:07 +0000 UTC 2025,
+task-0:          expiresAt:Sat Feb 1 14:57:15 +0000 UTC 2025
+task-0:          now:Sun Feb 2 04:57:07 +1400 +14 2025
+task-0: time="2025-02-02T04:57:07+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2970972"
+task-0: time="2025-02-02T04:57:07+14:00" level=info msg="session fc60520e-0c23-4cab-b2ac-bb69e4d13c73 status:0 stopping shell"
+task-0: time="2025-02-02T04:57:11+14:00" level=error msg="session fc60520e-0c23-4cab-b2ac-bb69e4d13c73, shell pid 2970972, termination error: error waiting for the process: signal: interrupt"
+task-0: time="2025-02-02T04:57:11+14:00" level=info msg="session 91021f56-d09a-4f89-acd8-6c3e68e58a7a status:0 stopping shell"
 task-0: --- PASS: TestMenderSessionTerminateAll (8.01s)
 task-0: === RUN   TestMenderSessionTerminateIdle
 task-0:     session_test.go:1251: created session:
 task-0:          id:c4993deb-26b4-4c58-aaee-fd0c9e694328,
-task-0:          createdAt:Fri Mar 6 21:15:53 +0000 UTC 2026,
-task-0:          expiresAt:Fri Mar 6 21:20:08 +0000 UTC 2026
-task-0:          now:Fri Mar 6 09:15:53 -1200 -12 2026
-task-0: time="2026-03-06T09:15:53-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3533616"
-task-0: time="2026-03-06T09:16:01-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0:          createdAt:Sat Feb 1 14:57:15 +0000 UTC 2025,
+task-0:          expiresAt:Sat Feb 1 15:01:30 +0000 UTC 2025
+task-0:          now:Sun Feb 2 04:57:15 +1400 +14 2025
+task-0: time="2025-02-02T04:57:15+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2977234"
+task-0: time="2025-02-02T04:57:23+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
 task-0: --- PASS: TestMenderSessionTerminateIdle (12.01s)
 task-0: === RUN   TestMenderSessionTimeNow
 task-0: --- PASS: TestMenderSessionTimeNow (0.00s)
 task-0: === CONT  TestFileTransferUpload
 task-0: === CONT  TestRouter
+task-0: === CONT  TestFileTransferStat
+task-0: === CONT  TestFileTransferServeErrors
+task-0: === CONT  TestFileTransferDownload
+task-0: === RUN   TestFileTransferUpload/ok
+task-0: === PAUSE TestFileTransferUpload/ok
+task-0: === RUN   TestFileTransferUpload/ok,_relative_path
 task-0: === RUN   TestRouter/ok
 task-0: === PAUSE TestRouter/ok
 task-0: === CONT  TestRouter/ok
-task-0: --- PASS: TestRouter (0.00s)
-task-0:     --- PASS: TestRouter/ok (0.00s)
 task-0: === CONT  TestSessionListen
-task-0: === RUN   TestFileTransferUpload/ok
-task-0: === PAUSE TestFileTransferUpload/ok
-task-0: === RUN   TestFileTransferUpload/ok,_relative_path
+task-0: === RUN   TestFileTransferStat/ok
+task-0: === PAUSE TestFileTransferStat/ok
+task-0: === RUN   TestFileTransferStat/error,_malformed_schema
+task-0: === CONT  TestRouterRace
+task-0: === PAUSE TestFileTransferStat/error,_malformed_schema
+task-0: === RUN   TestFileTransferDownload/ok
+task-0: === RUN   TestFileTransferStat/error,_invalid_parameters
 task-0: === PAUSE TestFileTransferUpload/ok,_relative_path
+task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters
 task-0: === RUN   TestFileTransferUpload/error,_file_too_big_upload_denied
+task-0: === PAUSE TestFileTransferDownload/ok
+task-0: === RUN   TestSessionListen/ok
+task-0: === RUN   TestFileTransferStat/error,_invalid_parameters#01
 task-0: === PAUSE TestFileTransferUpload/error,_file_too_big_upload_denied
+task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters#01
+task-0: === CONT  TestFileTransferStat/ok
+task-0: === CONT  TestFileTransferStat/error,_invalid_parameters#01
+task-0: === CONT  TestFileTransferStat/error,_invalid_parameters
+task-0: === CONT  TestFileTransferStat/error,_malformed_schema
+task-0: === RUN   TestFileTransferDownload/ok,_file_larger_than_window
+task-0: === PAUSE TestFileTransferDownload/ok,_file_larger_than_window
 task-0: === RUN   TestFileTransferUpload/error,_path_is_a_directory
+task-0: === RUN   TestFileTransferServeErrors/malformed_upload_request
+task-0: === RUN   TestFileTransferDownload/error,_bad_ack_data_type
 task-0: === PAUSE TestFileTransferUpload/error,_path_is_a_directory
+task-0: === PAUSE TestFileTransferServeErrors/malformed_upload_request
 task-0: === RUN   TestFileTransferUpload/error,_fake_error_from_client
 task-0: === PAUSE TestFileTransferUpload/error,_fake_error_from_client
-task-0: === RUN   TestSessionListen/ok
-task-0: === CONT  TestFileTransferServeErrors
-task-0: === PAUSE TestSessionListen/ok
-task-0: === RUN   TestSessionListen/ok,_ping/pong_->_close
-task-0: === PAUSE TestSessionListen/ok,_ping/pong_->_close
-task-0: === RUN   TestSessionListen/ok,_handshake
-task-0: === PAUSE TestSessionListen/ok,_handshake
-task-0: === RUN   TestSessionListen/error,_protocol_version_not_supported
-task-0: === PAUSE TestSessionListen/error,_protocol_version_not_supported
-task-0: === RUN   TestSessionListen/error,_bad_handshake_schema
-task-0: === PAUSE TestSessionListen/error,_bad_handshake_schema
-task-0: === RUN   TestSessionListen/ok,_accepted
-task-0: === PAUSE TestSessionListen/ok,_accepted
-task-0: === CONT  TestRouterRace
-task-0: === RUN   TestFileTransferServeErrors/malformed_upload_request
-task-0: === PAUSE TestFileTransferServeErrors/malformed_upload_request
 task-0: === RUN   TestFileTransferUpload/error,_unexpected_ACK_message_from_client
 task-0: === PAUSE TestFileTransferUpload/error,_unexpected_ACK_message_from_client
-task-0: === RUN   TestFileTransferServeErrors/invalid_upload_request_parameters
 task-0: === RUN   TestFileTransferUpload/error,_chunk_missing_offset
-task-0: === PAUSE TestFileTransferServeErrors/invalid_upload_request_parameters
+task-0: === PAUSE TestFileTransferDownload/error,_bad_ack_data_type
 task-0: === PAUSE TestFileTransferUpload/error,_chunk_missing_offset
-task-0: === RUN   TestFileTransferServeErrors/upload_already_in_progress
+task-0: === RUN   TestFileTransferDownload/error,_no_offset_in_ack
 task-0: === RUN   TestFileTransferUpload/error,_offset_jumps_beyond_EOF
+task-0: === PAUSE TestFileTransferDownload/error,_no_offset_in_ack
+task-0: === PAUSE TestFileTransferUpload/error,_offset_jumps_beyond_EOF
+task-0: === RUN   TestFileTransferUpload/error,_broken_response_writer
+task-0: === PAUSE TestFileTransferUpload/error,_broken_response_writer
+task-0: === RUN   TestFileTransferUpload/error,_parent_directory_does_not_exist
+task-0: === PAUSE TestFileTransferUpload/error,_parent_directory_does_not_exist
+task-0: === CONT  TestFileTransferUpload/ok
+task-0: === CONT  TestFileTransferUpload/error,_chunk_missing_offset
+task-0: === CONT  TestFileTransferUpload/error,_path_is_a_directory
+task-0: === CONT  TestFileTransferUpload/error,_unexpected_ACK_message_from_client
+task-0: === CONT  TestFileTransferUpload/error,_fake_error_from_client
+task-0: === CONT  TestFileTransferUpload/error,_file_too_big_upload_denied
+task-0: === CONT  TestFileTransferUpload/error,_parent_directory_does_not_exist
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="invalid file chunk message: missing offset property"
+task-0: === CONT  TestFileTransferUpload/error,_broken_response_writer
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="failed to create file: open /tmp/filetransfer-testing2384696329/parent/dir/does/not/exist/for/this/file.0000000400: no such file or directory"
+task-0: === RUN   TestFileTransferServeErrors/invalid_upload_request_parameters
+task-0: === PAUSE TestFileTransferServeErrors/invalid_upload_request_parameters
+task-0: === RUN   TestFileTransferServeErrors/upload_already_in_progress
 task-0: === PAUSE TestFileTransferServeErrors/upload_already_in_progress
-task-0: === RUN   TestSessionListen/error,_malformed_handshake_response
+task-0: === CONT  TestFileTransferUpload/error,_offset_jumps_beyond_EOF
 task-0: === RUN   TestFileTransferServeErrors/malformed_download_request
-task-0: === PAUSE TestSessionListen/error,_malformed_handshake_response
-task-0: === RUN   TestSessionListen/error,_invalid_handshake_version
-task-0: === PAUSE TestSessionListen/error,_invalid_handshake_version
 task-0: === PAUSE TestFileTransferServeErrors/malformed_download_request
-task-0: === RUN   TestSessionListen/error,_control_message_not_understood
+task-0: === RUN   TestFileTransferDownload/error,_unexpected_ack_message
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="Received error during upload: something unexpected happened"
 task-0: === RUN   TestFileTransferServeErrors/invalid_download_request_parameters
-task-0: === PAUSE TestSessionListen/error,_control_message_not_understood
-task-0: === RUN   TestSessionListen/error,_bad_protocol_->_close_error
-task-0: === PAUSE TestSessionListen/error,_bad_protocol_->_close_error
-task-0: === RUN   TestSessionListen/error,_session_timeout
-task-0: === PAUSE TestSessionListen/error,_session_timeout
-task-0: === RUN   TestSessionListen/error,_ping_write_error
-task-0: === PAUSE TestSessionListen/error,_ping_write_error
-task-0: === RUN   TestSessionListen/error,_write_error
-task-0: === PAUSE TestSessionListen/error,_write_error
-task-0: === CONT  TestSessionListen/ok
 task-0: === PAUSE TestFileTransferServeErrors/invalid_download_request_parameters
-task-0: === CONT  TestSessionListen/error,_malformed_handshake_response
 task-0: === RUN   TestFileTransferServeErrors/download_already_in_progress
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="failed to respond to client: io: read/write on closed pipe"
 task-0: === PAUSE TestFileTransferServeErrors/download_already_in_progress
+task-0: === PAUSE TestFileTransferDownload/error,_unexpected_ack_message
 task-0: === RUN   TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
 task-0: === PAUSE TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="handler aborted"
+task-0: === RUN   TestFileTransferDownload/error,_client_malformed_error_message
 task-0: === RUN   TestFileTransferServeErrors/generic_error_from_client
 task-0: === PAUSE TestFileTransferServeErrors/generic_error_from_client
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="handler aborted"
+task-0: === CONT  TestFileTransferUpload/ok,_relative_path
 task-0: === RUN   TestFileTransferServeErrors/malformed_error_from_client
 task-0: === PAUSE TestFileTransferServeErrors/malformed_error_from_client
-task-0: === CONT  TestSessionListen/error,_write_error
-task-0: === CONT  TestSessionListen/ok,_handshake
-task-0: === CONT  TestSessionListen/ok,_ping/pong_->_close
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="failed to write response to client: this is bad!"
-task-0: time="2026-03-06T09:16:05-12:00" level=info msg="session: accepting new session with ID: 1234"
-task-0: === CONT  TestSessionListen/error,_ping_write_error
-task-0: time="2026-03-06T09:16:05-12:00" level=info msg="session: closed 1234"
-task-0: === PAUSE TestFileTransferUpload/error,_offset_jumps_beyond_EOF
-task-0: === RUN   TestFileTransferUpload/error,_broken_response_writer
-task-0: === PAUSE TestFileTransferUpload/error,_broken_response_writer
-task-0: === RUN   TestFileTransferUpload/error,_parent_directory_does_not_exist
-task-0: === PAUSE TestFileTransferUpload/error,_parent_directory_does_not_exist
-task-0: === CONT  TestSessionListen/error,_bad_protocol_->_close_error
 task-0: === RUN   TestFileTransferServeErrors/message_type_not_implemented
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="received unexpected chunk offset"
 task-0: === PAUSE TestFileTransferServeErrors/message_type_not_implemented
-task-0: === CONT  TestSessionListen/error,_invalid_handshake_version
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="session: received error from client: dunno what to do next..."
-task-0: === CONT  TestFileTransferServeErrors/malformed_upload_request
-task-0: === CONT  TestFileTransferDownload
-task-0: === CONT  TestFileTransferUpload/ok
-task-0: === RUN   TestFileTransferDownload/ok
-task-0: === PAUSE TestFileTransferDownload/ok
-task-0: === RUN   TestFileTransferDownload/ok,_file_larger_than_window
-task-0: === PAUSE TestFileTransferDownload/ok,_file_larger_than_window
-task-0: === RUN   TestFileTransferDownload/error,_bad_ack_data_type
-task-0: === PAUSE TestFileTransferDownload/error,_bad_ack_data_type
-task-0: === CONT  TestFileTransferServeErrors/message_type_not_implemented
-task-0: === CONT  TestFileTransferStat
-task-0: === CONT  TestFileTransferUpload/error,_broken_response_writer
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="failed to respond to client: io: read/write on closed pipe"
-task-0: === RUN   TestFileTransferStat/ok
-task-0: === PAUSE TestFileTransferStat/ok
-task-0: === RUN   TestFileTransferStat/error,_malformed_schema
-task-0: === PAUSE TestFileTransferStat/error,_malformed_schema
-task-0: === RUN   TestFileTransferStat/error,_invalid_parameters
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="handler aborted"
-task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters
-task-0: === RUN   TestFileTransferDownload/error,_no_offset_in_ack
-task-0: === RUN   TestFileTransferStat/error,_invalid_parameters#01
-task-0: === PAUSE TestFileTransferDownload/error,_no_offset_in_ack
-task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters#01
-task-0: === RUN   TestFileTransferDownload/error,_unexpected_ack_message
-task-0: === CONT  TestSessionListen/ok,_accepted
-task-0: === PAUSE TestFileTransferDownload/error,_unexpected_ack_message
-task-0: === RUN   TestFileTransferDownload/error,_client_malformed_error_message
 task-0: === PAUSE TestFileTransferDownload/error,_client_malformed_error_message
-task-0: === CONT  TestFileTransferUpload/error,_unexpected_ACK_message_from_client
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="received unexpected message type 'ack' during file upload"
 task-0: === RUN   TestFileTransferDownload/error,_client_error_message
+task-0: === CONT  TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
 task-0: === PAUSE TestFileTransferDownload/error,_client_error_message
+task-0: === CONT  TestFileTransferServeErrors/download_already_in_progress
+task-0: === CONT  TestFileTransferServeErrors/invalid_download_request_parameters
 task-0: === RUN   TestFileTransferDownload/error,_file_does_not_exist
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="invalid request parameters: path: cannot be blank."
+task-0: === CONT  TestFileTransferServeErrors/malformed_download_request
 task-0: === PAUSE TestFileTransferDownload/error,_file_does_not_exist
 task-0: === RUN   TestFileTransferDownload/error,_forbidden_to_follow_links
 task-0: === PAUSE TestFileTransferDownload/error,_forbidden_to_follow_links
-task-0: === CONT  TestSessionListen/error,_bad_handshake_schema
-task-0: === CONT  TestFileTransferUpload/error,_path_is_a_directory
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="received unexpected message type 'ack' during file upload"
-task-0: === CONT  TestFileTransferUpload/error,_file_too_big_upload_denied
-task-0: === CONT  TestFileTransferUpload/ok,_relative_path
-task-0: === CONT  TestFileTransferUpload/error,_offset_jumps_beyond_EOF
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="received unexpected chunk offset"
-task-0: === CONT  TestFileTransferServeErrors/malformed_error_from_client
-task-0: === CONT  TestFileTransferServeErrors/generic_error_from_client
-task-0: === CONT  TestSessionListen/error,_control_message_not_understood
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="Error decoding error message from client: msgpack: unexpected code=73 decoding map length"
-task-0: === CONT  TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
-task-0: === CONT  TestFileTransferServeErrors/download_already_in_progress
-task-0: === CONT  TestFileTransferServeErrors/invalid_download_request_parameters
-task-0: === CONT  TestSessionListen/error,_protocol_version_not_supported
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="another file transfer is in progress"
-task-0: === CONT  TestFileTransferUpload/error,_fake_error_from_client
+task-0: === PAUSE TestSessionListen/ok
 task-0: === CONT  TestFileTransferServeErrors/upload_already_in_progress
-task-0: === CONT  TestFileTransferServeErrors/invalid_upload_request_parameters
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="Received error during upload: something unexpected happened"
-task-0: === CONT  TestFileTransferUpload/error,_chunk_missing_offset
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="handler aborted"
+task-0: === CONT  TestFileTransferServeErrors/malformed_upload_request
 task-0: === CONT  TestFileTransferDownload/ok
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="invalid file chunk message: missing offset property"
-task-0: === CONT  TestFileTransferStat/error,_invalid_parameters#01
+task-0: === CONT  TestFileTransferServeErrors/message_type_not_implemented
+task-0: === CONT  TestFileTransferServeErrors/malformed_error_from_client
+task-0: === CONT  TestFileTransferServeErrors/generic_error_from_client
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="malformed request parameters: msgpack: unexpected code=2f decoding map length"
+task-0: --- PASS: TestRouter (0.00s)
+task-0:     --- PASS: TestRouter/ok (0.00s)
+task-0: === CONT  TestFileTransferDownload/error,_client_malformed_error_message
 task-0: === CONT  TestFileTransferDownload/error,_forbidden_to_follow_links
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="another file transfer is in progress"
+task-0: === CONT  TestFileTransferServeErrors/invalid_upload_request_parameters
 task-0: === CONT  TestFileTransferDownload/error,_file_does_not_exist
-task-0: === CONT  TestSessionListen/error,_session_timeout
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="invalid request parameters: path: cannot be blank."
-task-0: === CONT  TestFileTransferStat/error,_invalid_parameters
-task-0: === CONT  TestFileTransferStat/error,_malformed_schema
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="failed to open file for reading: open lets say it does not exist: no such file or directory"
-task-0: === CONT  TestFileTransferDownload/error,_client_error_message
-task-0: === CONT  TestFileTransferStat/ok
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="Error decoding error message from client: msgpack: unexpected code=73 decoding map length"
 task-0: --- PASS: TestFileTransferStat (0.00s)
+task-0:     --- PASS: TestFileTransferStat/ok (0.00s)
+task-0:     --- PASS: TestFileTransferStat/error,_malformed_schema (0.00s)
 task-0:     --- PASS: TestFileTransferStat/error,_invalid_parameters#01 (0.00s)
 task-0:     --- PASS: TestFileTransferStat/error,_invalid_parameters (0.00s)
-task-0:     --- PASS: TestFileTransferStat/error,_malformed_schema (0.00s)
-task-0:     --- PASS: TestFileTransferStat/ok (0.00s)
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="received error message from client: ENOSPC"
-task-0: === CONT  TestFileTransferDownload/error,_client_malformed_error_message
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="received malformed error message from client: aborting"
-task-0: === CONT  TestFileTransferDownload/error,_unexpected_ack_message
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="received unexpected message type 'file_chunk'; expected 'ack'"
-task-0: === CONT  TestFileTransferDownload/error,_no_offset_in_ack
-task-0: === CONT  TestFileTransferUpload/error,_parent_directory_does_not_exist
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="ack message: offset property cannot be blank"
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="Received error from client: generic error"
-task-0: === CONT  TestFileTransferServeErrors/malformed_download_request
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="failed to create file: open /tmp/filetransfer-testing254848834/parent/dir/does/not/exist/for/this/file.0000000800: no such file or directory"
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="malformed request parameters: msgpack: unexpected code=2f decoding map length"
+task-0: === CONT  TestFileTransferDownload/error,_bad_ack_data_type
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="Received error from client: generic error"
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="failed to open file for reading: open lets say it does not exist: no such file or directory"
 task-0: --- PASS: TestFileTransferServeErrors (0.00s)
-task-0:     --- PASS: TestFileTransferServeErrors/malformed_upload_request (0.00s)
-task-0:     --- PASS: TestFileTransferServeErrors/message_type_not_implemented (0.00s)
-task-0:     --- PASS: TestFileTransferServeErrors/malformed_error_from_client (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress (0.00s)
-task-0:     --- PASS: TestFileTransferServeErrors/download_already_in_progress (0.00s)
+task-0:     --- PASS: TestFileTransferServeErrors/invalid_download_request_parameters (0.00s)
+task-0:     --- PASS: TestFileTransferServeErrors/malformed_download_request (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/upload_already_in_progress (0.00s)
+task-0:     --- PASS: TestFileTransferServeErrors/download_already_in_progress (0.00s)
+task-0:     --- PASS: TestFileTransferServeErrors/malformed_upload_request (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/invalid_upload_request_parameters (0.00s)
-task-0:     --- PASS: TestFileTransferServeErrors/invalid_download_request_parameters (0.00s)
+task-0:     --- PASS: TestFileTransferServeErrors/message_type_not_implemented (0.00s)
+task-0:     --- PASS: TestFileTransferServeErrors/malformed_error_from_client (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/generic_error_from_client (0.00s)
-task-0:     --- PASS: TestFileTransferServeErrors/malformed_download_request (0.00s)
-task-0: === CONT  TestFileTransferDownload/error,_bad_ack_data_type
-task-0: time="2026-03-06T09:16:05-12:00" level=warning msg="file download access denied: forbidden to follow the link"
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="access denied: forbidden to follow the link"
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="invalid offset data type: require int64"
 task-0: === CONT  TestFileTransferDownload/ok,_file_larger_than_window
-task-0: time="2026-03-06T09:16:05-12:00" level=error msg="invalid offset data type: require int64"
+task-0: === RUN   TestSessionListen/ok,_ping/pong_->_close
+task-0: time="2025-02-02T04:57:27+14:00" level=warning msg="file download access denied: forbidden to follow the link"
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="access denied: forbidden to follow the link"
+task-0: === PAUSE TestSessionListen/ok,_ping/pong_->_close
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="received malformed error message from client: aborting"
+task-0: === RUN   TestSessionListen/ok,_handshake
+task-0: === CONT  TestFileTransferDownload/error,_client_error_message
+task-0: === CONT  TestFileTransferDownload/error,_no_offset_in_ack
+task-0: === CONT  TestFileTransferDownload/error,_unexpected_ack_message
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="received error message from client: ENOSPC"
+task-0: === PAUSE TestSessionListen/ok,_handshake
+task-0: === RUN   TestSessionListen/error,_protocol_version_not_supported
+task-0: === PAUSE TestSessionListen/error,_protocol_version_not_supported
+task-0: === RUN   TestSessionListen/error,_bad_handshake_schema
+task-0: === PAUSE TestSessionListen/error,_bad_handshake_schema
+task-0: === RUN   TestSessionListen/ok,_accepted
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="received unexpected message type 'file_chunk'; expected 'ack'"
+task-0: === PAUSE TestSessionListen/ok,_accepted
 task-0: --- PASS: TestFileTransferUpload (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_broken_response_writer (0.00s)
 task-0:     --- PASS: TestFileTransferUpload/error,_path_is_a_directory (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_chunk_missing_offset (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_parent_directory_does_not_exist (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_fake_error_from_client (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_broken_response_writer (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_offset_jumps_beyond_EOF (0.00s)
 task-0:     --- PASS: TestFileTransferUpload/error,_unexpected_ACK_message_from_client (0.00s)
 task-0:     --- PASS: TestFileTransferUpload/error,_file_too_big_upload_denied (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_offset_jumps_beyond_EOF (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_fake_error_from_client (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_chunk_missing_offset (0.00s)
 task-0:     --- PASS: TestFileTransferUpload/ok,_relative_path (0.00s)
 task-0:     --- PASS: TestFileTransferUpload/ok (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_parent_directory_does_not_exist (0.00s)
+task-0: === RUN   TestSessionListen/error,_malformed_handshake_response
+task-0: === PAUSE TestSessionListen/error,_malformed_handshake_response
+task-0: === RUN   TestSessionListen/error,_invalid_handshake_version
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="ack message: offset property cannot be blank"
+task-0: === PAUSE TestSessionListen/error,_invalid_handshake_version
+task-0: === RUN   TestSessionListen/error,_control_message_not_understood
+task-0: === PAUSE TestSessionListen/error,_control_message_not_understood
+task-0: === RUN   TestSessionListen/error,_bad_protocol_->_close_error
+task-0: === PAUSE TestSessionListen/error,_bad_protocol_->_close_error
+task-0: === RUN   TestSessionListen/error,_session_timeout
+task-0: === PAUSE TestSessionListen/error,_session_timeout
+task-0: === RUN   TestSessionListen/error,_ping_write_error
+task-0: === PAUSE TestSessionListen/error,_ping_write_error
+task-0: === RUN   TestSessionListen/error,_write_error
+task-0: === PAUSE TestSessionListen/error,_write_error
+task-0: === CONT  TestSessionListen/ok
+task-0: === CONT  TestSessionListen/error,_invalid_handshake_version
+task-0: === CONT  TestSessionListen/error,_bad_handshake_schema
+task-0: === CONT  TestSessionListen/error,_protocol_version_not_supported
+task-0: === CONT  TestSessionListen/error,_write_error
+task-0: === CONT  TestSessionListen/error,_ping_write_error
 task-0: --- PASS: TestFileTransferDownload (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_bad_ack_data_type (0.00s)
 task-0:     --- PASS: TestFileTransferDownload/ok (0.00s)
 task-0:     --- PASS: TestFileTransferDownload/error,_file_does_not_exist (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_client_error_message (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_forbidden_to_follow_links (0.00s)
 task-0:     --- PASS: TestFileTransferDownload/error,_client_malformed_error_message (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_client_error_message (0.00s)
 task-0:     --- PASS: TestFileTransferDownload/error,_unexpected_ack_message (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/ok,_file_larger_than_window (0.00s)
 task-0:     --- PASS: TestFileTransferDownload/error,_no_offset_in_ack (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_forbidden_to_follow_links (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_bad_ack_data_type (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/ok,_file_larger_than_window (0.01s)
-task-0: time="2026-03-06T09:16:06-12:00" level=error msg="failed to ping client: this is bad!"
+task-0: === CONT  TestSessionListen/ok,_accepted
+task-0: === CONT  TestSessionListen/error,_bad_protocol_->_close_error
+task-0: === CONT  TestSessionListen/ok,_handshake
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="failed to write response to client: this is bad!"
+task-0: === CONT  TestSessionListen/error,_control_message_not_understood
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="session: received error from client: dunno what to do next..."
+task-0: === CONT  TestSessionListen/error,_malformed_handshake_response
+task-0: === CONT  TestSessionListen/error,_session_timeout
+task-0: time="2025-02-02T04:57:27+14:00" level=info msg="session: accepting new session with ID: 1234"
+task-0: === CONT  TestSessionListen/ok,_ping/pong_->_close
+task-0: time="2025-02-02T04:57:27+14:00" level=info msg="session: closed 1234"
+task-0: time="2025-02-02T04:57:27+14:00" level=error msg="failed to ping client: this is bad!"
 task-0: --- PASS: TestSessionListen (0.00s)
 task-0:     --- PASS: TestSessionListen/ok (0.00s)
-task-0:     --- PASS: TestSessionListen/error,_malformed_handshake_response (0.00s)
-task-0:     --- PASS: TestSessionListen/ok,_handshake (0.00s)
-task-0:     --- PASS: TestSessionListen/ok,_ping/pong_->_close (0.00s)
-task-0:     --- PASS: TestSessionListen/error,_write_error (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_invalid_handshake_version (0.00s)
-task-0:     --- PASS: TestSessionListen/error,_bad_protocol_->_close_error (0.00s)
-task-0:     --- PASS: TestSessionListen/ok,_accepted (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_bad_handshake_schema (0.00s)
-task-0:     --- PASS: TestSessionListen/error,_control_message_not_understood (0.00s)
+task-0:     --- PASS: TestSessionListen/ok,_accepted (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_protocol_version_not_supported (0.00s)
+task-0:     --- PASS: TestSessionListen/error,_write_error (0.00s)
+task-0:     --- PASS: TestSessionListen/error,_bad_protocol_->_close_error (0.00s)
+task-0:     --- PASS: TestSessionListen/error,_control_message_not_understood (0.00s)
+task-0:     --- PASS: TestSessionListen/error,_malformed_handshake_response (0.00s)
+task-0:     --- PASS: TestSessionListen/ok,_handshake (0.00s)
+task-0:     --- PASS: TestSessionListen/ok,_ping/pong_->_close (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_ping_write_error (0.20s)
 task-0:     --- PASS: TestSessionListen/error,_session_timeout (0.25s)
-task-0: time="2026-03-06T09:16:06-12:00" level=error msg="[panic] panicHandler" trace="\n<autogenerated>:1.(*panicHandler).ServeProtoMsg\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/session.go:369.(*Session).ListenAndServe\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/router.go:56.(*router).startSession\n/usr/lib/go-1.23/src/runtime/asm_amd64.s:1701.goexit"
+task-0: time="2025-02-02T04:57:28+14:00" level=error msg="[panic] panicHandler" trace="\n<autogenerated>:1.(*panicHandler).ServeProtoMsg\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/session.go:369.(*Session).ListenAndServe\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/router.go:56.(*router).startSession\n/usr/lib/go-1.23/src/runtime/asm_amd64.s:1701.goexit"
 task-0: --- PASS: TestRouterRace (1.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/session	56.305s
+task-0: ok  	github.com/mendersoftware/mender-connect/session	56.282s
 task-0: === RUN   TestNewMenderShell
 task-0: --- PASS: TestNewMenderShell (0.00s)
 task-0: === RUN   TestNewMenderShellReadStdIn
-task-0: --- PASS: TestNewMenderShellReadStdIn (8.00s)
+task-0:     exec_test.go:142: 
+task-0:         	Error Trace:	/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/shell/exec_test.go:142
+task-0:         	Error:      	[]string{"\x1b[?2004hsh-5.2$ ", "echo _ok_", "\x1b[?2004l\r_ok_", "", "\x1b[?2004hsh-5.2$ "} does not contain "_ok_"
+task-0:         	Test:       	TestNewMenderShellReadStdIn
+task-0: --- FAIL: TestNewMenderShellReadStdIn (8.00s)
 task-0: === RUN   TestPipeStdout
 task-0:     exec_test.go:156: starting mock httpd with websockets
-task-0: time="2026-03-06T09:15:18-12:00" level=error msg="error reading stdout: EOF"
-task-0: --- PASS: TestPipeStdout (8.01s)
+task-0: time="2025-02-02T04:56:40+14:00" level=error msg="error reading stdout: EOF"
+task-0: --- PASS: TestPipeStdout (8.00s)
 task-0: === RUN   TestMenderShellExecShell
-task-0:     shell_test.go:82: started shell, pid: 3533000
-task-0:     shell_test.go:85: FindProcess p: &{3533000 1 {{} {} 1} {{0 0} 0 0 {{} 0} {{} 0}} 13} err: <nil>
-task-0: --- PASS: TestMenderShellExecShell (4.01s)
-task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/shell	20.028s
+task-0:     shell_test.go:82: started shell, pid: 2964039
+task-0:     shell_test.go:85: FindProcess p: &{2964039 1 {{} {} 1} {{0 0} 0 0 {{} 0} {{} 0}} 13} err: <nil>
+task-0: --- PASS: TestMenderShellExecShell (4.00s)
+task-0: FAIL
+task-0: FAIL	github.com/mendersoftware/mender-connect/shell	20.017s
 task-0: === RUN   TestFileSize
 task-0: --- PASS: TestFileSize (0.00s)
 task-0: === RUN   TestFileExists
@@ -1984,83 +2044,52 @@
 task-0: === RUN   TestIsInChroot
 task-0: --- PASS: TestIsInChroot (0.00s)
 task-0: === RUN   TestNum64
+task-0: === RUN   TestNum64/uint
+task-0: === RUN   TestNum64/uint64
 task-0: === RUN   TestNum64/int16
+task-0: === RUN   TestNum64/int32
 task-0: === RUN   TestNum64/int64
-task-0: === RUN   TestNum64/uint
 task-0: === RUN   TestNum64/uint16
-task-0: === RUN   TestNum64/uint64
+task-0: === RUN   TestNum64/uint32
+task-0: === RUN   TestNum64/uintptr
 task-0: === RUN   TestNum64/int
 task-0: === RUN   TestNum64/int8
-task-0: === RUN   TestNum64/int32
 task-0: === RUN   TestNum64/uint8
-task-0: === RUN   TestNum64/uint32
-task-0: === RUN   TestNum64/uintptr
 task-0: --- PASS: TestNum64 (0.00s)
+task-0:     --- PASS: TestNum64/uint (0.00s)
+task-0:     --- PASS: TestNum64/uint64 (0.00s)
 task-0:     --- PASS: TestNum64/int16 (0.00s)
+task-0:     --- PASS: TestNum64/int32 (0.00s)
 task-0:     --- PASS: TestNum64/int64 (0.00s)
-task-0:     --- PASS: TestNum64/uint (0.00s)
 task-0:     --- PASS: TestNum64/uint16 (0.00s)
-task-0:     --- PASS: TestNum64/uint64 (0.00s)
+task-0:     --- PASS: TestNum64/uint32 (0.00s)
+task-0:     --- PASS: TestNum64/uintptr (0.00s)
 task-0:     --- PASS: TestNum64/int (0.00s)
 task-0:     --- PASS: TestNum64/int8 (0.00s)
-task-0:     --- PASS: TestNum64/int32 (0.00s)
 task-0:     --- PASS: TestNum64/uint8 (0.00s)
-task-0:     --- PASS: TestNum64/uint32 (0.00s)
-task-0:     --- PASS: TestNum64/uintptr (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/utils	0.010s
+task-0: ok  	github.com/mendersoftware/mender-connect/utils	0.004s
+task-0: FAIL
+dh_auto_test: error: cd _build && go test -vet=off -v -p 12 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils returned exit code 1
+task-0: Exited with status 6400
 task-0: Shutting down
 DBus daemon: Shutdown
+make[1]: *** [debian/rules:18: override_dh_auto_test] Error 255
 make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-   create-stamp debian/debhelper-build-stamp
-   dh_testroot -O--builddirectory=_build -O--buildsystem=golang
-   dh_prep -O--builddirectory=_build -O--buildsystem=golang
-   debian/rules override_dh_auto_install
-make[1]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-dh_auto_install -- --no-source
-	cd _build && mkdir -p /build/reproducible-path/mender-connect-2.3.0\+ds1/debian/mender-connect/usr
-	cd _build && cp -r bin /build/reproducible-path/mender-connect-2.3.0\+ds1/debian/mender-connect/usr
-# Install example config provided by upstream
-/usr/bin/make DESTDIR=debian/mender-connect install-conf
-make[2]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-make[2]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-   dh_installdocs -O--builddirectory=_build -O--buildsystem=golang
-   dh_installchangelogs -O--builddirectory=_build -O--buildsystem=golang
-   dh_installinit -O--builddirectory=_build -O--buildsystem=golang
-   dh_installsystemd -O--builddirectory=_build -O--buildsystem=golang
-   dh_installsystemduser -O--builddirectory=_build -O--buildsystem=golang
-   dh_perl -O--builddirectory=_build -O--buildsystem=golang
-   dh_link -O--builddirectory=_build -O--buildsystem=golang
-   dh_strip_nondeterminism -O--builddirectory=_build -O--buildsystem=golang
-   dh_compress -O--builddirectory=_build -O--buildsystem=golang
-   dh_fixperms -O--builddirectory=_build -O--buildsystem=golang
-   dh_missing -O--builddirectory=_build -O--buildsystem=golang
-   dh_strip -a -O--builddirectory=_build -O--buildsystem=golang
-   dh_makeshlibs -a -O--builddirectory=_build -O--buildsystem=golang
-   dh_shlibdeps -a -O--builddirectory=_build -O--buildsystem=golang
-   dh_installdeb -O--builddirectory=_build -O--buildsystem=golang
-   dh_golang -O--builddirectory=_build -O--buildsystem=golang
-   dh_gencontrol -O--builddirectory=_build -O--buildsystem=golang
-dpkg-gencontrol: warning: package mender-connect: substitution variable ${misc:Static-Built-Using} unused, but is defined
-dpkg-gencontrol: warning: package mender-connect: substitution variable ${misc:Static-Built-Using} unused, but is defined
-   dh_md5sums -O--builddirectory=_build -O--buildsystem=golang
-   dh_builddeb -O--builddirectory=_build -O--buildsystem=golang
-dpkg-deb: building package 'mender-connect' in '../mender-connect_2.3.0+ds1-1_amd64.deb'.
-dpkg-deb: building package 'mender-connect-dbgsym' in '../mender-connect-dbgsym_2.3.0+ds1-1_amd64.deb'.
- dpkg-genbuildinfo --build=binary -O../mender-connect_2.3.0+ds1-1_amd64.buildinfo
- dpkg-genchanges --build=binary -O../mender-connect_2.3.0+ds1-1_amd64.changes
-dpkg-genchanges: info: binary-only upload (no source code included)
- dpkg-source --after-build .
-dpkg-buildpackage: info: binary-only upload (no source included)
-dpkg-genchanges: info: including full source code in upload
+make: *** [debian/rules:6: binary] Error 2
+dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
 I: copying local configuration
+E: Failed autobuilding of package
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/C01_cleanup starting
+debug output: disk usage on i-capture-the-hostname at Sat Feb  1 14:58:05 UTC 2025
+Filesystem      Size  Used Avail Use% Mounted on
+tmpfs            12G     0   12G   0% /dev/shm
+
+I: user script /srv/workspace/pbuilder/2922828/tmp/hooks/C01_cleanup finished
 I: unmounting dev/ptmx filesystem
 I: unmounting dev/pts filesystem
 I: unmounting dev/shm filesystem
 I: unmounting proc filesystem
 I: unmounting sys filesystem
 I: cleaning the build env 
-I: removing directory /srv/workspace/pbuilder/3523670 and its subdirectories
-I: Current time: Fri Mar  6 09:16:50 -12 2026
-I: pbuilder-time-stamp: 1772831810
+I: removing directory /srv/workspace/pbuilder/2922828 and its subdirectories