Conversation
- Split Settings into API Keys / Environment / Teams / Misc tabs - Move team management into Settings; remove standalone Teams page - TeamSelector shows per-team instance count + admin Manage shortcut - ListTeams returns member_count and instance_count Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Move migrations to `control-plane/internal/database/migrations/` Go subpackage with a registry + `WithMigrator` helper - Move models to `control-plane/internal/database/models/`; `database` package re-exports via type aliases for backward compat - `AutoMigrateAll` now runs on every boot in `RunMigrations`; goose migrations are reserved for data backfills and non-additive schema changes - New versioned Go migrations: v1 baseline no-op, v2 noop placeholder, v3 create teams tables, v4 seed default team + backfill, v5 add team_ids columns to shared_folders/backup_schedules, v6 rename images - Set `goose.WithAllowMissing()` so dev DBs that ran intermediate branch states boot cleanly - Add `cmd/migrationcheck` drift binary and `make migration` / `make migration-check` targets - Add `migration-author` Claude Code subagent and `docs/migrations.md` spec - Drop obsolete SQL migration files and the `.keep` placeholder
- Team-scoped data model and authorization: instances, shared folders, backup schedules, and LLM providers are now associated with teams; handlers enforce team membership on all relevant routes - Frontend: TeamSelector + InstanceTeamPicker, Teams/Members/Providers settings tabs, team-aware queries across pages - Backend unavailable handling: orchestrator watcher hook, OrchestratorDownToast, BackendUnavailablePage, and shared `utils/http` helper - Browser image and agent Dockerfile updates (rename to `claworc/<browser>-browser`), helm chart and CI workflow tweaks - Misc UI polish on Backups, SharedFolders, Skills, Login, Settings, Sidebar, Layout, and Usage pages
Create-instance API now requires team_id; tests were posting without it and failing with 400 "team_id is required". Use the seeded default team (id=1) in all integration test instance creation calls.
`GET /api/v1/backups` now returns `{backups, total, limit, offset}` rather
than a flat array; update the test to decode the new envelope.
| @@ -1,9 +1,10 @@ | |||
| import { useState, useMemo, type FormEvent } from "react"; | |||
| import { useEffect, useState, useMemo, type FormEvent } from "react"; | |||
| @@ -1,5 +1,9 @@ | |||
| import { useState } from "react"; | |||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Teams feature
Team,TeamMember,TeamProvider) with instances, shared folders, backup schedules, and LLM providers associated to teamsTeamSelectorandInstanceTeamPicker, Teams/Members/Providers settings tabs, team-aware queries across pagesOrchestratorDownToast,BackendUnavailablePage, sharedutils/httphelperMigrations overhaul
control-plane/internal/database/migrations/Go subpackage with a registry +WithMigratorhelpercontrol-plane/internal/database/models/;databasepackage re-exports via type aliases for backward compatAutoMigrateAllruns on every boot inRunMigrations; goose migrations are reserved for data backfills and non-additive schema changesteam_idsto shared_folders/backup_schedules, v6 rename imagesgoose.WithAllowMissing()so dev DBs that ran intermediate branch states boot cleanlycmd/migrationcheckdrift binary plusmake migration/make migration-checktargetsmigration-authorClaude Code subagent anddocs/migrations.mdspec