From 5f85f9348fcb15abc941c7e060a1f6eeb634c139 Mon Sep 17 00:00:00 2001 From: Fabio Marcello Salvadori Date: Mon, 26 Oct 2026 21:27:36 +0100 Subject: [PATCH 1/2] docs(pic-standard-mcp-guard): add exact fixed-lock reproduction steps Adds a reproduction procedure that installs from the committed hash-locked requirements, installs the integration with --no-deps, and states the expected pytest, record emission, and TRACE Level 0 verification output, for Verified-tier evaluation. Signed-off-by: Fabio Marcello Salvadori --- integrations/pic-standard-mcp-guard/README.md | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/integrations/pic-standard-mcp-guard/README.md b/integrations/pic-standard-mcp-guard/README.md index 72ea6687..164918d4 100644 --- a/integrations/pic-standard-mcp-guard/README.md +++ b/integrations/pic-standard-mcp-guard/README.md @@ -56,6 +56,40 @@ fresh temporary sandbox, declared `impact: irreversible`) through `guard_mcp_too hook, observes that the tool actually ran, signs a Level 0 Trust Record, and self-verifies it before writing. All keys are deterministic Ed25519 TEST keys. +## Reproduce from the fixed lock + +This is the exact procedure for evaluating this integration. Runtime and test +dependencies are installed from the committed hash-locked requirements, and the +integration is then installed with `--no-deps`. + +From the repository root of a fresh clone, with Python 3.11 (CI also runs the +same lock on Python 3.12 and 3.13): + +```bash +python -m venv .venv +.venv/bin/python -m pip install --require-hashes -r requirements/pic-standard-mcp-guard-fixed.txt +.venv/bin/python -m pip check +.venv/bin/python -m pip install --no-deps -e integrations/pic-standard-mcp-guard +.venv/bin/python -m pip check +.venv/bin/python -m pytest integrations/pic-standard-mcp-guard/tests -q +.venv/bin/python integrations/pic-standard-mcp-guard/examples/emit_record.py --out trust-record.json +.venv/bin/trace-tests verify --record trust-record.json --level 0 +``` + +On Windows, use `.venv\Scripts\` in place of `.venv/bin/`. + +Expected: + +- both `pip check` runs report no broken requirements; +- pytest reports `157 passed`; +- `emit_record.py` prints + `wrote trust-record.json (status=record-emitted, pic_decision=allowed)`; +- `trace-tests verify` reports `Result: PASS (15 checks, 4 skipped)`. + +The fixed lock pins `pic-standard` 0.9.1, `agentrust-trace` 0.11.0, +`agentrust-trace-adapters` 0.2.0, and `agentrust-trace-tests` 0.6.2. +All four are released on PyPI. + ## What is verified - Missing, empty, or `None` `__pic_request_id` is rejected by the coordinator before From 5c83b197456f311549c247afebaaca4e37d7cd5d Mon Sep 17 00:00:00 2001 From: Fabio Marcello Salvadori Date: Mon, 26 Oct 2026 21:37:55 +0100 Subject: [PATCH 2/2] docs(pic-standard-mcp-guard): make venv setup portable Signed-off-by: Fabio Marcello Salvadori --- integrations/pic-standard-mcp-guard/README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/integrations/pic-standard-mcp-guard/README.md b/integrations/pic-standard-mcp-guard/README.md index 164918d4..fbfe840b 100644 --- a/integrations/pic-standard-mcp-guard/README.md +++ b/integrations/pic-standard-mcp-guard/README.md @@ -66,7 +66,7 @@ From the repository root of a fresh clone, with Python 3.11 (CI also runs the same lock on Python 3.12 and 3.13): ```bash -python -m venv .venv +python3 -m venv .venv .venv/bin/python -m pip install --require-hashes -r requirements/pic-standard-mcp-guard-fixed.txt .venv/bin/python -m pip check .venv/bin/python -m pip install --no-deps -e integrations/pic-standard-mcp-guard @@ -76,7 +76,8 @@ python -m venv .venv .venv/bin/trace-tests verify --record trust-record.json --level 0 ``` -On Windows, use `.venv\Scripts\` in place of `.venv/bin/`. +On Windows, create the environment with `py -3.11 -m venv .venv` and use +`.venv\Scripts\` in place of `.venv/bin/`. Expected: