langbot-plugin 0.6.8__tar.gz → 0.6.9__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 (371) hide show
  1. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/PKG-INFO +1 -1
  2. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/pyproject.toml +1 -1
  3. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/mgr.py +30 -6
  4. langbot_plugin-0.6.9/src/langbot_plugin/version.py +1 -0
  5. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/packaging/test_release_metadata.py +2 -2
  6. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_installation_manager.py +16 -0
  7. langbot_plugin-0.6.8/src/langbot_plugin/version.py +0 -1
  8. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/.github/workflows/cla.yml +0 -0
  9. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/.github/workflows/publish-pypi.yaml +0 -0
  10. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/.github/workflows/publish.yml +0 -0
  11. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/.github/workflows/test.yml +0 -0
  12. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/.gitignore +0 -0
  13. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/.python-version +0 -0
  14. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/AGENTS.md +0 -0
  15. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/ARCHITECTURE.md +0 -0
  16. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/CLAUDE.md +0 -0
  17. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/CONTRIBUTING.md +0 -0
  18. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/LICENSE +0 -0
  19. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/README.md +0 -0
  20. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/README_CN.md +0 -0
  21. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/data/.env.example +0 -0
  22. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/Message.md +0 -0
  23. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/PluginPages.md +0 -0
  24. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/agent-runner-interactions.md +0 -0
  25. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/agent-runner-pluginization/PROTOCOL_V1.md +0 -0
  26. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/agent-runner-pluginization/README.md +0 -0
  27. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/agent-runner-pluginization/SDK_RUNTIME_PLAN.md +0 -0
  28. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/certified-plugins.md +0 -0
  29. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/communication/apis/lb2rt.md +0 -0
  30. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/communication/runtime_plugin.md +0 -0
  31. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/dependency-management.md +0 -0
  32. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/langbot-plugin-social.png +0 -0
  33. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/docs/runner.md +0 -0
  34. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/mypy.ini +0 -0
  35. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/scripts/check_action_consistency.py +0 -0
  36. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/scripts/runtime_resource_probe.py +0 -0
  37. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/__init__.py +0 -0
  38. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/__init__.py +0 -0
  39. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/__init__.py +0 -0
  40. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/asset_gateway.py +0 -0
  41. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/daemon.py +0 -0
  42. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/decorators.py +0 -0
  43. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/external_tools.py +0 -0
  44. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/mcp_access.py +0 -0
  45. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/mcp_bridge.py +0 -0
  46. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/mcp_config.py +0 -0
  47. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/mcp_protocol.py +0 -0
  48. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/agent_tools/mcp_stdio.py +0 -0
  49. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/__init__.py +0 -0
  50. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/abstract/__init__.py +0 -0
  51. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/abstract/platform/__init__.py +0 -0
  52. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/abstract/platform/adapter.py +0 -0
  53. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/abstract/platform/event_logger.py +0 -0
  54. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/__init__.py +0 -0
  55. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/base.py +0 -0
  56. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/command/__init__.py +0 -0
  57. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/command/command.py +0 -0
  58. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/common/__init__.py +0 -0
  59. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/common/event_listener.py +0 -0
  60. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/knowledge_engine/__init__.py +0 -0
  61. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/knowledge_engine/engine.py +0 -0
  62. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/manifest.py +0 -0
  63. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/page/__init__.py +0 -0
  64. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/parser/__init__.py +0 -0
  65. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/parser/parser.py +0 -0
  66. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/runner/__init__.py +0 -0
  67. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/runner/runner.py +0 -0
  68. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/tool/__init__.py +0 -0
  69. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/components/tool/tool.py +0 -0
  70. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/definition/plugin.py +0 -0
  71. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/__init__.py +0 -0
  72. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/__init__.py +0 -0
  73. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/command/__init__.py +0 -0
  74. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/command/context.py +0 -0
  75. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/command/errors.py +0 -0
  76. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/pipeline/__init__.py +0 -0
  77. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/pipeline/query.py +0 -0
  78. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/platform/__init__.py +0 -0
  79. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/platform/entities.py +0 -0
  80. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/platform/errors.py +0 -0
  81. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/platform/events.py +0 -0
  82. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/platform/logger.py +0 -0
  83. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/platform/message.py +0 -0
  84. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/provider/__init__.py +0 -0
  85. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/provider/message.py +0 -0
  86. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/provider/prompt.py +0 -0
  87. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/provider/reasoning.py +0 -0
  88. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/provider/session.py +0 -0
  89. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/rag/__init__.py +0 -0
  90. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/rag/context.py +0 -0
  91. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/rag/enums.py +0 -0
  92. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/rag/errors.py +0 -0
  93. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/rag/models.py +0 -0
  94. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/resource/__init__.py +0 -0
  95. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/resource/tool.py +0 -0
  96. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/__init__.py +0 -0
  97. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/box.py +0 -0
  98. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/capabilities.py +0 -0
  99. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/compat.py +0 -0
  100. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/context.py +0 -0
  101. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/context_access.py +0 -0
  102. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/delivery.py +0 -0
  103. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/errors.py +0 -0
  104. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/event.py +0 -0
  105. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/input.py +0 -0
  106. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/interaction.py +0 -0
  107. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/manifest.py +0 -0
  108. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/page_results.py +0 -0
  109. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/permissions.py +0 -0
  110. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/resources.py +0 -0
  111. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/result.py +0 -0
  112. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/run_ledger.py +0 -0
  113. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/runtime.py +0 -0
  114. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/runtime_registry.py +0 -0
  115. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/state.py +0 -0
  116. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/stats.py +0 -0
  117. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/steering.py +0 -0
  118. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/transcript.py +0 -0
  119. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/builtin/runner/trigger.py +0 -0
  120. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/context.py +0 -0
  121. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/events.py +0 -0
  122. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/entities/execution.py +0 -0
  123. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/__init__.py +0 -0
  124. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/base.py +0 -0
  125. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/event_context.py +0 -0
  126. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/execute_context.py +0 -0
  127. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/invocation.py +0 -0
  128. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/langbot_api.py +0 -0
  129. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/query_based_api.py +0 -0
  130. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/__init__.py +0 -0
  131. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/admin.py +0 -0
  132. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/api.py +0 -0
  133. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/box.py +0 -0
  134. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/common.py +0 -0
  135. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/context.py +0 -0
  136. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/ledger.py +0 -0
  137. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/platform.py +0 -0
  138. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/reply_stream.py +0 -0
  139. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/resources.py +0 -0
  140. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/state.py +0 -0
  141. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/api/proxies/runner/tracing.py +0 -0
  142. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/__init__.py +0 -0
  143. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/langbot-page-sdk.js +0 -0
  144. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/.env.example.example +0 -0
  145. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/.github/workflows/release.yml.example +0 -0
  146. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/.gitignore.example +0 -0
  147. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/.vscode/launch.json.example +0 -0
  148. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/README.md.example +0 -0
  149. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/__init__.py +0 -0
  150. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/assets/icon.svg.example +0 -0
  151. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/__init__.py +0 -0
  152. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/commands/__init__.py +0 -0
  153. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/commands/{cmd_name}.py.example +0 -0
  154. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/commands/{cmd_name}.yaml.example +0 -0
  155. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/event_listener/__init__.py +0 -0
  156. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/event_listener/default.py.example +0 -0
  157. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/event_listener/default.yaml.example +0 -0
  158. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/knowledge_engine/__init__.py +0 -0
  159. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/knowledge_engine/{knowledge_engine_name}.py.example +0 -0
  160. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/knowledge_engine/{knowledge_engine_name}.yaml.example +0 -0
  161. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/pages/{page_name}.html.example +0 -0
  162. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/pages/{page_name}.yaml.example +0 -0
  163. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/parser/__init__.py +0 -0
  164. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/parser/{parser_name}.py.example +0 -0
  165. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/parser/{parser_name}.yaml.example +0 -0
  166. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/runner/__init__.py +0 -0
  167. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/runner/{runner_name}.py.example +0 -0
  168. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/runner/{runner_name}.yaml.example +0 -0
  169. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/tools/__init__.py +0 -0
  170. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/tools/{tool_name}.py.example +0 -0
  171. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/components/tools/{tool_name}.yaml.example +0 -0
  172. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/main.py.example +0 -0
  173. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/manifest.yaml.example +0 -0
  174. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/readme/README_zh_Hans.md.example +0 -0
  175. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/assets/templates/requirements.txt.example +0 -0
  176. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/__init__.py +0 -0
  177. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/actions.py +0 -0
  178. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/backend.py +0 -0
  179. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/client.py +0 -0
  180. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/e2b_backend.py +0 -0
  181. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/errors.py +0 -0
  182. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/host_backend.py +0 -0
  183. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/models.py +0 -0
  184. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/nsjail_backend.py +0 -0
  185. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/runtime.py +0 -0
  186. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/security.py +0 -0
  187. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/server.py +0 -0
  188. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/skill_store.py +0 -0
  189. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/box/tenancy.py +0 -0
  190. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/certification.py +0 -0
  191. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/__init__.py +0 -0
  192. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/__main__.py +0 -0
  193. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/__init__.py +0 -0
  194. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/buildplugin.py +0 -0
  195. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/gencomponent.py +0 -0
  196. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/initplugin.py +0 -0
  197. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/login.py +0 -0
  198. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/logout.py +0 -0
  199. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/publish.py +0 -0
  200. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/commands/runplugin.py +0 -0
  201. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/gen/__init__.py +0 -0
  202. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/gen/renderer.py +0 -0
  203. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/i18n.py +0 -0
  204. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/__init__.py +0 -0
  205. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/en_US.py +0 -0
  206. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/es_ES.py +0 -0
  207. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/ja_JP.py +0 -0
  208. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/th_TH.py +0 -0
  209. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/vi_VN.py +0 -0
  210. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/zh_Hans.py +0 -0
  211. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/locales/zh_Hant.py +0 -0
  212. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/run/__init__.py +0 -0
  213. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/run/controller.py +0 -0
  214. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/run/handler.py +0 -0
  215. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/run/hotreload.py +0 -0
  216. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/utils/__init__.py +0 -0
  217. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/utils/cloudsv.py +0 -0
  218. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/utils/form.py +0 -0
  219. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/cli/utils/page_components.py +0 -0
  220. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/__init__.py +0 -0
  221. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/__init__.py +0 -0
  222. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/actions/__init__.py +0 -0
  223. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/actions/enums.py +0 -0
  224. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/context.py +0 -0
  225. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/errors.py +0 -0
  226. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/req.py +0 -0
  227. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/io/resp.py +0 -0
  228. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/entities/marketplace.py +0 -0
  229. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/LICENSE +0 -0
  230. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/README.md +0 -0
  231. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/__init__.py +0 -0
  232. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/app.py +0 -0
  233. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/bounded_executor.py +0 -0
  234. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/context.py +0 -0
  235. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/event_loop_monitor.py +0 -0
  236. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/helper/__init__.py +0 -0
  237. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/helper/marketplace.py +0 -0
  238. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/helper/pkgmgr.py +0 -0
  239. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/__init__.py +0 -0
  240. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/connection.py +0 -0
  241. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/connections/__init__.py +0 -0
  242. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/connections/stdio.py +0 -0
  243. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/connections/ws.py +0 -0
  244. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controller.py +0 -0
  245. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/__init__.py +0 -0
  246. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/stdio/__init__.py +0 -0
  247. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/stdio/client.py +0 -0
  248. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/stdio/server.py +0 -0
  249. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/ws/__init__.py +0 -0
  250. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/ws/client.py +0 -0
  251. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/controllers/ws/server.py +0 -0
  252. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/handler.py +0 -0
  253. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/handlers/__init__.py +0 -0
  254. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/handlers/control.py +0 -0
  255. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/io/handlers/plugin.py +0 -0
  256. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/__init__.py +0 -0
  257. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/artifact.py +0 -0
  258. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/container.py +0 -0
  259. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/dependency_environment.py +0 -0
  260. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/logbuffer.py +0 -0
  261. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/restart_coordinator.py +0 -0
  262. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/runner_service.py +0 -0
  263. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/plugin/worker_launcher.py +0 -0
  264. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/security.py +0 -0
  265. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/runtime/settings.py +0 -0
  266. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/storage.py +0 -0
  267. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/__init__.py +0 -0
  268. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/deadline.py +0 -0
  269. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/discover/__init__.py +0 -0
  270. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/discover/engine.py +0 -0
  271. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/importutil.py +0 -0
  272. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/log.py +0 -0
  273. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/src/langbot_plugin/utils/platform.py +0 -0
  274. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/__init__.py +0 -0
  275. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/definition/components/test_components.py +0 -0
  276. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/definition/components/test_imports.py +0 -0
  277. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/definition/test_manifest.py +0 -0
  278. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/runner/test_context_result.py +0 -0
  279. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/runner/test_history_event_entities.py +0 -0
  280. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/runner/test_interaction.py +0 -0
  281. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/runner/test_run_ledger_entities.py +0 -0
  282. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/test_command_context.py +0 -0
  283. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/test_platform_logger.py +0 -0
  284. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/test_provider_message.py +0 -0
  285. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/builtin/test_rag_models.py +0 -0
  286. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/test_context.py +0 -0
  287. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/entities/test_events.py +0 -0
  288. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/__init__.py +0 -0
  289. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_agent_run_api_proxy.py +0 -0
  290. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_base.py +0 -0
  291. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_box_api.py +0 -0
  292. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_history_event_api_proxy.py +0 -0
  293. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_langbot_api.py +0 -0
  294. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_query_based_api.py +0 -0
  295. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/proxies/test_reasoning_parameter.py +0 -0
  296. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/test_agent_tools_mcp_bridge.py +0 -0
  297. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/test_runner_handlers.py +0 -0
  298. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/test_runner_handlers_matrix.py +0 -0
  299. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/api/test_runner_public_apis.py +0 -0
  300. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/__init__.py +0 -0
  301. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_admission.py +0 -0
  302. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_backend.py +0 -0
  303. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_backend_selection.py +0 -0
  304. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_client.py +0 -0
  305. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_e2b_backend.py +0 -0
  306. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_host_backend.py +0 -0
  307. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_nsjail_backend.py +0 -0
  308. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_runtime.py +0 -0
  309. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_server.py +0 -0
  310. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_skill_store.py +0 -0
  311. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/box/test_storage_analysis.py +0 -0
  312. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/run/test_controller.py +0 -0
  313. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/run/test_hotreload.py +0 -0
  314. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/run/test_runtime_handler.py +0 -0
  315. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_buildplugin.py +0 -0
  316. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_gencomponent.py +0 -0
  317. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_i18n_form.py +0 -0
  318. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_initplugin.py +0 -0
  319. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_login.py +0 -0
  320. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_logout_publish.py +0 -0
  321. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_page_components.py +0 -0
  322. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_renderer.py +0 -0
  323. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_runner_usages.py +0 -0
  324. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/cli/test_runplugin.py +0 -0
  325. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/e2e/standalone_runtime_eba_probe.py +0 -0
  326. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/entities/io/test_dependency_errors.py +0 -0
  327. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/entities/io/test_protocol.py +0 -0
  328. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/fixtures/eba_event_probe_plugin/.gitignore +0 -0
  329. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/fixtures/eba_event_probe_plugin/assets/icon.svg +0 -0
  330. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/fixtures/eba_event_probe_plugin/components/event_listener/default.py +0 -0
  331. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/fixtures/eba_event_probe_plugin/components/event_listener/default.yaml +0 -0
  332. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/fixtures/eba_event_probe_plugin/main.py +0 -0
  333. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/fixtures/eba_event_probe_plugin/manifest.yaml +0 -0
  334. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/helpers/__init__.py +0 -0
  335. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/helpers/protocol.py +0 -0
  336. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/packaging/test_installed_cli_blackbox.py +0 -0
  337. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/helper/test_marketplace.py +0 -0
  338. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/helper/test_pkgmgr.py +0 -0
  339. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/handlers/test_control_handler.py +0 -0
  340. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/handlers/test_import_contracts.py +0 -0
  341. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/handlers/test_legacy_file_chunk.py +0 -0
  342. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/handlers/test_plugin_handler.py +0 -0
  343. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/test_action_consistency.py +0 -0
  344. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/test_connections.py +0 -0
  345. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/test_controllers.py +0 -0
  346. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/test_handler.py +0 -0
  347. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/test_heartbeat_admission.py +0 -0
  348. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/io/test_stdio_server.py +0 -0
  349. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_artifact_store.py +0 -0
  350. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_container.py +0 -0
  351. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_dependency_environment.py +0 -0
  352. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_legacy_shadow.py +0 -0
  353. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_manager.py +0 -0
  354. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_mgr_runner.py +0 -0
  355. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_restart_coordinator.py +0 -0
  356. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_shared_worker_subprocess.py +0 -0
  357. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_worker_launcher.py +0 -0
  358. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/plugin/test_workload_isolation.py +0 -0
  359. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/test_app.py +0 -0
  360. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/test_bounded_executor.py +0 -0
  361. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/test_event_loop_monitor.py +0 -0
  362. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/runtime/test_pull_api_handlers.py +0 -0
  363. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/test_certification.py +0 -0
  364. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/test_log.py +0 -0
  365. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/test_message.py +0 -0
  366. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/test_plugin_logbuffer.py +0 -0
  367. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/test_storage.py +0 -0
  368. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/utils/test_deadline.py +0 -0
  369. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/utils/test_discovery.py +0 -0
  370. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/utils/test_importutil.py +0 -0
  371. {langbot_plugin-0.6.8 → langbot_plugin-0.6.9}/tests/utils/test_platform.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: langbot-plugin
