fix(qa): health monitor SiteManager, WP plugins, favicon, download ZIPs

- Health monitor now uses SiteManager for complete site discovery
- SEO Bridge: GPLv2+ license, Tested up to 6.9, fix escaping
- OpenPanel: fix wp_unslash, reduce tags, update branding
- Add logo.svg favicon, static file serving, plugin ZIPs

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
airano
2026-02-18 21:11:49 +03:30
parent 91979ee18d
commit bb851e4be2
14 changed files with 97 additions and 25 deletions

View File

@@ -1055,6 +1055,7 @@ from core import initialize_health_monitor
health_monitor = initialize_health_monitor(
project_manager=project_manager,
audit_logger=audit_logger,
site_manager=site_manager,
metrics_retention_hours=24,
max_metrics_per_project=1000,
)
@@ -4441,6 +4442,13 @@ def create_multi_endpoint_app(transport: str = "streamable-http"):
safe_name = project_id.replace("-", "_").replace(".", "_")
routes.append(Mount(mount_path, app=project_app, name=f"mcp_project_{safe_name}"))
# Static files (favicon, logo)
_static_dir = os.path.join(os.path.dirname(__file__), "core", "templates", "static")
if os.path.isdir(_static_dir):
from starlette.staticfiles import StaticFiles
routes.append(Mount("/static", app=StaticFiles(directory=_static_dir), name="static"))
# Main admin endpoint (must be last - catches all remaining routes)
routes.append(Mount("/", app=main_app, name="mcp_admin"))