docs(readme): name the okf 1.1 server by full path -- a bare okf finds the 0.8.5 dependency
The example config now has the placeholder `/path/to/okf` for `command`, and the README explains
how to find the real path (`command -v okf` outside this project's environment). It also explains
why the bare name fails under `uv run`: it resolves to this framework's own okf 0.8.5, which has
no `mcp` command. A new pin asserts that the example's command is an absolute path; it was red at
daccdbe. The xfail smoke test stays as the measurement behind the rule.
Chose this over lifting the okf dependency to 1.1: it fixes the startup failure without a version
bump and without touching --prepass-payload.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
daccdbefe6
commit
459b00f512
4 changed files with 23 additions and 11 deletions
|
|
@ -22,3 +22,10 @@ def test_okf_server_example_loads_through_the_run_loader() -> None:
|
|||
def test_okf_server_example_carries_a_neutral_placeholder_path() -> None:
|
||||
text = EXAMPLE.read_text(encoding="utf-8")
|
||||
assert "/Users/" not in text and "/home/" not in text
|
||||
|
||||
|
||||
def test_okf_server_example_names_the_server_by_full_path() -> None:
|
||||
"""A bare ``okf`` resolves to this project's own okf 0.8.5 dependency (no ``mcp``) under
|
||||
``uv run`` or an activated environment -- measured in ``test_okf_server_smoke.py``."""
|
||||
(server,) = load_mcp_config(EXAMPLE)
|
||||
assert server.command is not None and Path(server.command).is_absolute()
|
||||
|
|
|
|||
|
|
@ -155,14 +155,14 @@ async def test_allowed_tools_is_load_bearing_against_the_real_server(
|
|||
strict=True,
|
||||
raises=ToolException,
|
||||
reason=(
|
||||
"MEASURED 2026-09-21: with the README's bare `okf` command and this environment's bin "
|
||||
"MEASURED 2026-09-21 (why the README asks for a full path): with a bare `okf` command and this environment's bin "
|
||||
"first on PATH (as under `uv run` or an activated venv), the name resolves to the `okf` "
|
||||
"script of po's own dependency llm-ingestion-okf 0.8.5, which has no `mcp` subcommand: "
|
||||
"stderr `okf: error: argument command: invalid choice: 'mcp'`, and MAF raises "
|
||||
"ToolException '... failed to initialize: Connection closed' on `async with`."
|
||||
),
|
||||
)
|
||||
async def test_readme_bare_okf_command_reaches_the_1_1_server(
|
||||
async def test_bare_okf_command_reaches_the_1_1_server(
|
||||
tmp_path: Path, okf_1_1: str, invented_root: Path, monkeypatch: pytest.MonkeyPatch
|
||||
) -> None:
|
||||
monkeypatch.setenv("PATH", VENV_BIN + os.pathsep + os.environ.get("PATH", ""))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue