From 5d2d7a54516edb3851aaa907c263811f9caec046 Mon Sep 17 00:00:00 2001 From: "Orca (ecs-claude)" Date: Thu, 13 Aug 2026 23:12:16 +0800 Subject: [PATCH] =?UTF-8?q?feat(studio):=20fleet=20config=20panel=20?= =?UTF-8?q?=E2=80=94=20view=20+=20switch=20active=20fleet=20(ADR=20#19=20A?= =?UTF-8?q?+B)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The visible config surface the ADR #19 read model was missing: which fleet this Studio is managing, against which credential/account, and the ability to switch between fleets from the UI. - oab-mcp: new read-only `fleet_config` tool (9th tool) — lists the configured per-fleet bindings (name/cluster/region/profile/expected_principal) plus the config file path and default cluster. Server now retains the bindings path. Profiles are names, not secrets. Catalog test + module doc updated. - src-tauri: `fleet_config` bridge command (mirrors runtime_context). - console: FleetConfig view-model + Source method (Tauri + Mock fixture); a pure `fleetConfigHtml` renderer (one switchable button per fleet, empty state shows where to add bindings). Clicking a fleet re-points every read (roster + identity) at its cluster — the ADR "switch" step, which through oab-mcp's per-cluster binding changes the managing credential. 7 new render tests. Slice A (view) + B (switch) of the config panel. Editing (write-back to fleets.toml) is slice C, stacked on this. Co-Authored-By: Claude Opus 4.8 --- console/index.html | 1 + console/src/fixtures.ts | 27 ++++++++++++++- console/src/main.ts | 56 ++++++++++++++++++++++++++---- console/src/render.test.ts | 62 +++++++++++++++++++++++++++++++-- console/src/render.ts | 64 +++++++++++++++++++++++++++++++++- console/src/source.ts | 15 ++++++-- console/src/styles.css | 71 ++++++++++++++++++++++++++++++++++++++ console/src/types.ts | 21 +++++++++++ crates/oab-mcp/src/main.rs | 51 ++++++++++++++++++++++++--- src-tauri/src/lib.rs | 22 ++++++++++++ 10 files changed, 373 insertions(+), 17 deletions(-) diff --git a/console/index.html b/console/index.html index a737b15..ad8254e 100644 --- a/console/index.html +++ b/console/index.html @@ -18,6 +18,7 @@
+