[Bug]: agentscope-dataagent fails to start — builderBootstrap throws "requires a non-noop snapshotSpec" (default single-node run)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 76/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Quiet
- Tech stack
- docker, java, spring-boot
- Domain
- backend, distributed-systems
Research direction
Start in agentscope-examples/agents/agentscope-dataagent/src/main/java/io/agentscope/dataagent/web/config/DataAgentConfig.java at builderBootstrap and compare its filesystem configuration with the validation described in HarnessAgent.java and HarnessAgentBuilderSupport.java. Build with the provided Maven command and run the fat jar to verify that the default configuration reaches a web server on :8080; check whether the disabled full-context tests reveal a separate blocker.
Written by the indexing model from the issue text.
Description
Describe the bug
agentscope-examples/agents/agentscope-dataagent fails to start with its default, single-node configuration. The Spring context aborts while creating the builderBootstrap bean (DataAgentConfig): it builds every HarnessAgent with a DockerFilesystemSpec but never opts out of the distributed-sandbox validation, so HarnessAgent.Builder.build() runs validateDistributedSandboxConfig, which throws because DockerFilesystemSpec defaults to a NoopSnapshotSpec.
The process exits ~5s after Starting DataAgentApp, before the web server starts. This is a pure in-JVM bean-initialization validation that runs before any sandbox container is created, so it fails regardless of deployment method (plain java -jar, Docker Compose, …) and regardless of whether a Docker daemon is available (I reproduced it with a healthy Docker daemon present).
In effect, the module README quick-start ("4. Run: java -jar target/agentscope-dataagent-*-exec.jar") does not work as written.
To Reproduce
- Build the module:
mvn -pl agentscope-examples/agents/agentscope-dataagent -am package -DskipTests - Run the fat jar (no extra config required; presence/absence of a Docker daemon makes no difference):
java -jar agentscope-examples/agents/agentscope-dataagent/target/agentscope-dataagent-2.0.0-SNAPSHOT-exec.jar - Startup fails after a few seconds.
Expected behavior
The default single-node configuration should boot to a running web server on :8080 (as the README quick-start implies), or the module should ship a working default sandbox/snapshot configuration so a fresh checkout starts out of the box.
Error messages
ERROR --- [ main] o.s.boot.SpringApplication : Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name
'webhookCallbackController' ...: Unsatisfied dependency expressed through constructor parameter 0:
Error creating bean with name 'builderBootstrap' defined in class path resource
[io/agentscope/dataagent/web/config/DataAgentConfig.class]: Factory method 'builderBootstrap' threw
exception with message: filesystem(SandboxFilesystemSpec) requires a non-noop snapshotSpec to
restore workspace archives across distributed instances. Configure one via
SandboxFilesystemSpec.snapshotSpec(...). For single-node use, opt out via
.sandboxDistributed(SandboxDistributedOptions.builder().requireDistributed(false).build()).
at io.agentscope.dataagent.web.DataAgentApp.main(DataAgentApp.java:40)
...
Caused by: java.lang.IllegalStateException: filesystem(SandboxFilesystemSpec) requires a non-noop
snapshotSpec to restore workspace archives across distributed instances. ... For single-node use,
opt out via .sandboxDistributed(SandboxDistributedOptions.builder().requireDistributed(false).build()).
at io.agentscope.harness.agent.HarnessAgentBuilderSupport.validateDistributedSandboxConfig(HarnessAgentBuilderSupport.java:180)
at io.agentscope.harness.agent.HarnessAgent$Builder.build(HarnessAgent.java:1601)
at io.agentscope.dataagent.runtime.DataAgentBootstrap$Builder.build(DataAgentBootstrap.java:613)
at io.agentscope.dataagent.web.config.DataAgentConfig.builderBootstrap(DataAgentConfig.java:214)
...
Environment (please complete the following information):
- AgentScope-Java Version: 2.0.0-RC1 (also reproduces on current
main; theagentscope-dataagentmodule is identical between thev2.0.0-RC1tag andmain— verified withgit diff v2.0.0-RC1 HEAD -- agentscope-examples/agents/agentscope-dataagent, no differences) - Java Version: 17 (Amazon Corretto 17.0.15)
- OS: macOS (arm64)
Additional context
Root-cause chain:
DataAgentConfig#builderBootstrapconfigures every agent with
new DockerFilesystemSpec().client(sandboxClient).isolationScope(IsolationScope.USER)
(DataAgentConfig.java:208-211) but never calls.sandboxDistributed(...)nor.snapshotSpec(...).DockerFilesystemSpecdefaultssnapshotSpectonew NoopSnapshotSpec()(DockerFilesystemSpec.java:35).- In
HarnessAgent.Builder.build()the validation is skipped only when
sandboxDistributedOptions != null && !requireDistributed(HarnessAgent.java:1597-1603).
SincesandboxDistributed(...)is never set, the validation runs and
validateDistributedSandboxConfigthrows on theNoopSnapshotSpec
(HarnessAgentBuilderSupport.java:177-187).
Suggested fix (matching the exception's own guidance) — for the single-node default, opt out in DataAgentConfig#builderBootstrap:
b.filesystem(new DockerFilesystemSpec().client(sandboxClient).isolationScope(IsolationScope.USER));
b.sandboxDistributed(SandboxDistributedOptions.builder().requireDistributed(false).build());
or configure a non-noop snapshotSpec. (For distributed/HA deployments a real snapshot spec + distributed Session would still be required.)
Possibly related: the module's three full-context @SpringBootTest classes — MarketContributionServiceTest, H2DemoSeedTest, JpaPersistenceIntegrationTest — are currently @Disabled("Pending fix for circular dependency between builderBootstrap and userSandboxRegistry"), so this startup path is not covered by an enabled test. I have not verified whether that circular-dependency issue surfaces after applying the requireDistributed(false) opt-out; it may be a second, related blocker.
A further, separate note for single-container deployments: even once startup is fixed, each per-user workspace is backed by a live Docker sandbox via the default DockerSandboxClient (DataAgentWorkspaceConfig#sandboxClient), so a single container would additionally need access to a Docker daemon (e.g. a mounted /var/run/docker.sock + the docker CLI) — or a non-Docker SandboxClient bean — for the chat/workspace path to work. Happy to open that as a separate issue if useful.
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 127
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from agentscope-ai/agentscope-java
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
agentscope-ai/agentscope-java#3807 ·
Maintainers usually reply within 1 day
-
[Bug]: QdrantStore treats a scheme-less IP location like 127.0.0.1:6334 as a hostnamePossibly taken @littlebird69 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
agentscope-ai/agentscope-java#3800 · 1 comment ·
Maintainers usually reply within 1 day
-
[Bug]:托管会话自动生成的 agentId 包含冒号,正则校验失败导致会话无法执行Possibly taken @Lyin-OTTF claimed this 6 days ago. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
agentscope-ai/agentscope-java#3705 · 1 comment ·
Maintainers usually reply within 1 day
-
[Bug]: SubagentRunIdChainTest times out intermittently on windows-latest (the 10s .block() deadline has only a ~1.5x margin)Possibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
agentscope-ai/agentscope-java#3505 ·
Maintainers usually reply within 1 day
-
[Bug]: ActionObservations.emitSafely swallows event-delivery exception (no message, no stack trace)Possibly taken @amyaxy claimed this 17 days ago. Openbug
Difficulty 1/5 Under an hour Newbie friendliness 88/100
agentscope-ai/agentscope-java#3475 ·
Maintainers usually reply within 1 day
All issues in agentscope-ai/agentscope-java
Similar issues
-
:Search Relevance/Vectors >test-failure needs:risk Team:Search Relevance
Difficulty 2/5 1-3 hours Newbie friendliness 61/100
elastic/elasticsearch#163668 · 3 comments · 1 reaction ·
Maintainers usually reply within 1 day
-
agent:working bug follow-up lane:auto
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Sanne/incus-spawn#1765 · 2 comments ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Mend: dependency security vulnerability untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 63/100
opensearch-project/data-prepper#7219 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day