José Almeida
2779fb24aa
feat(docker): make mock-agent runnable inside Docker for E2E
...
Lay the backend groundwork so the existing mock-agent can run inside
local_docker containers — needed for real-Docker E2E tests that don't
require Anthropic/OpenAI API keys.
Container builder bind-mounts a host mock-agent binary at
/usr/local/bin/mock-agent when KANDEV_MOCK_AGENT_LINUX_BINARY is set
(or build/mock-agent-linux-amd64 sits next to the kandev binary), the
same pattern already used for agentctl. MockAgent.BuildCommand always
resolves via PATH so the same command works on host (E2E PATH includes
bin/) and in containers (mounted at /usr/local/bin/mock-agent).
Mock now declares non-nil empty RemoteAuth so it counts as a
remote-capable agent. The remoteauth catalog includes specs even with
zero methods, and the frontend gating helper treats an empty-method
spec as "no credentials needed" — letting mock-agent pass the
configure-on-executor check that hides uncatalogued agents on remote
executors.
repositoryCloneURL falls back to the local origin remote URL when the
repo has no provider info, so local-only repos with a real remote
(including file:// remotes used in E2E) work on remote executors that
clone inside the container.
Makefile: build-mock-agent-linux target mirrors build-agentctl-linux.
2026-05-04 21:09:39 +01:00
..
2026-04-20 18:52:45 +01:00
2026-05-04 19:30:10 +01:00
2026-02-19 22:18:01 +00:00
2026-05-02 23:01:21 +01:00
2026-03-07 14:53:21 +00:00
2026-05-01 23:50:05 +01:00
2026-03-10 17:30:04 +00:00
2026-05-01 13:27:25 +01:00
2026-02-24 20:33:45 +00:00
2026-04-18 10:32:24 +01:00
2026-04-28 22:23:14 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-04 17:28:04 +01:00
2026-05-04 17:28:04 +01:00
2026-05-04 17:28:04 +01:00
2026-03-30 22:44:10 +01:00
2026-05-02 20:26:42 +01:00
2026-05-01 21:02:41 +01:00
2026-02-21 22:14:56 +00:00
2026-02-23 00:16:37 +00:00
2026-02-19 22:18:01 +00:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 20:26:42 +01:00
2026-05-04 18:53:33 +01:00
2026-05-04 18:53:33 +01:00
2026-04-28 22:23:14 +01:00
2026-05-01 22:32:28 +01:00
2026-05-02 20:26:42 +01:00
2026-05-04 18:53:33 +01:00
2026-05-04 18:53:33 +01:00
2026-05-02 15:19:02 +01:00
2026-05-03 17:32:29 +01:00
2026-05-02 15:19:02 +01:00
2026-03-13 10:44:32 +00:00
2026-02-24 23:01:41 +00:00
2026-05-04 21:08:51 +01:00
2026-02-19 22:18:01 +00:00
2026-05-04 18:53:33 +01:00
2026-04-09 12:49:47 +01:00
2026-04-11 17:43:21 +01:00
2026-02-19 22:18:01 +00:00
2026-04-25 21:42:59 +01:00
2026-04-11 17:43:21 +01:00
2026-04-11 17:43:21 +01:00
2026-03-24 23:38:02 +00:00
2026-03-24 23:38:02 +00:00
2026-02-19 22:18:01 +00:00
2026-02-19 22:18:01 +00:00
2026-04-02 00:08:35 +01:00
2026-04-11 17:43:21 +01:00
2026-04-11 17:43:21 +01:00
2026-02-19 22:18:01 +00:00
2026-03-29 15:33:40 +01:00
2026-02-19 22:18:01 +00:00
2026-03-12 23:22:26 +00:00
2026-03-24 23:38:02 +00:00
2026-04-24 21:31:46 +01:00
2026-04-24 21:31:46 +01:00
2026-05-04 21:09:39 +01:00
2026-05-01 11:00:33 +01:00
2026-04-20 13:44:24 +01:00
2026-05-01 22:32:28 +01:00
2026-05-01 21:02:41 +01:00
2026-05-02 15:19:02 +01:00
2026-03-13 10:44:32 +00:00
2026-04-25 18:21:33 +01:00
2026-04-25 18:21:33 +01:00
2026-03-08 11:03:30 +00:00
2026-05-01 18:01:17 +01:00
2026-05-01 21:02:41 +01:00
2026-05-01 21:02:41 +01:00
2026-05-02 22:25:40 +01:00
2026-05-02 22:25:40 +01:00
2026-05-02 22:25:40 +01:00
2026-05-02 22:25:40 +01:00
2026-05-02 22:25:40 +01:00
2026-05-02 22:25:40 +01:00
2026-03-02 22:47:21 +00:00
2026-04-25 18:40:31 +01:00
2026-03-29 15:33:40 +01:00
2026-05-01 11:00:33 +01:00
2026-04-20 22:31:09 +01:00
2026-04-20 22:31:09 +01:00
2026-05-03 17:32:29 +01:00
2026-02-19 22:18:01 +00:00
2026-05-01 11:00:33 +01:00
2026-04-30 14:05:35 +01:00
2026-02-19 22:18:01 +00:00
2026-04-20 13:44:24 +01:00
2026-03-29 15:33:40 +01:00
2026-04-17 23:20:10 +01:00
2026-02-19 22:18:01 +00:00
2026-03-07 14:53:21 +00:00
2026-04-02 00:08:35 +01:00
2026-04-17 16:46:08 +01:00
2026-05-02 20:26:42 +01:00
2026-05-03 16:15:28 +01:00
2026-04-08 07:55:24 +01:00
2026-04-17 23:20:10 +01:00
2026-05-02 20:26:42 +01:00
2026-02-19 22:18:01 +00:00
2026-03-03 12:41:51 +00:00
2026-05-02 23:01:21 +01:00
2026-05-02 23:01:21 +01:00
2026-02-26 11:26:30 +00:00
2026-05-02 20:26:42 +01:00
2026-05-04 19:20:37 +01:00
2026-04-27 10:22:58 +01:00
2026-04-27 10:22:58 +01:00
2026-04-27 10:22:58 +01:00
2026-04-27 10:22:58 +01:00
2026-04-27 10:22:58 +01:00
2026-04-27 10:22:58 +01:00
2026-02-25 02:10:16 +00:00
2026-05-04 21:08:51 +01:00
2026-05-02 15:19:02 +01:00
2026-04-29 09:56:26 +01:00
2026-05-02 20:26:42 +01:00
2026-05-02 23:01:21 +01:00
2026-02-19 22:18:01 +00:00
2026-04-20 13:44:24 +01:00
2026-05-02 23:01:21 +01:00
2026-05-04 21:08:51 +01:00
2026-03-29 22:27:37 +01:00
2026-05-01 13:27:25 +01:00
2026-04-24 17:14:03 +01:00
2026-05-04 00:53:21 +01:00
2026-05-04 00:53:21 +01:00
2026-05-01 13:27:25 +01:00
2026-05-02 15:19:02 +01:00
2026-04-27 10:22:58 +01:00
2026-05-02 20:26:42 +01:00
2026-04-24 17:14:03 +01:00
2026-03-08 11:03:30 +00:00
2026-02-24 23:01:41 +00:00
2026-04-16 10:14:45 +01:00
2026-02-19 22:18:01 +00:00
2026-02-19 22:18:01 +00:00
2026-05-01 13:27:25 +01:00