aga_disclose_claim
Request disclosure of a claim with automatic substitution when sensitivity is denied. Supports proof-only, minimal, or full reveal modes for controlled information access.
Instructions
Request disclosure of a claim. Auto-substitutes if sensitivity denied. (Claim 2)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| claim_id | Yes | ||
| requester_id | No | anonymous | |
| mode | No | REVEAL_MIN | |
| disclosure_mode | No |
Implementation Reference
- src/tools/disclose-claim.ts:12-37 (handler)The handler function that executes the logic for disclosing a claim.
export async function handleDiscloseClaim(args: DiscloseClaimArgs, ctx: ServerContext) { const latest = await ctx.storage.getLatestEvent(); const result = processDisclosure( { requested_claim_id: args.claim_id, requester_id: args.requester_id ?? 'anonymous', mode: args.mode ?? 'REVEAL_MIN', timestamp: utcNow(), }, ctx.defaultClaims, ctx.claimValues, 1, latest?.sequence_number ?? 0, ctx.portalKP, ); if (result.substitution_receipt) { await ctx.appendToChain('SUBSTITUTION', result.substitution_receipt); } else { await ctx.appendToChain('DISCLOSURE', { claim_id: args.claim_id, mode: args.mode ?? 'REVEAL_MIN', permitted: result.permitted, }); } return ctx.json({ success: true, ...result }); } - src/tools/disclose-claim.ts:6-10 (schema)Schema/Interface defining the input arguments for the disclose claim tool.
export interface DiscloseClaimArgs { claim_id: string; requester_id?: string; mode?: DisclosureMode; } - src/server.ts:220-230 (registration)Registration of the 'aga_disclose_claim' tool within the server.
// 12. aga_disclose_claim (governed) governedTool('aga_disclose_claim', 'Request disclosure of a claim. Auto-substitutes if sensitivity denied. (Claim 2)', { claim_id: z.string(), requester_id: z.string().default('anonymous'), mode: z.enum(['PROOF_ONLY', 'REVEAL_MIN', 'REVEAL_FULL']).default('REVEAL_MIN'), disclosure_mode: z.enum(['PROOF_ONLY', 'REVEAL_MIN', 'REVEAL_FULL']).optional(), }, async (args) => handleDiscloseClaim({ claim_id: args.claim_id,