mirror of https://github.com/openclaw/openclaw.git
Docs: refresh TTS runtime migration status
This commit is contained in:
parent
36711383f6
commit
c0949e4eb8
|
|
@ -65,6 +65,7 @@ What has been implemented:
|
|||
- exclusive-slot selection and default-slot resolution now route through `src/extension-host/slot-arbitration.ts` ahead of broader catalog-backed arbitration ownership
|
||||
- ACP backend registration and runtime resolution now route through `src/extension-host/acp-runtime-backend-registry.ts` ahead of broader catalog-backed backend ownership
|
||||
- media-provider normalization, built-in registry construction, override merging, and runtime lookup now route through `src/extension-host/media-runtime-registry.ts` while `src/media-understanding/providers/index.ts` remains the compatibility facade
|
||||
- TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now route through `src/extension-host/tts-runtime-registry.ts` while `src/tts/tts.ts` remains the synthesis execution owner
|
||||
- legacy internal-hook bridging and typed prompt-injection compatibility policy now route through `src/extension-host/hook-compat.ts` ahead of broader catalog-backed registry ownership
|
||||
- compatibility `OpenClawPluginApi` composition and logger shaping now route through `src/extension-host/plugin-api.ts` ahead of broader catalog-backed registry ownership
|
||||
- compatibility plugin-registry facade ownership now routes through `src/extension-host/plugin-registry.ts` ahead of broader catalog-backed registry ownership
|
||||
|
|
@ -616,7 +617,7 @@ Capability selection must emit structured events for:
|
|||
- channel capabilities from `extensions/discord/src/channel.ts:74`, `extensions/slack/src/channel.ts:107`, and `extensions/telegram/src/channel.ts:120` collapse into canonical messaging action families
|
||||
- diffs becomes an agent-visible tool family plus a host-managed route surface from `extensions/diffs/index.ts:27`
|
||||
- provider integration from `extensions/google-gemini-cli-auth/index.ts:24` becomes operator-visible setup and auth capabilities
|
||||
- embedding and TTS provider overrides, plus broader media-runtime fallback ownership, should become runtime-internal subsystem registries rather than remaining part of a universal plugin-provider API
|
||||
- embedding provider overrides, plus broader media- and TTS-runtime execution and fallback ownership, should become runtime-internal subsystem registries rather than remaining part of a universal plugin-provider API
|
||||
- extension-backed web search should become an agent-visible tool family unless it is only a runtime-internal backend feeding another host-owned surface
|
||||
- voice-call from `extensions/voice-call/index.ts:230` becomes a mix of agent-visible actions, runtime providers, and operator surfaces
|
||||
- ACP backend registration from `extensions/acpx/src/service.ts:55` becomes runtime-internal backend arbitration
|
||||
|
|
@ -633,7 +634,7 @@ Capability selection must emit structured events for:
|
|||
6. Migrate the existing provider auth and setup selection path onto host-owned setup catalogs and canonical provider metadata.
|
||||
7. Add provider selection logic for the broader messaging action family before migrating all channels.
|
||||
8. Add runtime-backend and context-engine arbitration using the same rank and slot model where appropriate.
|
||||
9. Finish the media runtime-registry migration and add host-owned embedding and TTS subsystem registries with explicit capability routing and built-in fallback policy.
|
||||
9. Finish the media- and TTS-runtime migrations and add a host-owned embedding subsystem registry with explicit capability routing and built-in fallback policy.
|
||||
10. Decide whether extension-backed search needs only canonical tool publication or also a host-owned runtime registry for internal search backends, and keep those two cases distinct.
|
||||
11. Ensure lightweight setup catalogs can be built from static descriptors alone.
|
||||
12. Add a reviewed core registry for canonical action families and document how new ids are introduced.
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ What has been implemented:
|
|||
- exclusive-slot selection and default-slot resolution now route through `src/extension-host/slot-arbitration.ts` while `src/plugins/slots.ts` remains the compatibility facade
|
||||
- ACP backend registration and runtime resolution now route through `src/extension-host/acp-runtime-backend-registry.ts` while `src/acp/runtime/registry.ts` remains the compatibility facade
|
||||
- media-provider normalization, built-in registry construction, override merging, and runtime lookup now route through `src/extension-host/media-runtime-registry.ts` while `src/media-understanding/providers/index.ts` remains the compatibility facade
|
||||
- TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now route through `src/extension-host/tts-runtime-registry.ts` while `src/tts/tts.ts` remains the synthesis execution owner
|
||||
- legacy internal-hook bridging and typed prompt-injection compatibility policy now route through `src/extension-host/hook-compat.ts`
|
||||
- compatibility `OpenClawPluginApi` composition and logger shaping now route through `src/extension-host/plugin-api.ts`
|
||||
- compatibility plugin-registry facade ownership now routes through `src/extension-host/plugin-registry.ts`
|
||||
|
|
|
|||
|
|
@ -103,6 +103,7 @@ What has been implemented so far:
|
|||
- plugin provider discovery filtering, order grouping, and result normalization now route through `src/extension-host/provider-discovery.ts`
|
||||
- provider matching, auth-method selection, config-patch merging, and default-model application now route through `src/extension-host/provider-auth.ts`
|
||||
- media-provider normalization, built-in registry construction, override merging, and runtime lookup now route through `src/extension-host/media-runtime-registry.ts` while `src/media-understanding/providers/index.ts` remains the compatibility facade
|
||||
- TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now route through `src/extension-host/tts-runtime-registry.ts` while `src/tts/tts.ts` remains the synthesis execution owner
|
||||
- provider onboarding option building, model-picker entry building, and provider-method choice resolution now route through `src/extension-host/provider-wizard.ts`
|
||||
- loaded-provider auth application, plugin-enable gating, auth-method execution, and post-auth default-model handling now route through `src/extension-host/provider-auth-flow.ts`
|
||||
- provider post-selection hook lookup and invocation now route through `src/extension-host/provider-model-selection.ts`
|
||||
|
|
@ -241,6 +242,7 @@ Committed implementation slices so far:
|
|||
- `871086537b` `Plugins: extract slot arbitration`
|
||||
- `b7868d06ba` `ACP: extract runtime backend registry`
|
||||
- `e592f60fa7` `Media: extract runtime provider registry`
|
||||
- `36711383f6` `TTS: extract runtime registry`
|
||||
- `89414ed857` `Docs: track extension host migration internally`
|
||||
- `d8af1eceaf` `Docs: refresh extension host migration status`
|
||||
|
||||
|
|
@ -250,7 +252,7 @@ What is still missing for these phases:
|
|||
- broader lifecycle ownership beyond the loader state machine, service-lifecycle boundary, CLI-lifecycle boundary, session-owned activation state, and explicit discovery-policy, activation-policy, and finalization-policy outcomes, remaining policy gate ownership, and broad host-owned registries described for Phase 2
|
||||
- minimal SDK compatibility work beyond preserving current behavior indirectly through existing loading
|
||||
- host-owned conversation binding, interaction routing, ingress claim, and generic interactive control surfaces
|
||||
- host-owned subsystem runtime registries for embeddings and TTS, plus broader media-runtime fallback ownership
|
||||
- the embedding runtime registry, plus broader media- and TTS-runtime execution and fallback ownership
|
||||
- explicit support for extension-backed search, with a generic split between agent-visible tool publication and optional runtime-internal search backends
|
||||
- any pilot migration, event pipeline, canonical catalog, or arbitration implementation
|
||||
|
||||
|
|
@ -260,7 +262,7 @@ Recent plan refinements:
|
|||
- it now explicitly treats interactive callback routing, namespace ownership, dedupe, and fallback behavior as first-class migration surfaces
|
||||
- it now explicitly treats inbound claim as a canonical ingress-stage concern rather than a permanent plugin-era hook shape
|
||||
- it now explicitly treats Telegram and Discord as the first validated rollout targets for interactive control surfaces while keeping the underlying contracts generic, host-owned, and kernel-agnostic
|
||||
- it now explicitly treats embeddings and TTS as host-owned subsystem runtimes and media understanding as an in-progress host-owned media runtime, all with capability routing, typed request envelopes, provider-id normalization, and fallback policy
|
||||
- it now explicitly treats embeddings as a remaining host-owned subsystem runtime target and media understanding plus TTS as in-progress host-owned subsystem runtimes, all with capability routing, typed request envelopes, provider-id normalization, and fallback policy
|
||||
- it now explicitly rejects widening the legacy `registerProvider(...)` or `ProviderPlugin` surface into a universal runtime API while retaining capability routing, typed request envelopes, provider-id normalization, and fallback behavior where those are part of the target model
|
||||
- it now explicitly treats extension-backed search as either a canonical tool contribution or a host-owned runtime backend depending on whether the search surface is agent-visible
|
||||
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ What has been implemented:
|
|||
- context-engine registration and runtime resolution now delegate through `src/extension-host/context-engine-runtime.ts` while `src/context-engine/registry.ts` remains the compatibility facade
|
||||
- exclusive-slot selection and default-slot resolution now delegate through `src/extension-host/slot-arbitration.ts` while `src/plugins/slots.ts` remains the compatibility facade
|
||||
- ACP backend registration and runtime resolution now delegate through `src/extension-host/acp-runtime-backend-registry.ts` while `src/acp/runtime/registry.ts` remains the compatibility facade
|
||||
- TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now delegate through `src/extension-host/tts-runtime-registry.ts` while `src/tts/tts.ts` remains the synthesis execution owner
|
||||
- legacy internal-hook bridging and typed prompt-injection compatibility policy now delegate through `src/extension-host/hook-compat.ts`
|
||||
- compatibility `OpenClawPluginApi` composition and logger shaping now delegate through `src/extension-host/plugin-api.ts`
|
||||
- compatibility plugin-registry facade ownership now delegates through `src/extension-host/plugin-registry.ts`
|
||||
|
|
@ -144,7 +145,7 @@ What is still pending from this spec:
|
|||
- broader extension-host lifecycle ownership beyond the loader state machine, service-lifecycle boundary, CLI-lifecycle boundary, session-owned activation state, and explicit discovery-policy, activation-policy, and finalization-policy outcomes
|
||||
- activation pipeline ownership
|
||||
- host-owned registries for setup, CLI, routes, services, slots, and backends
|
||||
- host-owned subsystem runtime registries for embeddings and TTS, plus broader media-runtime fallback ownership, including explicit fallback and override policy instead of plugin-era capability reads
|
||||
- the embedding runtime registry, plus broader media- and TTS-runtime execution and fallback ownership, including explicit fallback and override policy instead of plugin-era capability reads
|
||||
- a clear host-owned split for extension-backed search between agent-visible tool publication and any optional runtime-internal search backend registry
|
||||
- permission-mode enforcement
|
||||
- per-extension state ownership and migration
|
||||
|
|
@ -743,7 +744,7 @@ The host must emit structured telemetry for:
|
|||
4. Add a policy evaluator that understands advisory versus enforced permission modes.
|
||||
5. Add host-owned credential and per-extension state boundaries for extension services.
|
||||
6. Generalize backend registration into a host-managed `capability.runtime-backend` registry.
|
||||
7. Finish media-runtime fallback ownership and add host-owned subsystem runtime registries for embeddings and TTS instead of widening `registerProvider(...)`.
|
||||
7. Finish media- and TTS-runtime execution and fallback ownership and add a host-owned embedding runtime registry instead of widening `registerProvider(...)`.
|
||||
8. Keep extension-backed search generic by publishing agent-visible search through tool contracts and using runtime-backend only for search backends consumed internally by the host or another subsystem.
|
||||
9. Add slot-backed provider management for context engines and other exclusive runtime providers.
|
||||
10. Preserve provenance, origin precedence, and current workspace and bundled enablement rules in host policy.
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ Relevant prerequisite work that has landed:
|
|||
- exclusive-slot selection and default-slot resolution now have a host-owned helper boundary in `src/extension-host/slot-arbitration.ts`
|
||||
- ACP backend registration and runtime resolution now have a host-owned helper boundary in `src/extension-host/acp-runtime-backend-registry.ts`
|
||||
- media-provider normalization, built-in registry construction, override merging, and runtime lookup now have a host-owned helper boundary in `src/extension-host/media-runtime-registry.ts`
|
||||
- TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now have a host-owned helper boundary in `src/extension-host/tts-runtime-registry.ts`
|
||||
- loader cache key construction and registry cache control now have a host-owned helper boundary
|
||||
- loader provenance helpers now have a host-owned helper boundary
|
||||
- loader duplicate-order policy now has a host-owned helper boundary
|
||||
|
|
|
|||
|
|
@ -89,6 +89,7 @@ What has landed:
|
|||
- plugin provider discovery filtering, order grouping, and result normalization now route through `src/extension-host/provider-discovery.ts`
|
||||
- provider matching, auth-method selection, config-patch merging, and default-model application now route through `src/extension-host/provider-auth.ts`
|
||||
- media-provider normalization, built-in registry construction, override merging, and runtime lookup now route through `src/extension-host/media-runtime-registry.ts` while `src/media-understanding/providers/index.ts` remains the compatibility facade
|
||||
- TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now route through `src/extension-host/tts-runtime-registry.ts` while `src/tts/tts.ts` remains the synthesis execution owner
|
||||
- provider onboarding option building, model-picker entry building, and provider-method choice resolution now route through `src/extension-host/provider-wizard.ts`
|
||||
- loaded-provider auth application, plugin-enable gating, auth-method execution, and post-auth default-model handling now route through `src/extension-host/provider-auth-flow.ts`
|
||||
- provider post-selection hook lookup and invocation now route through `src/extension-host/provider-model-selection.ts`
|
||||
|
|
@ -227,6 +228,7 @@ Committed implementation slices so far:
|
|||
- `871086537b` `Plugins: extract slot arbitration`
|
||||
- `b7868d06ba` `ACP: extract runtime backend registry`
|
||||
- `e592f60fa7` `Media: extract runtime provider registry`
|
||||
- `36711383f6` `TTS: extract runtime registry`
|
||||
- `89414ed857` `Docs: track extension host migration internally`
|
||||
- `d8af1eceaf` `Docs: refresh extension host migration status`
|
||||
|
||||
|
|
@ -235,7 +237,7 @@ What has not landed:
|
|||
- keeping the cutover inventory current as more surfaces move
|
||||
- broader lifecycle ownership beyond the loader state machine, session-owned activation state, and explicit discovery-policy, activation-policy, and finalization-policy outcomes, plus remaining policy semantics
|
||||
- host-owned registration surfaces beyond the first normalization helpers and low-risk channel, provider, gateway-method, HTTP-route, tool, CLI, service, command, context-engine, and hook compatibility write slices
|
||||
- broader subsystem-runtime fallback ownership beyond the media runtime-registry seam, plus new embedding and TTS runtime registries
|
||||
- the embedding runtime registry, plus broader media- and TTS-runtime execution and fallback ownership
|
||||
- SDK compatibility translation work
|
||||
- canonical event stages
|
||||
- canonical capability catalogs
|
||||
|
|
|
|||
|
|
@ -100,8 +100,8 @@ This is an implementation checklist, not a future-design spec.
|
|||
| Slot arbitration | `src/plugins/slots.ts` | `src/extension-host/slot-arbitration.ts` | `partial` | Exclusive-slot selection and default-slot resolution now route through a host-owned slot-arbitration helper while `src/plugins/slots.ts` remains the compatibility facade. Broader slot and catalog arbitration are still pending. |
|
||||
| ACP backend registry | `src/acp/runtime/registry.ts` | `src/extension-host/acp-runtime-backend-registry.ts` | `partial` | ACP backend registration and resolution now route through a host-owned ACP runtime-backend registry while `src/acp/runtime/registry.ts` remains the compatibility facade. Broader runtime-backend catalog ownership and ACPX pilot migration are still pending. |
|
||||
| Embedding provider registry and fallback routing | `src/memory/embeddings.ts` plus plugin provider capability filtering through `src/plugins/runtime.ts` | host-owned embedding runtime registry for a typed backend family | `not started` | This is a real missing scope area. Embedding providers should be modeled as host-owned subsystem runtimes with explicit capability metadata, request envelopes, provider-id normalization, and fallback rules, not by widening legacy `registerProvider(...)` as the long-term architecture. |
|
||||
| Media-understanding provider registry and fallback routing | `src/media-understanding/providers/index.ts`, `src/media-understanding/runner.ts`, `src/media-understanding/runner.entries.ts`, `src/media-understanding/resolve.ts`, plus plugin provider capability filtering through `src/plugins/runtime.ts` | `src/extension-host/media-runtime-registry.ts` | `partial` | Media-provider normalization, built-in registry construction, override merging, and runtime lookup now route through a host-owned media runtime-registry helper while `src/media-understanding/providers/index.ts` remains the compatibility facade. Broader subsystem-runtime fallback ownership and the remaining embeddings and TTS runtime registries are still pending. |
|
||||
| TTS provider registry and telephony override routing | `src/tts/providers.ts`, `src/tts/tts.ts`, and plugin provider capability filtering through `src/plugins/runtime.ts` | host-owned TTS runtime registry for a typed backend family | `not started` | TTS providers and telephony TTS overrides should move behind host-owned runtime registries with explicit capability and fallback policy rather than staying coupled to plugin-era provider capabilities and global active-registry reads. |
|
||||
| Media-understanding provider registry and fallback routing | `src/media-understanding/providers/index.ts`, `src/media-understanding/runner.ts`, `src/media-understanding/runner.entries.ts`, `src/media-understanding/resolve.ts`, plus plugin provider capability filtering through `src/plugins/runtime.ts` | `src/extension-host/media-runtime-registry.ts` | `partial` | Media-provider normalization, built-in registry construction, override merging, and runtime lookup now route through a host-owned media runtime-registry helper while `src/media-understanding/providers/index.ts` remains the compatibility facade. Broader media-runtime execution and fallback ownership, plus the remaining embedding runtime registry, are still pending. |
|
||||
| TTS provider registry and telephony override routing | `src/tts/tts.ts`, `src/gateway/server-methods/tts.ts`, and `src/auto-reply/reply/commands-tts.ts` | `src/extension-host/tts-runtime-registry.ts` | `partial` | Built-in TTS provider metadata, provider ordering, API-key resolution, configuration checks, and telephony support now route through a host-owned TTS runtime-registry helper while `src/tts/tts.ts` remains the synthesis execution owner. Broader TTS runtime execution and fallback ownership are still pending. |
|
||||
| Onboarding/install/setup surfaces | `src/plugins/install.ts`, package manifests, channel catalog, onboarding commands | host-owned static descriptors | `partial` | Static metadata normalization has started; full setup/install descriptor migration is not done. |
|
||||
| Pilot migrations | `extensions/thread-ownership`, `extensions/telegram`, `extensions/acpx` | extension-host path with parity tracking | `not started` | No pilot runs through the host path yet. |
|
||||
|
||||
|
|
@ -133,7 +133,7 @@ That pattern has been used for:
|
|||
- gateway method-id aggregation, plugin diagnostic shaping, and extra-handler composition
|
||||
- host-owned runtime registry read accessors for provider, tool, service, CLI, gateway-method, and HTTP-route consumers, plus the broader CLI pre-load fast path those accessors enabled
|
||||
- explicit scoping of still-unimplemented migration targets: conversation binding ownership, interactive callback routing, ingress claim semantics, and bounded first-cut interactive channel controls
|
||||
- explicit scoping of remaining subsystem-runtime targets: embeddings and TTS as host-owned runtime registries, plus broader media-runtime fallback ownership, with capability routing and fallback
|
||||
- explicit scoping of remaining subsystem-runtime targets: the embedding runtime registry, broader media-runtime execution and fallback ownership, and broader TTS-runtime execution and fallback ownership, all with capability routing and fallback
|
||||
- explicit scoping of extension-backed search as either a canonical tool contribution or an optional host-owned runtime backend, rather than as another universal provider surface
|
||||
|
||||
## Immediate Next Targets
|
||||
|
|
@ -160,7 +160,7 @@ The following remain legacy-owned today:
|
|||
- interaction namespace routing, dedupe, and callback fallback rules
|
||||
- canonical ingress claim semantics
|
||||
- generic host-owned interactive channel control contracts
|
||||
- embedding and TTS runtime registries, plus broader media-runtime fallback ownership
|
||||
- embedding runtime registry, plus broader media- and TTS-runtime execution and fallback ownership
|
||||
- a clear host-owned split for extension-backed search between canonical tool publication and any optional runtime-internal search backend registry
|
||||
- channel runtime compatibility bridges
|
||||
- pilot parity tracking
|
||||
|
|
|
|||
Loading…
Reference in New Issue