Skip to content

Latest commit

 

History

History
33 lines (25 loc) · 1.53 KB

File metadata and controls

33 lines (25 loc) · 1.53 KB

Vendored kernels

This package vendors two upstream kernel packages into src/mcp_tool_provenance/_vendor/ so it has zero runtime dependencies and stays importable on Python 3.9+.

Vendored package Source repo Version Vendored path
toulmin_argument toulmin-argument 1.0.0 src/mcp_tool_provenance/_vendor/toulmin_argument/
provenance_tags provenance-tags 1.0.0 src/mcp_tool_provenance/_vendor/provenance_tags/

Why vendored

The provenance envelope this library stamps onto tool results is exactly:

  • a Toulmin argument (claim / grounds / warrant / qualifier / rebuttal) — the toulmin_argument.ToulminArgument type, and
  • a four-dimension tag block (scope / signal_type / attribution / uncertainty) — the provenance_tags.ArtifactTags type.

Rather than take a hard dependency on two tiny packages, we vendor them. Both are pure standard library, so vendoring carries no transitive-dependency cost and preserves 3.9 compatibility.

Sync policy

  • Each vendored file carries a # vendored from <kernel> v<version> — do not edit banner on line 1.
  • Do not edit vendored files in place. To update, re-copy the kernel's src package, re-add the banner, and bump the version in the table above.
  • The library imports the envelope types from the vendored path only (from ._vendor.toulmin_argument import ...), never from a top-level install, so an unrelated copy of the kernel on the host cannot shadow ours.