Fundament: Doku, Testanpassungen, Restbereinigung
- AGENTS.md und README.md auf Craftvia umgeschrieben (Regeln, Andockpunkte, Stack mit Garage, tsx-Tests, Gate, Demo-Logins) - ISMS-Dokumente entfernt (SPEC, Prototypen, Lane-Prompts, Übergaben, Konzepte Incidents/Framework); Fundament-Doku (Deploy, Sicherheit, Backup, Identity) bleibt - Fundament-Tests an Craftvia-Rollen/Branding angepasst, Resttreffer certvia/isms in Skripten und Kommentaren bereinigt Gate: prisma generate, migrate status, tsc, lint, build, 22/22 Testskripte grün. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -75,7 +75,7 @@ export function BackupTargetForm({
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="bk-bucket">Bucket</Label>
|
||||
<Input id="bk-bucket" name="backupS3Bucket" defaultValue={initial.backupS3Bucket} placeholder="certvia-backups" autoComplete="off" />
|
||||
<Input id="bk-bucket" name="backupS3Bucket" defaultValue={initial.backupS3Bucket} placeholder="craftvia-backups" autoComplete="off" />
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="bk-region">Region</Label>
|
||||
|
||||
@@ -8,7 +8,7 @@ const buttonVariants = cva(
|
||||
{
|
||||
variants: {
|
||||
variant: {
|
||||
// Primär-Buttons mit dem Certvia-Verlauf (--grad-primary)
|
||||
// Primär-Buttons in Lotsenblau (--grad-primary = Vollfarbe)
|
||||
default: "bg-grad-soft text-white hover:opacity-90",
|
||||
outline:
|
||||
"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",
|
||||
|
||||
@@ -8,7 +8,7 @@ import { writeAuditLog } from "@/server/audit";
|
||||
* Zweck (zwei Dinge auf einmal):
|
||||
* 1. **Nach außen** nur eine generische, nichtssagende Meldung
|
||||
* (`Vorgang nicht möglich.`). Interne Details — Modellnamen, die
|
||||
* Isolationslogik (`Tenant isolation violation: Risk …`), fehlende
|
||||
* Isolationslogik (`Tenant isolation violation: Role …`), fehlende
|
||||
* Berechtigungen — dürfen den Client nicht erreichen (CWE-209). In der
|
||||
* Produktion maskiert Next.js Server-Action-Fehler zwar ohnehin, in
|
||||
* Entwicklung/Test aber nicht — und wir wollen die Meldung an EINER Stelle
|
||||
|
||||
@@ -124,7 +124,7 @@ export async function testBackupConnection(
|
||||
}
|
||||
|
||||
const key = `__connectivity-test__/${randomBytes(8).toString("hex")}.txt`;
|
||||
const payload = Buffer.from(`certvia backup connectivity ${new Date().toISOString()}`, "utf8");
|
||||
const payload = Buffer.from(`craftvia backup connectivity ${new Date().toISOString()}`, "utf8");
|
||||
try {
|
||||
await store.put(key, payload);
|
||||
const back = await store.get(key);
|
||||
|
||||
@@ -55,7 +55,7 @@ export async function buildDsgvoPackage(
|
||||
entries.push({
|
||||
name: "README.txt",
|
||||
data:
|
||||
`certvia — DSGVO-Auskunft (Art. 15/20), Einzelperson\n` +
|
||||
`Craftvia — DSGVO-Auskunft (Art. 15/20), Einzelperson\n` +
|
||||
`Mandant: ${tenant.name} (${tenant.slug})\n` +
|
||||
`Betroffene Identity: ${subjectIdentityId}\n` +
|
||||
`Erstellt: ${generatedAt}\n\n` +
|
||||
@@ -72,7 +72,7 @@ export async function buildDsgvoPackage(
|
||||
entries.push({
|
||||
name: "README.txt",
|
||||
data:
|
||||
`certvia — DSGVO-Datenpaket (Art. 20 Portabilität), gesamter Mandant\n` +
|
||||
`Craftvia — DSGVO-Datenpaket (Art. 20 Portabilität), gesamter Mandant\n` +
|
||||
`Mandant: ${tenant.name} (${tenant.slug})\n` +
|
||||
`Erstellt: ${generatedAt}\n` +
|
||||
`Zeilen gesamt: ${manifest.totalRows}\n\n` +
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Storage-Adapter (Story B4-2 → Epic S1). Gekapselte Schnittstelle für die Datei-
|
||||
// Persistenz hochgeladener eigener Richtlinien und Audit-Nachweise. Aufrufer nutzen
|
||||
// ausschließlich `storage`, sodass das Backend ohne UI-/Action-Änderung austauschbar
|
||||
// bleibt (Konsumenten: policy-upload.ts, audit-evidence.ts).
|
||||
// bleibt (Konsumenten: Dokumente-/Einsatzfoto-Uploads der Fachmodule).
|
||||
//
|
||||
// Backend-Wahl zur Laufzeit (Graceful Fallback):
|
||||
// - Sind alle S3_*-Env gesetzt → echter S3StorageAdapter (Garage/S3-kompatibel).
|
||||
|
||||
Reference in New Issue
Block a user