privacy-request-review
Judge a data subject erasure or export request against explicit policy evidence, record the verdict durably through the store, and emit only a bounded handoff for a separate governed downstream run.
- License 许可
- Apache-2.0
- 所属仓库
- runxhq/runx
- 最近更新
- 2026-11-14
- Stars
- ★ 103
- Forks
- 108
01 前言 Front Matter
- name
- privacy-request-review
- description
- Judge a data subject erasure or export request against explicit policy evidence, record the verdict durably through the store, and emit only a bounded handoff for a separate governed downstream run.
02 资源文件 16
- 参考文档eval_queries.json2.5 KB
- 参考文档evals/evals.json361 B
- 参考文档evals/files/recorded-erasure-verdict.json3.4 KB
- 资产文件mark.svg378 B
- 参考文档packets/verdict.v1.schema.json4.9 KB
- 脚本privacy-request-review.mjs4.4 KB
- 脚本privacy-request-review.test.mjs3.5 KB
- 参考文档references/catalog.md165 B
- 参考文档references/mark-license.md3.1 KB
- 参考文档run.yaml8.2 KB
- 参考文档tests/composes-in-workflow.yaml249 B
- 参考文档tests/conflicted-append.yaml219 B
- 参考文档tests/privacy-request-review-eligible-erasure-records-verdict.yaml1.6 KB
- 参考文档tests/privacy-request-review-needs-policy.yaml395 B
- 参考文档tests/privacy-request-review-unverified-requestor-refused.yaml1.3 KB
- 参考文档tests/refuses-scope-outside-the-requested-data-classes.yaml1.4 KB
03 SKILL.md 正文
Privacy Request Review
Judge whether a data subject request is in policy without erasing, exporting,
or sending anything. The skill consumes a request packet, metadata of an upstream-verified requestor assertion, and
policy bounds, decides eligibility deterministically, appends the verdict to
the subject request event stream through the store's events.append, 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.
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 and scope must sit inside bothscope_bounds.data_classesand the type-specific allowed list. Explicit requested scopes must also be within the requested data classes. These names are exact policy identifiers, not a wildcard or implicit subfield language. A mismatch refuses with named reasons; nothing is inferred. - The verdict, eligible or refused, is appended to the pinned store
stream with optimistic concurrency and an idempotency key, so repeated runs
cannot double-record. A verdict decides something about a person, so the
append waits on a person's approval of the exact event (
privacy_verdict), whatever the run'seffects. - An independent
events.readreads the exact original event position. Finalization requires a committed/replayed append at the expected version and matching source, event id, version and digest. A conflict cannot become a committed verdict. The final packet retains both native input digests. - An eligible result carries the exact subject/classes/scopes but no selected execution path. The operator must choose the owning product's erasure or secure subject-export capability. A refusal carries human review and no handoff. Do not invent a generic read/redact/send pipeline.
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/privacy-request-review.verdict.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 request's
place in this skill's own requests stream, which only it writes: its key,
expected_version and idempotency_key. persistence.key reports that key.
Trust and continuation
The host must obtain and verify identity through its actual identity provider before supplying assertion metadata. A timestamp, trusted provider name and digest-shaped string do not independently authenticate anyone. This review checks the supplied bindings against policy and records that conditional judgment; it performs no provider verification or legal determination.
Retain the original assertion/source provenance, policy, request and stable key with the result. Delivery must bind the actual verified requester and secure destination. Export the subject's entitled data: blindly applying PII redaction to that subject's own records can defeat the request. Apply third-party redaction or withholding only under the selected product's explicit policy.
A stale append returns a failure with no committed verdict. Inspect the current stream and preserve the original identity; do not silently retry a new write. Readback checks the original event position, so later unrelated events do not invalidate confirmation of an already committed verdict. A committed policy verdict is never authorization or proof of erasure, export or delivery.
04 同仓库更多 Skills
webhook-handoff
Validate a runx execution context and deliver a governed payload once to an n8n Cloud workflow webhook or a Zapier Catch Hook, with exact approval and the receiver's acknowledgement receipted.
web-search
Discover a bounded set of fresh web source candidates from one explicit search query, preserve provider evidence and reported cost, and prepare source selection for fetching and research.
web-fetch
Fetch and extract one public web source, optionally restrict its hosts, and return the content by digest with full provenance.
vuln-triage
Prioritize actual exact-coordinate vulnerability findings, preserve unknown exposure and partial coverage, and return practical remediation or an unsent advisory draft.
Govern X (Twitter) account work through three lanes: evidence reads, typed act plans for posting and account hygiene, and gated execution with per-act provider evidence. Nothing reaches a live timeline or mutates an account without an explicit approval recorded in the receipt.
team-delegate
Divide bounded work across an operator-selected team and return exact member assignments with source context, scope ceilings and acceptance checks.