mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-06 07:29:42 +02:00
fix(statusline): unset a stale user statusline var, write the exporter script atomically
Three small follow-ups from the #361 review. A tmux setenv survives respawn-pane, so _configureStatusLineUserCommand returning early when the user has no statusline left a previously exported CODEMAN_USER_STATUSLINE_CMD in place: a user who deleted their own statusline kept getting the stale one wrapped, and lost Codeman's footer print-through, until the tmux session was recreated. It now issues `setenv -u` in that case, the same shape as the effort-level cleanup in applyEnvOverrides. ensureStatusLineExporterScript truncated and rewrote a script that live sessions execute on every statusline render, and chmod'd it after the write. It now writes a temp file next to the target, chmods that, and rename()s it into place. The non-tmux direct-PTY fallback carries no exporter; that is now stated at the spawn site and in the architecture-invariants paragraph rather than left as a silent gap. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
+6
-1
@@ -2174,7 +2174,12 @@ export class Session extends EventEmitter {
|
||||
}
|
||||
try {
|
||||
// Pass --session-id to use the SAME ID as the Codeman session
|
||||
// This ensures subagents can be directly matched to the correct tab
|
||||
// This ensures subagents can be directly matched to the correct tab.
|
||||
// No plan-usage statusLine exporter on this path: the ephemeral
|
||||
// `--settings` injection (resolveStatusLineCliCommand, hooks-config.ts)
|
||||
// is wired into the tmux spawn builders only, so a direct-PTY session
|
||||
// has no Claude telemetry in the header chip. Documented in
|
||||
// architecture-invariants (Plan-usage chip); tmux is the supported path.
|
||||
const args = buildInteractiveArgs(
|
||||
this.id,
|
||||
this._claudeMode,
|
||||
|
||||
Reference in New Issue
Block a user