@volter-ai-dev/supercode-ui 0.1.28 → 0.1.29

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.
package/components.mjs CHANGED
@@ -550,7 +550,7 @@ function readSessions(value) {
550
550
  messages: nullableNumber(row.messages),
551
551
  active: row.active === true,
552
552
  live: row.live === true,
553
- runtimeStatus: row.runtimeStatus === "busy" || row.runtimeStatus === "idle" ? row.runtimeStatus : null
553
+ runtimeStatus: row.runtimeStatus === "running" || row.runtimeStatus === "busy" || row.runtimeStatus === "idle" ? row.runtimeStatus : null
554
554
  }];
555
555
  });
556
556
  }
@@ -688,6 +688,7 @@ function sessionActivity(state, row) {
688
688
  const attention = state.attention.find((item) => item.key === row.key)?.kind;
689
689
  if (attention) return attention;
690
690
  if (row.runtimeStatus === "busy") return "working";
691
+ if (row.runtimeStatus === "running") return "running";
691
692
  if (row.live || row.runtimeStatus === "idle") return "recent";
692
693
  return "idle";
693
694
  }
@@ -745,7 +746,7 @@ function activitySummary(entries) {
745
746
  function canContinueHere(state) {
746
747
  if (state.mode !== "mirror" || state.canSend) return false;
747
748
  const row = state.attached?.key ? state.sessions.find((item) => item.key === state.attached.key) : null;
748
- return state.canResume && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
749
+ return state.canResume && row?.runtimeStatus !== "running" && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
749
750
  }
750
751
  function operationLabel(operation) {
751
752
  if (!operation) return "";
@@ -1092,7 +1093,7 @@ function ContinuationBar({ state, adapter, labels = DEFAULT_LABELS }) {
1092
1093
  if (state.mode !== "mirror" || state.canSend) return null;
1093
1094
  const attached = state.attached;
1094
1095
  const row = attached?.key ? state.sessions.find((item) => item.key === attached.key) : null;
1095
- const activeElsewhere = row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
1096
+ const activeElsewhere = row?.runtimeStatus === "running" || row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
1096
1097
  const resume = canContinueHere(state);
1097
1098
  const join = state.canAttach;
1098
1099
  const branch = state.canBranch;
package/composer.mjs CHANGED
@@ -65,7 +65,7 @@ function harnessDisplayName(id) {
65
65
  function canContinueHere(state) {
66
66
  if (state.mode !== "mirror" || state.canSend) return false;
67
67
  const row = state.attached?.key ? state.sessions.find((item) => item.key === state.attached.key) : null;
68
- return state.canResume && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
68
+ return state.canResume && row?.runtimeStatus !== "running" && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
69
69
  }
70
70
  function isSendKey(event) {
71
71
  return event.key === "Enter" && !event.shiftKey && !event.isComposing;
@@ -252,7 +252,7 @@ function ContinuationBar({ state, adapter, labels = DEFAULT_LABELS }) {
252
252
  if (state.mode !== "mirror" || state.canSend) return null;
253
253
  const attached = state.attached;
254
254
  const row = attached?.key ? state.sessions.find((item) => item.key === attached.key) : null;
255
- const activeElsewhere = row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
255
+ const activeElsewhere = row?.runtimeStatus === "running" || row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
256
256
  const resume = canContinueHere(state);
257
257
  const join = state.canAttach;
258
258
  const branch = state.canBranch;
package/core.mjs CHANGED
@@ -545,7 +545,7 @@ function readSessions(value) {
545
545
  messages: nullableNumber(row.messages),
546
546
  active: row.active === true,
547
547
  live: row.live === true,
548
- runtimeStatus: row.runtimeStatus === 'busy' || row.runtimeStatus === 'idle' ? row.runtimeStatus : null,
548
+ runtimeStatus: row.runtimeStatus === 'running' || row.runtimeStatus === 'busy' || row.runtimeStatus === 'idle' ? row.runtimeStatus : null,
549
549
  }];
550
550
  });
551
551
  }
@@ -729,6 +729,7 @@ export function sessionActivity(state, row) {
729
729
  const attention = state.attention.find((item) => item.key === row.key)?.kind;
730
730
  if (attention) return attention;
731
731
  if (row.runtimeStatus === 'busy') return 'working';
732
+ if (row.runtimeStatus === 'running') return 'running';
732
733
  if (row.live || row.runtimeStatus === 'idle') return 'recent';
733
734
  return 'idle';
734
735
  }
@@ -793,7 +794,7 @@ export function activitySummary(entries) {
793
794
  export function canContinueHere(state) {
794
795
  if (state.mode !== 'mirror' || state.canSend) return false;
795
796
  const row = state.attached?.key ? state.sessions.find((item) => item.key === state.attached.key) : null;
796
- return state.canResume && row?.runtimeStatus !== 'busy' && row?.runtimeStatus !== 'idle';
797
+ return state.canResume && row?.runtimeStatus !== 'running' && row?.runtimeStatus !== 'busy' && row?.runtimeStatus !== 'idle';
797
798
  }
798
799
 
799
800
  export function operationLabel(operation) {
package/embed.mjs CHANGED
@@ -553,7 +553,7 @@ function readSessions(value) {
553
553
  messages: nullableNumber(row.messages),
554
554
  active: row.active === true,
555
555
  live: row.live === true,
556
- runtimeStatus: row.runtimeStatus === "busy" || row.runtimeStatus === "idle" ? row.runtimeStatus : null
556
+ runtimeStatus: row.runtimeStatus === "running" || row.runtimeStatus === "busy" || row.runtimeStatus === "idle" ? row.runtimeStatus : null
557
557
  }];
558
558
  });
559
559
  }
