Data Subject Request
SkillDev toolsJudge a data subject erasure or export request against explicit policy evidence, record the verdict durably through data-store, and emit only a bounded handoff for a separate governed downstream run.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Data Subject Request skill
What this skill tells your AI
The instructions your AI receives, as published by runxhq/runx in skills/data-subject-request/SKILL.md and read by ahel’s review.
Judge whether a data subject request is in policy without erasing, exporting,
or sending anything. The skill reads a request packet, requestor proof, and
policy bounds, decides eligibility deterministically, appends the verdict to
the subject request event stream through data-store, and returns a bounded
handoff that a separate governed operator run may consume.
This is not a legal authority and does not replace counsel. It is an execution boundary for policy evidence: the receipt proves which inputs were inspected, which lawful basis was named, which scope was allowed or refused, and which durable verdict was appended.
Composes
data-store#append_event
Procedure
- Native
data.digestbinds the exact request packet and policy. - Deterministic judgment: the request type must be erasure or export, the
identity provider must be in
trusted_identity_providers, the proof must carry a validverified_atand a sha256 assertion digest bound to the same subject, a lawful basis must be named for the request type, and every requested data class must sit inside bothscope_bounds.data_classesand the type-specific allowed list. Any failure refuses with every reason named; nothing is inferred. - The verdict, eligible or refused, is appended to the pinned
data-storestream with optimistic concurrency and an idempotency key, so repeated runs cannot double-record. - The final packet binds the append evidence and both digests. An eligible
verdict carries a bounded handoff (erasure operator, or
read-projection through
redact-piiintosend-asfor export); a refusal carries escalation tohuman_privacy_reviewand no handoff.
downstream_effect_performed is always false; the downstream operator owns the
actual erasure or export under its own authority and receipt.
Output
subject_request_verdict (runx.data_subject_request.v1) carries request,
decision, escalation, legal, requestor, scope_bounds, handoff or
null, persistence with the committed stream version, and both input digests.
Inputs are request_packet, requestor_proof, policy, and the data-store
binding (data_source_ref, resource, aggregate_id, expected_version,
idempotency_key).
Signals
- GitHub stars
- 87
- Forks
- 101
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
data-subject-request- Source
- github.com/runxhq/runx