refactor: migrate built-in plugins to SDK-only interface

- Six-phase plan complete: webui/cli/healthcheck/pluginmgr/clawhubadapter
  now interact with the kernel exclusively via internal/sdk interfaces;
  all Configure() calls and package-level global injection removed
- buildSDK in internal/plugin/registry.go is the single assembly point
- Add internal/sdk/events.go exporting event types/constants
- Fix ProviderManager cooldown sharing: LuaAdaptedProvider.Name() now
  returns the source name instead of lua_<adapter>, so multiple sources
  sharing an adapter (single script load via shared VM AdapterCache) no
  longer share failure-cooldown state
- Verified: build/vet/tests green, deployed to homeagent.service with
  full plugin capability testing via local OpenAI-compatible mock
This commit is contained in:
root
2026-08-01 12:17:17 +08:00
parent 96e6784a7c
commit dbbd73b930
47 changed files with 1515 additions and 1137 deletions

View File

@ -11,6 +11,8 @@ import (
"strings"
"sync"
"time"
sdk "gitcode.com/JianFeeeee/HomeAgent/internal/sdk"
)
type Tracker struct {
@ -302,3 +304,6 @@ func (t *Tracker) Stats() map[string]interface{} {
"max_changeset_age": t.maxChangesetAge.String(),
}
}
// Tracker 直接满足内置 SDK 的 TrackerAPI(复用优先,无需独立适配器)。
var _ sdk.TrackerAPI = (*Tracker)(nil)