@@ -691,6 +691,7 @@ function sessionActivity(state, row) {
691
691
  const attention = state.attention.find((item) => item.key === row.key)?.kind;
692
692
  if (attention) return attention;
693
693
  if (row.runtimeStatus === "busy") return "working";
694
+ if (row.runtimeStatus === "running") return "running";
694
695
  if (row.live || row.runtimeStatus === "idle") return "recent";
695
696
  return "idle";
696
697
  }
@@ -748,7 +749,7 @@ function activitySummary(entries) {
748
749
  function canContinueHere(state) {
749
750
  if (state.mode !== "mirror" || state.canSend) return false;
750
751
  const row = state.attached?.key ? state.sessions.find((item) => item.key === state.attached.key) : null;
751
- return state.canResume && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
752
+ return state.canResume && row?.runtimeStatus !== "running" && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
752
753
  }
753
754
  function operationLabel(operation) {
754
755
  if (!operation) return "";
@@ -1098,7 +1099,7 @@ function ContinuationBar({ state, adapter, labels = DEFAULT_LABELS }) {
1098
1099
  if (state.mode !== "mirror" || state.canSend) return null;
1099
1100
  const attached = state.attached;
1100
1101
  const row = attached?.key ? state.sessions.find((item) => item.key === attached.key) : null;
1101
- const activeElsewhere = row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
1102
+ const activeElsewhere = row?.runtimeStatus === "running" || row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
1102
1103
  const resume = canContinueHere(state);
1103
1104
  const join = state.canAttach;
1104
1105
  const branch = state.canBranch;
package/index.d.ts CHANGED
@@ -5,7 +5,7 @@ export type UiTone = 'live' | 'warn' | 'dead' | 'off';
5
5
  export type StartupPhase = 'connecting' | 'starting' | 'discovering' | 'ready';
6
6
  export type SessionMode = 'none' | 'control' | 'mirror';
7
7
  export type ControlStrategy = 'start' | 'resume' | 'attach' | 'branch' | 'reduce' | null;
8
- export type SessionActivity = 'idle' | 'recent' | 'working' | 'needs-input' | 'finished' | 'failed' | 'unseen';
8
+ export type SessionActivity = 'idle' | 'recent' | 'running' | 'working' | 'needs-input' | 'finished' | 'failed' | 'unseen';
9
9
 
10
10
  export interface HarnessOption {
11
11
  id: HarnessId;
@@ -28,7 +28,7 @@ export interface SessionRowModel {
28
28
  messages: number | null;
29
29
  active: boolean;
30
30
  live: boolean;
31
- runtimeStatus: 'busy' | 'idle' | null;
31
+ runtimeStatus: 'running' | 'busy' | 'idle' | null;
32
32
  }
33
33
 
34
34
  export interface AttachedSessionModel {
package/messenger.mjs CHANGED
@@ -550,7 +550,7 @@ function readSessions(value) {
550
550
  messages: nullableNumber(row.messages),
551
551
  active: row.active === true,
552
552
  live: row.live === true,
553
- runtimeStatus: row.runtimeStatus === "busy" || row.runtimeStatus === "idle" ? row.runtimeStatus : null
553
+ runtimeStatus: row.runtimeStatus === "running" || row.runtimeStatus === "busy" || row.runtimeStatus === "idle" ? row.runtimeStatus : null
554
554
  }];
555
555
  });
556
556
  }
@@ -688,6 +688,7 @@ function sessionActivity(state, row) {
688
688
  const attention = state.attention.find((item) => item.key === row.key)?.kind;
689
689
  if (attention) return attention;
690
690
  if (row.runtimeStatus === "busy") return "working";
691
+ if (row.runtimeStatus === "running") return "running";
691
692
  if (row.live || row.runtimeStatus === "idle") return "recent";
692
693
  return "idle";
693
694
  }
@@ -745,7 +746,7 @@ function activitySummary(entries) {
745
746
  function canContinueHere(state) {
746
747
  if (state.mode !== "mirror" || state.canSend) return false;
747
748
  const row = state.attached?.key ? state.sessions.find((item) => item.key === state.attached.key) : null;
748
- return state.canResume && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
749
+ return state.canResume && row?.runtimeStatus !== "running" && row?.runtimeStatus !== "busy" && row?.runtimeStatus !== "idle";
749
750
  }
750
751
  function operationLabel(operation) {
751
752
  if (!operation) return "";
@@ -1095,7 +1096,7 @@ function ContinuationBar({ state, adapter, labels = DEFAULT_LABELS }) {
1095
1096
  if (state.mode !== "mirror" || state.canSend) return null;
1096
1097
  const attached = state.attached;
1097
1098
  const row = attached?.key ? state.sessions.find((item) => item.key === attached.key) : null;
1098
- const activeElsewhere = row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
1099
+ const activeElsewhere = row?.runtimeStatus === "running" || row?.runtimeStatus === "busy" || row?.runtimeStatus === "idle";
1099
1100
  const resume = canContinueHere(state);
1100
1101
  const join = state.canAttach;
1101
1102
  const branch = state.canBranch;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volter-ai-dev/supercode-ui",
3
- "version": "0.1.28",
3
+ "version": "0.1.29",
4
4
  "type": "module",
5
5
  "description": "Composable default UI kit for Supercode-powered coding-agent experiences",
6
6
  "exports": {
package/sessions.mjs CHANGED
@@ -72,6 +72,7 @@ function sessionActivity(state, row) {
72
72
  const attention = state.attention.find((item) => item.key === row.key)?.kind;
73
73
  if (attention) return attention;
74
74
  if (row.runtimeStatus === "busy") return "working";
75
+ if (row.runtimeStatus === "running") return "running";
75
76
  if (row.live || row.runtimeStatus === "idle") return "recent";
76
77
  return "idle";
77
78
  }
package/styles.css CHANGED
@@ -74,6 +74,7 @@
74
74
  .scui-logo[data-harness="supercode"] { background:#111923 }
75
75
  .scui-logo > i { position:absolute; right:-5%; bottom:-5%; width:32%; height:32%; border:2px solid var(--scui-bg); border-radius:50%; background:var(--scui-muted) }
76
76
  .scui-logo[data-activity="working"] > i { background:var(--scui-accent); animation:scui-breathe 1.4s ease-in-out infinite }
77
+ .scui-logo[data-activity="running"] > i { background:var(--scui-positive) }
77
78
  .scui-logo[data-activity="needs-input"] > i { background:var(--scui-warning) }
78
79
  .scui-logo[data-activity="failed"] > i { background:var(--scui-danger) }
79
80
  .scui-logo[data-activity="finished"] > i,.scui-logo[data-activity="unseen"] > i { background:var(--scui-positive) }