refactor(server-edition): rename Teams → Server edition (identifiers, config key alias, docs)#607
refactor(server-edition): rename Teams → Server edition (identifiers, config key alias, docs)#607Dumbris wants to merge 1 commit into
Conversation
Reconcile the multi-user code/config to the product's "Server edition" naming (editions are Server and Personal; "Teams" was the legacy name). - Go identifiers: TeamsConfig→ServerEditionConfig, TeamsOAuthConfig, TeamsAuthMiddleware, TeamsStatusInfo/Info, and locals → ServerEdition*. - Package: internal/teams/ → internal/serveredition/ (git-mv, history preserved); package teams → serveredition; import paths/aliases updated. - Config key: "teams" → "server_edition" with a backward-compat alias — the legacy key is normalized on read (Config.UnmarshalJSON) so existing deployments keep working; SaveConfig always writes the new key. New key wins when both are present. - Docs/comments/strings: Teams → Server edition (CLAUDE.md, settings-page). - Unchanged by design: the //go:build server tag and the server/personal edition strings (binary identity). Tested: builds (personal + server), config alias unit tests (both editions), full serveredition suite -race, API E2E 65/65, linter clean. Related MCP-1085
Deploying mcpproxy-docs with
|
| Latest commit: |
8cdbf6c
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://175647a8.mcpproxy-docs.pages.dev |
| Branch Preview URL: | https://rename-teams-to-server-editi.mcpproxy-docs.pages.dev |
|
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
📦 Build ArtifactsWorkflow Run: View Run Available Artifacts
How to DownloadOption 1: GitHub Web UI (easiest)
Option 2: GitHub CLI gh run download 26997568596 --repo smart-mcp-proxy/mcpproxy-go
|
|
Closing in favor of #603 (owner decision, 2026-06-09). #603 lands the Teams→ServerEdition config rename, is green, and is already in QA. This PR overlapped on the config rename (would conflict on merge) and is red on a Windows unit test. The branch |
…n" (#626) The server-edition Settings surface used legacy "Teams" wording (the tab label and the "Teams / Server" section heading). Align it to "Server Edition" to match the edition identity (`/api/v1/status` edition === "server"), which the frontend already keys off. Extract the section into SERVER_EDITION_FIELDS + label constants in settings/fields.ts and add a vitest guard. The config dot-paths stay on the legacy `teams.*` key on purpose: the backend config-key rename (`teams` -> `server_edition`, MCP-1085 / PR #607) is not merged, so a live config is still `teams`-keyed. Flipping the keys early would make `hasTeams` read `state.working.server_edition` and silently hide the whole tab. The key switch is tracked as a follow-up blocked by that backend change. Related MCP-1087
What
Reconciles the multi-user code/config to the product's Server edition naming. The editions are Server and Personal; the multi-user feature still carried the legacy name "Teams". This is Child A (backend + docs) of MCP-1085. Frontend (
frontend/src/{views,components}/teams) is Child B, tracked separately and blocked on this.Changes
TeamsConfig→ServerEditionConfig,TeamsOAuthConfig→ServerEditionOAuthConfig,TeamsAuthMiddleware→ServerEditionAuthMiddleware,TeamsStatusInfo/TeamsInfo→ServerEdition*, locals/test names too.internal/teams/→internal/serveredition/(viagit mv, history preserved);package teams→serveredition; all import paths + aliases (teamsauth→seauth,teamsapi→seapi) updated.teams→server_editionwith a backward-compat alias. The legacyteamskey is normalized on read inConfig.UnmarshalJSON(mirrors the provenance normalize-on-read in feat(registry): simplify trust/quarantine + add edit endpoint (MCP-1072) #594), so existing deployments keep working;SaveConfigalways writes the new key. The new key wins when both are present.teams_config.go→server_edition_config.go,teams_register.go→server_edition_register.go,teams_wire.go→server_edition_wire.go,edition_teams.go→edition_server.go,status_teams*.go→status_server_edition*.go(+ stubs/tests).CLAUDE.mdpaths + config example + alias note,docs/features/settings-page.md, code comments, validation error messages).Unchanged by design
//go:build serverbuild tag and theserver/personaledition strings (binary identity) — per the issue.docs/plans/2026-03-08-repo-restructure-design.mdandspecs/029-*left as archival record (they describe the original decision, even using the since-superseded-tags teams).Verification
go build ./...(personal) +go build -tags server ./...— both green.teamskey →ServerEdition, new key wins, output always writesserver_edition— pass in both editions.go test -tags server -race ./internal/serveredition/...— all green../scripts/test-api-e2e.sh— 65/65../scripts/run-linter.sh— 0 issues.CLAUDE.mdkept under the 40k CI gate (39,904) by trimming 4 zero-value auto-generated "Active Technologies" N/A lines.Related MCP-1085