style(ops): Refine Usage Analytics layout with section titles and separators
This commit is contained in:
@@ -25,6 +25,7 @@ separate_tool_calls_panel = false
|
|||||||
bg_shader_enabled = true
|
bg_shader_enabled = true
|
||||||
crt_filter_enabled = false
|
crt_filter_enabled = false
|
||||||
separate_task_dag = false
|
separate_task_dag = false
|
||||||
|
separate_usage_analytics = false
|
||||||
|
|
||||||
[gui.show_windows]
|
[gui.show_windows]
|
||||||
"Context Hub" = true
|
"Context Hub" = true
|
||||||
@@ -32,6 +33,7 @@ separate_task_dag = false
|
|||||||
"AI Settings" = true
|
"AI Settings" = true
|
||||||
"MMA Dashboard" = true
|
"MMA Dashboard" = true
|
||||||
"Task DAG" = false
|
"Task DAG" = false
|
||||||
|
"Usage Analytics" = false
|
||||||
"Tier 1: Strategy" = true
|
"Tier 1: Strategy" = true
|
||||||
"Tier 2: Tech Lead" = true
|
"Tier 2: Tech Lead" = true
|
||||||
"Tier 3: Workers" = true
|
"Tier 3: Workers" = true
|
||||||
|
|||||||
@@ -73,8 +73,8 @@ Collapsed=0
|
|||||||
DockId=0xAFC85805,2
|
DockId=0xAFC85805,2
|
||||||
|
|
||||||
[Window][Theme]
|
[Window][Theme]
|
||||||
Pos=0,1344
|
Pos=0,1164
|
||||||
Size=760,793
|
Size=760,973
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000002,2
|
DockId=0x00000002,2
|
||||||
|
|
||||||
@@ -84,14 +84,14 @@ Size=900,700
|
|||||||
Collapsed=0
|
Collapsed=0
|
||||||
|
|
||||||
[Window][Diagnostics]
|
[Window][Diagnostics]
|
||||||
Pos=2732,32
|
Pos=2719,28
|
||||||
Size=1108,1683
|
Size=1121,1686
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x0000000C,2
|
DockId=0x0000000C,2
|
||||||
|
|
||||||
[Window][Context Hub]
|
[Window][Context Hub]
|
||||||
Pos=0,1344
|
Pos=0,1164
|
||||||
Size=760,793
|
Size=760,973
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000002,1
|
DockId=0x00000002,1
|
||||||
|
|
||||||
@@ -102,26 +102,26 @@ Collapsed=0
|
|||||||
DockId=0x0000000D,0
|
DockId=0x0000000D,0
|
||||||
|
|
||||||
[Window][Discussion Hub]
|
[Window][Discussion Hub]
|
||||||
Pos=1691,32
|
Pos=1606,28
|
||||||
Size=1039,2105
|
Size=1111,2109
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000013,0
|
DockId=0x00000013,0
|
||||||
|
|
||||||
[Window][Operations Hub]
|
[Window][Operations Hub]
|
||||||
Pos=762,32
|
Pos=762,28
|
||||||
Size=927,2105
|
Size=842,2109
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000012,0
|
DockId=0x00000012,0
|
||||||
|
|
||||||
[Window][Files & Media]
|
[Window][Files & Media]
|
||||||
Pos=0,1344
|
Pos=0,1164
|
||||||
Size=760,793
|
Size=760,973
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000002,0
|
DockId=0x00000002,0
|
||||||
|
|
||||||
[Window][AI Settings]
|
[Window][AI Settings]
|
||||||
Pos=0,32
|
Pos=0,28
|
||||||
Size=760,1310
|
Size=760,1134
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000001,0
|
DockId=0x00000001,0
|
||||||
|
|
||||||
@@ -131,14 +131,14 @@ Size=416,325
|
|||||||
Collapsed=0
|
Collapsed=0
|
||||||
|
|
||||||
[Window][MMA Dashboard]
|
[Window][MMA Dashboard]
|
||||||
Pos=2732,32
|
Pos=2719,28
|
||||||
Size=1108,1683
|
Size=1121,1686
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x0000000C,0
|
DockId=0x0000000C,0
|
||||||
|
|
||||||
[Window][Log Management]
|
[Window][Log Management]
|
||||||
Pos=2732,32
|
Pos=2719,28
|
||||||
Size=1108,1683
|
Size=1121,1686
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x0000000C,1
|
DockId=0x0000000C,1
|
||||||
|
|
||||||
@@ -148,26 +148,26 @@ Size=262,209
|
|||||||
Collapsed=0
|
Collapsed=0
|
||||||
|
|
||||||
[Window][Tier 1: Strategy]
|
[Window][Tier 1: Strategy]
|
||||||
Pos=2732,1717
|
Pos=2719,1716
|
||||||
Size=1108,420
|
Size=1121,421
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x0000000F,0
|
DockId=0x0000000F,0
|
||||||
|
|
||||||
[Window][Tier 2: Tech Lead]
|
[Window][Tier 2: Tech Lead]
|
||||||
Pos=2732,1717
|
Pos=2719,1716
|
||||||
Size=1108,420
|
Size=1121,421
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x0000000F,1
|
DockId=0x0000000F,1
|
||||||
|
|
||||||
[Window][Tier 4: QA]
|
[Window][Tier 4: QA]
|
||||||
Pos=2732,1717
|
Pos=2719,1716
|
||||||
Size=1108,420
|
Size=1121,421
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x0000000F,2
|
DockId=0x0000000F,2
|
||||||
|
|
||||||
[Window][Tier 3: Workers]
|
[Window][Tier 3: Workers]
|
||||||
Pos=762,32
|
Pos=762,28
|
||||||
Size=927,2105
|
Size=842,2109
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
DockId=0x00000012,1
|
DockId=0x00000012,1
|
||||||
|
|
||||||
@@ -326,6 +326,11 @@ Pos=786,858
|
|||||||
Size=956,942
|
Size=956,942
|
||||||
Collapsed=0
|
Collapsed=0
|
||||||
|
|
||||||
|
[Window][Task DAG]
|
||||||
|
Pos=1461,823
|
||||||
|
Size=1190,872
|
||||||
|
Collapsed=0
|
||||||
|
|
||||||
[Table][0xFB6E3870,4]
|
[Table][0xFB6E3870,4]
|
||||||
RefScale=13
|
RefScale=13
|
||||||
Column 0 Width=80
|
Column 0 Width=80
|
||||||
@@ -357,11 +362,11 @@ Column 3 Width=20
|
|||||||
Column 4 Weight=1.0000
|
Column 4 Weight=1.0000
|
||||||
|
|
||||||
[Table][0x2A6000B6,4]
|
[Table][0x2A6000B6,4]
|
||||||
RefScale=22
|
RefScale=20
|
||||||
Column 0 Width=66
|
Column 0 Width=60
|
||||||
Column 1 Width=100
|
Column 1 Width=90
|
||||||
Column 2 Weight=1.0000
|
Column 2 Weight=1.0000
|
||||||
Column 3 Width=167
|
Column 3 Width=151
|
||||||
|
|
||||||
[Table][0x8BCC69C7,6]
|
[Table][0x8BCC69C7,6]
|
||||||
RefScale=13
|
RefScale=13
|
||||||
@@ -373,18 +378,18 @@ Column 4 Weight=1.0000
|
|||||||
Column 5 Width=50
|
Column 5 Width=50
|
||||||
|
|
||||||
[Table][0x3751446B,4]
|
[Table][0x3751446B,4]
|
||||||
RefScale=14
|
RefScale=20
|
||||||
Column 0 Width=42
|
Column 0 Width=60
|
||||||
Column 1 Width=64
|
Column 1 Width=91
|
||||||
Column 2 Weight=1.0000
|
Column 2 Weight=1.0000
|
||||||
Column 3 Width=106
|
Column 3 Width=151
|
||||||
|
|
||||||
[Table][0x2C515046,4]
|
[Table][0x2C515046,4]
|
||||||
RefScale=24
|
RefScale=20
|
||||||
Column 0 Width=76
|
Column 0 Width=63
|
||||||
Column 1 Weight=1.0000
|
Column 1 Weight=1.0000
|
||||||
Column 2 Width=183
|
Column 2 Width=152
|
||||||
Column 3 Width=72
|
Column 3 Width=60
|
||||||
|
|
||||||
[Table][0xD99F45C5,4]
|
[Table][0xD99F45C5,4]
|
||||||
Column 0 Sort=0v
|
Column 0 Sort=0v
|
||||||
@@ -405,26 +410,26 @@ Column 1 Width=100
|
|||||||
Column 2 Weight=1.0000
|
Column 2 Weight=1.0000
|
||||||
|
|
||||||
[Table][0xA02D8C87,3]
|
[Table][0xA02D8C87,3]
|
||||||
RefScale=22
|
RefScale=20
|
||||||
Column 0 Width=250
|
Column 0 Width=227
|
||||||
Column 1 Width=165
|
Column 1 Width=150
|
||||||
Column 2 Weight=1.0000
|
Column 2 Weight=1.0000
|
||||||
|
|
||||||
[Docking][Data]
|
[Docking][Data]
|
||||||
DockNode ID=0x00000008 Pos=3125,170 Size=593,1157 Split=Y
|
DockNode ID=0x00000008 Pos=3125,170 Size=593,1157 Split=Y
|
||||||
DockNode ID=0x00000009 Parent=0x00000008 SizeRef=1029,147 Selected=0x0469CA7A
|
DockNode ID=0x00000009 Parent=0x00000008 SizeRef=1029,147 Selected=0x0469CA7A
|
||||||
DockNode ID=0x0000000A Parent=0x00000008 SizeRef=1029,145 Selected=0xDF822E02
|
DockNode ID=0x0000000A Parent=0x00000008 SizeRef=1029,145 Selected=0xDF822E02
|
||||||
DockSpace ID=0xAFC85805 Window=0x079D3A04 Pos=0,32 Size=3840,2105 Split=X
|
DockSpace ID=0xAFC85805 Window=0x079D3A04 Pos=0,28 Size=3840,2109 Split=X
|
||||||
DockNode ID=0x00000003 Parent=0xAFC85805 SizeRef=2730,1183 Split=X
|
DockNode ID=0x00000003 Parent=0xAFC85805 SizeRef=2717,1183 Split=X
|
||||||
DockNode ID=0x0000000B Parent=0x00000003 SizeRef=404,1186 Split=X Selected=0xF4139CA2
|
DockNode ID=0x0000000B Parent=0x00000003 SizeRef=404,1186 Split=X Selected=0xF4139CA2
|
||||||
DockNode ID=0x00000007 Parent=0x0000000B SizeRef=760,858 Split=Y Selected=0x8CA2375C
|
DockNode ID=0x00000007 Parent=0x0000000B SizeRef=760,858 Split=Y Selected=0x8CA2375C
|
||||||
DockNode ID=0x00000001 Parent=0x00000007 SizeRef=824,1310 CentralNode=1 Selected=0x7BD57D6A
|
DockNode ID=0x00000001 Parent=0x00000007 SizeRef=824,1134 CentralNode=1 Selected=0x7BD57D6A
|
||||||
DockNode ID=0x00000002 Parent=0x00000007 SizeRef=824,793 Selected=0x1DCB2623
|
DockNode ID=0x00000002 Parent=0x00000007 SizeRef=824,973 Selected=0x1DCB2623
|
||||||
DockNode ID=0x0000000E Parent=0x0000000B SizeRef=1968,858 Split=X Selected=0x418C7449
|
DockNode ID=0x0000000E Parent=0x0000000B SizeRef=1955,858 Split=X Selected=0x418C7449
|
||||||
DockNode ID=0x00000012 Parent=0x0000000E SizeRef=927,402 Selected=0x418C7449
|
DockNode ID=0x00000012 Parent=0x0000000E SizeRef=842,402 Selected=0x418C7449
|
||||||
DockNode ID=0x00000013 Parent=0x0000000E SizeRef=1039,402 Selected=0x6F2B5B04
|
DockNode ID=0x00000013 Parent=0x0000000E SizeRef=1111,402 Selected=0x6F2B5B04
|
||||||
DockNode ID=0x0000000D Parent=0x00000003 SizeRef=435,1186 Selected=0x363E93D6
|
DockNode ID=0x0000000D Parent=0x00000003 SizeRef=435,1186 Selected=0x363E93D6
|
||||||
DockNode ID=0x00000004 Parent=0xAFC85805 SizeRef=1108,1183 Split=Y Selected=0x3AEC3498
|
DockNode ID=0x00000004 Parent=0xAFC85805 SizeRef=1121,1183 Split=Y Selected=0x3AEC3498
|
||||||
DockNode ID=0x0000000C Parent=0x00000004 SizeRef=1074,1681 Selected=0x3AEC3498
|
DockNode ID=0x0000000C Parent=0x00000004 SizeRef=1074,1681 Selected=0x3AEC3498
|
||||||
DockNode ID=0x0000000F Parent=0x00000004 SizeRef=1074,420 Selected=0xBB346584
|
DockNode ID=0x0000000F Parent=0x00000004 SizeRef=1074,420 Selected=0xBB346584
|
||||||
|
|
||||||
|
|||||||
14
src/gui_2.py
14
src/gui_2.py
@@ -1788,7 +1788,7 @@ def hello():
|
|||||||
|
|
||||||
def _render_token_budget_panel(self) -> None:
|
def _render_token_budget_panel(self) -> None:
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_token_budget_panel")
|
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_token_budget_panel")
|
||||||
imgui.text("Session Telemetry")
|
imgui.text_colored(C_LBL, 'Prompt Utilization')
|
||||||
usage = self.session_usage
|
usage = self.session_usage
|
||||||
total = usage["input_tokens"] + usage["output_tokens"]
|
total = usage["input_tokens"] + usage["output_tokens"]
|
||||||
if total == 0 and usage.get("total_tokens", 0) > 0:
|
if total == 0 and usage.get("total_tokens", 0) > 0:
|
||||||
@@ -1929,9 +1929,8 @@ def hello():
|
|||||||
|
|
||||||
def _render_tool_analytics_panel(self) -> None:
|
def _render_tool_analytics_panel(self) -> None:
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_tool_analytics_panel")
|
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_tool_analytics_panel")
|
||||||
if not imgui.collapsing_header("Tool Usage Analytics"):
|
imgui.text_colored(C_LBL, 'Tool Usage')
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.end_component("_render_tool_analytics_panel")
|
imgui.separator()
|
||||||
return
|
|
||||||
now = time.time()
|
now = time.time()
|
||||||
if not hasattr(self, '_tool_stats_cache_time') or now - self._tool_stats_cache_time > 1.0:
|
if not hasattr(self, '_tool_stats_cache_time') or now - self._tool_stats_cache_time > 1.0:
|
||||||
self._cached_tool_stats = getattr(self.controller, '_tool_stats', {})
|
self._cached_tool_stats = getattr(self.controller, '_tool_stats', {})
|
||||||
@@ -1970,9 +1969,8 @@ def hello():
|
|||||||
|
|
||||||
def _render_session_insights_panel(self) -> None:
|
def _render_session_insights_panel(self) -> None:
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_session_insights_panel")
|
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_session_insights_panel")
|
||||||
if not imgui.collapsing_header("Session Insights"):
|
imgui.text_colored(C_LBL, 'Session Insights')
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.end_component("_render_session_insights_panel")
|
imgui.separator()
|
||||||
return
|
|
||||||
insights = self.controller.get_session_insights()
|
insights = self.controller.get_session_insights()
|
||||||
imgui.text(f"Total Tokens: {insights.get('total_tokens', 0):,}")
|
imgui.text(f"Total Tokens: {insights.get('total_tokens', 0):,}")
|
||||||
imgui.text(f"API Calls: {insights.get('call_count', 0)}")
|
imgui.text(f"API Calls: {insights.get('call_count', 0)}")
|
||||||
@@ -1987,7 +1985,9 @@ def hello():
|
|||||||
def _render_usage_analytics_panel(self) -> None:
|
def _render_usage_analytics_panel(self) -> None:
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_usage_analytics_panel")
|
if self.perf_profiling_enabled: self.perf_monitor.start_component("_render_usage_analytics_panel")
|
||||||
self._render_token_budget_panel()
|
self._render_token_budget_panel()
|
||||||
|
imgui.separator()
|
||||||
self._render_tool_analytics_panel()
|
self._render_tool_analytics_panel()
|
||||||
|
imgui.separator()
|
||||||
self._render_session_insights_panel()
|
self._render_session_insights_panel()
|
||||||
if self.perf_profiling_enabled: self.perf_monitor.end_component("_render_usage_analytics_panel")
|
if self.perf_profiling_enabled: self.perf_monitor.end_component("_render_usage_analytics_panel")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user