3
- Version: 0.6.8
3
+ Version: 0.6.9
4
4
  Summary: This package contains the SDK, CLI for building plugins for LangBot, plus the runtime for hosting LangBot plugins
5
5
  Project-URL: Homepage, https://langbot.app
6
6
  Project-URL: Repository, https://github.com/langbot-app/langbot-plugin-sdk
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "langbot-plugin"
3
- version = "0.6.8"
3
+ version = "0.6.9"
4
4
  description = "This package contains the SDK, CLI for building plugins for LangBot, plus the runtime for hosting LangBot plugins"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -149,6 +149,9 @@ class SharedPluginWorkerRuntime:
149
149
  default_factory=dict
150
150
  )
151
151
  plugin_handler: runtime_plugin_handler_cls.PluginConnectionHandler | None = None
152
+ pending_plugin_handler: (
153
+ runtime_plugin_handler_cls.PluginConnectionHandler | None
154
+ ) = None
152
155
  controller: Controller | None = None
153
156
  launch_task: asyncio.Task[None] | None = None
154
157
  transport_registered_event: asyncio.Event = field(default_factory=asyncio.Event)
@@ -552,12 +555,23 @@ class PluginManager:
552
555
  *,
553
556
  plugin_author: str,
554
557
  plugin_name: str,
