Skip to content

Remove unused helpers with no callers - #181

Merged
jonbeckman merged 3 commits into
masterfrom
cursor/remove-unused-helpers-ed62
Nov 9, 2026
Merged

jonbeckman merged 3 commits into
masterfrom
cursor/remove-unused-helpers-ed62

Conversation

@jonbeckman

Copy link
Copy Markdown
Contributor

Summary

Removes helpers that have no callers in this repository. A search of the tree finds each symbol only at its definition. The live paths they sat next to stay in place: providerServicesForEnv, resolveSessionAccess, failSetup, toRuntimeActivityRow, and the workflow node executors.

Removed:

  • App-only stage metadata readers (getAppStageMetadataFromStr, getAppStageMetadataSync, and their private helpers). Browser code reads Vite env through getAppStageMetadata() in apps/web/src/lib/runtime-config.ts. Workers read getStageMetadataSync.
  • describeAgentRuntimeModelCompatibility and its description table.
  • parseCustomMcpServerId, encodeSessionToolQueryValue, and appendSessionToolsToSearchParams.
  • LiveProviderLayer, MockProviderLayer, and providerLayerForEnv. Call sites use providerServicesForEnv.
  • controlPlaneDialectForEngine.
  • getGitHubAppConfigOrThrow.
  • buildSetupResponse. failSetup still builds the setup URL.
  • resolveSessionAccessPromise. Routes call resolveSessionAccess.
  • toSandboxActivityRow. toRuntimeActivityRow still maps stored rows.
  • isVisibleModelForUser and toEditableCustomProviderSettings.
  • Unused workflow node type predicates and the sets that existed only for them: isWorkflowHttpNodeType, isWorkflowNotificationNodeType, isWorkflowSessionNodeType, isWorkflowStorageNodeType, and getRegisteredWorkflowNodeAdapterCategories.

release:none: no user, administrator, or operator behavior changes. The symbols were unreferenced.

Validation

  • nub run typecheck
  • nub run lint
  • nub run format
  • nub run test was not run. These symbols have no callers, so no flow changes.

Checklist

  • I added or updated tests for behavior changes, or explained why tests are not needed.
  • I updated documentation and config examples when behavior or configuration changed. (No documented behavior changed.)
  • I added a .tegami/ release entry, or explained why this pull request uses release:none.
  • I ran nub run config:check, nub run typecheck, nub run lint, nub run format, and nub run test. (config:check and test were not run; see Validation.)
  • I did not include credentials, private data, internal URLs, or organization-specific defaults.
  • I updated THIRD_PARTY_NOTICES.md for new third-party code or separately licensed assets. (No new third-party code.)
Open in Web Open in Cursor 

Repo-wide search finds each removed symbol only at its definition. Live callers, including providerServicesForEnv, resolveSessionAccess, and the workflow node executors, stay in place.

Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
@jonbeckman jonbeckman added the release:none label Nov 8, 2026 — with Cursor
@jonbeckman
jonbeckman marked this pull request as ready for review November 8, 2026 09:28
@github-actions

github-actions Bot commented Nov 8, 2026 •

Copy link
Copy Markdown
Contributor

Tegami

This repository uses Tegami to manage releases. When your changes affect published packages, add a changelog file under .tegami/ before merging.

Create a changelog → · Changelog format

No changelogs yet

This PR has no pending changelog files. If your changes require a release, add a changelog before merging.

Run nub run tegami locally to create a changelog interactively.

Managed by Tegami.

@github-actions

github-actions Bot commented Nov 8, 2026 •

Copy link
Copy Markdown
Contributor

🟢 e2e solzero-core: 15 passed, 17 left out by filters

2 agent steps · 2 replayed from cache

Change 15 files changed since 487a836
Filter decision kept 13 of 30 tests, left out 17 (1 call, 20.8k tokens)

17 tests left out by filters
Test Filter Reason
tests/accounts.e2e.ts › create, use and revoke an isolated user API key decision 17% likely affected
tests/accounts.e2e.ts › Better Auth 1.7 account APIs select the local account row id decision 17% likely affected
tests/admin.e2e.ts › administrator pages show live control-plane configuration decision 19% likely affected
tests/advanced-sessions.e2e.ts › incognito sessions stay outside normal lists but open directly decision 17% likely affected
tests/auth.e2e.ts › sign-in gate protects every application route decision 5% likely affected
tests/auth.e2e.ts › credential sign-in opens the requested settings page decision 17% likely affected
tests/auth.e2e.ts › anonymous callers cannot access any protected API group decision 9% likely affected
tests/auth.e2e.ts › sign-out removes authenticated UI access decision 7% likely affected
tests/bots.e2e.ts › create a bot and manage a temporary routine through the UI decision 17% likely affected
tests/branding.e2e.ts › the selected deployment brand reaches the browser decision 20% likely affected
tests/branding.e2e.ts › OpenAPI uses the selected deployment brand decision 17% likely affected
tests/session-transfer.e2e.ts › admin authentication transfer redeems once and retains its deep link decision 17% likely affected
tests/sessions.e2e.ts › codex executes a real prompt and persists its output decision 17% likely affected
tests/settings.e2e.ts › MCP deep link and legacy settings URL open the MCP tab decision 17% likely affected
tests/settings.e2e.ts › secret editor creates, finds and deletes a disposable secret decision 17% likely affected
tests/settings.e2e.ts › theme preference survives reload decision 17% likely affected
tests/skills.e2e.ts › global skill defaults and per-user preferences persist independently decision 17% likely affected
All 15 tests in 8 files
Test Agent Time
🟢 tests/accounts.e2e.ts · 1 passed 3.5s
🟢 Accounts settings shows GitHub as unlinked without OAuth providers 3.5s
🟢 tests/advanced-sessions.e2e.ts · 1 passed 4.8s
🟢 session MCP definitions and subagent preferences persist 4.8s
🟢 tests/api-contract.e2e.ts · 1 passed 490ms
🟢 exported API key and session schemas decode actual Worker responses 490ms
🟢 tests/auth.setup.e2e.ts · 2 passed 8.3s
🟢 authenticate isolated admin 5.9s
🟢 authenticate isolated peer 2.4s
🟢 tests/branding.e2e.ts · 1 passed 19ms
🟢 health identifies the configured application without exposing configuration 19ms
🟢 tests/sessions.e2e.ts · 4 passed 1 step 30.4s
🟢 session tools, archive and restoration persist through the real Worker 1 step 6.7s
🟢 a second account cannot read or mutate another account's session 300ms
🟢 isolate executes a real prompt and persists its output 8.5s
🟢 opencode executes a real prompt and persists its output 14.9s
🟢 tests/settings.e2e.ts · 2 passed 16.2s
🟢 all settings categories load real data 9.8s
🟢 runtime default persists after reload 6.3s
🟢 tests/workflows.e2e.ts · 3 passed 1 step 9.3s
🟢 workflow authoring, rename, export, disable and archive persist 1 step 6.4s
🟢 manual workflow executes JavaScript and stores a real R2 artifact 2.9s
🟢 invalid workflow definitions are rejected before storage 99ms

e2e 0.21.3 · 2m 7s · local-cloudflare · run artifacts

cursoragent and others added 2 commits November 8, 2026 09:31
Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
@jonbeckman
jonbeckman merged commit 59ffcf3 into master Nov 9, 2026
14 of 15 checks passed
@jonbeckman
jonbeckman deleted the cursor/remove-unused-helpers-ed62 branch November 9, 2026 09:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants