Skip to content

Commit 0fbc4b1

Browse files
authored
docs: console docs sync 2026-03-17 to 2026-04-02 (#1336)
Document 200+ console PRs covering: - Mission Control modal with cluster selector and 3-step wizard - AI Missions navbar button for quick access - Mission Explorer enhancements: Kubara Platform Catalog, resizable sidebar, YAML/Markdown runbooks, CNCF project detection - Multi-project selection filter in navbar - Karmada Ops dedicated page with fleet overview - Security hardening: JWT HS256 enforcement, URL leakage fix, WebSocket auth hardening, CNCF incubation readiness - Custom card useCardFetch hook with SSRF-protected proxy - Post-build safety checks, post-merge Playwright verification, AI quality assurance ratchet - UX: visit streaks, hover tooltips, light mode card shadows, touch target accessibility, landing page lightweight shell - New adopters: KitOps, Easegress, Cadence Screenshots captured from console.kubestellar.io in demo mode. Signed-off-by: Andrew Anderson <andy@clubanderson.com>
1 parent 311c09a commit 0fbc4b1

6 files changed

Lines changed: 291 additions & 4 deletions

File tree

docs/content/console/ai-features.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ AI Missions are conversations with AI to solve problems. You can start a mission
3636

3737
![AI Missions Navbar Button](images/ai-missions-navbar-apr02.jpg)
3838

39-
The navbar button shows an attention badge when missions need your input.
39+
The navbar button shows an attention badge when missions need your input. For complex multi-project deployments, use the **Mission Control** wizard (accessible from the AI Missions panel).
4040

4141
### What Can You Do?
4242

@@ -50,8 +50,8 @@ The navbar button shows an attention badge when missions need your input.
5050

5151
### How It Works
5252

53-
1. Click **"AI Missions"** button (bottom right)
54-
2. Choose a mission type or describe your problem
53+
1. Click **"AI Missions"** button in the top navigation bar (or the floating button at bottom right)
54+
2. Choose a mission type, describe your problem, or open **Mission Control** for guided multi-step missions
5555
3. AI asks questions to understand the issue
5656
4. AI runs commands and analyzes results
5757
5. AI suggests fixes or takes action

docs/content/console/console-features.md

Lines changed: 288 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,15 +150,17 @@ The alert system keeps you informed:
150150

151151
AI-powered automation for common tasks:
152152

153-
![AI Missions Panel](images/ai-missions-panel.png)
153+
![AI Missions Panel](images/ai-missions-panel-apr02.jpg)
154154

155155
### Starting a Mission
156156

157157
Missions can be started from:
158158

159+
- **AI Missions navbar button**: Click "AI Missions" in the top navigation bar (new in April 2026)
159160
- **Card AI buttons**: Click the AI icon on any card
160161
- **Stats bar actions**: Click "Address Security Issues" or similar action buttons
161162
- **Keyboard shortcut**: Press `M` to open the missions panel
163+
- **Mission Control**: Full-screen wizard for complex multi-project missions
162164

163165
### Mission Types
164166

@@ -1295,6 +1297,291 @@ Recommendation panels (Recommended Cards, Recommended Actions) have been streaml
12951297

12961298
---
12971299

1300+
## Mission Control Modal (New in April 2026)
1301+
1302+
![Mission Control](images/mission-control-apr02.jpg)
1303+
1304+
Mission Control has been redesigned as a proper full-screen modal with a 3-step wizard: **Define Mission**, **Chart Course**, and **Flight Plan**.
1305+
1306+
### Define Mission
1307+
1308+
The first step collects your mission requirements:
1309+
1310+
- **Mission Title**: Name your mission (e.g., "Production Security Compliance")
1311+
- **Describe Your Solution**: Free-text description of what you want to deploy or fix
1312+
- **AI Suggest**: Click the Suggest button to have AI auto-fill solution details based on your title
1313+
1314+
### Cluster Selector (Phase 1)
1315+
1316+
![Mission Control Cluster Selector](images/mission-control-cluster-selector-apr02.jpg)
1317+
1318+
The **Target Clusters** section lets you scope missions to specific clusters:
1319+
1320+
- **All clusters** (default) — AI analyzes your full fleet
1321+
- **Click to scope** — Select individual clusters to target
1322+
- AI will analyze only the scoped clusters, reducing token usage and focusing results
1323+
1324+
### Selected Payload
1325+
1326+
- **Add Manually** — Add CNCF projects, Helm charts, or custom resources as payload
1327+
- **Click a project card** — View AI reasoning, install steps, dependencies, and alternatives
1328+
- Projects and dependencies counter in the Mission Summary sidebar
1329+
1330+
### Mission Editing Before Execution
1331+
1332+
Missions can now be edited before they start executing. Review and modify the mission title, solution description, target clusters, and payload before committing to execution.
1333+
1334+
### Draft Bug Reports
1335+
1336+
The Contribute dialog now includes a **Drafts** tab alongside Submit and Updates, allowing you to save bug reports and feature requests as drafts before submitting them.
1337+
1338+
---
1339+
1340+
## AI Missions Navbar Button (New in April 2026)
1341+
1342+
![AI Missions Navbar](images/ai-missions-navbar-apr02.jpg)
1343+
1344+
The **AI Missions** button has been promoted to the top navigation bar for faster access:
1345+
1346+
- Purple sparkle icon with "AI Missions" label, always visible in the header
1347+
- One-click access to Start Custom Mission, Browse Community Missions, or Mission Control
1348+
- Replaces the previous bottom-right floating button as the primary entry point
1349+
- The floating button remains as a secondary access point on the dashboard
1350+
1351+
---
1352+
1353+
## Mission Explorer Enhancements (New in April 2026)
1354+
1355+
![Mission Explorer](images/mission-explorer-apr02.jpg)
1356+
1357+
The Mission Explorer (formerly Mission Browser) has received significant UX improvements.
1358+
1359+
### Kubara Platform Catalog
1360+
1361+
**Kubara Platform Catalog** is now a built-in mission source alongside KubeStellar Community and GitHub Repositories. It provides curated platform missions for common infrastructure patterns.
1362+
1363+
### Resizable Sidebar
1364+
1365+
The Mission Explorer sidebar is now resizable, matching the main navigation sidebar behavior. Drag the edge to adjust the source panel width.
1366+
1367+
### File Icons and Source Links
1368+
1369+
- Missions display file-type icons (YAML, Markdown) for quick visual identification
1370+
- Source and PR links connect each mission back to its origin repository
1371+
- CNCF project detection highlights missions related to CNCF graduated and incubating projects
1372+
1373+
### YAML and Markdown Runbook Support
1374+
1375+
Missions now support YAML and Markdown runbooks with automatic CNCF project detection:
1376+
1377+
- YAML missions define structured deployment steps
1378+
- Markdown runbooks provide narrative deployment guides
1379+
- CNCF project references are automatically detected and linked
1380+
1381+
### GitHub Repository Browsing Fixes
1382+
1383+
Repository browsing has been improved with fixes for navigation, file listing, and content rendering when browsing missions directly from GitHub repositories.
1384+
1385+
### Filtering and Discovery
1386+
1387+
- **Class filter**: All, Fixer (troubleshooting missions)
1388+
- **Tags filter**: feature, app-deploy, graduated, incubating, sandbox, and more
1389+
- **Source filter**: Cluster, Community, custom
1390+
- **Category filter**: All, Troubleshoot, Ingress, Sandbox, Repair, Custom
1391+
- **Difficulty filter**: Beginner, Advanced, Intermediate, Expert
1392+
- **Match mode**: Any or All tags
1393+
- Showing count of matching recommendations (e.g., "Showing 458 of 1087 recommendations")
1394+
1395+
---
1396+
1397+
## Multi-Project Selection (New in April 2026)
1398+
1399+
The **All Projects** dropdown in the navbar now supports multi-project selection:
1400+
1401+
- Filter the entire dashboard by one or more CNCF projects
1402+
- When projects are selected, only cards and data relevant to those projects are displayed
1403+
- Quick "All" filter toggle to show everything
1404+
- Project selection persists across page navigation
1405+
1406+
---
1407+
1408+
## Karmada Ops Dedicated Page (New in April 2026)
1409+
1410+
![Karmada Ops](images/karmada-ops-apr02.jpg)
1411+
1412+
Karmada Ops now has its own dedicated page in the sidebar navigation, separate from the Multi-Tenancy dashboard.
1413+
1414+
### Karmada Fleet Overview
1415+
1416+
- **Karmada card**: Cluster count, ready/failed status, member clusters with search, resource bindings
1417+
- **KubeRay Fleet card**: Ray clusters, workers, GPUs, jobs with per-cluster breakdown
1418+
- **Activity Trail**: Recent operations timeline
1419+
- **Serving Endpoints**: Service status across regions with upgrade pending indicators
1420+
1421+
### Member Cluster Details
1422+
1423+
Each member cluster shows:
1424+
- Version and sync status
1425+
- Node and pod counts
1426+
- GPU allocation per cluster
1427+
- Ready/pending state indicators
1428+
1429+
---
1430+
1431+
## Security Hardening (New in April 2026)
1432+
1433+
### JWT HS256-Only Enforcement
1434+
1435+
JWT token validation now strictly enforces HS256 algorithm only, preventing algorithm confusion attacks. Tokens signed with other algorithms are rejected.
1436+
1437+
### JWT URL Leakage Prevention
1438+
1439+
JWT tokens are no longer included in URLs or query parameters. All token transmission uses HTTP-only cookies or Authorization headers, preventing token exposure in server logs and browser history.
1440+
1441+
### WebSocket Authentication Hardening
1442+
1443+
WebSocket connections now require authentication on every connection and reconnection:
1444+
1445+
- Initial connection validates the JWT before upgrading to WebSocket
1446+
- Reconnection after disconnection re-validates credentials
1447+
- Expired tokens during an active WebSocket session trigger a graceful disconnect with re-authentication prompt
1448+
1449+
### CNCF Incubation Readiness
1450+
1451+
The project has been prepared for CNCF incubation with:
1452+
1453+
- **Governance documentation**: GOVERNANCE.md, SECURITY.md, and OWNERS files
1454+
- **Security self-assessment**: Comprehensive security self-assessment following TAG-Security guidelines, including architecture diagrams
1455+
- **Roadmap**: Public roadmap document for transparency
1456+
- **TAG-Security submission**: Self-assessment submitted to CNCF TOC (cncf/toc#2106)
1457+
1458+
---
1459+
1460+
## Custom Card External Data (New in April 2026)
1461+
1462+
### useCardFetch Hook
1463+
1464+
A new `useCardFetch` React hook enables custom cards to fetch data from external APIs:
1465+
1466+
- Declarative data fetching with automatic loading, error, and refresh states
1467+
- Built-in caching and deduplication to prevent redundant requests
1468+
- Compatible with the card lifecycle (pause fetching when card is collapsed, resume on expand)
1469+
1470+
### Card Proxy with SSRF Protection
1471+
1472+
Custom cards that need to fetch external data go through a server-side proxy that includes SSRF (Server-Side Request Forgery) protection:
1473+
1474+
- Allowlist-based URL validation
1475+
- Private IP range blocking (10.x, 172.16-31.x, 192.168.x, localhost)
1476+
- Rate limiting per card per user
1477+
- Request timeout enforcement
1478+
1479+
---
1480+
1481+
## CI and Quality Improvements (New in April 2026)
1482+
1483+
### Post-Build Safety Checks
1484+
1485+
Five automated safety checks run after every build to catch regressions:
1486+
1487+
1. **Bundle size check** — Fails if the production bundle exceeds the size threshold
1488+
2. **TypeScript strict mode** — Verifies no `any` types leaked into the build
1489+
3. **Import cycle detection** — Catches circular import dependencies
1490+
4. **Dead code detection** — Identifies unreachable exports
1491+
5. **Console.log audit** — Flags stray console.log statements in production code
1492+
1493+
### Post-Merge Playwright Verification
1494+
1495+
After PRs merge to main, an automated Playwright test suite runs to verify end-to-end functionality:
1496+
1497+
- Smoke tests for critical user flows (login, dashboard load, card interactions)
1498+
- Screenshot comparison for visual regression detection
1499+
- Results posted as GitHub check status on the merge commit
1500+
1501+
### AI Quality Assurance
1502+
1503+
Five ratcheted AI antipattern checks prevent common code quality issues:
1504+
1505+
1. **Magic numbers** — All numeric literals must be named constants
1506+
2. **Array safety** — All array operations must guard against undefined
1507+
3. **Unsafe type assertions** — Two-value form required for type assertions
1508+
4. **Hardcoded strings** — User-facing strings must use constants or i18n
1509+
5. **Missing error handling** — Async operations must have try/catch or .catch()
1510+
1511+
The ratchet mechanism ensures the count of violations never increases — new code must not introduce new violations, while existing violations are tracked and reduced over time.
1512+
1513+
---
1514+
1515+
## UX Improvements (New in April 2026)
1516+
1517+
### Visit Streak and Rotating Tips
1518+
1519+
The dashboard now tracks your visit streak and displays rotating tips:
1520+
1521+
- **Visit streak counter**: Shows consecutive days you have used the console
1522+
- **Rotating tips**: Context-aware tips that cycle through useful features and shortcuts
1523+
- Tips are personalized based on which features you have and have not used
1524+
1525+
### Hover Tooltips for Technical Abbreviations
1526+
1527+
Technical abbreviations throughout the console now show explanatory tooltips on hover:
1528+
1529+
- Abbreviations like OPA, RBAC, CRD, CSI, CNI, SPIFFE show their full names
1530+
- First-time users can learn Kubernetes terminology without leaving the console
1531+
- Tooltips are unobtrusive and only appear on hover
1532+
1533+
### Card Shadows in Light Mode
1534+
1535+
Card shadow rendering has been fixed in light mode themes:
1536+
1537+
- Cards now display proper depth shadows in all light themes
1538+
- Shadow intensity scales with the theme's brightness level
1539+
- Consistent shadow appearance across KubeStellar, Nord, and Tokyo Night light variants
1540+
1541+
### Touch Target Accessibility
1542+
1543+
All interactive elements now meet WCAG 2.1 AA touch target requirements:
1544+
1545+
- Minimum 44x44px touch targets for all buttons, links, and interactive elements
1546+
- Improved tap accuracy on mobile and tablet devices
1547+
- Sidebar icons, card action buttons, and toolbar items all meet the standard
1548+
1549+
### Landing Pages Lightweight Shell
1550+
1551+
Landing pages (login, onboarding) now use a lightweight shell that loads faster:
1552+
1553+
- Reduced JavaScript bundle for unauthenticated pages
1554+
- Faster time-to-interactive for first-time visitors
1555+
- Core dashboard code is not loaded until after authentication
1556+
1557+
### Solution Missions Renamed to Fixer
1558+
1559+
"Solution missions" in the Mission Explorer have been renamed to **Fixer** missions for clarity:
1560+
1561+
- The "Solution" class filter is now "Fixer"
1562+
- Fixer missions focus on troubleshooting and remediation
1563+
- Naming aligns with the mission categories: Installer, Fixer, Custom
1564+
1565+
---
1566+
1567+
## Adopter Ecosystem (New in April 2026)
1568+
1569+
Three new projects have been added as adopters of KubeStellar Console:
1570+
1571+
### KitOps
1572+
1573+
KitOps provides ModelKits for packaging and sharing AI/ML models. The console includes a KitOps card for monitoring ModelKit deployments across clusters.
1574+
1575+
### Easegress
1576+
1577+
Easegress is a cloud-native traffic orchestration system. The console provides monitoring cards for Easegress traffic routing, pipeline status, and filter chain health.
1578+
1579+
### Cadence
1580+
1581+
Cadence is Uber's workflow orchestration engine. The console includes cards for monitoring Cadence workflow domains, task lists, and worker health across clusters
1582+
1583+
---
1584+
12981585
## 3D Globe Visualization Refresh (New in March 2026)
12991586

13001587
The 3D globe on the login page has been polished:
556 KB
Loading
432 KB
Loading
232 KB
Loading
908 KB
Loading

0 commit comments

Comments
 (0)