558
+ expected_shared_handler: runtime_plugin_handler_cls.PluginConnectionHandler
559
+ | None = None,
555
560
  ) -> _PendingPluginRegistration:
556
561
  key = self._find_pending_registration_key(capability)
557
562
  if key is None:
558
563
  raise ValueError(
559
564
  "Plugin registration capability is invalid or already used"
560
565
  )
566
+ registration = self._pending_registrations[key]
567
+ if registration.shared_pool_digest is not None:
568
+ worker = self._shared_workers.get(registration.shared_pool_digest)
569
+ if (
570
+ expected_shared_handler is None
571
+ or worker is None
572
+ or worker.pending_plugin_handler is not expected_shared_handler
573
+ ):
574
+ raise ValueError("Shared plugin worker registration transport changed")
561
575
  registration = self._pending_registrations.pop(key)
562
576
  if (
563
577
  registration.plugin_author != plugin_author
@@ -1967,6 +1981,12 @@ class PluginManager:
1967
1981
  worker.controller = controller
1968
1982
 
1969
1983
  async def new_plugin_connection_callback(connection: Connection):
1984
+ if (
1985
+ worker.pending_plugin_handler is not None
1986
+ or worker.plugin_handler is not None
1987
+ ):
1988
+ await connection.close()
1989
+ return
1970
1990
  shared_transfer_root = (
1971
1991
  self.artifact_store.base_path
1972
1992
  / "shared-transfers"
@@ -1991,12 +2011,7 @@ class PluginManager:
1991
2011
  self.context.worker_policy.max_file_size_mb * 1024 * 1024
1992
2012
  ),
1993
2013
  )
