From 1817c6fcf64b61b0103c2652e123b47a319fd98d Mon Sep 17 00:00:00 2001 From: Gustavo Madeira Santana Date: Sun, 15 Mar 2026 15:07:12 +0000 Subject: [PATCH] Docs: refresh extension host migration status --- .../openclaw-capability-catalog-and-arbitration-spec.md | 3 +++ .../openclaw-extension-contribution-schema-spec.md | 3 +++ .../openclaw-extension-host-implementation-guide.md | 4 ++++ .../openclaw-extension-host-lifecycle-and-security-spec.md | 3 +++ .../openclaw-kernel-event-pipeline-spec.md | 2 ++ .../openclaw-kernel-extension-host-transition-plan.md | 4 ++++ 6 files changed, 19 insertions(+) diff --git a/docs/.internal/extension-host-migration/openclaw-capability-catalog-and-arbitration-spec.md b/docs/.internal/extension-host-migration/openclaw-capability-catalog-and-arbitration-spec.md index 959fd6d3fe6..772cd5c3e3b 100644 --- a/docs/.internal/extension-host-migration/openclaw-capability-catalog-and-arbitration-spec.md +++ b/docs/.internal/extension-host-migration/openclaw-capability-catalog-and-arbitration-spec.md @@ -36,7 +36,9 @@ What has been implemented: - host-owned resolved-extension records now carry the static metadata needed for install, onboarding, and lightweight operator UX - config doc baseline generation now uses the same host-owned resolved-extension metadata path - plugin SDK alias resolution now routes through `src/extension-host/loader-compat.ts` +- loader alias-wired module loader creation now routes through `src/extension-host/loader-module-loader.ts` - loader cache key construction and registry cache control now route through `src/extension-host/loader-cache.ts` +- loader lazy runtime proxy creation now routes through `src/extension-host/loader-runtime-proxy.ts` - loader provenance helpers now route through `src/extension-host/loader-provenance.ts` - loader duplicate-order and record/error policy now route through `src/extension-host/loader-policy.ts` - loader discovery policy outcomes now route through `src/extension-host/loader-discovery-policy.ts` @@ -61,6 +63,7 @@ How it has been implemented: - by beginning runtime registration migration with host-owned normalization helpers before attempting full canonical catalog publication - by moving cache-key construction and registry cache control behind host-owned helpers before attempting canonical catalog publication - by beginning loader-path migration with host-owned compatibility, candidate-planning, import-flow, policy, runtime, register-flow, candidate-orchestration, top-level load orchestration, record-state with compatibility lifecycle mapping, and finalization helpers before attempting canonical catalog publication +- by extracting lazy runtime proxy creation and alias-wired Jiti module-loader creation into host-owned helpers before catalog publication work - by converting the compatibility record-state layer into an enforced loader lifecycle state machine before catalog publication work - by moving mutable activation state into a host-owned loader session before catalog publication work - by extracting shared provenance path matching and install-rule evaluation into `src/extension-host/loader-provenance.ts` so activation and finalization policy seams reuse one host-owned implementation diff --git a/docs/.internal/extension-host-migration/openclaw-extension-contribution-schema-spec.md b/docs/.internal/extension-host-migration/openclaw-extension-contribution-schema-spec.md index cd1a862963d..abefc60a7f7 100644 --- a/docs/.internal/extension-host-migration/openclaw-extension-contribution-schema-spec.md +++ b/docs/.internal/extension-host-migration/openclaw-extension-contribution-schema-spec.md @@ -40,7 +40,9 @@ What has been implemented: - config doc baseline generation now reads bundled extension metadata through the resolved-extension registry - the first runtime registration normalization helpers now exist in `src/extension-host/runtime-registrations.ts` for channel, provider, HTTP-route, gateway-method, tool, CLI, service, command, context-engine, and hook writes - plugin SDK alias resolution now routes through `src/extension-host/loader-compat.ts` +- loader alias-wired module loader creation now routes through `src/extension-host/loader-module-loader.ts` - loader cache key construction and registry cache control now route through `src/extension-host/loader-cache.ts` +- loader lazy runtime proxy creation now routes through `src/extension-host/loader-runtime-proxy.ts` - loader provenance helpers now route through `src/extension-host/loader-provenance.ts` - loader duplicate-order and record/error policy now route through `src/extension-host/loader-policy.ts` - loader discovery policy outcomes now route through `src/extension-host/loader-discovery-policy.ts` @@ -65,6 +67,7 @@ How it has been implemented: - by starting runtime contribution migration with normalization helpers that preserve the legacy plugin API surface - by making cache-key construction and registry cache control explicit host-owned seams before changing loader activation-state ownership - by making the first loader compatibility, candidate-planning, import-flow, runtime-decision, register-flow, candidate-orchestration, top-level load orchestration, record-state with compatibility lifecycle mapping, and finalization helpers explicit host-owned seams before introducing a versioned compatibility layer +- by extracting lazy runtime proxy creation and alias-wired Jiti module-loader creation into host-owned helpers before broader schema-driven lifecycle ownership changes - by turning the compatibility record-state layer into an enforced loader lifecycle state machine before broadening the schema-driven host lifecycle model - by moving mutable activation state into a host-owned loader session before broadening the schema-driven host lifecycle model - by extracting shared provenance path matching and install-rule evaluation into `src/extension-host/loader-provenance.ts` so activation and finalization policy seams reuse one host-owned implementation diff --git a/docs/.internal/extension-host-migration/openclaw-extension-host-implementation-guide.md b/docs/.internal/extension-host-migration/openclaw-extension-host-implementation-guide.md index ea45169c3ff..57033ae7d31 100644 --- a/docs/.internal/extension-host-migration/openclaw-extension-host-implementation-guide.md +++ b/docs/.internal/extension-host-migration/openclaw-extension-host-implementation-guide.md @@ -61,7 +61,9 @@ What has been implemented so far: - `src/extension-host/resolved-registry.ts` now exposes a host-owned resolved-extension registry view - an initial Phase 0 inventory now exists in `src/extension-host/cutover-inventory.md` - plugin SDK alias resolution now routes through `src/extension-host/loader-compat.ts` +- loader alias-wired module loader creation now routes through `src/extension-host/loader-module-loader.ts` - loader cache key construction and registry cache control now route through `src/extension-host/loader-cache.ts` +- loader lazy runtime proxy creation now routes through `src/extension-host/loader-runtime-proxy.ts` - loader provenance helpers now route through `src/extension-host/loader-provenance.ts` - loader duplicate-order and record/error policy now route through `src/extension-host/loader-policy.ts` - loader discovery policy outcomes now route through `src/extension-host/loader-discovery-policy.ts` @@ -98,6 +100,7 @@ How it has been done: - by keeping duplicate enforcement in legacy subsystems only where that logic has not moved yet, such as plugin commands - by starting loader and lifecycle migration with compatibility helpers for activation and SDK alias resolution before changing discovery or policy behavior - by moving cache-key construction, cache reads, cache writes, and cache clearing behind host-owned helpers before changing activation-state ownership +- by extracting lazy runtime proxy creation and alias-wired Jiti module-loader creation into host-owned helpers before broader bootstrap or lifecycle ownership changes - by moving loader-owned policy helpers next, while keeping module loading and enablement flow behavior unchanged - by moving initial candidate planning and record construction behind host-owned helpers before changing import and registration flow - by moving entry-path opening and module import behind host-owned helpers before changing cache wiring or lifecycle orchestration @@ -135,6 +138,7 @@ Committed implementation slices so far: - `fd7488e10a` `Plugins: add loader finalization policy` - `97e2af7f97` `Plugins: add loader discovery policy` - `83b18eab72` `Plugins: share loader provenance helpers` +- `52495d23d5` `Plugins: extract loader runtime factories` - `89414ed857` `Docs: track extension host migration internally` - `d8af1eceaf` `Docs: refresh extension host migration status` diff --git a/docs/.internal/extension-host-migration/openclaw-extension-host-lifecycle-and-security-spec.md b/docs/.internal/extension-host-migration/openclaw-extension-host-lifecycle-and-security-spec.md index 3634deadb33..9dd33683fb7 100644 --- a/docs/.internal/extension-host-migration/openclaw-extension-host-lifecycle-and-security-spec.md +++ b/docs/.internal/extension-host-migration/openclaw-extension-host-lifecycle-and-security-spec.md @@ -38,7 +38,9 @@ What has been implemented: - a host-owned resolved-extension registry exists for static consumers - static config-baseline generation now reads bundled extension metadata through the host-owned resolved-extension registry - channel, provider, HTTP-route, gateway-method, tool, CLI, service, command, context-engine, and hook registration normalization now delegates through `src/extension-host/runtime-registrations.ts` +- loader alias-wired module loader creation now routes through `src/extension-host/loader-module-loader.ts` - loader cache key construction and registry cache control now route through `src/extension-host/loader-cache.ts` +- loader lazy runtime proxy creation now routes through `src/extension-host/loader-runtime-proxy.ts` - loader provenance helpers now route through `src/extension-host/loader-provenance.ts` - loader duplicate-order and record/error policy now route through `src/extension-host/loader-policy.ts` - loader discovery policy outcomes now route through `src/extension-host/loader-discovery-policy.ts` @@ -66,6 +68,7 @@ How it has been implemented: - by starting loader/lifecycle migration with activation and SDK alias compatibility helpers while leaving discovery and policy flow unchanged - by moving cache-key construction, cache reads, cache writes, and cache clearing next while leaving activation-state ownership unchanged - by moving provenance and duplicate-order policy next, so lifecycle migration can land on host-owned policy helpers instead of loader-local utilities +- by extracting lazy runtime proxy creation and alias-wired Jiti module-loader creation into host-owned helpers before broader bootstrap or lifecycle ownership changes - by moving initial candidate planning and record construction next while leaving module import and registration flow unchanged - by moving entry-path opening and module import next while leaving cache wiring and lifecycle orchestration unchanged - by moving loader runtime decisions next while preserving the current lazy-load, config-validation, and memory-slot behavior diff --git a/docs/.internal/extension-host-migration/openclaw-kernel-event-pipeline-spec.md b/docs/.internal/extension-host-migration/openclaw-kernel-event-pipeline-spec.md index a30f357c8d8..844140e40e3 100644 --- a/docs/.internal/extension-host-migration/openclaw-kernel-event-pipeline-spec.md +++ b/docs/.internal/extension-host-migration/openclaw-kernel-event-pipeline-spec.md @@ -39,6 +39,8 @@ Relevant prerequisite work that has landed: - 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 +- loader alias-wired module loader creation now has a host-owned helper boundary +- loader lazy runtime proxy creation now has a host-owned helper boundary - loader initial candidate planning and record creation now have a host-owned helper boundary - loader entry-path opening and module import now have a host-owned helper boundary - loader module-export resolution, config validation, and memory-slot load decisions now have a host-owned helper boundary diff --git a/docs/.internal/extension-host-migration/openclaw-kernel-extension-host-transition-plan.md b/docs/.internal/extension-host-migration/openclaw-kernel-extension-host-transition-plan.md index 2f04be91424..6cebbaebaa4 100644 --- a/docs/.internal/extension-host-migration/openclaw-kernel-extension-host-transition-plan.md +++ b/docs/.internal/extension-host-migration/openclaw-kernel-extension-host-transition-plan.md @@ -46,7 +46,9 @@ What has landed: - a host-owned resolved-extension registry view now exists for static consumers - an initial Phase 0 cutover inventory now exists in `src/extension-host/cutover-inventory.md` - plugin SDK alias resolution now routes through `src/extension-host/loader-compat.ts` +- loader alias-wired module loader creation now routes through `src/extension-host/loader-module-loader.ts` - loader cache key construction and registry cache control now route through `src/extension-host/loader-cache.ts` +- loader lazy runtime proxy creation now routes through `src/extension-host/loader-runtime-proxy.ts` - loader provenance helpers now route through `src/extension-host/loader-provenance.ts` - loader duplicate-order and record/error policy now route through `src/extension-host/loader-policy.ts` - loader discovery policy outcomes now route through `src/extension-host/loader-discovery-policy.ts` @@ -84,6 +86,7 @@ How it was done: - by leaving duplicate enforcement in legacy subsystems only where that behavior has not been migrated yet, such as plugin commands - by moving the first loader-owned compatibility pieces behind host-owned helpers before changing discovery, enablement, or policy flow - by moving cache-key construction, cache reads, cache writes, and cache clearing behind host-owned helpers before changing activation-state ownership +- by extracting lazy runtime proxy creation and alias-wired Jiti module-loader creation into host-owned helpers before broader bootstrap or lifecycle ownership changes - by moving the next loader-owned policy helpers behind host-owned modules while preserving the current load/skip/error behavior - by moving initial candidate planning and record construction behind host-owned helpers before changing import and registration flow - by moving entry-path opening and module import behind host-owned helpers before changing cache wiring or lifecycle orchestration @@ -120,6 +123,7 @@ Committed implementation slices so far: - `fd7488e10a` `Plugins: add loader finalization policy` - `97e2af7f97` `Plugins: add loader discovery policy` - `83b18eab72` `Plugins: share loader provenance helpers` +- `52495d23d5` `Plugins: extract loader runtime factories` - `89414ed857` `Docs: track extension host migration internally` - `d8af1eceaf` `Docs: refresh extension host migration status`