mirror of
https://github.com/trustgraph-ai/trustgraph.git
synced 2026-07-01 17:39:39 +02:00
fix: iterative QA pass — resolve remaining bugs, UX and accessibility improvements
Three QA iterations to convergence (zero issues remaining): Workbench UI: - Connection badge: amber "Connected (no auth)" for unauthenticated state - Theme persistence: restore script in index.html + localStorage sync - Settings About section: add bottom padding so content isn't clipped - Clear messages: cancel in-flight requests when clearing chat - Feature switch labels: proper casing + acronym handling (MCP, LLM) - Token Cost badge: hidden during loading state - ARIA: role="switch", aria-checked on toggles, aria-labels on buttons - ConfigApi: null-safe chaining for getPrompts/getSystemPrompt Grafana dashboards: - Auto-refresh 30s on all 3 dashboards - Panel heights reduced to fit viewport without scrolling - Anonymous role upgraded to Editor for Explore access Infrastructure: - Nginx: DNS resolver with variable-based upstream (prevents crash loop) - Workbench port set to 3002 in .env Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
3a80872482
commit
9ef9ef854f
11 changed files with 102 additions and 33 deletions
|
|
@ -175,7 +175,7 @@ services:
|
|||
environment:
|
||||
- GF_SECURITY_ADMIN_PASSWORD=${GF_SECURITY_ADMIN_PASSWORD:-admin}
|
||||
- GF_AUTH_ANONYMOUS_ENABLED=true
|
||||
- GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer
|
||||
- GF_AUTH_ANONYMOUS_ORG_ROLE=Editor
|
||||
- GF_AUTH_DISABLE_LOGIN_FORM=false
|
||||
- GF_USERS_DEFAULT_THEME=dark
|
||||
- GF_EXPLORE_ENABLED=true
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 0 },
|
||||
"gridPos": { "h": 7, "w": 12, "x": 0, "y": 0 },
|
||||
"id": 1,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -92,7 +92,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 },
|
||||
"gridPos": { "h": 7, "w": 12, "x": 12, "y": 0 },
|
||||
"id": 2,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -162,7 +162,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 8 },
|
||||
"gridPos": { "h": 7, "w": 12, "x": 0, "y": 7 },
|
||||
"id": 3,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -230,7 +230,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 8 },
|
||||
"gridPos": { "h": 7, "w": 12, "x": 12, "y": 7 },
|
||||
"id": 4,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -305,6 +305,7 @@
|
|||
"templating": {
|
||||
"list": []
|
||||
},
|
||||
"refresh": "30s",
|
||||
"time": {
|
||||
"from": "now-1h",
|
||||
"to": "now"
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 6, "w": 24, "x": 0, "y": 0 },
|
||||
"gridPos": { "h": 4, "w": 24, "x": 0, "y": 0 },
|
||||
"id": 1,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -74,7 +74,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 6 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 0, "y": 4 },
|
||||
"id": 2,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -131,7 +131,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 6 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 12, "y": 4 },
|
||||
"id": 3,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -195,7 +195,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 24, "x": 0, "y": 14 },
|
||||
"gridPos": { "h": 6, "w": 24, "x": 0, "y": 10 },
|
||||
"id": 4,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -263,6 +263,7 @@
|
|||
"templating": {
|
||||
"list": []
|
||||
},
|
||||
"refresh": "30s",
|
||||
"time": {
|
||||
"from": "now-1h",
|
||||
"to": "now"
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 0 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 0, "y": 0 },
|
||||
"id": 1,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -92,7 +92,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 12, "y": 0 },
|
||||
"id": 2,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -151,7 +151,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 8 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 0, "y": 6 },
|
||||
"id": 3,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -210,7 +210,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 8 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 12, "y": 6 },
|
||||
"id": 4,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -269,7 +269,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 16 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 0, "y": 12 },
|
||||
"id": 5,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -328,7 +328,7 @@
|
|||
"type": "prometheus",
|
||||
"uid": "tg-prometheus"
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 16 },
|
||||
"gridPos": { "h": 6, "w": 12, "x": 12, "y": 12 },
|
||||
"id": 6,
|
||||
"targets": [
|
||||
{
|
||||
|
|
@ -392,6 +392,7 @@
|
|||
"templating": {
|
||||
"list": []
|
||||
},
|
||||
"refresh": "30s",
|
||||
"time": {
|
||||
"from": "now-1h",
|
||||
"to": "now"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue