docs: clarify source concepts and platform bindings

This commit is contained in:
lda
2026-06-14 01:03:50 +07:00 Verified
parent d596898b96
commit 9c63ae1411
10 changed files with 29 additions and 30 deletions
+2 -1
View File
@@ -19,7 +19,8 @@ implementation plans are kept for context, not as active instructions.
- [`wf_api_architecture.md`](wf_api_architecture.md): workflow application API, - [`wf_api_architecture.md`](wf_api_architecture.md): workflow application API,
server/transport boundaries, and source package split. server/transport boundaries, and source package split.
- [`source_architecture.md`](source_architecture.md): source provider package - [`source_architecture.md`](source_architecture.md): source provider package
map for built-in, MCP, Python, and future source families. map and terminology for sources, tools, workflow capabilities, resources,
prompts, and logical source refs.
- [`wf_mcp_architecture.md`](wf_mcp_architecture.md): MCP package boundaries, - [`wf_mcp_architecture.md`](wf_mcp_architecture.md): MCP package boundaries,
dependency rules, reload/proxy behavior, and extraction seams. dependency rules, reload/proxy behavior, and extraction seams.
@@ -179,14 +179,12 @@ uv run wf --config wf.python.config.json draft save python_echo_ws `
--version 1 ` --version 1 `
--title "Python Echo" ` --title "Python Echo" `
--outcome ok ` --outcome ok `
--binding local.ops=local.ops ` --binding local.ops=local.ops
--binding wf.std=wf.std
uv run wf --config wf.python.config.json deploy save python_echo.default ` uv run wf --config wf.python.config.json deploy save python_echo.default `
--artifact python_echo ` --artifact python_echo `
--version 1 ` --version 1 `
--binding local.ops=local.ops ` --binding local.ops=local.ops
--binding wf.std=wf.std
uv run wf --config wf.python.config.json run start python_echo.default ` uv run wf --config wf.python.config.json run start python_echo.default `
--input '{"text":"hello workflow"}' --input '{"text":"hello workflow"}'
+2 -4
View File
@@ -230,14 +230,12 @@ uv run wf --config wf.python.config.json draft save python_echo_ws `
--version 1 ` --version 1 `
--title "Python Echo" ` --title "Python Echo" `
--outcome ok ` --outcome ok `
--binding local.ops=local.ops ` --binding local.ops=local.ops
--binding wf.std=wf.std
uv run wf --config wf.python.config.json deploy save python_echo.default ` uv run wf --config wf.python.config.json deploy save python_echo.default `
--artifact python_echo ` --artifact python_echo `
--version 1 ` --version 1 `
--binding local.ops=local.ops ` --binding local.ops=local.ops
--binding wf.std=wf.std
uv run wf --config wf.python.config.json run start python_echo.default ` uv run wf --config wf.python.config.json run start python_echo.default `
--input '{"text":"hello workflow"}' --input '{"text":"hello workflow"}'
+2 -2
View File
@@ -45,8 +45,8 @@ clear operator feedback before adding more architecture.
[`RPC CLI smoke runbook`](runbooks/rpc-cli-smoke.md). [`RPC CLI smoke runbook`](runbooks/rpc-cli-smoke.md).
- Completed: automated RPC CLI smoke example: - Completed: automated RPC CLI smoke example:
[`RPC CLI smoke example`](historical/superpowers/plans/2026-06-09-rpc-cli-smoke-example.md). [`RPC CLI smoke example`](historical/superpowers/plans/2026-06-09-rpc-cli-smoke-example.md).
- Next docs/ergonomics cleanup: make `cap call` output safer for humans without - Completed: `cap call` output is safer for humans through compact/text modes
changing default JSON semantics. Implementation: without changing default JSON semantics. Implementation:
[`cap call output safety`](historical/superpowers/plans/2026-06-09-cap-call-output-safety.md). [`cap call output safety`](historical/superpowers/plans/2026-06-09-cap-call-output-safety.md).
- Keep status read-only; do not mutate registry, auth, config, or stores. - Keep status read-only; do not mutate registry, auth, config, or stores.
+1 -1
View File
@@ -4,7 +4,7 @@ This repository has workflow kernel, API/server, transport, source, CLI, example
and tests packages. The older MCP package still exists, but new durable client and tests packages. The older MCP package still exists, but new durable client
paths should go through `wf_server` plus transport/source packages. paths should go through `wf_server` plus transport/source packages.
For the source-provider-specific map, see For the source-provider-specific map and source/tool/capability terminology, see
[`source_architecture.md`](source_architecture.md). [`source_architecture.md`](source_architecture.md).
For source provider setup examples, see For source provider setup examples, see
[`source_provider_guide.md`](source_provider_guide.md). [`source_provider_guide.md`](source_provider_guide.md).
+4 -6
View File
@@ -135,8 +135,8 @@ uv run wf --url http://127.0.0.1:8766/rpc draft create-from-capability `
python_echo_ws local.ops.echo --name python_echo python_echo_ws local.ops.echo --name python_echo
``` ```
Save it as an artifact. Include both the Python source binding and `wf.std`; Save it as an artifact. Bind the configured Python source. Built-in platform
the generated scaffold can use built-in helper nodes such as `wf.std.replace`. sources such as `wf.std` can be used by generated scaffolds without self-binding.
```powershell ```powershell
uv run wf --url http://127.0.0.1:8766/rpc draft save python_echo_ws ` uv run wf --url http://127.0.0.1:8766/rpc draft save python_echo_ws `
@@ -144,8 +144,7 @@ uv run wf --url http://127.0.0.1:8766/rpc draft save python_echo_ws `
--version 1 ` --version 1 `
--title "Python Echo" ` --title "Python Echo" `
--outcome ok ` --outcome ok `
--binding local.ops=local.ops ` --binding local.ops=local.ops
--binding wf.std=wf.std
``` ```
Save a deployment with the same bindings: Save a deployment with the same bindings:
@@ -154,8 +153,7 @@ Save a deployment with the same bindings:
uv run wf --url http://127.0.0.1:8766/rpc deploy save python_echo.default ` uv run wf --url http://127.0.0.1:8766/rpc deploy save python_echo.default `
--artifact python_echo ` --artifact python_echo `
--version 1 ` --version 1 `
--binding local.ops=local.ops ` --binding local.ops=local.ops
--binding wf.std=wf.std
``` ```
Run it: Run it:
+2 -2
View File
@@ -107,8 +107,8 @@ Use unique ids so repeated runs do not collide:
```bash ```bash
uv run wf --config wf.config.json draft create-from-capability smoke_ws wf.std.constant --name smoke_constant --title "Smoke Constant" uv run wf --config wf.config.json draft create-from-capability smoke_ws wf.std.constant --name smoke_constant --title "Smoke Constant"
uv run wf --config wf.config.json draft validate smoke_ws uv run wf --config wf.config.json draft validate smoke_ws
uv run wf --config wf.config.json draft save smoke_ws --artifact smoke_artifact --version 1 --title "Smoke Artifact" --outcome ok --binding wf.std=wf.std uv run wf --config wf.config.json draft save smoke_ws --artifact smoke_artifact --version 1 --title "Smoke Artifact" --outcome ok
uv run wf --config wf.config.json deploy save smoke_deploy --artifact smoke_artifact --version 1 --binding wf.std=wf.std uv run wf --config wf.config.json deploy save smoke_deploy --artifact smoke_artifact --version 1
uv run wf --config wf.config.json deploy validate smoke_deploy uv run wf --config wf.config.json deploy validate smoke_deploy
uv run wf --config wf.config.json run start smoke_deploy --input '{"value":"from workflow"}' uv run wf --config wf.config.json run start smoke_deploy --input '{"value":"from workflow"}'
``` ```
+4 -3
View File
@@ -150,9 +150,10 @@ Configured sources are explicit server/operator choices:
Do not move `wf.std` or `wf.recipes` into `wf_sources_python`. They are not Do not move `wf.std` or `wf.recipes` into `wf_sources_python`. They are not
operator-configured project sources. operator-configured project sources.
Generated draft workflows may still require built-in helper sources such as Generated draft workflows may still use built-in helper sources such as
`wf.std`; deployment examples should bind both the configured source and any `wf.std`. Platform sources do not need deployment bindings, so deployment
built-in requirements reported by validation. examples should bind configured sources only unless validation reports a
non-platform logical source requirement.
## `wf_sources_mcp` Internal Layers ## `wf_sources_mcp` Internal Layers
@@ -2,6 +2,10 @@
Date: 2026-06-09 Date: 2026-06-09
Historical note: this smoke captured older platform-source behavior. Current
deployments no longer need self-bindings such as `wf.std=wf.std` for built-in
platform sources.
Target: Target:
```powershell ```powershell
+6 -7
View File
@@ -149,7 +149,9 @@ render prompts, which can be large or stateful upstream operations.
## Output Policy ## Output Policy
JSON is the default output format for every command. JSON is the default for detail, mutation, and execution commands unless a
command documents a safer human default. Some inventory commands default to
line-oriented names/ids to avoid dumping large payloads.
List/discovery commands may support: List/discovery commands may support:
@@ -289,8 +291,7 @@ wf draft save concat_ws \
--artifact concat_ws \ --artifact concat_ws \
--version 1 \ --version 1 \
--title "Concat Workflow" \ --title "Concat Workflow" \
--outcome ok \ --outcome ok
--binding wf.std=wf.std
``` ```
Use `--kind wrapper` when saving a callable wrapper artifact: Use `--kind wrapper` when saving a callable wrapper artifact:
@@ -301,8 +302,7 @@ wf draft save concat_ws \
--version 1 \ --version 1 \
--title "Concat Wrapper" \ --title "Concat Wrapper" \
--kind wrapper \ --kind wrapper \
--outcome ok \ --outcome ok
--binding wf.std=wf.std
``` ```
## Artifacts ## Artifacts
@@ -334,8 +334,7 @@ Save a deployment from flags:
```bash ```bash
wf deploy save concat_ws.default \ wf deploy save concat_ws.default \
--artifact concat_ws \ --artifact concat_ws \
--version 1 \ --version 1
--binding wf.std=wf.std
``` ```
Save a deployment from JSON: Save a deployment from JSON: