don't know how to build these paths: /nix/store/a95k0410p8i4i2afmbs4q7mzaas524g3-check-agent-deck.drv warning: ignoring the client-specified setting 'store', because it is a restricted setting and you are not a trusted user building '/nix/store/lv67akvdd7yi049w7h6nhrqc56xabkni-agent-deck-1.16.38.drv' on farm.numtide.com:50051 agent-deck-1.16.38> bld1: building lv67akvdd7yi049w7h6nhrqc56xabkni-agent-deck-1.16.38.drv agent-deck-1.16.38> Using versionCheckHook agent-deck-1.16.38> Running phase: unpackPhase agent-deck-1.16.38> unpacking source archive /nix/store/ydyrbfssgjvfj74wmgimpzia6izxz6di-source agent-deck-1.16.38> source root is source agent-deck-1.16.38> Running phase: patchPhase agent-deck-1.16.38> patching script interpreter paths in internal/provider/testdata/fake-provider.sh agent-deck-1.16.38> internal/provider/testdata/fake-provider.sh: interpreter directive changed from "#!/bin/sh" to "/nix/store/nnm9gdr70ihc6zc9298mzz8jpcgaciql-bash-5.3p20/bin/sh" agent-deck-1.16.38> Running phase: updateAutotoolsGnuConfigScriptsPhase agent-deck-1.16.38> Running phase: configurePhase agent-deck-1.16.38> Running phase: buildPhase agent-deck-1.16.38> Building subPackage ./cmd/agent-deck agent-deck-1.16.38> buildPhase completed in 44 seconds agent-deck-1.16.38> Running phase: checkPhase agent-deck-1.16.38> patching script interpreter paths in cmd/agent-deck/testdata/fake-az-connect examples/providers/azure-vm/provider agent-deck-1.16.38> cmd/agent-deck/testdata/fake-az-connect/az: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/nnm9gdr70ihc6zc9298mzz8jpcgaciql-bash-5.3p20/bin/bash" agent-deck-1.16.38> examples/providers/azure-vm/provider: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/nnm9gdr70ihc6zc9298mzz8jpcgaciql-bash-5.3p20/bin/bash" agent-deck-1.16.38> 2026/11/10 10:30:34 WARN codex_hook_status_unreadable instance=partial path=/tmp/nix-PcTR0G/TestWriteCodexHookStatus_PartialPriorFailsClosed516039184/001/.local/share/agent-deck/hooks/partial.json bytes=10 agent-deck-1.16.38> Codex notify hook installed successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestCodexHooksInstallUninstall1157270655/001/.codex/config.toml agent-deck-1.16.38> Codex notify hook removed successfully. agent-deck-1.16.38> Codex notify hook upgraded successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestCodexHooksInstall_UpgradesLegacyTableWithoutMarkers3311051831/001/.codex/config.toml agent-deck-1.16.38> Codex notify hook upgraded successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestCodexHooksInstall_UpgradesLegacyMarkerBlock530564585/001/.codex/config.toml agent-deck-1.16.38> Codex notify hook upgraded successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestCodexHooksInstall_ReplacesBlockInPlaceAndKeepsMode2941045941/001/.codex/config.toml agent-deck-1.16.38> Codex notify hook removed successfully. agent-deck-1.16.38> Error reading codex config: open /tmp/nix-PcTR0G/TestCodexHooksInstall_UnreadableConfigIsNotOverwritten616992912/001/.codex/config.toml: permission denied agent-deck-1.16.38> Error writing codex config: open /tmp/nix-PcTR0G/TestCodexHooksInstall_ReadOnlyConfigIsNotReplaced2542523377/001/.codex/config.toml: permission denied agent-deck-1.16.38> Codex notify hook upgraded successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestCodexHooksUninstall_KeepsLineEndingscrlf4135395441/001/.codex/config.toml agent-deck-1.16.38> Codex notify hook removed successfully. agent-deck-1.16.38> Codex notify hook upgraded successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestCodexHooksUninstall_KeepsLineEndingsno_final_newline1432517591/001/.codex/config.toml agent-deck-1.16.38> Codex notify hook removed successfully. agent-deck-1.16.38> Error: the agent-deck notify block in /tmp/nix-PcTR0G/TestCodexHooksInstall_BlockBelowTableIsRefusedprofiles.work1327488762/001/.codex/config.toml sits below a [table], where notify belongs to that table. agent-deck-1.16.38> Move the block above every table, or remove it and rerun 'agent-deck codex-hooks install'. agent-deck-1.16.38> Error: the agent-deck notify block in /tmp/nix-PcTR0G/TestCodexHooksInstall_BlockBelowTableIsRefusedprofiles.qa,wes3915589018/001/.codex/config.toml sits below a [table], where notify belongs to that table. agent-deck-1.16.38> Move the block above every table, or remove it and rerun 'agent-deck codex-hooks install'. agent-deck-1.16.38> Error: the agent-deck notify block in /tmp/nix-PcTR0G/TestCodexHooksInstall_BlockBelowTableIsRefused_hooks_._a=b1177757133/001/.codex/config.toml sits below a [table], where notify belongs to that table. agent-deck-1.16.38> Move the block above every table, or remove it and rerun 'agent-deck codex-hooks install'. agent-deck-1.16.38> agent-deck: CLAUDE_CONFIG_DIR="/tmp/nix-PcTR0G/TestEventProfileUsesStorageFallbackForMissingInference2488934267/001/.claude-ghost" would select profile "ghost", which does not exist; falling back to profile "work" instead of creating it. Known profiles: none yet. Pass -p/--profile or set AGENTDECK_PROFILE explicitly to pick a different profile, run `agent-deck profile create ghost` if you intend to create it, or unset CLAUDE_CONFIG_DIR to use the default profile. agent-deck-1.16.38> Gemini hooks installed successfully. agent-deck-1.16.38> Config: /tmp/nix-PcTR0G/TestGeminiHooksInstallUninstall1263944650/001/.gemini/settings.json agent-deck-1.16.38> Gemini hooks removed successfully. agent-deck-1.16.38> ✓ Reordered group 'Beta': position 1 → 0 agent-deck-1.16.38> ✓ Reordered group 'Beta': position 1 → 2 agent-deck-1.16.38> ✓ Reordered group 'Gamma': position 2 → 0 agent-deck-1.16.38> ✓ Reordered group 'Alpha': position 0 → 0 agent-deck-1.16.38> ✓ Reordered group 'Gamma': position 2 → 2 agent-deck-1.16.38> ✓ Reordered group 'Alpha': position 0 → 2 agent-deck-1.16.38> agentpaths: resolved agent-deck path under the real home (/tmp/nix-4kN3Ts/.config/agent-deck); this touches REAL user data. If this is a test, it is NOT sandboxed; call testutil.IsolateHome() in TestMain and run with a temp HOME+XDG (2026-06-04 data-loss incident, S4). agent-deck-1.16.38> WARNING: no notify-daemon running; completions are not being recorded, so an empty drain or 0 done does not mean nothing finished. Start one with `agent-deck notify-daemon` (`agent-deck conductor setup` installs it as a service). agent-deck-1.16.38> WARNING: no notify-daemon running; completions are not being recorded, so an empty drain or 0 done does not mean nothing finished. Start one with `agent-deck notify-daemon` (`agent-deck conductor setup` installs it as a service). agent-deck-1.16.38> agent-deck: CLAUDE_CONFIG_DIR="/tmp/nix-PcTR0G/TestIssue2740_WatcherCommandsUseTheResolvedProfileCLAUDE_CONFIG484699718/001/.claude-ghost" would select profile "ghost", which does not exist; falling back to profile "work" instead of creating it. Known profiles: none yet. Pass -p/--profile or set AGENTDECK_PROFILE explicitly to pick a different profile, run `agent-deck profile create ghost` if you intend to create it, or unset CLAUDE_CONFIG_DIR to use the default profile. agent-deck-1.16.38> agent-deck: CLAUDE_CONFIG_DIR="/tmp/nix-PcTR0G/TestIssue2740_WatcherCommandsUseTheResolvedProfileCLAUDE_CONFIG484699718/001/.claude-ghost" would select profile "ghost", which does not exist; falling back to profile "work" instead of creating it. Known profiles: work. Pass -p/--profile or set AGENTDECK_PROFILE explicitly to pick a different profile, run `agent-deck profile create ghost` if you intend to create it, or unset CLAUDE_CONFIG_DIR to use the default profile. agent-deck-1.16.38> agent-deck: CLAUDE_CONFIG_DIR="/tmp/nix-PcTR0G/TestIssue2740_WatcherCommandsUseTheResolvedProfileCLAUDE_CONFIG484699718/001/.claude-ghost" would select profile "ghost", which does not exist; falling back to profile "work" instead of creating it. Known profiles: work. Pass -p/--profile or set AGENTDECK_PROFILE explicitly to pick a different profile, run `agent-deck profile create ghost` if you intend to create it, or unset CLAUDE_CONFIG_DIR to use the default profile. agent-deck-1.16.38> notify-daemon: binary upgraded (running 1.16.38, on-disk 1.16.38-next); recycling agent-deck-1.16.38> notify-daemon: binary upgraded (running 1.16.38, on-disk 1.16.38-next); recycling agent-deck-1.16.38> Waiting for the sandbox provider to clean up (press Ctrl-C again to quit now)... agent-deck-1.16.38> Waiting for the sandbox provider to clean up (press Ctrl-C again to quit now)... agent-deck-1.16.38> Waiting for the sandbox provider to clean up (press Ctrl-C again to quit now)... agent-deck-1.16.38> remote-agent: probe: storage gone agent-deck-1.16.38> remote-agent: binary upgraded (running v1.16.38); exiting so the controller reconnects agent-deck-1.16.38> remote-agent: probe produced no listing (Error: database is locked) agent-deck-1.16.38> remote-agent: probe produced no listing ([]) agent-deck-1.16.38> remote-agent: no input for 300ms, exiting agent-deck-1.16.38> remote-agent: the host now selects another profile; exiting so the controller reconnects agent-deck-1.16.38> agent-deck-1.16.38> ═══ Remote: offline (a@offline) ═══ agent-deck-1.16.38> – Skipped: agent-deck not found on remote or host unreachable agent-deck-1.16.38> agent-deck-1.16.38> ═══ Remote: offline (a@offline) ═══ agent-deck-1.16.38> ✗ Failed: stub: no platform agent-deck-1.16.38> A remote sweep is already running on this controller (pid 29224, started 10:32AM); waiting for it... agent-deck-1.16.38> agent-deck-1.16.38> ═══ Remote: lab (a@lab) ═══ agent-deck-1.16.38> – Skipped: sweep already in progress, remote lab is being updated by 29224 agent-deck-1.16.38> agent-deck-1.16.38> ═══ Remote: other (a@other) ═══ agent-deck-1.16.38> ✓ Up to date (v1.16.0) agent-deck-1.16.38> agent-deck-1.16.38> ═══ Remote: lab (a@lab) ═══ agent-deck-1.16.38> ✓ Up to date (v1.16.0) agent-deck-1.16.38> agent-deck-1.16.38> ═══ Remote: other (a@other) ═══ agent-deck-1.16.38> ✓ Up to date (v1.16.0) agent-deck-1.16.38> Warning: the session restarted, but its new tmux name could not be recorded: record restart outcome for tmux session "agentdeck_cli-restart-target_8b860b20": record restart outcome for "dc93f536-1794306756": instance row not found agent-deck-1.16.38> The session is running; agent-deck may show it as errored until the name is saved. agent-deck-1.16.38> Handed switch-account of self to a detached agent-deck (pid 999): it targets the session this command runs in, whose restart ends this pane. Output: /tmp/x.log. Check the result with `agent-deck session show 002b93c2-1794306781` once the session is back. agent-deck-1.16.38> Warning: output freshness timeout (300ms) — response may be stale agent-deck-1.16.38> Warning: output freshness timeout (300ms) — response may be stale agent-deck-1.16.38> Warning: output freshness timeout (300ms) — response may be stale agent-deck-1.16.38> --- FAIL: TestSwitchSettle_FakeClaudePane_TrustPromptDrawnInTwoSteps (4.43s) agent-deck-1.16.38> testing.go:1619: TempDir RemoveAll cleanup: unlinkat /tmp/nix-PcTR0G/TestSwitchSettle_FakeClaudePane_TrustPromptDrawnInTwoSteps2080754642/002: directory not empty agent-deck-1.16.38> Launch agent re-registration deferred: a remote sweep (pid 12345, started 10:33:45) is still running agent-deck-1.16.38> Imported 2 channel(s) agent-deck-1.16.38> C0AABSF5GKD -> si-bugs/watcher.toml agent-deck-1.16.38> C1BBCDF6HLE -> feat-req/watcher.toml agent-deck-1.16.38> agent-deck-1.16.38> Note: Set the ntfy topic in each watcher.toml (all Slack channels agent-deck-1.16.38> share one ntfy topic from the Cloudflare Worker). agent-deck-1.16.38> Clients written to: /tmp/nix-PcTR0G/TestImportChannels_EndToEnd648066468/002/clients.json agent-deck-1.16.38> Imported 1 channel(s) agent-deck-1.16.38> C0AABSF5GKD -> si-bugs/watcher.toml agent-deck-1.16.38> agent-deck-1.16.38> Note: Set the ntfy topic in each watcher.toml (all Slack channels agent-deck-1.16.38> share one ntfy topic from the Cloudflare Worker). agent-deck-1.16.38> Clients written to: /tmp/nix-PcTR0G/TestImportChannels_Idempotent1344417716/002/clients.json agent-deck-1.16.38> Imported 1 channel(s) agent-deck-1.16.38> C0AABSF5GKD -> si-bugs/watcher.toml agent-deck-1.16.38> agent-deck-1.16.38> Note: Set the ntfy topic in each watcher.toml (all Slack channels agent-deck-1.16.38> share one ntfy topic from the Cloudflare Worker). agent-deck-1.16.38> Clients written to: /tmp/nix-PcTR0G/TestImportChannels_Idempotent1344417716/002/clients.json agent-deck-1.16.38> Imported 0 channel(s) agent-deck-1.16.38> Clients written to: /tmp/nix-PcTR0G/TestImportChannels_EmptyChannels1333367354/002/clients.json agent-deck-1.16.38> Installed skill: watcher-creator -> /tmp/nix-PcTR0G/TestWatcherInstallSkill3075617013/001/xdg-config/agent-deck/skills/pool/watcher-creator agent-deck-1.16.38> Installed skill: watcher-creator -> /tmp/nix-PcTR0G/TestWatcherInstallSkill_DirMode2748950450/001/xdg-config/agent-deck/skills/pool/watcher-creator agent-deck-1.16.38> Created watcher: create-topic-ntfy (type: ntfy) agent-deck-1.16.38> Warning: ntfy watcher: this topic is easy to guess and the public server https://ntfy.sh has no access token set, so anyone who guesses the topic can read its events and inject fake ones. Fix one of: use a random topic (agent-deck watcher create ntfy --name --random-topic); set an access token ($NTFY_TOKEN or --token-file with chmod 600, or token = "..." under [source] in watcher.toml); or use your own ntfy server (--server https://ntfy.example.com, or server = "..." under [source]). agent-deck-1.16.38> Created watcher: create-topic-slack (type: slack) agent-deck-1.16.38> Warning: slack watcher: this topic is easy to guess and the public server https://ntfy.sh has no access token set, so anyone who guesses the topic can read its events and inject fake ones. Fix one of: use a random topic (agent-deck watcher create slack --name --random-topic); set an access token ($NTFY_TOKEN or --token-file with chmod 600, or token = "..." under [source] in watcher.toml); or use your own ntfy server (--server https://ntfy.example.com, or server = "..." under [source]). agent-deck-1.16.38> Usage: agent-deck watcher [args] agent-deck-1.16.38> agent-deck-1.16.38> Watchers listen for inbound events (webhooks, push notifications, agent-deck-1.16.38> GitHub events, Slack messages) and route them to conductor sessions agent-deck-1.16.38> so your running agents can act on them automatically. agent-deck-1.16.38> agent-deck-1.16.38> Commands: agent-deck-1.16.38> create --name Create a new watcher (types: webhook, ntfy, github, slack) agent-deck-1.16.38> start Mark a watcher as running (run by the profile's watcher engine) agent-deck-1.16.38> stop Mark a watcher as stopped agent-deck-1.16.38> reload [--json] Apply watcher and clients.json changes to the running engine now agent-deck-1.16.38> list [--json] List all watchers with status and event rate agent-deck-1.16.38> status [--json] Show watcher info, recent events and events not delivered yet agent-deck-1.16.38> test Route a synthetic event to verify routing config agent-deck-1.16.38> routes [--json] Show all routing rules from clients.json agent-deck-1.16.38> import Migrate bash issue-watcher channels.json to Go watcher config agent-deck-1.16.38> install-skill Install a skill to ~/config/agent-deck/skills/pool (e.g. watcher-creator) agent-deck-1.16.38> agent-deck-1.16.38> Examples (one per adapter type): agent-deck-1.16.38> agent-deck-1.16.38> # Generic HTTP webhook on 127.0.0.1:9000. Requests must be signed with a agent-deck-1.16.38> # secret: generated and stored in its watcher.toml unless given by agent-deck-1.16.38> # $WEBHOOK_SECRET or --secret-file (chmod 600): agent-deck-1.16.38> agent-deck watcher create webhook --name my-webhook --port 9000 agent-deck-1.16.38> agent-deck-1.16.38> # GitHub repository webhook with HMAC-SHA256 verification agent-deck-1.16.38> # Secret comes from the environment or a chmod-600 file, never a CLI arg: agent-deck-1.16.38> GITHUB_WEBHOOK_SECRET=... agent-deck watcher create github --name gh-alerts agent-deck-1.16.38> agent-deck watcher create github --name gh-alerts --secret-file ~/.gh-webhook-secret agent-deck-1.16.38> agent-deck-1.16.38> # ntfy push-notification topic. On the public https://ntfy.sh anyone who agent-deck-1.16.38> # knows the topic can read and post to it, so use a random topic: agent-deck-1.16.38> agent-deck watcher create ntfy --name phone-alerts --random-topic agent-deck-1.16.38> # or an access-protected topic on your own ntfy server (token from the agent-deck-1.16.38> # environment or a chmod-600 file, never a CLI arg): agent-deck-1.16.38> NTFY_TOKEN=... agent-deck watcher create ntfy --name phone-alerts \ agent-deck-1.16.38> --server https://ntfy.example.com --topic phone-alerts agent-deck-1.16.38> agent-deck-1.16.38> # Slack-bridged via ntfy topic (see skill for Cloudflare Worker setup) agent-deck-1.16.38> agent-deck watcher create slack --name team-slack --random-topic agent-deck-1.16.38> agent-deck-1.16.38> After creating, activate and inspect: agent-deck-1.16.38> agent-deck watcher start agent-deck-1.16.38> agent-deck watcher list # see health + events/hour agent-deck-1.16.38> agent-deck watcher test # fire a synthetic event agent-deck-1.16.38> agent-deck-1.16.38> Routing: edit ~/data/agent-deck/watcher/clients.json to pick which agent-deck-1.16.38> conductor / group receives events. See `agent-deck watcher routes` for agent-deck-1.16.38> the currently-loaded rules across all watchers. agent-deck-1.16.38> agent-deck-1.16.38> Conversational setup (recommended for first-time use): agent-deck-1.16.38> agent-deck watcher install-skill watcher-creator agent-deck-1.16.38> # Then inside Claude Code in an agent-deck session, ask: agent-deck-1.16.38> # "Use the watcher-creator skill to set up a GitHub watcher" agent-deck-1.16.38> agent-deck-1.16.38> Full reference: https://github.com/asheshgoplani/agent-deck#watchers agent-deck-1.16.38> No routing rules configured. agent-deck-1.16.38> No watchers configured. agent-deck-1.16.38> Run 'agent-deck watcher create --name ' to create one. agent-deck-1.16.38> Installed skill: watcher-creator -> /tmp/nix-PcTR0G/TestXDGTask6_WatcherInstallSkillUsesConfiguredPoolPath1948530612/001/xdg-config/agent-deck/skills/pool/watcher-creator agent-deck-1.16.38> FAIL agent-deck-1.16.38> FAIL github.com/asheshgoplani/agent-deck/cmd/agent-deck 270.192s agent-deck-1.16.38> FAIL error: dependency 'lv67akvdd7yi049w7h6nhrqc56xabkni-agent-deck-1.16.38.drv' failed