Skip to content

Package Canvas with an optional managed daemon - #8

Merged
nicosuave merged 2 commits into
mainfrom
package-canvas
Sep 7, 2026
Merged

nicosuave merged 2 commits into
mainfrom
package-canvas

Conversation

@nicosuave

@nicosuave nicosuave commented Sep 7, 2026 •

Copy link
Copy Markdown
Member

Canvas currently requires a source checkout. Prepare @sidequery/canvas as an installable Bun package with the CLI, gallery, stdio MCP, and prebuilt Worker/assets. Add installed-tarball regression coverage and remove preview history's dependency on a checkout lockfile.

Add canvas server with a pinned, checksum-verified celld download and persistent local state. Optional launchd/systemd user services support start, stop, status, logs, and explicit start-at-login/uninstall. Native service startup does not depend on Node or an interactive shell PATH.

Add a manual GitHub Actions release workflow using npm trusted publishing (OIDC). It checks the requested version on main, builds and tests one tarball, then publishes that exact archive from a separate job with OIDC permission. No registry secret is required. npm-side trust configuration follows the initial approved publication; merging does not publish.

Validated 104 source tests and both typechecks; installed-package CLI/MCP/preview/native SQL persistence and restart; real macOS daemon crash recovery; and Ubuntu systemd configuration parsing. The OIDC follow-up passed actionlint, typecheck, default packaging (15 assertions), and exact release archive/native tests (19 assertions). Actual OIDC publication and the live Linux service manager have not been exercised. No registry publication or persistent login-service installation was performed.

@nicosuave
nicosuave marked this pull request as ready for review September 7, 2026 14:29
@nicosuave
nicosuave merged commit 466c4d5 into main Sep 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant