sycommon-python-lib 0.2.7a29__tar.gz → 0.2.7a30__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.
Files changed (334) hide show
  1. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/PKG-INFO +1 -1
  2. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/pyproject.toml +1 -1
  3. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/deep_agent.py +114 -30
  4. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon_python_lib.egg-info/PKG-INFO +1 -1
  5. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/README.md +0 -0
  6. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/setup.cfg +0 -0
  7. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/__init__.py +0 -0
  8. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/cli.py +0 -0
  9. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/core/__init__.py +0 -0
  10. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/core/console.py +0 -0
  11. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/core/models.py +0 -0
  12. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/core/project.py +0 -0
  13. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/core/utils.py +0 -0
  14. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/__init__.py +0 -0
  15. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/README.md.tpl +0 -0
  16. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/__init__.py +0 -0
  17. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/agent/__init__.py.tpl +0 -0
  18. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/agent/main_agent.py.tpl +0 -0
  19. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/agent/nodes/__init__.py.tpl +0 -0
  20. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/agent/nodes/example_node.py.tpl +0 -0
  21. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/agent/states/__init__.py.tpl +0 -0
  22. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/agent/states/agent_state.py.tpl +0 -0
  23. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/api/__init__.py.tpl +0 -0
  24. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/api/query.py.tpl +0 -0
  25. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/api/sse/__init__.py.tpl +0 -0
  26. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/api/sse/agent.py.tpl +0 -0
  27. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/app.py.tpl +0 -0
  28. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/client/__init__.py.tpl +0 -0
  29. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/db/__init__.py.tpl +0 -0
  30. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/db/model/__init__.py.tpl +0 -0
  31. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/db/model/entity.py.tpl +0 -0
  32. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/db/service.py.tpl +0 -0
  33. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/model/__init__.py.tpl +0 -0
  34. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/model/parse.py.tpl +0 -0
  35. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/tools/__init__.py.tpl +0 -0
  36. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/agent/tools/mq.py.tpl +0 -0
  37. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/.env.tpl +0 -0
  38. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/.gitignore.tpl +0 -0
  39. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/Dockerfile.tpl +0 -0
  40. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/README.md.tpl +0 -0
  41. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/__init__.py +0 -0
  42. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/app.py.tpl +0 -0
  43. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/app.yaml.tpl +0 -0
  44. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/client/FileServiceClient.py.tpl +0 -0
  45. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/client/__init__.py.tpl +0 -0
  46. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/model/__init__.py.tpl +0 -0
  47. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/model/file_info.py.tpl +0 -0
  48. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/base/requirements.txt.tpl +0 -0
  49. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/README.md.tpl +0 -0
  50. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/__init__.py +0 -0
  51. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/app.py.tpl +0 -0
  52. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/commands/__init__.py.tpl +0 -0
  53. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/commands/hello.py.tpl +0 -0
  54. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/pyproject.toml.tpl +0 -0
  55. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/cli/tools/__init__.py.tpl +0 -0
  56. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/README.md.tpl +0 -0
  57. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/__init__.py +0 -0
  58. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/api/__init__.py.tpl +0 -0
  59. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/api/echo.py.tpl +0 -0
  60. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/api/sse/__init__.py.tpl +0 -0
  61. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/api/sse/echo.py.tpl +0 -0
  62. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/app.py.tpl +0 -0
  63. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/client/__init__.py.tpl +0 -0
  64. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/model/__init__.py.tpl +0 -0
  65. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/tools/__init__.py.tpl +0 -0
  66. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/command/templates/web/tools/mq.py.tpl +0 -0
  67. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/nexus/__init__.py +0 -0
  68. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/__init__.py +0 -0
  69. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/__main__.py +0 -0
  70. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/acp/__init__.py +0 -0
  71. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/acp/config.py +0 -0
  72. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/acp/executor.py +0 -0
  73. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/acp/registry.py +0 -0
  74. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/acp/server.py +0 -0
  75. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/agents/__init__.py +0 -0
  76. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/agents/factory.py +0 -0
  77. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/agents/prompts.py +0 -0
  78. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/__init__.py +0 -0
  79. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/browser.py +0 -0
  80. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/__init__.py +0 -0
  81. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/console.py +0 -0
  82. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/dom.py +0 -0
  83. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/network.py +0 -0
  84. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/page_errors.py +0 -0
  85. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/performance.py +0 -0
  86. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/capabilities/screenshot.py +0 -0
  87. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/client.py +0 -0
  88. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/protocol.py +0 -0
  89. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cdp/repl.py +0 -0
  90. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/cli.py +0 -0
  91. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/__init__.py +0 -0
  92. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/acp_cmd.py +0 -0
  93. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/cdp_cmd.py +0 -0
  94. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/chat_cmd.py +0 -0
  95. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/create_cmd.py +0 -0
  96. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/evaluate_cmd.py +0 -0
  97. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/init_cmd.py +0 -0
  98. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/memory_cmd.py +0 -0
  99. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/resume_cmd.py +0 -0
  100. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/rollback_cmd.py +0 -0
  101. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/commands/run_cmd.py +0 -0
  102. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/__init__.py +0 -0
  103. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/backend.py +0 -0
  104. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/config.py +0 -0
  105. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/display.py +0 -0
  106. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/git_integration.py +0 -0
  107. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/llm.py +0 -0
  108. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/core/state.py +0 -0
  109. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/evaluate/__init__.py +0 -0
  110. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/evaluate/api_evaluator.py +0 -0
  111. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/memory/__init__.py +0 -0
  112. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/memory/compressor.py +0 -0
  113. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/memory/full.py +0 -0
  114. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/memory/hot.py +0 -0
  115. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/memory/manager.py +0 -0
  116. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/memory/warm.py +0 -0
  117. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/mode/__init__.py +0 -0
  118. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/mode/create.py +0 -0
  119. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/mode/optimize.py +0 -0
  120. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/models/__init__.py +0 -0
  121. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/models/config_models.py +0 -0
  122. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/__init__.py +0 -0
  123. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/baseline_tests.py +0 -0
  124. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/checkpoint.py +0 -0
  125. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/convergence.py +0 -0
  126. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/diagnosis.py +0 -0
  127. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/engine.py +0 -0
  128. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/environment.py +0 -0
  129. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/experience.py +0 -0
  130. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/harness_prompts.py +0 -0
  131. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/history.py +0 -0
  132. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/optimization_logger.py +0 -0
  133. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/pre_validation.py +0 -0
  134. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/reward.py +0 -0
  135. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/strategy_bandit.py +0 -0
  136. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/strategy_generator.py +0 -0
  137. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/rl/strategy_prompts.py +0 -0
  138. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/simple_chat_agent.py +0 -0
  139. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycli/skills/__init__.py +0 -0
  140. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/__init__.py +0 -0
  141. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/__init__.py +0 -0
  142. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/acp/__init__.py +0 -0
  143. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/acp/client.py +0 -0
  144. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/acp/fetch.py +0 -0
  145. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/acp/ssh_init.py +0 -0
  146. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/acp/tool.py +0 -0
  147. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/agent_manager.py +0 -0
  148. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/chat_events.py +0 -0
  149. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/mcp/__init__.py +0 -0
  150. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/mcp/models.py +0 -0
  151. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/mcp/tool_loader.py +0 -0
  152. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/middleware/sandbox_path_guard.py +0 -0
  153. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/middleware/sensitive_guard.py +0 -0
  154. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/middleware/sitecustomize.py +0 -0
  155. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/middleware/skill_api_whitelist.py +0 -0
  156. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/middleware/skill_wl_check.py +0 -0
  157. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/middleware/skill_write_guard.py +0 -0
  158. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/multi_agent_team.py +0 -0
  159. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/__init__.py +0 -0
  160. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/consistent_hash.py +0 -0
  161. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/file_ops.py +0 -0
  162. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/http_sandbox_backend.py +0 -0
  163. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/minio_sync.py +0 -0
  164. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/sandbox_pool.py +0 -0
  165. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/sandbox_recovery.py +0 -0
  166. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/sandbox/session.py +0 -0
  167. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/agent/summarization_utils.py +0 -0
  168. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/auth/__init__.py +0 -0
  169. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/auth/ldap_service.py +0 -0
  170. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/auth/oa_cache.py +0 -0
  171. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/auth/oa_crypto.py +0 -0
  172. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/auth/oa_service.py +0 -0
  173. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/auth/wecom_ldap_service.py +0 -0
  174. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/ACPAgentConfig.py +0 -0
  175. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/Config.py +0 -0
  176. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/DatabaseConfig.py +0 -0
  177. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/ElasticsearchConfig.py +0 -0
  178. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/EmbeddingConfig.py +0 -0
  179. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/LLMConfig.py +0 -0
  180. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/LangfuseConfig.py +0 -0
  181. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/MQConfig.py +0 -0
  182. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/PgConfig.py +0 -0
  183. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/RedisConfig.py +0 -0
  184. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/RerankerConfig.py +0 -0
  185. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/SentryConfig.py +0 -0
  186. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/SkillApiWhitelistConfig.py +0 -0
  187. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/XxlJobConfig.py +0 -0
  188. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/__init__.py +0 -0
  189. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/config/config_change_notifier.py +0 -0
  190. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/async_base_db_service.py +0 -0
  191. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/async_database_service.py +0 -0
  192. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/base_db_service.py +0 -0
  193. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/database_service.py +0 -0
  194. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/elasticsearch_service.py +0 -0
  195. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/pg_checkpoint_service.py +0 -0
  196. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/redis_service.py +0 -0
  197. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/resilient_pg_saver.py +0 -0
  198. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/database/token_usage_db_service.py +0 -0
  199. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/health/__init__.py +0 -0
  200. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/health/health_check.py +0 -0
  201. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/health/metrics.py +0 -0
  202. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/health/ping.py +0 -0
  203. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/heartbeat_process/__init__.py +0 -0
  204. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/heartbeat_process/heartbeat_config.py +0 -0
  205. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/heartbeat_process/heartbeat_process_manager.py +0 -0
  206. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/heartbeat_process/heartbeat_process_worker.py +0 -0
  207. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/__init__.py +0 -0
  208. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/embedding.py +0 -0
  209. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/get_llm.py +0 -0
  210. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/llm_logger.py +0 -0
  211. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/llm_tokens.py +0 -0
  212. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/llm_with_token_tracking.py +0 -0
  213. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/native_with_fallback_runnable.py +0 -0
  214. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/output_fixing_runnable.py +0 -0
  215. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/struct_token.py +0 -0
  216. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/sy_langfuse.py +0 -0
  217. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 +0 -0
  218. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/tiktoken_cache/fb374d419588a4632f3f557e76b4b70aebbca790 +0 -0
  219. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/token_usage_es_service.py +0 -0
  220. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/token_usage_mysql_service.py +0 -0
  221. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/token_utils.py +0 -0
  222. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/llm/usage_token.py +0 -0
  223. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/__init__.py +0 -0
  224. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/async_sql_logger.py +0 -0
  225. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/kafka_log.py +0 -0
  226. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/log_masker.py +0 -0
  227. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/logger_levels.py +0 -0
  228. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/logger_wrapper.py +0 -0
  229. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/process_logger.py +0 -0
  230. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/logging/sql_logger.py +0 -0
  231. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/mcp_server/__init__.py +0 -0
  232. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/mcp_server/server.py +0 -0
  233. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/__init__.py +0 -0
  234. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/context.py +0 -0
  235. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/cors.py +0 -0
  236. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/docs.py +0 -0
  237. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/exception.py +0 -0
  238. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/middleware.py +0 -0
  239. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/monitor_memory.py +0 -0
  240. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/mq.py +0 -0
  241. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/sandbox.py +0 -0
  242. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/timeout.py +0 -0
  243. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/token_tracking.py +0 -0
  244. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/tool_result_truncation.py +0 -0
  245. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/middleware/traceid.py +0 -0
  246. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/__init__.py +0 -0
  247. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/base_http.py +0 -0
  248. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/log.py +0 -0
  249. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/mcp_server_config.py +0 -0
  250. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/mqlistener_config.py +0 -0
  251. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/mqmsg_model.py +0 -0
  252. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/mqsend_config.py +0 -0
  253. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/sandbox.py +0 -0
  254. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/sso_user.py +0 -0
  255. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/token_usage.py +0 -0
  256. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/token_usage_mysql.py +0 -0
  257. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/models/xxljob_handler_config.py +0 -0
  258. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/notice/__init__.py +0 -0
  259. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/notice/uvicorn_monitor.py +0 -0
  260. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/notice/wecom_message.py +0 -0
  261. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/process_pool_consumer.py +0 -0
  262. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
  263. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
  264. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
  265. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
  266. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
  267. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
  268. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
  269. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
  270. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/sentry/__init__.py +0 -0
  271. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/sentry/sy_sentry.py +0 -0
  272. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/services.py +0 -0
  273. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/sse/__init__.py +0 -0
  274. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/sse/event.py +0 -0
  275. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/sse/sse.py +0 -0
  276. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/__init__.py +0 -0
  277. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/example.py +0 -0
  278. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/example2.py +0 -0
  279. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/feign.py +0 -0
  280. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/feign_client.py +0 -0
  281. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/nacos_client_base.py +0 -0
  282. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/nacos_config_manager.py +0 -0
  283. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
  284. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/nacos_service.py +0 -0
  285. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
  286. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/nacos_service_registration.py +0 -0
  287. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/synacos/param.py +0 -0
  288. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/deep_agent_server.py +0 -0
  289. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_consistent_hash.py +0 -0
  290. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_consumer_loss_rootcause.py +0 -0
  291. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_consumer_recovery.py +0 -0
  292. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_deep_agent.py +0 -0
  293. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_dynamic_max_tokens.py +0 -0
  294. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_email.py +0 -0
  295. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_encoding_cache.py +0 -0
  296. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_fix_verification.py +0 -0
  297. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_mcp_server.py +0 -0
  298. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_minimax_reasoning.py +0 -0
  299. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_mq.py +0 -0
  300. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_oa_login.py +0 -0
  301. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_queue_priority_fallback.py +0 -0
  302. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_real_summarization.py +0 -0
  303. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_summarization_config.py +0 -0
  304. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_summarization_real.py +0 -0
  305. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tests/test_summary_leak_e2e.py +0 -0
  306. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/__init__.py +0 -0
  307. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/async_utils.py +0 -0
  308. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/docs.py +0 -0
  309. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/env.py +0 -0
  310. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/merge_headers.py +0 -0
  311. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/snowflake.py +0 -0
  312. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/syemail.py +0 -0
  313. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/tools/timing.py +0 -0
  314. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/xxljob/__init__.py +0 -0
  315. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon/xxljob/xxljob_service.py +0 -0
  316. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon_python_lib.egg-info/SOURCES.txt +0 -0
  317. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
  318. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
  319. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon_python_lib.egg-info/requires.txt +0 -0
  320. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
  321. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_acp_tool.py +0 -0
  322. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_asyncio_logging.py +0 -0
  323. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_config_change_notifier.py +0 -0
  324. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_hotreload_snapshot.py +0 -0
  325. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_llm_apikey_contextvar.py +0 -0
  326. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_log_masker.py +0 -0
  327. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_resilient_pg_saver.py +0 -0
  328. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_sandbox_path_guard.py +0 -0
  329. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_sensitive_guard.py +0 -0
  330. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_simple_chat_agent.py +0 -0
  331. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_skill_regex_upgrade.py +0 -0
  332. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_skill_write_guard.py +0 -0
  333. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_sycli.py +0 -0
  334. {sycommon_python_lib-0.2.7a29 → sycommon_python_lib-0.2.7a30}/tests/test_sync_skills_to_sandbox.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sycommon-python-lib
