docs: record legacy config migration path
This commit is contained in:
@@ -191,6 +191,17 @@ implementation state.
|
||||
import-direction guard. The durable fix is not a permanent split launcher;
|
||||
it is making `wf_config` wide enough that the RPC server can compose from
|
||||
neutral config while MCP-specific adapters stay selected by source kind.
|
||||
- Legacy config migration: add a converter from old `wf_mcp.config.json`
|
||||
(`store_root`, `connections[]`) into the wider `wf_config` shape
|
||||
(`server.store`, `server.sources[]`). `server.store` is already a
|
||||
discriminated union (`kind: "filesystem"` today, future SQL/store backends
|
||||
later), so the conversion should map old `store_root` to
|
||||
`server.store.root` without inventing a parallel store field. Old MCP HTTP
|
||||
metadata values such as `http`, `streamable-http`, `streamable_http`, and
|
||||
`sse` should normalize into the neutral HTTP source transport while
|
||||
preserving enough metadata for MCP/FastMCP compatibility. `sse` is legacy
|
||||
protocol shape, but keep conversion support because FastMCP deployments may
|
||||
still use it.
|
||||
- Manual product smoke: run `wf-rpc-server --mcp-config ...`, point
|
||||
`wf --url ...` at it, and capture real CLI/server UX gaps before adding
|
||||
more architecture.
|
||||
|
||||
@@ -398,13 +398,23 @@ Next implementation slices should be:
|
||||
transport-only. After `wf_config` can describe MCP sources, `wf-rpc-server
|
||||
--config ...` should compose MCP-backed sources from neutral config and the
|
||||
`--mcp-config` path can become deprecated/legacy.
|
||||
3. Manual product smoke with the real CLI/server commands. Record UX/runtime
|
||||
3. Legacy MCP config migration. Provide an explicit converter from old
|
||||
`wf_mcp.config.json` into `WorkflowConfigFile`: `store_root` maps to
|
||||
`server.store` (`StoreConfig` is already a discriminated union; currently
|
||||
only `kind: "filesystem"` exists), and each legacy connection maps to a
|
||||
`kind: "mcp"` source. Preserve `source_config_ownership` as the neutral
|
||||
`ownership` field. Normalize old HTTP-like transport metadata
|
||||
(`http`, `streamable-http`, `streamable_http`, `sse`) into the neutral HTTP
|
||||
MCP source transport while preserving compatibility metadata where needed.
|
||||
`sse` remains legacy/deprecated, but conversion support is intentional
|
||||
because FastMCP can still expose it.
|
||||
4. Manual product smoke with the real CLI/server commands. Record UX/runtime
|
||||
gaps before broadening architecture.
|
||||
4. Source registry apply/reload semantics. Registry mutation currently updates
|
||||
5. Source registry apply/reload semantics. Registry mutation currently updates
|
||||
desired persisted state; the next explicit decision is whether changes apply
|
||||
only after restart, through an explicit reload/apply operation, or through
|
||||
automatic live reconciliation. Prefer explicit reload/apply for v1.
|
||||
5. Persisted resume across server restart. Rebuild the MCP-backed RPC server
|
||||
6. Persisted resume across server restart. Rebuild the MCP-backed RPC server
|
||||
from the same stores and prove interrupted runs resume from the stored
|
||||
checkpoint and pinned dependency environment.
|
||||
|
||||
|
||||
@@ -43,6 +43,10 @@ Prefer neutral workflow config for new MCP-backed servers:
|
||||
```
|
||||
|
||||
`--mcp-config` is still accepted for legacy broker config files.
|
||||
Future migration support should let users convert that legacy shape into the
|
||||
neutral config above. The old `store_root` field maps to
|
||||
`server.store: {"kind": "filesystem", "root": ...}`; old `connections[]` map to
|
||||
`server.sources[]` entries with `kind: "mcp"`.
|
||||
|
||||
Start a JSON-RPC server backed by MCP broker config and MCP-capable sources:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user