sycommon-python-lib 0.2.7a40__tar.gz → 0.2.7a41__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.7a40 → sycommon_python_lib-0.2.7a41}/PKG-INFO +1 -1
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/pyproject.toml +1 -1
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/http_sandbox_backend.py +13 -6
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/minio_sync.py +119 -19
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon_python_lib.egg-info/PKG-INFO +1 -1
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/README.md +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/setup.cfg +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/cli.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/core/console.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/core/models.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/core/project.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/core/utils.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/agent/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/agent/main_agent.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/agent/nodes/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/agent/nodes/example_node.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/agent/states/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/agent/states/agent_state.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/api/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/api/query.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/api/sse/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/api/sse/agent.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/db/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/db/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/db/model/entity.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/db/service.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/model/parse.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/tools/mq.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/.env.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/.gitignore.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/Dockerfile.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/app.yaml.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/client/FileServiceClient.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/model/file_info.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/requirements.txt.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/commands/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/commands/hello.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/pyproject.toml.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/api/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/api/echo.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/api/sse/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/api/sse/echo.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/tools/mq.py.tpl +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/nexus/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/__main__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/acp/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/acp/config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/acp/executor.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/acp/registry.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/acp/server.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/agents/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/agents/factory.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/agents/prompts.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/browser.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/console.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/dom.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/network.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/page_errors.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/performance.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/screenshot.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/client.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/protocol.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/repl.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cli.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/acp_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/cdp_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/chat_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/create_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/evaluate_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/init_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/memory_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/resume_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/rollback_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/run_cmd.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/backend.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/display.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/git_integration.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/llm.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/state.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/evaluate/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/evaluate/api_evaluator.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/compressor.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/full.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/hot.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/warm.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/mode/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/mode/create.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/mode/optimize.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/models/config_models.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/baseline_tests.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/checkpoint.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/convergence.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/diagnosis.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/engine.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/environment.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/experience.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/harness_prompts.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/history.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/optimization_logger.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/pre_validation.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/reward.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/strategy_bandit.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/strategy_generator.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/strategy_prompts.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/simple_chat_agent.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/skills/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/acp/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/acp/client.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/acp/fetch.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/acp/ssh_init.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/acp/tool.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/agent_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/chat_events.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/deep_agent.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/mcp/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/mcp/models.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/mcp/tool_loader.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/middleware/sandbox_path_guard.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/middleware/sensitive_guard.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/middleware/sitecustomize.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/middleware/skill_api_whitelist.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/middleware/skill_wl_check.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/middleware/skill_write_guard.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/multi_agent_team.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/consistent_hash.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/file_ops.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/sandbox_pool.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/sandbox_recovery.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/sandbox/session.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/agent/summarization_utils.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/auth/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/auth/ldap_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/auth/oa_cache.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/auth/oa_crypto.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/auth/oa_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/auth/wecom_ldap_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/ACPAgentConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/Config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/DatabaseConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/ElasticsearchConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/EmbeddingConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/LLMConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/LangfuseConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/MQConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/PgConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/RedisConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/RerankerConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/SentryConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/SkillApiWhitelistConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/XxlJobConfig.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/config/config_change_notifier.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/async_base_db_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/async_database_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/base_db_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/database_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/elasticsearch_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/pg_checkpoint_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/redis_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/resilient_pg_saver.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/database/token_usage_db_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/health/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/health/health_check.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/health/metrics.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/health/ping.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/heartbeat_process/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/heartbeat_process/heartbeat_config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/heartbeat_process/heartbeat_process_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/heartbeat_process/heartbeat_process_worker.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/embedding.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/get_llm.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/llm_logger.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/llm_tokens.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/llm_with_token_tracking.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/native_with_fallback_runnable.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/output_fixing_runnable.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/struct_token.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/sy_langfuse.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/tiktoken_cache/fb374d419588a4632f3f557e76b4b70aebbca790 +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/token_usage_es_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/token_usage_mysql_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/token_utils.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/llm/usage_token.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/async_sql_logger.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/kafka_log.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/log_masker.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/logger_levels.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/logger_wrapper.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/process_logger.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/logging/sql_logger.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/mcp_server/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/mcp_server/server.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/context.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/cors.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/docs.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/exception.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/middleware.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/monitor_memory.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/mq.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/sandbox.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/timeout.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/token_tracking.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/tool_result_truncation.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/middleware/traceid.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/base_http.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/log.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/mcp_server_config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/mqlistener_config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/mqmsg_model.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/mqsend_config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/sandbox.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/sso_user.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/token_usage.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/token_usage_mysql.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/models/xxljob_handler_config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/notice/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/notice/uvicorn_monitor.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/notice/wecom_message.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/process_pool_consumer.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/sentry/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/sentry/sy_sentry.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/services.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/sse/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/sse/event.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/sse/sse.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/example.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/example2.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/feign.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/feign_client.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/nacos_client_base.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/nacos_config_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/nacos_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/nacos_service_registration.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/synacos/param.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/deep_agent_server.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_consistent_hash.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_consumer_loss_rootcause.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_consumer_recovery.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_deep_agent.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_dynamic_max_tokens.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_email.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_encoding_cache.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_fix_verification.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_mcp_server.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_minimax_reasoning.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_mq.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_oa_login.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_queue_priority_fallback.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_real_summarization.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_summarization_config.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_summarization_real.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_summary_leak_e2e.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_upgrade_aio_pika.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_upgrade_langgraph_stream.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tests/test_upgrade_verification.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/async_utils.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/docs.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/env.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/merge_headers.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/snowflake.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/syemail.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/tools/timing.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/xxljob/__init__.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon/xxljob/xxljob_service.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon_python_lib.egg-info/SOURCES.txt +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon_python_lib.egg-info/requires.txt +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_acp_tool.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_asyncio_logging.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_config_change_notifier.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_hotreload_snapshot.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_llm_apikey_contextvar.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_log_masker.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_resilient_pg_saver.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_sandbox_path_guard.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_sensitive_guard.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_simple_chat_agent.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_skill_regex_upgrade.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_skill_write_guard.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_sycli.py +0 -0
- {sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/tests/test_sync_skills_to_sandbox.py +0 -0
|
@@ -467,11 +467,18 @@ class HTTPSandboxBackend(FileOperationsMixin, SandboxBackendProtocol):
|
|
|
467
467
|
import asyncio
|
|
468
468
|
loop = asyncio.new_event_loop()
|
|
469
469
|
try:
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
470
|
+
try:
|
|
471
|
+
# 🔑 restore 任何异常(含 MINIO_RESTORE_MAX_BYTES 字节上限提前结束)
|
|
472
|
+
# 都绝不阻断故障转移切换——这里吞掉异常只记日志,
|
|
473
|
+
# 会话末尾的全量扫描会兜底补齐缺失文件。
|
|
474
|
+
restored = loop.run_until_complete(
|
|
475
|
+
minio.restore_from_minio(self, self._user_id))
|
|
476
|
+
workspace_restored = restored > 0
|
|
477
|
+
SYLogger.info(
|
|
478
|
+
f"[Sandbox] MinIO 恢复完成: {restored} 个文件")
|
|
479
|
+
except Exception as re:
|
|
480
|
+
SYLogger.warning(
|
|
481
|
+
f"[Sandbox] MinIO 恢复异常(不阻断切换): {re}")
|
|
475
482
|
finally:
|
|
476
483
|
# restore_from_minio 复用了共享 backend self,内部经
|
|
477
484
|
# aupload_files -> _get_async_session() 的 loop 不匹配逻辑,
|
|
@@ -494,7 +501,7 @@ class HTTPSandboxBackend(FileOperationsMixin, SandboxBackendProtocol):
|
|
|
494
501
|
loop.close()
|
|
495
502
|
except Exception as e:
|
|
496
503
|
SYLogger.warning(
|
|
497
|
-
f"[Sandbox] MinIO
|
|
504
|
+
f"[Sandbox] MinIO 恢复失败(不阻断切换): {e}")
|
|
498
505
|
|
|
499
506
|
if not workspace_restored:
|
|
500
507
|
SYLogger.info(
|
|
@@ -35,6 +35,12 @@ _RESTORE_GLOBAL_CAP = 100
|
|
|
35
35
|
# 全局信号量惰性创建(绑定到首次调用时的 event loop;单 loop 部署下不变)。
|
|
36
36
|
_RESTORE_DOWNLOAD_SEM: "asyncio.Semaphore | None" = None
|
|
37
37
|
|
|
38
|
+
# restore_from_minio 的单用户总字节上限(OOM 兜底)。
|
|
39
|
+
# 旧实现 gather 所有文件内容进内存后才分批上传,用户 MinIO 里文件多/大时会一次性几 GB 驻留 → OOM。
|
|
40
|
+
# 新实现分批流水线(下 N 个→传 N 个→字节出作用域),同时按 list_objects 的 size 累加,
|
|
41
|
+
# 超过本上限则跳过剩余文件(仅 warning,不报错;会话末尾的全量扫描仍兜底)。
|
|
42
|
+
_MAX_RESTORE_BYTES = int(os.environ.get("MINIO_RESTORE_MAX_BYTES", 4 * 1024 ** 3))
|
|
43
|
+
|
|
38
44
|
|
|
39
45
|
def _get_restore_download_sem() -> "asyncio.Semaphore":
|
|
40
46
|
"""惰性创建全局下载信号量。"""
|
|
@@ -698,9 +704,12 @@ class MinioSyncService(metaclass=SingletonMeta):
|
|
|
698
704
|
|
|
699
705
|
try:
|
|
700
706
|
coro = _run()
|
|
701
|
-
|
|
702
|
-
coro.add_done_callback
|
|
703
|
-
|
|
707
|
+
# 🔑 必须先 ensure_future 拿到 Task 再 add_done_callback——裸 coroutine 没有
|
|
708
|
+
# add_done_callback 方法(旧代码先 coro.add_done_callback 会抛 AttributeError,
|
|
709
|
+
# 而 except RuntimeError 抓不住,导致有 running loop 时直推静默失败)。
|
|
710
|
+
task = asyncio.ensure_future(coro)
|
|
711
|
+
self._background_tasks.add(task)
|
|
712
|
+
task.add_done_callback(self._background_tasks.discard)
|
|
704
713
|
except RuntimeError:
|
|
705
714
|
# 无运行中的事件循环(极少数调用上下文),退化为后台线程兜底
|
|
706
715
|
import threading
|
|
@@ -715,6 +724,66 @@ class MinioSyncService(metaclass=SingletonMeta):
|
|
|
715
724
|
target=_bg, name=f"minio-userpush-{user_id}", daemon=True
|
|
716
725
|
).start()
|
|
717
726
|
|
|
727
|
+
def push_user_files_from_disk(self, user_id: str, files: list[tuple[str, str]]) -> None:
|
|
728
|
+
"""从磁盘文件 fire-and-forget 直推 MinIO(OOM 友好版本)。
|
|
729
|
+
|
|
730
|
+
与 push_user_files_batch 同义,但 files 是 [(相对路径, 本地磁盘绝对路径), ...],
|
|
731
|
+
逐文件【读盘上传】,不在内存里同时持有所有附件的 bytes——企微一条消息多张大图场景下,
|
|
732
|
+
旧 push_user_files_batch 要把所有图 bytes 攒在 list 里直到后台推送结束,内存随附件数线性涨。
|
|
733
|
+
|
|
734
|
+
files 里的相对路径规范化(strip ./ 与前导斜杠)与 push_user_files_batch 一致;
|
|
735
|
+
object_key 复用 make_user_file_key → {user_id}/current/{path}。
|
|
736
|
+
"""
|
|
737
|
+
if not self.is_available():
|
|
738
|
+
return
|
|
739
|
+
# 规范化:(相对路径, 磁盘路径),去掉空值
|
|
740
|
+
norm = []
|
|
741
|
+
for fp, disk in files:
|
|
742
|
+
if not fp or not disk:
|
|
743
|
+
continue
|
|
744
|
+
clean = fp.replace("\\", "/").lstrip("./").lstrip("/")
|
|
745
|
+
if not clean:
|
|
746
|
+
continue
|
|
747
|
+
norm.append((clean, disk))
|
|
748
|
+
if not norm:
|
|
749
|
+
return
|
|
750
|
+
|
|
751
|
+
def _push_sync():
|
|
752
|
+
ok = 0
|
|
753
|
+
for fp, disk in norm:
|
|
754
|
+
try:
|
|
755
|
+
with open(disk, "rb") as f:
|
|
756
|
+
content = f.read()
|
|
757
|
+
object_key = self.make_user_file_key(user_id, fp)
|
|
758
|
+
mt, _ = mimetypes.guess_type(fp)
|
|
759
|
+
if self.upload_bytes(
|
|
760
|
+
object_key, content,
|
|
761
|
+
content_type=mt or "application/octet-stream",
|
|
762
|
+
):
|
|
763
|
+
ok += 1
|
|
764
|
+
# content 随循环迭代出作用域,下一文件前可被 GC
|
|
765
|
+
except Exception as e:
|
|
766
|
+
SYLogger.warning(f"[MinIO] push_from_disk 单文件失败: {fp}, {e}")
|
|
767
|
+
SYLogger.info(f"[MinIO] 用户文件已直推(from-disk): user={user_id}, ok={ok}/{len(norm)}")
|
|
768
|
+
|
|
769
|
+
async def _run():
|
|
770
|
+
try:
|
|
771
|
+
await asyncio.to_thread(_push_sync)
|
|
772
|
+
except Exception as e:
|
|
773
|
+
SYLogger.warning(f"[MinIO] 用户文件直推失败(from-disk): user={user_id}, error={e}")
|
|
774
|
+
|
|
775
|
+
try:
|
|
776
|
+
coro = _run()
|
|
777
|
+
# 🔑 必须先 ensure_future 拿到 Task 再 add_done_callback(裸 coroutine 无该方法)
|
|
778
|
+
task = asyncio.ensure_future(coro)
|
|
779
|
+
self._background_tasks.add(task)
|
|
780
|
+
task.add_done_callback(self._background_tasks.discard)
|
|
781
|
+
except RuntimeError:
|
|
782
|
+
import threading
|
|
783
|
+
threading.Thread(
|
|
784
|
+
target=_push_sync, name=f"minio-diskpush-{user_id}", daemon=True
|
|
785
|
+
).start()
|
|
786
|
+
|
|
718
787
|
# ============== 反向同步(MinIO → 沙箱) ==============
|
|
719
788
|
|
|
720
789
|
async def restore_from_minio(self, sandbox_backend, user_id: str) -> int:
|
|
@@ -778,15 +847,22 @@ class MinioSyncService(metaclass=SingletonMeta):
|
|
|
778
847
|
|
|
779
848
|
SYLogger.info(f"[MinIO] 需恢复 {len(to_restore)} 个文件到沙箱: user={user_id}")
|
|
780
849
|
|
|
781
|
-
# 4.
|
|
850
|
+
# 4. 并发恢复:两层限流 + 分批流水线。
|
|
782
851
|
# - per_user_sem(每次 restore 新建,本用户独享 5 槽):单用户恢复够快;
|
|
783
|
-
# - global_sem(进程级
|
|
852
|
+
# - global_sem(进程级 100 槽):多用户同时恢复时全局封顶,防 N×5 路下载
|
|
784
853
|
# 打满线程池、挤占主请求路径的沙箱操作。
|
|
785
|
-
# 下载协程先抢本用户 5 槽、再抢全局
|
|
854
|
+
# 下载协程先抢本用户 5 槽、再抢全局 100 槽,故实际并发 = min(本用户待下载, 全局剩余)。
|
|
855
|
+
#
|
|
856
|
+
# 🔑 OOM 兜底:旧实现 gather 所有文件内容进 downloaded 列表后才上传,用户文件多/大
|
|
857
|
+
# 一次几 GB 进内存。改为【分批流水线】:下 _RESTORE_PER_USER 个→立即上传→字节出作用域
|
|
858
|
+
# →下一批。同时按 list_objects 的 size 累加 total_bytes_seen,超 _MAX_RESTORE_BYTES 跳过剩余。
|
|
786
859
|
restored = 0
|
|
787
860
|
global_sem = _get_restore_download_sem()
|
|
788
861
|
per_user_sem = asyncio.Semaphore(_RESTORE_PER_USER)
|
|
789
862
|
|
|
863
|
+
# objects[].size 是 list_objects 返回的字节大小,用它预判总量,避免下完才知道超限
|
|
864
|
+
obj_size_map = {o.object_name[len(prefix):]: (o.size or 0) for o in objects}
|
|
865
|
+
|
|
790
866
|
async def _download_one(rel_path: str):
|
|
791
867
|
"""下载单个 MinIO 对象到内存,返回 (沙箱绝对路径, 内容) 或 None。"""
|
|
792
868
|
async with per_user_sem, global_sem:
|
|
@@ -807,19 +883,37 @@ class MinioSyncService(metaclass=SingletonMeta):
|
|
|
807
883
|
SYLogger.warning(f"[MinIO] 下载文件失败: {rel_path}, error: {e}")
|
|
808
884
|
return None
|
|
809
885
|
|
|
810
|
-
#
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
886
|
+
# 分批流水线:下 N 个 → 传 N 个 → 字节随 downloaded/download_results 出作用域释放
|
|
887
|
+
total_bytes_seen = 0
|
|
888
|
+
capped = False
|
|
889
|
+
batch_size = _RESTORE_PER_USER
|
|
890
|
+
idx = 0
|
|
891
|
+
while idx < len(to_restore):
|
|
892
|
+
batch_paths = to_restore[idx:idx + batch_size]
|
|
893
|
+
idx += len(batch_paths)
|
|
894
|
+
|
|
895
|
+
# 字节上限预判:超限则放弃本批及后续(仅 warning,会话末尾全量扫描兜底)
|
|
896
|
+
for rp in batch_paths:
|
|
897
|
+
sz = obj_size_map.get(rp, 0)
|
|
898
|
+
if sz > 0 and total_bytes_seen + sz > _MAX_RESTORE_BYTES:
|
|
899
|
+
remaining = (len(to_restore) - idx) + len(batch_paths)
|
|
900
|
+
SYLogger.warning(
|
|
901
|
+
f"[MinIO] restore 字节上限触发 ({_MAX_RESTORE_BYTES} bytes),"
|
|
902
|
+
f"跳过剩余约 {remaining} 个文件: user={user_id}")
|
|
903
|
+
capped = True
|
|
904
|
+
break
|
|
905
|
+
total_bytes_seen += sz
|
|
906
|
+
if capped:
|
|
907
|
+
break
|
|
908
|
+
|
|
909
|
+
download_results = await asyncio.gather(
|
|
910
|
+
*[_download_one(rp) for rp in batch_paths]
|
|
911
|
+
)
|
|
912
|
+
downloaded = [r for r in download_results if r is not None]
|
|
913
|
+
if not downloaded:
|
|
820
914
|
continue
|
|
821
915
|
try:
|
|
822
|
-
results = await sandbox_backend.aupload_files(
|
|
916
|
+
results = await sandbox_backend.aupload_files(downloaded)
|
|
823
917
|
for r in results:
|
|
824
918
|
if not r.error:
|
|
825
919
|
restored += 1
|
|
@@ -828,7 +922,13 @@ class MinioSyncService(metaclass=SingletonMeta):
|
|
|
828
922
|
f"[MinIO] 上传到沙箱失败: {r.path}, error={r.error}")
|
|
829
923
|
except Exception as e:
|
|
830
924
|
SYLogger.warning(f"[MinIO] 批量上传到沙箱失败: {e}")
|
|
925
|
+
# downloaded / download_results 到此出作用域,下一批前可被 GC
|
|
831
926
|
|
|
832
|
-
|
|
833
|
-
|
|
927
|
+
if capped:
|
|
928
|
+
SYLogger.warning(
|
|
929
|
+
f"[MinIO] 恢复提前结束(字节上限): user={user_id}, "
|
|
930
|
+
f"restored={restored}/{len(to_restore)}")
|
|
931
|
+
else:
|
|
932
|
+
SYLogger.info(
|
|
933
|
+
f"[MinIO] 恢复完成: user={user_id}, restored={restored}/{len(to_restore)}")
|
|
834
934
|
return restored
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/agent/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/.env.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/base/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/cli/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/command/templates/web/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/console.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/dom.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/cdp/capabilities/network.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/chat_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/create_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/evaluate_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/init_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/memory_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/resume_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/commands/rollback_cmd.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/core/git_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/evaluate/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/evaluate/api_evaluator.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/memory/compressor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/models/config_models.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/baseline_tests.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/harness_prompts.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/optimization_logger.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/pre_validation.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/strategy_bandit.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/strategy_generator.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/rl/strategy_prompts.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.7a40 → sycommon_python_lib-0.2.7a41}/src/sycli/simple_chat_agent.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|