0xsarwagya/clinical-receipt

GitHub: 0xsarwagya/clinical-receipt

一个用于记录和离线验证临床 AI 输出产生全过程的便携式签名回执库。

Stars: 0 | Forks: 0

# clinical-receipt 便携式、可独立验证的回执,记录临床 AI 输出结果的产生过程。 一个 TypeScript 库,用于记录 AI 生成的临床输出背后的输入、证据、提示词、模型、工具、安全护栏以及人类决策——然后对其进行提交、签名,并允许任何人离线验证该记录。 该包能够证明已提交的记录未被篡改。它无法证明原始记录的真实性。这一区别是刻意为之的;它体现在文档、报告和规范中。 ## 它不是什么 不是区块链。不是托管服务。不是合规产品。不是 LLM 可观测性仪表板。不能替代临床验证。 ## 安装 ``` npm install @0xsarwagya/clinical-receipt ``` Node ≥ 20(支持 Ed25519 的 Web Crypto)。 ## 用法 ``` import { createReceipt, createEd25519Signer } from "@0xsarwagya/clinical-receipt"; const run = await createReceipt({ workflow: { id: "discharge-review", version: "2.1.0" }, }); await run.input.observed({ value: patientBundle }); await run.evidence.retrieved({ value: { chunk: "guideline text", rank: 1 }, mode: "reference", ref: { uri: "guidelines://hf/2026", version: "2026-06-14" }, }); await run.prompt.rendered({ value: renderedPrompt }); await run.model.responded({ value: modelOutput }); await run.guardrail.evaluated({ value: { policy, result: "passed" } }); await run.humanReview.completed({ value: reviewRecord }); await run.output.committed({ value: finalOutput }); const signer = await createEd25519Signer({ generate: true }); const receipt = await run.finalize({ signer }); ``` 在任何地方验证: ``` import { verifyReceipt, importVerificationKey } from "@0xsarwagya/clinical-receipt/verify"; const key = await importVerificationKey(publicJwk); const report = await verifyReceipt(receipt, { keys: [key] }); // report.ok, report.integrity, report.signatures, report.warnings, ... ``` ## FHIR 自 v0.2 版起,封装你的 FHIR 访问,以提交 AI 看到的确切资源版本: ``` import { instrumentFHIRFetch, verifyFHIR } from "@0xsarwagya/clinical-receipt/fhir"; const fhirFetch = instrumentFHIRFetch(globalThis.fetch, { run, baseUrl: "https://hapi.fhir.org/baseR4", }); const patient = await fhirFetch(`${BASE}/Patient/123`).then((r) => r.json()); // reads, searches, and writes are now part of the receipt. ``` `org.hl7.fhir` 扩展的传输格式被固定在 [`spec/1.0/fhir.md`](./spec/1.0/fhir.md) 中;向量位于 [`spec/1.0/vectors/fhir-*.json`](./spec/1.0/vectors/) 下。 ## CLI ``` clinical-receipt verify receipt.json clinical-receipt verify --disclosure package.json --key public.jwk clinical-receipt inspect receipt.json clinical-receipt disclose receipt.json --event output.* --out share.json ``` 退出码:0 正常,1 验证失败,2 用法或 IO 错误。 ## 规范 传输格式是一个版本化的规范,而不是实现细节。每一项字节级规则都位于 [`spec/1.0/`](./spec/1.0/) 中。[`spec/1.0/vectors/`](./spec/1.0/vectors/) 中的测试向量针对规范化、承诺、树结构、标头叶子和完整回执进行了字节级固定;签名仅在验证方向上固定(WebKit 对 Ed25519 采取了对冲策略)。 任何使用规范 1.0 的实现——无论使用何种语言——都必须验证这些向量。 ## 许可证 Apache-2.0。这是基础设施,其专利授权至关重要。
标签:CVE, FHIR, LLM溯源, MITM代理, TypeScript, Zenmap, 临床AI, 医疗AI, 可追溯性, 安全插件, 数字签名, 数据完整性, 自动化攻击