mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 16:01:01 +00:00
test(plugin-sdk): use narrow config runtime mocks
This commit is contained in:
@@ -145,8 +145,10 @@ releases.
|
||||
| Secret input resolution | `openclaw/plugin-sdk/secret-input-runtime` |
|
||||
| Model/session overrides | `openclaw/plugin-sdk/model-session-runtime` |
|
||||
|
||||
Bundled production plugins are scanner-guarded against the broad barrel so
|
||||
imports stay local to the behavior they need.
|
||||
Bundled plugins and their tests are scanner-guarded against the broad
|
||||
barrel so imports and mocks stay local to the behavior they need. The broad
|
||||
barrel still exists for external compatibility, but new code should not
|
||||
depend on it.
|
||||
|
||||
</Step>
|
||||
|
||||
@@ -233,6 +235,7 @@ releases.
|
||||
|
||||
```bash
|
||||
grep -r "plugin-sdk/compat" my-plugin/
|
||||
grep -r "plugin-sdk/config-runtime" my-plugin/
|
||||
grep -r "openclaw/extension-api" my-plugin/
|
||||
```
|
||||
|
||||
|
||||
@@ -41,13 +41,14 @@ Persist changes with `api.runtime.config.mutateConfigFile(...)` or `api.runtime.
|
||||
|
||||
The mutation helpers return `afterWrite` plus a typed `followUp` summary so callers can log or test whether they requested a restart. The gateway still owns when that restart actually happens.
|
||||
|
||||
`api.runtime.config.loadConfig()` and `api.runtime.config.writeConfigFile(...)` are deprecated compatibility helpers under `runtime-config-load-write`. They warn once at runtime, and bundled plugins must not use them; the config boundary guards fail if production plugin code calls them or imports those helpers from plugin SDK subpaths.
|
||||
`api.runtime.config.loadConfig()` and `api.runtime.config.writeConfigFile(...)` are deprecated compatibility helpers under `runtime-config-load-write`. They warn once at runtime, and remain available for old external plugins during the migration window. Bundled plugins must not use them; the config boundary guards fail if plugin code calls them or imports those helpers from plugin SDK subpaths.
|
||||
|
||||
For direct SDK imports, use the focused config subpaths instead of the broad
|
||||
`openclaw/plugin-sdk/config-runtime` compatibility barrel: `config-types` for
|
||||
types, `plugin-config-runtime` for already-loaded config assertions and plugin
|
||||
entry lookup, `runtime-config-snapshot` for current process snapshots, and
|
||||
`config-mutation` for writes.
|
||||
`config-mutation` for writes. Bundled plugin tests should mock these focused
|
||||
subpaths directly instead of mocking the broad compatibility barrel.
|
||||
|
||||
Internal OpenClaw runtime code has the same direction: load config once at the CLI, gateway, or process boundary, then pass that value through. Successful mutation writes refresh the process runtime snapshot and advance its internal revision; long-lived caches should key off the runtime-owned cache key instead of serializing config locally. Long-lived runtime modules have a zero-tolerance scanner for ambient `loadConfig()` calls; use a passed `cfg`, a request `context.getRuntimeConfig()`, or `getRuntimeConfig()` at an explicit process boundary.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user