Devotd Github
NewCoding agents

dualface/kander 285fb4f — Isolating an agent status test that read CI runner settings

The AI coding agent kanban board dualface/kander fixed an agent status-reading test that had been reading the runner's local configuration file as-is and repeatedly failing in CI, by separating it out to a temporary configuration file.

Repositorydualface/kander ↗

The AI coding agent kanban board dualface/kander fixed an agent status-reading test that had been reading the runner's local configuration file as-is and repeatedly failing in CI, by separating it out to a temporary configuration file.

GitHub description: A kanban board for coordinating multiple AI coding agents, with isolated git worktrees and independent reviewer agents.

stars
★ 152
Forks
14
Language
Go
License
MIT
Latest release
v0.9.9
Read original source ↗View on GitHub ↗

dualface/kander is a project that gathers multiple AI coding agents onto a single kanban board to orchestrate them, and assigns each task to an isolated git worktree and an independent review agent. The commit 285fb4f of November 4, 2026 fixed a problem where one of its internal status-reading tests read the settings of the execution machine as-is and therefore kept failing on CI runners. GitHub commit page: https://github.com/dualface/kander/commit/285fb4f2994a2dc6e10dff589179fa8a6ead4cb6

The problem was the TestObserveAgentStatusClassifiesProcessPanes test in internal/liveness/agent_status_test.go. This test verifies the feature that classifies whether an agent is alive on a per-pane (split screen) basis of the terminal, but it read the setting that determines what kind of agent it is directly from the runner's local file (~/.config/kander/config.json). As a result, it fell over with a 'config missing' configuration error both on CI runners that have no configuration file and on personal devices. The commit changed it, in the same way as the other liveness tests, so that the test writes the configuration file directly into a temporary directory it creates itself and passes that path via the environment variable KANDER_CONFIG. The record lists only this test file as modified, with the change limited to 5 insertions and 0 deletions. The commit message still carries a co-authorship credit to Claude Opus 5.5.

That said, this change is only an isolation of the test execution environment; it does not fix product code. The classification results are verified against the configuration file that the test itself creates, so from this commit alone one cannot know how actual user settings affect the judgment boundaries. The actual behavior of the worktree isolation and the separate review agent features described in the repository description, along with performance figures and benchmarks, are also absent from this record. It is close to groundwork that eliminated the failures that had been repeating in CI, and whether any user-visible behavior has changed cannot be judged from this record alone.