1994
- if (
1995
- worker.plugin_handler is not None
1996
- and worker.plugin_handler is not plugin_handler
1997
- ):
1998
- await connection.close()
1999
- return
2014
+ worker.pending_plugin_handler = plugin_handler
2000
2015
  self.plugin_handlers.append(plugin_handler)
2001
2016
  try:
2002
2017
  await plugin_handler.run()
@@ -2172,6 +2187,9 @@ class PluginManager:
2172
2187
  if handler in self.plugin_handlers:
2173
2188
  self.plugin_handlers.remove(handler)
2174
2189
  for worker in self._shared_workers.values():
2190
+ if worker.pending_plugin_handler is handler:
2191
+ worker.pending_plugin_handler = None
2192
+ return
2175
2193
  if worker.plugin_handler is handler:
2176
2194
  async with worker.lifecycle_lock:
2177
2195
  if worker.plugin_handler is not handler:
@@ -2590,6 +2608,7 @@ class PluginManager:
2590
2608
  registration_capability or "",
2591
2609
  plugin_author=plugin_author,
2592
2610
  plugin_name=plugin_name,
2611
+ expected_shared_handler=handler,
2593
2612
  )
2594
2613
  # From this point forward, use only the identity captured before the
2595
2614
  # child process was launched, never values supplied by plugin code.
