# fix\(server\): service state records the runtime its launcher runs from · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commit/00024c7f87dd842a0184500d39f5a42856178bd6)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 00024c7f87dd842a0184500d39f5a42856178bd6

Requested commit: 00024c7f87dd842a0184500d39f5a42856178bd6

Commit: 00024c7f87dd842a0184500d39f5a42856178bd6

Tree: 41bb18257bf960dc9ceb083fc276688bc1d0a5df

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
fix(server): service state records the runtime its launcher runs from

Remote updates move activeVersion on but leave the unit starting the launcher
from the runtime that installed it, so state-based cleanup could delete that
runtime and the next restart failed with 203/EXEC. Installs now record
launcherVersion, pruning keeps it, and the launcher carries it through update
transitions, taking the on-disk value so a `t3 update` that repointed the unit
without a restart is not overwritten.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

```

## Parents

- [19e73d7b6677252fe33c01029754ebce62b5278a](https://git.cafe/pingdotgg/t3code/commit/19e73d7b6677252fe33c01029754ebce62b5278a?format=markdown)

[Source at this commit](https://git.cafe/pingdotgg/t3code/tree/00024c7f87dd842a0184500d39f5a42856178bd6?format=markdown)
