chore(deps): bump node from 24-slim to 26-slim#176
Conversation
Bumps node from 24-slim to 26-slim. --- updated-dependencies: - dependency-name: node dependency-version: 26-slim dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
|
Deferred for now — Node 26 was released <1 month ago and the Copilot SDK is still validating on Node 24/25. Will revisit once the SDK runtime confirms Node 26 support. |
…on support (#189) * feat(sdk): upgrade to @github/copilot-sdk 1.0.0-beta.8 + remote sessions Consolidates 9 dependabot PRs and migrates to the latest beta SDK so we can expose cloud / remote-session control (the feature behind 'copilot --remote' / '/remote' in the official CLI). Dependency bumps - @github/copilot-sdk 0.2.2 -> 1.0.0-beta.8 (pinned exact; beta API) - @sveltejs/kit ^2.57.1 -> ^2.61.1 - svelte ^5.55.4 -> ^5.55.9 - vite ^8.0.8 -> ^8.0.14, ws ^8.18 -> ^8.21 - dompurify ^3.4 -> ^3.4.7, marked ^18.0.2 -> ^18.0.4 - dev-deps group: @playwright/test, vite-plugin-svelte, @types/node, @vitest/coverage-v8, jsdom, lint-staged, svelte-check SDK breaking-change migration - CopilotClient now takes a RuntimeConnection (forStdio/forUri/forTcp) - githubToken -> gitHubToken; cwd -> workingDirectory - COPILOT_HOME env -> baseDirectory option - SystemPromptSection -> SystemMessageSection - onPermissionRequest optional; getQuota({}) takes params object - hook input shapes: timestamp is Date; cwd dropped from session/error hooks; workingDirectory required on Pre/Post tool hook inputs - session-fs.ts removed (runtime writes session-state under baseDirectory) New SDK features wired in (all unit tested) - Per-session remoteSession mode (off | export | on), threaded through CreateSessionOptions and the WS new-session handler; persisted setting field added (default off). - Cloud sessions REST wrapper (cloud-sessions.ts) talking to api.individual.githubcopilot.com/agents/sessions (the same endpoint the official CLI uses for the remote-sessions view), with timeout + graceful error handling. - New GET /api/sessions/remote returns authenticated user's cloud sessions (passes through 401/403, 502 on other upstream errors). - New GET /api/sessions/last using client.getLastSessionId() + getSessionMetadata() for one-tap resume. - Graceful + forceful shutdown: destroyPoolEntry races client.stop() against a 5s timer and falls back to client.forceStop() to prevent hung CLI subs. Config - New ENABLE_REMOTE_SESSIONS env var (default true) wired into CopilotClient.enableRemoteSessions; sessions still need per-session opt-in. Verification - svelte-check: 0 errors / 0 warnings - vitest: 430 passed (41 files); +21 new tests covering cloud-sessions, /api/sessions/remote, /api/sessions/last, remoteSession threading, and forceStop fallback - npm run build succeeds; smoke boot: /health returns 200 Supersedes dependabot PRs #170, #172, #177, #178, #181, #182, #185, #186, #188. Out of scope (left open with comments): #176 (node:26-slim too new), #167 (release-please v5 breaking inputs), #187 (@github/copilot CLI is not a direct dep). Playwright E2E should be run in CI. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: drop /api/sessions/remote — endpoint does not exist in public CLI Investigating node_modules/@github/copilot/app.js (the official CLI we ship in node_modules via @github/copilot-sdk peer) showed that the hostname I guessed earlier — api.individual.githubcopilot.com — is not present anywhere in the bundle. The CLI only uses: - api.githubcopilot.com (default) - api.enterprise.githubcopilot.com (enterprise plan) And the agents endpoint is per-session (PUT/GET /agents/sessions/{id}), not a list. There is no 'list all my remote sessions' REST endpoint in the public CLI; that view is rendered on github.com using a different, internal API path that requires a Copilot bearer (exchanged from the GH OAuth token via a CLI-internal endpoint not exposed to integrators). Rather than ship a route that returns 502/empty results, I'm removing: - src/lib/server/copilot/cloud-sessions.ts - src/lib/server/copilot/cloud-sessions.test.ts - src/routes/api/sessions/remote/+server.ts - src/routes/api/sessions/remote/server.test.ts What stays (and is fully tested): - Per-session remoteSession mode wired through CreateSessionOptions and the WS new-session handler — the SDK takes care of publishing to api.githubcopilot.com under the hood when this is set. - GET /api/sessions/last (uses real SDK getLastSessionId + getSessionMetadata) - destroyPoolEntry forceStop fallback - ENABLE_REMOTE_SESSIONS env var New Playwright spec tests/sessions-endpoints.spec.ts hits the new /api/sessions/last on a real built server and verifies the 401 path end-to-end. Full suite: 57 desktop Playwright tests + 419 unit tests all pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs(readme): SDK 1.0.0-beta.8 + remote-session publishing - Bump copilot-sdk badge & tech-stack line to v1.0.0-beta.8. - New Features bullets for remote session publishing and resume-last-session. - New 'Remote session publishing' subsection under CLI <-> Browser Sync explaining what off/export/on do AND being explicit about what's NOT in this release (no in-app remote session browser, no steering of other remote sessions) so future users don't expect that capability. - Add ENABLE_REMOTE_SESSIONS env var to the All-options table. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: address rubber-duck PR review findings - MCP server config: rename cwd → workingDirectory (SDK 1.0 rename) - /api/sessions/last: pass copilotConfigDir to createCopilotClient so the SDK reads from the correct baseDirectory - new-session handler: honor ENABLE_REMOTE_SESSIONS server kill-switch; ignore client-supplied remoteSession when the feature is disabled - destroyPoolEntry: clear timeout on stop() resolve, attach .catch() to the in-flight stop promise (no unhandled rejection), guard forceStop with a settled flag so it cannot race a clean stop Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * ci: bump e2e timeout from 15 to 30 minutes The Playwright desktop suite grew to 126 tests. With 1 CI worker and 2 retries (CI defaults from playwright.config.ts), the worst- case wall clock now exceeds the prior 15-minute budget — every recent CI run on this repo (including dependabot PRs) has been hitting the job timeout during the Playwright step. This is a narrow infra fix: extend the budget so the suite can actually finish. It does not skip, disable, or weaken any tests. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Closing: Node.js 26 is not yet an LTS release. Staying on Node 24 for stability. |
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |
Bumps node from 24-slim to 26-slim.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)