@@ -2616,6 +2635,11 @@ class PluginManager:
2616
2635
  registration.shared_pool_digest,
2617
2636
  worker.slots,
2618
2637
  )
2638
+ if worker.pending_plugin_handler is not handler:
2639
+ raise ValueError(
2640
+ "Shared plugin worker registration transport changed"
2641
+ )
2642
+ worker.pending_plugin_handler = None
2619
2643
  worker.plugin_handler = handler
2620
2644
  for slot_runtime in tuple(worker.slots.values()):
2621
2645
  if (
@@ -0,0 +1 @@
1
+ __version__ = "0.6.9"
@@ -11,5 +11,5 @@ def test_stable_release_metadata_is_consistent() -> None:
11
11
  (root / "src/langbot_plugin/version.py").read_text(encoding="utf-8").strip()
12
12
  )
13
13
 
14
- assert project["project"]["version"] == "0.6.8"
15
- assert source_version == '__version__ = "0.6.8"'
14
+ assert project["project"]["version"] == "0.6.9"
15
+ assert source_version == '__version__ = "0.6.9"'
@@ -441,6 +441,7 @@ async def test_failed_sole_shared_slot_retries_with_registered_handler(
441
441
 
442
442
  context.control_handler = Control()
443
443
  handler = Handler()
444
+ worker.pending_plugin_handler = handler
444
445
  capability = manager._issue_registration_capability(
445
446
  plugin_author="tester",
446
447
  plugin_name="demo",
@@ -448,6 +449,15 @@ async def test_failed_sole_shared_slot_retries_with_registered_handler(
448
449
  binding=binding,
449
450
  shared_pool_digest=digest,
450
451
  )
452
+ alt_handler = Handler()
453
+ with pytest.raises(ValueError, match="registration transport changed"):
454
+ await manager.register_plugin(
455
+ alt_handler,
456
+ container.model_dump(),
457
+ registration_capability=capability,
458
+ )
459
+ assert manager.is_registration_capability_pending(capability)
460
+ assert worker.pending_plugin_handler is handler
451
461
  await manager.register_plugin(
452
462
  handler,
453
463
  container.model_dump(),
@@ -545,6 +555,7 @@ async def test_failed_shared_slot_retry_keeps_healthy_sibling_and_worker(
545
555
 
546
556
  context.control_handler = Control()
547
557
  handler = Handler()
558
+ worker.pending_plugin_handler = handler
548
559
  capability = manager._issue_registration_capability(
549
560
  plugin_author="tester",
550
561
  plugin_name="demo",
@@ -771,6 +782,7 @@ async def test_shared_worker_registration_attaches_all_slots_with_exact_settings
771
782
  context.control_handler = Control()
772
783
  handler = Handler()
773
784
  worker = manager.installation_runtimes[binding_a].shared_worker
785
+ worker.pending_plugin_handler = handler
774
786
  capability = manager._issue_registration_capability(
775
787
  plugin_author="tester",
776
788
  plugin_name="demo",
@@ -865,6 +877,7 @@ async def test_shared_registration_waits_for_validated_slot_before_running(
865
877
 
866
878
  context.control_handler = Control()
867
879
  handler = Handler()
880
+ worker.pending_plugin_handler = handler
868
881
  capability = manager._issue_registration_capability(
869
882
  plugin_author="tester",
870
883
  plugin_name="demo",
@@ -972,6 +985,7 @@ async def test_shared_registration_reports_mixed_slot_attach_results(
972
985
 
973
986
  context.control_handler = Control()
974
987
  handler = Handler()
988
+ worker.pending_plugin_handler = handler
975
989
  capability = manager._issue_registration_capability(
976
990
  plugin_author="tester",
977
991
  plugin_name="demo",
@@ -1063,6 +1077,7 @@ async def test_shared_slot_uninitialized_container_is_failed(tmp_path, monkeypat
1063
1077
 
1064
1078
  context.control_handler = Control()
1065
1079
  handler = Handler()
1080
+ worker.pending_plugin_handler = handler
1066
1081
  capability = manager._issue_registration_capability(
1067
1082
  plugin_author="tester",
1068
1083
  plugin_name="demo",
@@ -2132,6 +2147,7 @@ async def test_shared_connection_does_not_claim_registration_before_capability_v
2132
2147
  await asyncio.sleep(0)
2133
2148
 
2134
2149
  assert worker.plugin_handler is None
2150
+ assert worker.pending_plugin_handler is handler
2135
2151
  assert handler in manager.plugin_handlers
2136
2152
 
2137
2153
  launch.cancel()
@@ -1 +0,0 @@
1
- __version__ = "0.6.8"
File without changes
File without changes
File without changes
File without changes
File without changes