groove-dev 0.26.24 → 0.26.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,12 +5,12 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <link rel="icon" type="image/png" href="/favicon.png" />
7
7
  <title>Groove GUI</title>
8
- <script type="module" crossorigin src="/assets/index-OBctC7ty.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-aIPRNYy7.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/vendor-C0HXlhrU.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/reactflow-BQPfi37R.js">
11
11
  <link rel="modulepreload" crossorigin href="/assets/codemirror-BBL3i_JW.js">
12
12
  <link rel="modulepreload" crossorigin href="/assets/xterm--7_ns2zW.js">
13
- <link rel="stylesheet" crossorigin href="/assets/index-D9JZfCf8.css">
13
+ <link rel="stylesheet" crossorigin href="/assets/index-CGFWAGJ6.css">
14
14
  </head>
15
15
  <body>
16
16
  <div id="root"></div>
@@ -195,14 +195,14 @@ const AgentNode = memo(({ data, selected }) => {
195
195
  </div>
196
196
 
197
197
  {/* Context bar */}
198
- <div className="mt-1.5 h-[2px] rounded-sm bg-[#3e4451] overflow-hidden">
198
+ <div className="mt-1.5 h-[2px] rounded-sm overflow-hidden" style={{ background: 'rgba(51, 175, 188, 0.15)' }}>
199
199
  <div
200
200
  className="h-full rounded-sm transition-all duration-700"
201
201
  style={{
202
202
  width: `${Math.max(contextPct, 1)}%`,
203
203
  background: contextPct > 80 ? 'var(--color-danger)'
204
204
  : contextPct > 60 ? 'var(--color-warning)'
205
- : isAlive ? 'var(--color-accent)' : '#3e4451',
205
+ : 'var(--color-accent)',
206
206
  }}
207
207
  />
208
208
  </div>
@@ -223,7 +223,7 @@ function AgentTreeInner() {
223
223
  // First pass: place agents with saved positions
224
224
  const pending = [];
225
225
  agents.forEach((agent, i) => {
226
- const key = agent.id;
226
+ const key = agent.name || agent.id;
227
227
  if (saved[key]) {
228
228
  const pos = saved[key];
229
229
  occupied.add(posKey(pos.x, pos.y));
@@ -376,7 +376,8 @@ function AgentTreeInner() {
376
376
 
377
377
  const onNodeDragStop = useCallback((_e, node) => {
378
378
  const agent = agents.find((a) => a.id === node.id);
379
- const key = node.id === ROOT_ID ? ROOT_ID : node.id;
379
+ // Save by agent name (stable across resumes/rotations) instead of ID (changes each session)
380
+ const key = node.id === ROOT_ID ? ROOT_ID : (agent?.name || node.id);
380
381
  const saved = loadPositions();
381
382
  saved[key] = node.position;
382
383
  savePositions(saved);