@@ -86,8 +86,9 @@ export function getMultiplexer(
8686- Keep it pure mechanism: no pino-session knowledge here.
8787
8888## Acceptance criteria
89- - [x] ` HerdrAdapter.isAvailable() ` returns true inside a herdr environment,
90- false when ` herdr ` is missing.
89+ - [x] ` HerdrAdapter.isAvailable() ` returns true when herdr is reachable and the
90+ configured anchor pane exists, false when ` herdr ` is missing or the anchor
91+ is not usable.
9192- [x] ` spawnPane({cwd, command:'echo hi; sleep 30', label:'pino: test'}) ` creates
9293 a ** new, unfocused** pane running the command; ` paneExists ` is true;
9394 ` setLabel ` shows the label; ` closePane ` removes it and is safe to call twice.
@@ -100,9 +101,11 @@ export function getMultiplexer(
100101 clean.
101102
102103## Decisions (formerly open questions)
103- - ** Anchor pane / workspace:** ` PINO_MUX_ANCHOR ` env or ` config.json ` key
104- ` mux.anchor ` (default ` "pino" ` ). New panes split into that anchor so sessions
105- don't fragment the user's active layout. Callers can override per-host.
104+ - ** Anchor pane:** ` PINO_MUX_ANCHOR ` env or ` config.json ` key ` mux.anchor `
105+ (default ` "pino" ` as a setup label). New panes split from that anchor pane id
106+ so sessions don't fragment the user's active layout. ` HerdrAdapter.isAvailable() `
107+ returns false until the configured anchor appears in ` herdr pane list ` ; callers
108+ can then fall back instead of failing on ` pane_not_found ` .
106109- ** Exec injection:** yes — ` HerdrAdapter ` accepts an optional ` exec ` fn in its
107110 constructor (defaults to ` execFile ` ). Keeps the adapter testable without a real
108111 herdr binary.
0 commit comments