sycommon-python-lib 0.2.2a4__tar.gz → 0.2.2a6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/PKG-INFO +4 -4
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/pyproject.toml +4 -4
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/file_ops.py +24 -53
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/http_sandbox_backend.py +317 -205
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/sandbox.py +641 -349
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/sandbox.py +91 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon_python_lib.egg-info/PKG-INFO +4 -4
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon_python_lib.egg-info/SOURCES.txt +0 -1
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon_python_lib.egg-info/requires.txt +3 -3
- sycommon_python_lib-0.2.2a4/src/command/templates/__pycache__/__init__.cpython-311.pyc +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/README.md +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/setup.cfg +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/cli.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/core/console.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/core/models.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/core/project.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/core/utils.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/agent/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/agent/main_agent.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/agent/nodes/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/agent/nodes/example_node.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/agent/states/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/agent/states/agent_state.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/api/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/api/query.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/api/sse/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/api/sse/agent.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/db/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/db/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/db/model/entity.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/db/service.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/model/parse.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/agent/tools/mq.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/.env.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/.gitignore.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/Dockerfile.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/app.yaml.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/client/FileServiceClient.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/model/file_info.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/base/requirements.txt.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/commands/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/commands/hello.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/pyproject.toml.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/cli/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/api/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/api/echo.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/api/sse/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/api/sse/echo.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/command/templates/web/tools/mq.py.tpl +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/nexus/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/__main__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/agents/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/agents/factory.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/agents/prompts.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/browser.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/console.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/dom.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/network.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/page_errors.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/performance.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/capabilities/screenshot.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/client.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/protocol.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cdp/repl.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/cli.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/cdp_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/chat_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/create_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/evaluate_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/init_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/memory_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/resume_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/rollback_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/commands/run_cmd.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/backend.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/config.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/display.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/git_integration.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/llm.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/core/state.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/evaluate/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/evaluate/api_evaluator.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/memory/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/memory/compressor.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/memory/full.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/memory/hot.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/memory/manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/memory/warm.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/mode/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/mode/create.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/mode/optimize.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/models/config_models.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/baseline_tests.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/checkpoint.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/convergence.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/diagnosis.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/engine.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/environment.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/experience.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/harness_prompts.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/history.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/optimization_logger.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/pre_validation.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/reward.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/strategy_bandit.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/strategy_generator.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/rl/strategy_prompts.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycli/skills/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/agent_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/chat_events.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/deep_agent.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/multi_agent_team.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/sandbox_pool.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/sandbox_recovery.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/session.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/auth/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/auth/ldap_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/auth/wecom_ldap_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/Config.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/DatabaseConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/ElasticsearchConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/EmbeddingConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/LLMConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/LangfuseConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/MQConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/RedisConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/RerankerConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/SentryConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/XxlJobConfig.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/config/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/async_base_db_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/async_database_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/base_db_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/database_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/elasticsearch_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/redis_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/database/token_usage_db_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/health/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/health/health_check.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/health/metrics.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/health/ping.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/heartbeat_process/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/heartbeat_process/heartbeat_config.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/heartbeat_process/heartbeat_process_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/heartbeat_process/heartbeat_process_worker.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/embedding.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/get_llm.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/llm_logger.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/llm_tokens.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/llm_with_token_tracking.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/native_with_fallback_runnable.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/output_fixing_runnable.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/struct_token.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/sy_langfuse.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/token_usage_es_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/token_usage_mysql_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/llm/usage_token.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/async_sql_logger.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/kafka_log.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/logger_levels.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/logger_wrapper.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/process_logger.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/logging/sql_logger.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/background_execution.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/context.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/cors.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/docs.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/exception.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/middleware.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/monitor_memory.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/mq.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/timeout.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/token_tracking.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/middleware/traceid.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/base_http.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/log.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/mqlistener_config.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/mqmsg_model.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/mqsend_config.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/sso_user.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/token_usage.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/token_usage_mysql.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/models/xxljob_handler_config.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/notice/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/notice/uvicorn_monitor.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/process_pool_consumer.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/sentry/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/sentry/sy_sentry.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/services.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/sse/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/sse/event.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/sse/sse.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/example.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/example2.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/feign.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/feign_client.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/nacos_client_base.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/nacos_config_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/nacos_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/nacos_service_registration.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/synacos/param.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tests/deep_agent_server.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tests/test_deep_agent.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tests/test_email.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tests/test_mq.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/async_utils.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/docs.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/env.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/merge_headers.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/snowflake.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/syemail.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/tools/timing.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/xxljob/__init__.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/xxljob/xxljob_service.py +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
- {sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/tests/test_sycli.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sycommon-python-lib
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2a6
|
|
4
4
|
Summary: Add your description here
|
|
5
5
|
Requires-Python: >=3.11
|
|
6
6
|
Description-Content-Type: text/markdown
|
|
@@ -15,9 +15,9 @@ Requires-Dist: fastapi>=0.136.1
|
|
|
15
15
|
Requires-Dist: jinja2>=3.1.6
|
|
16
16
|
Requires-Dist: kafka-python>=2.3.1
|
|
17
17
|
Requires-Dist: langchain>=1.2.15
|
|
18
|
-
Requires-Dist: langchain-core>=1.3.
|
|
19
|
-
Requires-Dist: langchain-openai>=1.2.
|
|
20
|
-
Requires-Dist: langfuse>=4.5.
|
|
18
|
+
Requires-Dist: langchain-core>=1.3.2
|
|
19
|
+
Requires-Dist: langchain-openai>=1.2.1
|
|
20
|
+
Requires-Dist: langfuse>=4.5.1
|
|
21
21
|
Requires-Dist: langgraph>=1.1.9
|
|
22
22
|
Requires-Dist: langgraph-checkpoint-redis>=0.4.1
|
|
23
23
|
Requires-Dist: ldap3>=2.9.1
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "sycommon-python-lib"
|
|
3
|
-
version = "0.2.
|
|
3
|
+
version = "0.2.2a6"
|
|
4
4
|
description = "Add your description here"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11"
|
|
@@ -16,9 +16,9 @@ dependencies = [
|
|
|
16
16
|
"jinja2>=3.1.6",
|
|
17
17
|
"kafka-python>=2.3.1",
|
|
18
18
|
"langchain>=1.2.15",
|
|
19
|
-
"langchain-core>=1.3.
|
|
20
|
-
"langchain-openai>=1.2.
|
|
21
|
-
"langfuse>=4.5.
|
|
19
|
+
"langchain-core>=1.3.2",
|
|
20
|
+
"langchain-openai>=1.2.1",
|
|
21
|
+
"langfuse>=4.5.1",
|
|
22
22
|
"langgraph>=1.1.9",
|
|
23
23
|
"langgraph-checkpoint-redis>=0.4.1",
|
|
24
24
|
"ldap3>=2.9.1",
|
{sycommon_python_lib-0.2.2a4 → sycommon_python_lib-0.2.2a6}/src/sycommon/agent/sandbox/file_ops.py
RENAMED
|
@@ -149,11 +149,11 @@ class FileOperationsMixin:
|
|
|
149
149
|
def _check_workspace_exists_sync(self: "HTTPSandboxBackend") -> bool:
|
|
150
150
|
"""检查沙箱工作空间是否存在(同步版本)"""
|
|
151
151
|
try:
|
|
152
|
-
self._post_sync(f"{SANDBOX_API_PREFIX}/
|
|
152
|
+
result = self._post_sync(f"{SANDBOX_API_PREFIX}/stat", {
|
|
153
153
|
"path": "/",
|
|
154
154
|
"user_id": self.user_id
|
|
155
155
|
})
|
|
156
|
-
return
|
|
156
|
+
return result.get("exists", False)
|
|
157
157
|
except Exception as e:
|
|
158
158
|
SYLogger.warning(f"[Sandbox] 检查工作空间失败: {e}")
|
|
159
159
|
return False
|
|
@@ -161,11 +161,11 @@ class FileOperationsMixin:
|
|
|
161
161
|
async def _check_workspace_exists_async(self: "HTTPSandboxBackend") -> bool:
|
|
162
162
|
"""检查沙箱工作空间是否存在(异步版本)"""
|
|
163
163
|
try:
|
|
164
|
-
await self._post_async_with_failover(f"{SANDBOX_API_PREFIX}/
|
|
164
|
+
result = await self._post_async_with_failover(f"{SANDBOX_API_PREFIX}/stat", {
|
|
165
165
|
"path": "/",
|
|
166
166
|
"user_id": self.user_id
|
|
167
167
|
})
|
|
168
|
-
return
|
|
168
|
+
return result.get("exists", False)
|
|
169
169
|
except Exception as e:
|
|
170
170
|
SYLogger.warning(f"[Sandbox] 检查工作空间失败: {e}")
|
|
171
171
|
return False
|
|
@@ -184,47 +184,31 @@ class FileOperationsMixin:
|
|
|
184
184
|
"""列出目录内容"""
|
|
185
185
|
try:
|
|
186
186
|
self._ensure_synced_sync()
|
|
187
|
-
print(
|
|
188
|
-
f"[Sandbox-DEBUG] ls() called with path={repr(path)}, user_id={repr(self.user_id)}", flush=True)
|
|
189
187
|
SYLogger.info(f"[Sandbox] 列出目录: {path}")
|
|
190
188
|
result = self._post_sync(f"{SANDBOX_API_PREFIX}/ls", {
|
|
191
189
|
"path": path,
|
|
192
190
|
"user_id": self.user_id
|
|
193
191
|
})
|
|
194
|
-
print(
|
|
195
|
-
f"[Sandbox-DEBUG] ls() raw result type={type(result).__name__}, repr={repr(result)[:500]}", flush=True)
|
|
196
192
|
entries = [FileInfo(**item) for item in result]
|
|
197
|
-
print(
|
|
198
|
-
f"[Sandbox-DEBUG] ls() parsed entries={len(entries)}", flush=True)
|
|
199
193
|
SYLogger.info(f"[Sandbox] 目录内容: {len(entries)} 项")
|
|
200
194
|
return LsResult(entries=entries)
|
|
201
195
|
except Exception as e:
|
|
202
|
-
print(
|
|
203
|
-
f"[Sandbox-DEBUG] ls() EXCEPTION: {type(e).__name__}: {e}", flush=True)
|
|
204
196
|
SYLogger.error(f"[Sandbox] 列出目录失败: {e}")
|
|
205
197
|
return LsResult(error=str(e))
|
|
206
198
|
|
|
207
199
|
async def als(self: "HTTPSandboxBackend", path: str) -> LsResult:
|
|
208
|
-
"""
|
|
200
|
+
"""异步列出目录内容"""
|
|
209
201
|
try:
|
|
210
202
|
await self._ensure_synced_async()
|
|
211
|
-
print(
|
|
212
|
-
f"[Sandbox-DEBUG] als() called with path={repr(path)}, user_id={repr(self.user_id)}, base_url={repr(self._base_url if hasattr(self, '_base_url') else 'N/A')}", flush=True)
|
|
213
203
|
SYLogger.info(f"[Sandbox] 异步列出目录: {path}")
|
|
214
204
|
result = await self._post_async_with_failover(f"{SANDBOX_API_PREFIX}/ls", {
|
|
215
205
|
"path": path,
|
|
216
206
|
"user_id": self.user_id
|
|
217
207
|
})
|
|
218
|
-
print(
|
|
219
|
-
f"[Sandbox-DEBUG] als() raw result type={type(result).__name__}, repr={repr(result)[:500]}", flush=True)
|
|
220
208
|
entries = [FileInfo(**item) for item in result]
|
|
221
|
-
print(
|
|
222
|
-
f"[Sandbox-DEBUG] als() parsed entries={len(entries)}, first 3 paths={[e.get('path','?') if isinstance(e, dict) else getattr(e, 'path','?') for e in entries[:3]]}", flush=True)
|
|
223
209
|
SYLogger.info(f"[Sandbox] 目录内容: {len(entries)} 项")
|
|
224
210
|
return LsResult(entries=entries)
|
|
225
211
|
except Exception as e:
|
|
226
|
-
print(
|
|
227
|
-
f"[Sandbox-DEBUG] als() EXCEPTION: {type(e).__name__}: {e}", flush=True)
|
|
228
212
|
SYLogger.error(f"[Sandbox] 异步列出目录失败: {e}")
|
|
229
213
|
return LsResult(error=str(e))
|
|
230
214
|
|
|
@@ -251,15 +235,11 @@ class FileOperationsMixin:
|
|
|
251
235
|
SYLogger.error(f"[Sandbox] 读取文件失败: {result['error']}")
|
|
252
236
|
return ReadResult(error=result["error"])
|
|
253
237
|
content = result.get("content", "")
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
from datetime import datetime
|
|
257
|
-
now = datetime.now().isoformat()
|
|
238
|
+
encoding = result.get("encoding", "utf-8")
|
|
239
|
+
SYLogger.info(f"[Sandbox] 读取完成: {len(content)} 字符, encoding={encoding}")
|
|
258
240
|
file_data = FileData(
|
|
259
241
|
content=content,
|
|
260
|
-
encoding=
|
|
261
|
-
created_at=result.get("created_at", now),
|
|
262
|
-
modified_at=result.get("modified_at", now),
|
|
242
|
+
encoding=encoding,
|
|
263
243
|
)
|
|
264
244
|
return ReadResult(file_data=file_data)
|
|
265
245
|
except Exception as e:
|
|
@@ -287,14 +267,11 @@ class FileOperationsMixin:
|
|
|
287
267
|
SYLogger.error(f"[Sandbox] 异步读取文件失败: {result['error']}")
|
|
288
268
|
return ReadResult(error=result["error"])
|
|
289
269
|
content = result.get("content", "")
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
now = datetime.now().isoformat()
|
|
270
|
+
encoding = result.get("encoding", "utf-8")
|
|
271
|
+
SYLogger.info(f"[Sandbox] 异步读取完成: {len(content)} 字符, encoding={encoding}")
|
|
293
272
|
file_data = FileData(
|
|
294
273
|
content=content,
|
|
295
|
-
encoding=
|
|
296
|
-
created_at=result.get("created_at", now),
|
|
297
|
-
modified_at=result.get("modified_at", now),
|
|
274
|
+
encoding=encoding,
|
|
298
275
|
)
|
|
299
276
|
return ReadResult(file_data=file_data)
|
|
300
277
|
except Exception as e:
|
|
@@ -602,29 +579,23 @@ class FileOperationsMixin:
|
|
|
602
579
|
# ============== 文件存在检查 ==============
|
|
603
580
|
|
|
604
581
|
async def astat(self: "HTTPSandboxBackend", path: str) -> "StatResult":
|
|
605
|
-
"""
|
|
582
|
+
"""异步检查文件或目录状态(使用 /stat 端点)"""
|
|
606
583
|
try:
|
|
607
584
|
await self._ensure_synced_async()
|
|
608
|
-
SYLogger.info(f"[Sandbox]
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
"
|
|
612
|
-
"user_id": self.user_id,
|
|
613
|
-
"offset": 0,
|
|
614
|
-
"limit": 1,
|
|
585
|
+
SYLogger.info(f"[Sandbox] 异步查询文件状态: {path}")
|
|
586
|
+
result = await self._post_async_with_failover(f"{SANDBOX_API_PREFIX}/stat", {
|
|
587
|
+
"path": path,
|
|
588
|
+
"user_id": self.user_id
|
|
615
589
|
})
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
return StatResult(path=path, exists=True, is_dir=True, size=0)
|
|
624
|
-
|
|
625
|
-
return StatResult(path=path, exists=False)
|
|
590
|
+
return StatResult(
|
|
591
|
+
path=result.get("path", path),
|
|
592
|
+
exists=result.get("exists", False),
|
|
593
|
+
is_dir=result.get("is_dir", False),
|
|
594
|
+
size=result.get("size", 0),
|
|
595
|
+
error=result.get("error")
|
|
596
|
+
)
|
|
626
597
|
except Exception as e:
|
|
627
|
-
SYLogger.error(f"[Sandbox]
|
|
598
|
+
SYLogger.error(f"[Sandbox] 异步查询文件状态异常: {e}")
|
|
628
599
|
return StatResult(path=path, error=str(e))
|
|
629
600
|
|
|
630
601
|
|