v0.2.0
Release-readiness audit: makes a public bun install (no private LunarWerx registry access)
boot cleanly, clarifies what "Sign in with Connections" actually does, and cleans up some
internal duplication. No new network calls, install IDs, or update-check behavior — nothing
tracking-related changed.
Changed
- Sign in with Connections now uses the official
@cnct/connect/@cnct/lockerSDKs
instead of a hand-rolled client. Both are optional dependencies that are only ever loaded
(via dynamicimport()) when you actually use sign-in — so installing DevWebUI without
access to the private LunarWerx package registry still boots the daemon cleanly; sign-in
simply reports itself unavailable instead of crashing anything. - Existing sign-ins are migrated to the new SDK's token storage automatically on first boot
after upgrading — no need to sign in again. "Forget" now also revokes the credential with
the server, not just locally. - README clarifies the two optional, off-by-default things that ever touch the network:
settings sync (requires explicitly signing in with a Connections account) and an anonymous,
install-id-only usage ping that only exists if the person who built your copy configured
it — with an env var to force it off either way. - README rewritten for humans, with real screenshots (dashboard, live logs, de-duplicated
error log, light theme) and a release badge; the full 17-tool MCP list moved toAI_GUIDE.md. - Release notes come from the CHANGELOG (the tagged version's section) rather than an
auto-generated commit list; dropped a redundantbun installinrelease.yml. - The
bunworkspace was internally renamed fromdevdecktodevwebuito match the
product name (no user-visible effect).
Fixed
/oauth/loginnow redirects back to the app with an error instead of returning a server
error (HTTP 500) when the sign-in machinery isn't available.- CI is green again.
bun run lint(Biome) had been failing on pre-existing format drift plus
twonoExplicitAnywarnings intests/auto-update.test.ts(the fixtures are now typed as
UpdateStatus/UpdateApplyResult). Bumpedactions/cache+actions/checkoutto clear the
Node.js 20 deprecation warning, and fixed therelease.yml"stage binary" step that failed on
Linux/macOS (lsof a per-OS path underset -e -o pipefail).
Internal
- De-duplicated several bits of internal logic that had drifted into multiple copies: the
helper that captures a spawned process's stdout, the shared log-line cap constant, the
error-event type, and the file-store path normalizer. - The settings sync UI now cleans up its background refresh timer when it's closed, and the
in-memory log buffer trims old lines more efficiently (O(1) instead of shifting an array). - Removed lingering references to the private internal kit-repo name from source comments.