The second of the two cuts v0.31.0's changelog recorded as owed (the first was #334, plugin-kit 0.4.3).
Plugins resolve @punktfunk/host from the registry, so a fix sitting in sdk/ reaches nobody until a version carries it. Four commits have touched the SDK since sdk-v0.1.4; the headline one is the mgmt-port fix — a moved PUNKTFUNK_MGMT_BIND left every plugin and the tray dialing 47990.
c0dcac7f fix(sdk,tray): follow the mgmt port the host actually bound
c7c9500e fix(windows/scripting): the runner task writes a log file
e658ad72 feat(host): the identity split
f62a48d4 feat(library): launcher tiles get their launcher's logo
SDK_VERSION moves with the manifest
sdk/src/version.ts is a hand-maintained constant — the bundled runner ships as a single runner-cli.js with no package.json beside it, so there is nothing to read at runtime. The runner compares that constant against the SDK actually installed in the plugins tree to decide whether to reinstall, which means shipping 0.1.5 with it still reading 0.1.4 would have published the fix and then never delivered it.
version.test.ts guards exactly this and caught it on the first run. Both halves move here.
Gates: 83/83 SDK tests pass.
The second of the two cuts v0.31.0's changelog recorded as owed (the first was [#334](https://git.unom.io/unom/punktfunk/pulls/334), plugin-kit 0.4.3).
Plugins resolve `@punktfunk/host` from the registry, so a fix sitting in `sdk/` reaches nobody until a version carries it. Four commits have touched the SDK since `sdk-v0.1.4`; the headline one is the mgmt-port fix — a moved `PUNKTFUNK_MGMT_BIND` left every plugin and the tray dialing 47990.
```
c0dcac7f fix(sdk,tray): follow the mgmt port the host actually bound
c7c9500e fix(windows/scripting): the runner task writes a log file
e658ad72 feat(host): the identity split
f62a48d4 feat(library): launcher tiles get their launcher's logo
```
## `SDK_VERSION` moves with the manifest
`sdk/src/version.ts` is a hand-maintained constant — the bundled runner ships as a single `runner-cli.js` with no `package.json` beside it, so there is nothing to read at runtime. The runner compares that constant against the SDK actually installed in the plugins tree to decide whether to reinstall, which means shipping 0.1.5 with it still reading `0.1.4` would have published the fix and then **never delivered it**.
`version.test.ts` guards exactly this and caught it on the first run. Both halves move here.
Gates: 83/83 SDK tests pass.
v0.31.0's changelog recorded this cut as owed and said why: plugins resolve
`@punktfunk/host` from the registry, so a fix sitting in `sdk/` reaches nobody
until a version carries it. Four commits have touched the SDK since sdk-v0.1.4,
the headline one being the mgmt-port fix — a moved `PUNKTFUNK_MGMT_BIND` left
every plugin and the tray dialing 47990.
`SDK_VERSION` moves with it. It is a hand-maintained constant (the bundled
runner has no package.json to read at runtime), and the runner compares it
against the SDK actually installed in the plugins tree to decide whether to
reinstall — so shipping 0.1.5 with the constant still reading 0.1.4 would have
published the fix and then never delivered it. `version.test.ts` exists for
exactly this and caught it.
Gates: 83/83 SDK tests pass.
enricobuehler
scheduled this pull request to auto merge when all checks succeed 2026-08-19 22:51:10 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The second of the two cuts v0.31.0's changelog recorded as owed (the first was #334, plugin-kit 0.4.3).
Plugins resolve
@punktfunk/hostfrom the registry, so a fix sitting insdk/reaches nobody until a version carries it. Four commits have touched the SDK sincesdk-v0.1.4; the headline one is the mgmt-port fix — a movedPUNKTFUNK_MGMT_BINDleft every plugin and the tray dialing 47990.SDK_VERSIONmoves with the manifestsdk/src/version.tsis a hand-maintained constant — the bundled runner ships as a singlerunner-cli.jswith nopackage.jsonbeside it, so there is nothing to read at runtime. The runner compares that constant against the SDK actually installed in the plugins tree to decide whether to reinstall, which means shipping 0.1.5 with it still reading0.1.4would have published the fix and then never delivered it.version.test.tsguards exactly this and caught it on the first run. Both halves move here.Gates: 83/83 SDK tests pass.
enricobuehler referenced this pull request2026-08-19 23:24:48 +00:00