3
- Version: 0.2.7a29
3
+ Version: 0.2.7a30
4
4
  Summary: Add your description here
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sycommon-python-lib"
3
- version = "0.2.7a29"
3
+ version = "0.2.7a30"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -35,6 +35,7 @@
35
35
  """
36
36
 
37
37
  import asyncio
38
+ import hashlib
38
39
  import json
39
40
  import os
40
41
  import re
@@ -1366,6 +1367,79 @@ def _parse_skill_version(content: str) -> str:
1366
1367
  return ""
1367
1368
 
1368
1369
 
1370
+ def _decode_remote_skillmd(content: str) -> str:
1371
+ """把沙箱 /read 返回的 SKILL.md 内容统一解成明文。
1372
+
1373
+ 沙箱 /read 对大文件(如 skill-creator 的 34KB SKILL.md)返回 base64,
1374
+ 且 encoding 标志位可能漏标/误标。判断策略(不依赖 encoding 字段):
1375
+ - 明文 SKILL.md 一定含 frontmatter 标志 `---`;含则当明文直接返回。
1376
+ - 不含 `---` 则当作 base64,解码后返回;解码失败或解码后仍无 `---` 返回原值。
1377
+ """
1378
+ if not content:
1379
+ return content
1380
+ if "---" in content:
1381
+ return content # 明文
1382
+ try:
1383
+ import base64 as _b64
1384
+ decoded = _b64.b64decode(content).decode("utf-8", errors="replace")
1385
+ return decoded
1386
+ except Exception:
1387
+ return content
1388
+
1389
+
1390
+ def _skill_signature(content: str) -> str:
1391
+ """计算 SKILL.md 正文内容的指纹,用于检测「版本号一致但正文未同步」的脏数据。
1392
+
1393
+ 取正文(去掉 frontmatter)的前 N 行规范化后的拼接 + md5,作为轻量指纹。
1394
+ 版本号相同时若指纹不同,说明沙箱里的正文是旧的,需强制重传。
1395
+ frontmatter 跳过逻辑与 _parse_skill_version 一致(逐行数 ---)。
1396
+ """
1397
+ lines = content.split("\n")
1398
+ in_frontmatter = False
1399
+ body_start = 0
1400
+ for i, line in enumerate(lines):
1401
+ if line.strip() == "---":
1402
+ if not in_frontmatter:
1403
+ in_frontmatter = True # 进入 frontmatter
1404
+ else:
1405
+ body_start = i + 1 # 离开 frontmatter,正文从这里开始
1406
+ break
1407
+ body = "\n".join(lines[body_start:])
1408
+ # 规范化:去掉空白行和首尾空格,只取前 40 行做指纹(足够区分新旧大改)
1409
+ norm_lines = [l.rstrip() for l in body.split("\n") if l.strip()]
1410
+ head = "\n".join(norm_lines[:40])
1411
+ return f"{len(norm_lines)}:{hashlib.md5(head.encode('utf-8')).hexdigest()[:12]}"
1412
+
1413
+
1414
+ async def _verify_skill_content_fresh(
1415
+ backend, sandbox_dest: str, skill_name: str, local_src: str
1416
+ ) -> bool:
1417
+ """版本一致时,再校验沙箱 SKILL.md 正文指纹是否与本地一致。
1418
+ 一致返回 True(可跳过同步);不一致返回 False(需强制重传)。
1419
+ 任何读取异常返回 False(保守起见触发重传,宁可多传不可漏传)。"""
1420
+ local_md = os.path.join(local_src, "SKILL.md")
1421
+ if not os.path.isfile(local_md):
1422
+ return True # 本地没 SKILL.md,无法校验,交给版本逻辑
1423
+ try:
1424
+ with open(local_md, "r", encoding="utf-8") as f:
1425
+ local_sig = _skill_signature(f.read())
1426
+ except Exception:
1427
+ return True
1428
+
1429
+ try:
1430
+ remote = await backend.aread(
1431
+ f"{sandbox_dest}/{skill_name}/SKILL.md", _skip_lazy_sync=True)
1432
+ if not remote or not remote.file_data:
1433
+ return False # 读不到 → 当作不一致,触发重传
1434
+ raw = remote.file_data.get("content", "") or ""
1435
+ # 统一用 _decode_remote_skillmd 处理明文/base64 两种返回
1436
+ content = _decode_remote_skillmd(raw)
1437
+ remote_sig = _skill_signature(content)
1438
+ return bool(remote_sig) and local_sig == remote_sig
1439
+ except Exception:
1440
+ return False
1441
+
1442
+
1369
1443
  async def _sync_skills_to_sandbox(
1370
1444
  skills_dir: str,
1371
1445
  backend: HTTPSandboxBackend,
@@ -1424,21 +1498,11 @@ async def _sync_skills_to_sandbox(
1424
1498
  if remote_content and remote_content.file_data:
1425
1499
  # FileData 是 TypedDict(dict), 用键访问而非属性
1426
1500
  content = remote_content.file_data.get("content", "") or ""
1427
- # 优先直接解 version(明文小文件最快);
1428
- # 解不出再兜底解码 base64——沙箱 /read 对大文件(如 skill-creator 的
1429
- # 34KB SKILL.md)返回 base64, encoding 标志位可能漏标/误标,
1430
- # 若依赖该标志位,漏标时会因找不到 "version:" 行误判为"无版本"
1431
- # → 每次新建 Agent 都全量重传。改为「先解 → 解不出再 b64 兜底」,
1432
- # 不依赖 encoding 字段, 对明文/base64 两种返回都正确。
1433
- version = _parse_skill_version(content)
1434
- if version:
1435
- return version
1436
- try:
1437
- import base64 as _b64
1438
- decoded = _b64.b64decode(content).decode("utf-8", errors="replace")
1439
- return _parse_skill_version(decoded)
1440
- except Exception:
1441
- return ""
1501
+ # 沙箱 /read 对大文件(如 skill-creator 的 34KB SKILL.md)返回 base64,
1502
+ # encoding 标志位可能漏标/误标。统一用 _decode_remote_skillmd
1503
+ # 处理明文/base64 两种返回(不依赖 encoding 字段),再解 version。
1504
+ plain = _decode_remote_skillmd(content)
1505
+ return _parse_skill_version(plain)
1442
1506
  except Exception:
1443
1507
  pass
1444
1508
  return ""
@@ -1456,25 +1520,45 @@ async def _sync_skills_to_sandbox(
1456
1520
  remote_version = remote_version_map.get(skill_name, "")
1457
1521
 
1458
1522
  if remote_version and remote_version == local_version:
1459
- SYLogger.debug(
1460
- f"[DeepAgent] 技能版本一致,跳过: {skill_name} v{local_version}")
1461
- backend._synced_skills.add(skill_name)
1462
- skip_count += 1
1463
- continue
1523
+ # 版本一致仍校验正文关键内容,防止"version 字段已更新但正文未同步"
1524
+ # (历史上出现过沙箱 SKILL.md 版本号新、正文旧的脏数据,导致 agent
1525
+ # 永远读不到新版指令)。校验失败则强制走删除+重传。
1526
+ if not await _verify_skill_content_fresh(
1527
+ backend, sandbox_dest, skill_name, src
1528
+ ):
1529
+ SYLogger.warning(
1530
+ f"[DeepAgent] 技能版本一致但正文不一致,强制重传: {skill_name} "
1531
+ f"v{local_version}")
1532
+ # 落到下方的删除+重传分支
1533
+ else:
1534
+ SYLogger.debug(
1535
+ f"[DeepAgent] 技能版本一致,跳过: {skill_name} v{local_version}")
1536
+ backend._synced_skills.add(skill_name)
1537
+ skip_count += 1
1538
+ continue
1464
1539
 
1465
- # 版本不一致或无版本,删除旧目录(走 /delete,跳过懒同步,毫秒级)
1540
+ # 版本不一致或无版本(或正文校验失败),删除旧目录(走 /delete,跳过懒同步,毫秒级)
1466
1541
  if skill_name in existing_dirs:
1467
- try:
1468
- await backend.adelete(
1469
- f"{sandbox_dest}/{skill_name}",
1470
- recursive=True,
1471
- _skip_lazy_sync=True)
1542
+ deleted_ok = False
1543
+ for _attempt in range(2): # 最多重试一次,确保旧内容真删掉
1544
+ try:
1545
+ await backend.adelete(
1546
+ f"{sandbox_dest}/{skill_name}",
1547
+ recursive=True,
1548
+ _skip_lazy_sync=True)
1549
+ deleted_ok = True
1550
+ break
1551
+ except Exception as e:
1552
+ SYLogger.warning(
1553
+ f"[DeepAgent] 删除旧版技能失败(尝试{_attempt+1}): "
1554
+ f"{skill_name}, {e}")
1555
+ if deleted_ok:
1472
1556
  SYLogger.info(
1473
- f"[DeepAgent] 技能版本不一致,覆盖: {skill_name} "
1557
+ f"[DeepAgent] 技能版本不一致,已删除旧目录: {skill_name} "
1474
1558
  f"({remote_version or '无版本'} → {local_version})")
1475
- except Exception as e:
1476
- SYLogger.warning(
1477
- f"[DeepAgent] 删除旧版技能失败: {skill_name}, {e}")
1559
+ else:
1560
+ SYLogger.error(
1561
+ f"[DeepAgent] 删除旧版技能彻底失败,本次跳过: {skill_name}")
1478
1562
 
1479
1563
  # 全量上传整个技能目录到沙箱(batch_upload 服务端无条件覆盖)
1480
1564
  await backend.async_sync_dirs([(src, f"{sandbox_dest}/{skill_name}")])
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sycommon-python-lib
3
- Version: 0.2.7a29
3
+ Version: 0.2.7a30
4
4
  Summary: Add your description here
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown