mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-10-25 09:55:25 +08:00
fix(pipeline): decouple Runner from extension permissions (LANG-54) (#2723)
* fix(pipeline): decouple runner from extension allowlist Co-authored-by: multica-agent <[email protected]> * fix(pipeline): complete runner diagnostics and real runtime coverage Co-authored-by: multica-agent <[email protected]> --------- Co-authored-by: multica-agent <[email protected]>
This commit is contained in:
co-authored by
multica-agent
parent
5a6ddbff6f
commit
d9e4e7d9df
@@ -14,7 +14,7 @@ from ...api.http.context import ExecutionContext
|
||||
from ...api.http.service.tenant import TenantContext
|
||||
from .descriptor import RunnerDescriptor
|
||||
from .id import parse_runner_id, format_runner_id
|
||||
from .errors import RunnerNotFoundError, RunnerNotAuthorizedError
|
||||
from .errors import RunnerNotFoundError
|
||||
|
||||
|
||||
class RunnerRegistry:
|
||||
@@ -229,14 +229,13 @@ class RunnerRegistry:
|
||||
|
||||
Args:
|
||||
runner_id: Runner ID to lookup
|
||||
bound_plugins: Optional bound plugins filter
|
||||
bound_plugins: Legacy pipeline extension filter; does not authorize Runners.
|
||||
|
||||
Returns:
|
||||
RunnerDescriptor
|
||||
|
||||
Raises:
|
||||
RunnerNotFoundError: If runner not found
|
||||
RunnerNotAuthorizedError: If runner not in bound plugins
|
||||
"""
|
||||
# Parse and validate runner ID format
|
||||
try:
|
||||
@@ -259,11 +258,9 @@ class RunnerRegistry:
|
||||
if descriptor is None:
|
||||
raise RunnerNotFoundError(runner_id)
|
||||
|
||||
# Check authorization
|
||||
if bound_plugins is not None:
|
||||
plugin_id = descriptor.get_plugin_id()
|
||||
if plugin_id not in bound_plugins:
|
||||
raise RunnerNotAuthorizedError(runner_id, bound_plugins)
|
||||
# A selected Runner is independent of the pipeline extension allowlist.
|
||||
# Installation enablement and Workspace scope are enforced by the connector
|
||||
# again at invocation; never widen the extension permissions on the query.
|
||||
|
||||
return descriptor
|
||||
|
||||
|
||||
Reference in New Issue
Block a user