Skip to content

fix(harness): preserve explicit sandbox snapshot specs#2363

Open
March-77 wants to merge 2 commits into
agentscope-ai:mainfrom
March-77:agent/preserve-sandbox-snapshot-spec
Open

fix(harness): preserve explicit sandbox snapshot specs#2363
March-77 wants to merge 2 commits into
agentscope-ai:mainfrom
March-77:agent/preserve-sandbox-snapshot-spec

Conversation

@March-77

@March-77 March-77 commented Jul 22, 2026

Copy link
Copy Markdown

AgentScope-Java Version

2.0.1-SNAPSHOT

Description

Background

Filesystem-specific snapshotSpec(...) overrides stored the value only in each subclass. The base SandboxFilesystemSpec.snapshotSpecOverride therefore remained null, allowing HarnessAgent to replace an explicit filesystem snapshot configuration with the DistributedStore default.

Changes

  • Synchronize the base explicit snapshot override from all five production covariant setters: Docker, Daytona, Kubernetes, AgentRun, and E2B.
  • Preserve each subclass's existing snapshot field and fluent return type.
  • Add a harness regression test proving an explicit LocalSnapshotSpec takes precedence over a distributed store's NoopSnapshotSpec.
  • Add module-local regression tests for AgentRun, Daytona, E2B, and Kubernetes so each covariant setter is directly covered.

Fixes #2254

Testing

Passed:

mvn -pl agentscope-harness -Dtest=HarnessAgentDistributedSandboxTest test
mvn -pl agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-daytona,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-kubernetes,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-agentrun,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-e2b test
mvn -pl agentscope-harness,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-daytona,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-kubernetes,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-agentrun,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-e2b spotless:check
mvn -pl agentscope-harness,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-daytona,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-kubernetes,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-agentrun,agentscope-extensions/agentscope-extensions-sandbox/agentscope-extensions-sandbox-e2b -DskipTests package

The four extension modules now pass 52 tests in total (24 Kubernetes, 17 AgentRun, 1 Daytona, and 10 E2B).

A full agentscope-harness module test run executed 649 tests with 0 assertion failures, but Maven reported 5 unrelated Windows JUnit temporary-directory cleanup errors (DirectoryNotEmptyException).

Checklist

Please check the following items before code is ready to be reviewed.

  • Code has been formatted with mvn spotless:apply
  • All tests are passing (mvn test)
  • Javadoc comments are complete and follow project conventions (no new public API; inherited method documentation remains applicable)
  • Related documentation has been updated (not applicable; no documented behavior or API surface changed)
  • Code is ready for review (opened as a draft)

@CLAassistant

CLAassistant commented Jul 22, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@codecov

codecov Bot commented Jul 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@March-77
March-77 marked this pull request as ready for review July 23, 2026 03:36
@oss-maintainer

Copy link
Copy Markdown
Collaborator

CLA Not Signed

The Contributor License Agreement (CLA) check is currently pending on this PR (license/cla: Contributor License Agreement is not signed yet.). This PR cannot be merged until the CLA is signed.

@March-77 please sign the CLA via the CLA assistant badge in the comment above, or visit https://cla-assistant.io/agentscope-ai/agentscope-java. Once signed, the license/cla status will turn green.


Automated check by github-manager-bot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: filesystem重写snapshotSpec不生效

3 participants