diff --git a/admin-compliance/app/sdk/agent/_components/ComplianceCheckTab.tsx b/admin-compliance/app/sdk/agent/_components/ComplianceCheckTab.tsx index e4d788c6..de2e2576 100644 --- a/admin-compliance/app/sdk/agent/_components/ComplianceCheckTab.tsx +++ b/admin-compliance/app/sdk/agent/_components/ComplianceCheckTab.tsx @@ -11,10 +11,12 @@ import { STORAGE_KEY_CHECK_ID, countWords, initState, type DocState, type DocsState, type HistoryEntry, } from './_compliance_storage' +import { useCompanyOrigin } from './_useCompanyOrigin' export function ComplianceCheckTab() { const [docs, setDocs] = useState(initState) + const { companyName, setCompanyName, originDomain, setOriginDomain } = useCompanyOrigin() const [scanContext, setScanContext] = useScanContext() const [useAgent, setUseAgent] = useState(false) const [tdmOverride, setTdmOverride] = useState(false) @@ -145,6 +147,8 @@ export function ComplianceCheckTab() { use_agent: useAgent, tdm_override: tdmOverride && tdmOverrideReason.trim().length >= 10, tdm_override_reason: tdmOverrideReason.trim(), + company_name: companyName.trim() || undefined, + origin_domain: originDomain.trim() || undefined, // P79 — Pre-Scan-Wizard 8 Pflichtfelder; treibt MC-Scope-Filter (P72) scan_context: scanContext, }), @@ -230,6 +234,30 @@ export function ComplianceCheckTab() {

+ {/* Firma + Domain (priorisiert vor extracted_profile-LLM-Inferenz) */} +
+ + +
+ {/* P79 Pre-Scan-Wizard — 8 Pflichtfelder zum MC-Scope-Filter (P72) */} diff --git a/admin-compliance/app/sdk/agent/_components/_useCompanyOrigin.ts b/admin-compliance/app/sdk/agent/_components/_useCompanyOrigin.ts new file mode 100644 index 00000000..f5daeda7 --- /dev/null +++ b/admin-compliance/app/sdk/agent/_components/_useCompanyOrigin.ts @@ -0,0 +1,40 @@ +/** + * Custom hook: persistente Firmenname + Origin-Domain für die + * ComplianceCheckTab-Form. Priorisierte Werte vor der LLM-basierten + * extracted_profile-Inferenz. + */ + +import { useEffect, useState } from 'react' + +const STORAGE_KEY_COMPANY = 'compliance-check-company-name' +const STORAGE_KEY_DOMAIN = 'compliance-check-origin-domain' + + +function readInitial(key: string): string { + if (typeof window === 'undefined') return '' + return localStorage.getItem(key) || '' +} + + +export function useCompanyOrigin() { + const [companyName, setCompanyName] = useState( + () => readInitial(STORAGE_KEY_COMPANY), + ) + const [originDomain, setOriginDomain] = useState( + () => readInitial(STORAGE_KEY_DOMAIN), + ) + + useEffect(() => { + try { + localStorage.setItem(STORAGE_KEY_COMPANY, companyName) + } catch { /* quota */ } + }, [companyName]) + + useEffect(() => { + try { + localStorage.setItem(STORAGE_KEY_DOMAIN, originDomain) + } catch { /* quota */ } + }, [originDomain]) + + return { companyName, setCompanyName, originDomain, setOriginDomain } +}