Services: Admin-Compliance, Backend-Compliance, AI-Compliance-SDK, Consent-SDK, Developer-Portal, PCA-Platform, DSMS Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
103 lines
2.7 KiB
TypeScript
103 lines
2.7 KiB
TypeScript
/**
|
|
* Privacy Policy Draft Prompt - Datenschutzerklaerung (Art. 13/14 DSGVO)
|
|
*/
|
|
|
|
import type { DraftContext } from '../types'
|
|
|
|
export interface PrivacyPolicyDraftInput {
|
|
context: DraftContext
|
|
websiteUrl?: string
|
|
instructions?: string
|
|
}
|
|
|
|
export function buildPrivacyPolicyDraftPrompt(input: PrivacyPolicyDraftInput): string {
|
|
const { context, websiteUrl, instructions } = input
|
|
const level = context.decisions.level
|
|
const depthItems = context.constraints.depthRequirements.detailItems
|
|
|
|
return `## Aufgabe: Datenschutzerklaerung entwerfen (Art. 13/14 DSGVO)
|
|
|
|
### Unternehmensprofil
|
|
- Name: ${context.companyProfile.name}
|
|
- Branche: ${context.companyProfile.industry}
|
|
${context.companyProfile.dataProtectionOfficer ? `- DSB: ${context.companyProfile.dataProtectionOfficer.name} (${context.companyProfile.dataProtectionOfficer.email})` : ''}
|
|
${websiteUrl ? `- Website: ${websiteUrl}` : ''}
|
|
|
|
### Compliance-Level: ${level}
|
|
Tiefe: ${context.constraints.depthRequirements.depth}
|
|
|
|
### Erforderliche Inhalte:
|
|
${depthItems.map((item, i) => `${i + 1}. ${item}`).join('\n')}
|
|
|
|
${instructions ? `### Zusaetzliche Anweisungen: ${instructions}` : ''}
|
|
|
|
### Antwort-Format
|
|
Antworte als JSON:
|
|
{
|
|
"sections": [
|
|
{
|
|
"id": "verantwortlicher",
|
|
"title": "Verantwortlicher",
|
|
"content": "...",
|
|
"schemaField": "controller"
|
|
},
|
|
{
|
|
"id": "dsb",
|
|
"title": "Datenschutzbeauftragter",
|
|
"content": "...",
|
|
"schemaField": "dpo"
|
|
},
|
|
{
|
|
"id": "verarbeitungen",
|
|
"title": "Verarbeitungstaetigkeiten und Zwecke",
|
|
"content": "...",
|
|
"schemaField": "processingPurposes"
|
|
},
|
|
{
|
|
"id": "rechtsgrundlagen",
|
|
"title": "Rechtsgrundlagen der Verarbeitung",
|
|
"content": "...",
|
|
"schemaField": "legalBases"
|
|
},
|
|
{
|
|
"id": "empfaenger",
|
|
"title": "Empfaenger und Datenweitergabe",
|
|
"content": "...",
|
|
"schemaField": "recipients"
|
|
},
|
|
{
|
|
"id": "drittland",
|
|
"title": "Uebermittlung in Drittlaender",
|
|
"content": "...",
|
|
"schemaField": "thirdCountryTransfers"
|
|
},
|
|
{
|
|
"id": "speicherdauer",
|
|
"title": "Speicherdauer",
|
|
"content": "...",
|
|
"schemaField": "retentionPeriods"
|
|
},
|
|
{
|
|
"id": "betroffenenrechte",
|
|
"title": "Ihre Rechte als betroffene Person",
|
|
"content": "...",
|
|
"schemaField": "dataSubjectRights"
|
|
},
|
|
{
|
|
"id": "cookies",
|
|
"title": "Cookies und Tracking",
|
|
"content": "...",
|
|
"schemaField": "cookies"
|
|
},
|
|
{
|
|
"id": "aenderungen",
|
|
"title": "Aenderungen dieser Datenschutzerklaerung",
|
|
"content": "...",
|
|
"schemaField": "changes"
|
|
}
|
|
]
|
|
}
|
|
|
|
Halte die Tiefe exakt auf Level ${level}.`
|
|
}
|