fix: resolve CI failures for PR #583

Add CI-specific timeout multipliers (3×) to security E2E tests
emergency-token.spec.ts, combined-enforcement.spec.ts
waf-enforcement.spec.ts, emergency-server.spec.ts
Add missing data-testid="multi-file-import-button" to ImportCaddy.tsx
Add accessibility attributes to ImportSitesModal.tsx (aria-modal, aria-labelledby)
Add ProxyHostServiceInterface for mock injection in tests
Fix TestImportHandler_Commit_UpdateFailure (was skipped)
Backend coverage: 43.7% → 86.2% for Commit function
Resolves: E2E Shard 4 failures, Frontend Quality Check failures, Codecov patch coverage
This commit is contained in:
GitHub Actions
2026-01-31 04:42:40 +00:00
parent 4ce27cd4a1
commit a7b3cf38a2
12 changed files with 810 additions and 280 deletions

View File

@@ -40,10 +40,16 @@ export default function ImportSitesModal({ visible, onClose, onUploaded }: Props
}
return (
<div className="fixed inset-0 z-50 flex items-center justify-center">
<div
className="fixed inset-0 z-50 flex items-center justify-center"
role="dialog"
aria-modal="true"
aria-labelledby="multi-site-modal-title"
data-testid="multi-site-modal"
>
<div className="absolute inset-0 bg-black/60" onClick={onClose} />
<div className="relative bg-dark-card rounded-lg p-6 w-[900px] max-w-full">
<h3 className="text-xl font-semibold text-white mb-4">Multi-site Import</h3>
<h3 id="multi-site-modal-title" className="text-xl font-semibold text-white mb-4">Multi-site Import</h3>
<p className="text-gray-400 text-sm mb-4">Add each site's Caddyfile content separately, then parse them together.</p>
<div className="space-y-4 max-h-[60vh] overflow-auto mb-4">