@volter/supercode-teams 0.3.131 → 0.3.133

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/live-sessions.mjs CHANGED
@@ -471,10 +471,11 @@ export class LiveSessions extends EventEmitter {
471
471
  entry.pane = this.paneRoots.find((root) => root.pid === entry.pid || (entry.ppid != null && root.pid === entry.ppid))?.pane ?? null;
472
472
  }
473
473
 
474
- /** The daemon pane a Claude session runs in: the tmux pane its registry names, else the pane whose process it is.
475
- * Claude names its pane only from tmux's environment, so on Windows (no tmux) only the pane's process says it. */
474
+ /** The daemon pane a Claude session runs in: the pane whose process it is, as this daemon reads its own panes, else
475
+ * the tmux pane Claude's registry names. The registry is a file any process of this user may write, so the
476
+ * daemon's own reading comes first; on Windows (no tmux) it is the only one. */
476
477
  #claudePane(entry) {
477
- return entry.tmux ?? this.paneRoots.find((root) => root.pid === entry.pid)?.pane ?? null;
478
+ return this.paneRoots.find((root) => root.pid === entry.pid)?.pane ?? entry.tmux ?? null;
478
479
  }
479
480
 
480
481
  /** The daemon's live panes and their root processes (`[{ pane, pid }]`), as the records read them: the panes of the
package/machine.mjs CHANGED
@@ -2112,6 +2112,8 @@ export class TeamsMachine extends MachineCore {
2112
2112
  const launch = this.launches.all().find((entry) => entry.pane === pane);
2113
2113
  const by = launch?.by ?? null;
2114
2114
  if (by === caller) return null;
2115
+ // the session running in the pane acts on its own pane, whoever opened it (it closes itself when its work is done)
2116
+ if (this.live?.sessions().some((live) => live.address === caller && String(live.pane ?? '').split(':')[0] === pane)) return null;
2115
2117
  // A pane that resumes a session is that session's as well: its first starter acts on it as before the resume
2116
2118
  // (t_09a795fd item 18). The starter is the oldest harness launch whose own transcript confirmed it started that
2117
2119
  // session, never a launch row's claim (any caller can launch a program with --session-id S).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volter/supercode-teams",
3
- "version": "0.3.131",
3
+ "version": "0.3.133",
4
4
  "type": "module",
5
5
  "description": "A machine daemon serving this machine's doors, and a local or remote Teams server for shared session discovery, OpenTelemetry ingestion and access to enrolled machines.",
6
6
  "license": "MIT",