Index backend config fields cannot be resolved from environment variables or secrets
enhancement
### Summary
Index backend configuration fields (e.g. RocksDB `path`, Redis `connectionString`) could not be resolved from environment variables or secrets, unlike other plugin config values (Sources, Reactions, etc.) which support `${ENV}` and secret resolution via the shared `ConfigValue` mechanism.
### Why this is a problem
- **No parity with other plugins.** Connection strings frequently contain credentials and should be injectable via secrets; storage paths often need to be environment-specific. Hard-coding them in config (or only supplying them via injected Rust code) is inconsistent and insecure.
- **Blocks declarative deployment.** Without env/secret resolution, the same config cannot be promoted across environments.
### Expected behavior
Index backend config fields should resolve from static values, `${ENV}` variables, and secrets — and be validated *after* resolution — consistent with how other plugin DTOs work.
### Affected code
- `components/indexes/rocksdb`
- `components/indexes/garnet`
Addressed by #496.
0 条评论