dsh-duty-separation-proof
模型与 MCP 活跃维护

dsh-duty-separation-proof

dongsheng123132/dsh-duty-separation-proof

为所对接工作流回执提供离线内容寻址的职责分离证明生成能力,依托内容寻址技术保证证明不可篡改,无需联网即可完成存证校验,贴合工作流回执存证的实际使用场景。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
16 KB
仓库大小
26 天前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:dongsheng123132/dsh-duty-separation-proof
git clone https://github.com/dongsheng123132/dsh-duty-separation-proof.git
git clone git@github.com:dongsheng123132/dsh-duty-separation-proof.git
README.md main

dsh-duty-separation-proof

Offline, deterministic evidence that one supplied DSH workflow kept declared duties apart. It validates exact request/approval/execution/observation order, hash-bound object and workflow identity, receipt-chain continuity, disjoint principal sets, approval quorum, principal/observer diversity and freshness. It writes only a redacted, content-addressed JSON verdict.

This is not an authorization system. It does not grant roles, approve requests, execute changes, authenticate receipts, inspect live systems, or prove that the supplied ledger is exhaustive.

Why this is a separate layer

NIST distinguishes static, dynamic, object-based, operational and history-based separation of duties. This plugin implements a narrow post-hoc evidence layer for one supplied workflow object. It complements:

  • dsh-guarded-hcl, whose separation is specific to optimizer/evaluator/policy/commit-controller boundaries;
  • dsh-decision-effect-proof, which reconciles authorization decisions with effects;
  • dsh-artifact-promotion-proof, which verifies an artifact's promotion chain;
  • dsh-access-review-proof, which verifies entitlement recertification closure.

Here, the question is only: did the supplied hash-linked workflow receipts satisfy the declared duty-conflict policy?

Use

npm test
npm run check
node bin/dsh-duty-separation-proof.mjs inspect examples/settled.json
node bin/dsh-duty-separation-proof.mjs verify examples/settled.json

The DSH bundle exposes dsh_duty_separation_inspect and dsh_duty_separation_verify. The standalone MCP server exposes equivalent proof-only inline tools.

Manifest boundary

All workflow, object, revision, policy, principal, observer and receipt identities are lowercase SHA-256 values. The only public identifier is a bounded proofId, and reports contain only its hash. The required sequence starts with request, contains execute, ends with observe, and may contain multiple approve stages. disjointDutySets and quorum thresholds are explicit policy input.

Reports intentionally say authenticatesReceipts: false, provesLedgerExhaustive: false, and provesAbsenceOfUndeclaredActions: false.

References

MIT licensed.