noa-receipt
Version:
NOA Agent Action Receipt — open, offline-verifiable provenance for AI-agent actions. The governance/receipt organ only; the NOA brain is separate and proprietary.
48 lines (47 loc) • 1.69 kB
TypeScript
export declare const ACTION_DIGEST_SPEC: "noa.action-digest/0.1";
export declare const ACTION_DIGEST_DOMAIN = "NOA-ActionDigest-v0.1-dig";
export interface ActionDigestProjection {
readonly spec: typeof ACTION_DIGEST_SPEC;
readonly authorizationReceiptHash: string;
readonly tenant: string;
readonly chain: string;
readonly actionId: string;
readonly actionCanonical: string;
readonly actionParamsHash: string;
readonly executionGrantId: string;
readonly executionGrantHash: string;
readonly executionNonce: string;
}
export type ActionDigestBuildResult = {
readonly ok: true;
readonly digest: string;
readonly projection: ActionDigestProjection;
} | {
readonly ok: false;
readonly reason: string;
};
export type ActionDigestVerifyResult = {
readonly ok: true;
readonly digest: string;
readonly projection: ActionDigestProjection;
readonly classification: "ACTION_DIGEST_LINKAGE_MATCHED";
} | {
readonly ok: false;
readonly reason: string;
};
export interface ActionDigestContext {
readonly chain: readonly unknown[];
readonly grant: unknown;
readonly keyring: unknown;
readonly identityManifest?: unknown;
readonly expect: {
readonly tenant: string;
readonly chain: string;
};
}
export interface ActionDigestClaim {
readonly spec: typeof ACTION_DIGEST_SPEC;
readonly digest: string;
}
export declare function buildActionDigest(receiptBytes: Uint8Array | string, grantBytes: Uint8Array | string): ActionDigestBuildResult;
export declare function verifyActionDigest(claimBytes: Uint8Array | string, contextBytes: Uint8Array | string): ActionDigestVerifyResult;