dongsheng123132/dsh-surface-contract-proof

跨记录的DSH ToolRuntime、MCP JSON-RPC与CLI JSON接口的内容寻址一致性证明

项目介绍Project Overview

dsh-surface-contract-proof 是 DSH 插件,用于离线核对 ToolRuntime、MCP JSON-RPC、CLI JSON 三类录制信封在基线与观测版本间是否保持同一语义契约;它读取 SHA-256 固定的 JSON 夹具,比较 schema、错误、退出码、冲突确认、摘要等字段并生成证据报告。适合升级回归、接口一致性审计和留存不可执行证明。注意:它不运行目标、不联网、不重放副作用,只验证录制内容。

dsh-surface-contract-proof is a DSH plugin that offline-verifies recorded ToolRuntime, MCP JSON-RPC, and CLI JSON envelopes against one pinned semantic contract across baseline and observed revisions. It reads SHA-256-pinned JSON fixtures, compares schemas, errors, exit codes, conflict and confirmation behavior, normalization, timing semantics, and result digests, then produces evidence reports. Use it for upgrade regression checks and conformance audits. It does not execute the target, call network services, or replay side effects.

或使用命令行安装(适合开发者)Or use CLI install (for developers)

命令行安装CLI Install

dsh plugin --profile web add github:dongsheng123132/dsh-surface-contract-proof

dongsheng123132/dsh-surface-contract-proof 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-surface-contract-proof

CI MIT license Node.js 22+ Awesome DSH Plugins

dsh-surface-contract-proof verifies that recorded DeepSeek Harness ToolRuntime, MCP JSON-RPC, and CLI JSON envelopes preserve one pinned semantic contract across a baseline and an observed revision.

Version 0.2.0 removes the bundled DSH tool runtime and the default export that stock Cordis Loader misclassified. It exposes host-neutral tool definitions through its namespace export and is regression-tested through real local-path and fixed-commit stock Web profiles.

It reads explicit, SHA-256-pinned JSON fixtures. It does not execute the target, start arbitrary commands, call a network service, replay side effects, or implement an action core.

Complementary boundary

dsh-action-parity proves that interfaces bind the same Action ID/core and that runtime success/conflict behavior is reachable. This plugin answers a different upgrade question: given immutable recordings, did request/response schema versions, success bits, error classes, exit-code mapping, conflict and confirmation semantics, normalization, timeout/stale/out-of-order behavior, and result digests remain identical across ToolRuntime, MCP, and CLI?

Generic OpenAPI/Pact tools validate HTTP consumer-provider contracts. This verifier is specific to the three DSH machine surfaces and uses offline recorded envelopes.

Safety and evidence

  • Exactly three surface kinds are required: dsh-toolruntime, mcp-jsonrpc, and cli-json.
  • Baseline and observed fixtures bind target revisions, contract/schema versions, transport versions, and SHA-256 bytes.
  • Surface-specific fields normalize into one canonical case digest; the manifest pins each expected digest.
  • Missing, stale, malformed, secret-shaped, schema/version-drifted, or semantically different fixtures fail closed.
  • Reports expose hashes, identities, statuses, and differing field names only—never request arguments, response bodies, CLI output, prompts, messages, credentials, or secrets.
  • Paths are workspace-relative regular files; traversal and symlinks are rejected. Writes are atomic, read back, and limited to explicit artifactDir.

CLI

dsh-surface-contract-proof inspect --workspace . --manifest contract.json
dsh-surface-contract-proof verify --workspace . --manifest contract.json --artifactDir artifacts

Use inspect to obtain canonical baseline digests, review them, then pin them as cases[].expectedSha256. Exit 0 means verified; exit 2 means failed or invalid evidence.

DSH / MCP tools

  • dsh_surface_contract_inspect
  • dsh_surface_contract_verify
  • MCP aliases: surface_contract_inspect, surface_contract_verify

The MCP surface is proof-only and in-memory: it accepts bounded inline manifest/fixture JSON, reads or writes no files, and returns no fixture bodies. DSH/CLI may write only a content-addressed report beneath an explicit workspace-relative artifactDir, with atomic read-back verification.

dsh plugin --profile surface-contract add github:dongsheng123132/dsh-surface-contract-proof#<commit>

Development

npm ci
npm test
npm run check
npm run smoke:plugin
npm run smoke:mcp

MIT licensed. See SECURITY.md.

上一个 Prev dsh-checkpoint 下一个 Next dsh-smart-approval