-
Notifications
You must be signed in to change notification settings - Fork 0
Define a versioned analyzer, view, and read-tool extension API #195
Copy link
Copy link
Open
Labels
area: integrationsExternal tools, platforms, providers, and ecosystem integrationsExternal tools, platforms, providers, and ecosystem integrationsconcern: architectureModule boundaries, dependency direction, and system structureModule boundaries, dependency direction, and system structureconcern: packagingDistribution, optional dependencies, installation, and plugin packagingDistribution, optional dependencies, installation, and plugin packagingconcern: securityAuthorization, approval, sensitive data, and destructive-operation safetyAuthorization, approval, sensitive data, and destructive-operation safetyenhancementNew feature or requestNew feature or request
Description
Metadata
Metadata
Assignees
Labels
area: integrationsExternal tools, platforms, providers, and ecosystem integrationsExternal tools, platforms, providers, and ecosystem integrationsconcern: architectureModule boundaries, dependency direction, and system structureModule boundaries, dependency direction, and system structureconcern: packagingDistribution, optional dependencies, installation, and plugin packagingDistribution, optional dependencies, installation, and plugin packagingconcern: securityAuthorization, approval, sensitive data, and destructive-operation safetyAuthorization, approval, sensitive data, and destructive-operation safetyenhancementNew feature or requestNew feature or request
Goal
Define a versioned extension API for deterministic analyzers, read-only tools,
and bounded UI views without weakening korvid's layer or security boundaries.
Current gap
korvid has a versioned provider plugin API and documents
korvid.panelandkorvid.toolas architectural directions, but the implemented public pluginsurface is provider-focused. The tool registry explicitly keeps external tool
loading out of scope because collision, exposure, approval, and trust policy
need a dedicated design.
Without a supported extension boundary, integrations either remain in core or
must rely on internal imports that cannot be kept compatible.
Design
Start with three explicitly bounded extension kinds:
structured findings;
interfaces.
Each plugin declares:
Use selected-only loading and collision rejection consistent with the provider
plugin work.
Acceptance criteria
effects, and forbidden exposure combinations fail before runtime use.
label a write handler as a read tool and reach a mutation bridge.
actionable error.
the user before activation.
collision, import side effects, oversized results, schema mutation, and
attempted write exposure.
not sandboxed.
importing korvid internals.
Out of scope