Redact With Personas¶
Purpose¶
Transform real engagement artifacts into reusable examples that are:
- non-identifying
- structurally faithful
- consistent across the library
Inputs¶
- source document to redact
- persona taxonomy under
library/personas/ - local assignment registry
library/personas/.assigned-personas.yaml(gitignored)
Local assignment registry¶
Use library/personas/.assigned-personas.yaml as the repeatable real-to-persona
mapping for redaction work. The file is intentionally gitignored because it can
contain source customer names, people names, project names, and other sensitive
identifiers.
If the file is missing, create it locally before applying substitutions:
# Local sensitive mapping from real source entities to persona substitutions.
# This file is intentionally gitignored.
assignments:
organisations: {}
projects: {}
components: {}
people: {}
ticket_prefixes: {}
internal_urls: {}
filesystem_paths: {}
Treat this registry as the source of truth for deterministic redaction:
- Reuse an existing mapping whenever a source entity already appears.
- Add new mappings only after choosing from the shared persona taxonomy.
- Keep derived forms consistent, such as
project-api,Project API, andPROJECT_API, when they come from the same source entity. - Do not copy
.assigned-personas.yamlcontent into committed exemplars or documentation.
Procedure¶
- Identify customer-specific entities in the source:
- organisation names
- project/system names
- component/module names
- people names
- ticket key prefixes
- internal URLs and filesystem paths
- Resolve existing mappings from
library/personas/.assigned-personas.yaml. - For unmapped entities, assign deterministically:
- choose from matching persona category
- avoid reuse collisions
- update the local assignment registry
- keep the same mapping across the skill, sample output, and any future exemplar from the same source
- Apply substitutions consistently throughout the document, including derived forms.
- Preserve structure and evidence quality:
- keep counts, percentages, and sequencing unchanged
- keep technical findings and recommendations intact
- Emit a local redaction manifest under
library/exemplars/.redaction-maps/(gitignored). - Re-scan output for leaked source identifiers and fail if any remain.
Substitution rules¶
- Prefer role personas over fictional personal names.
- Keep ticket references syntactically valid (
PREFIX-123). - Keep code and path shapes recognizable while replacing identifying segments.
- Do not alter factual metrics unless they are directly identifying.
Output quality checks¶
- Document reads naturally as a single fictional scenario.
- Same real entity maps to same persona across all exemplars.
- No direct customer identifiers remain.