register(); // §9.1: consiva_manage_privacy / consiva_view_privacy. ( new VerificationEndpoint() )->register(); ( new Heartbeat() )->register(); // Runs under WP-Cron, so not admin-only. ( new SiteHealthTests() )->register(); // Also needed on REST requests (the async test). ( new Diagnostics() )->register(); ( new Controller() )->register(); // REST requests are not is_admin(); routes check capabilities. if ( Availability::has( Availability::UNINSTALL_FEEDBACK ) ) { ( new UninstallFeedback() )->register(); // Its REST route must exist on REST requests too. } // Front end: reads cached options only, never calls Consiva (§8.1). ( new InlineBootstrap() )->register(); ( new RuntimeLoader() )->register(); ( new ScriptGate() )->register(); ( new OutputGate() )->register(); // Blocking slice 2: hard-coded scripts and embeds (§6.2). ( new Exclusions() )->register(); // Keeps caching/optimisation plugins off the plugin's tags (§8.6). add_action( CategoryMap::REFRESH_HOOK, array( CategoryMap::class, 'refresh' ) ); // Server-side consent: form opt-ins (§10) and the checkout opt-in (§7), sent via the local buffer (§8.3). ( new Registry() )->register(); ( new CheckoutConsent() )->register(); ( new LocalBuffer() )->register(); // WordPress Privacy API (§9.6): export/erase personal data (only once Consiva has a lookup and // erase route for it), suggested policy text. if ( Availability::has( Availability::PRIVACY_TOOLS ) ) { ( new Exporter() )->register(); ( new Eraser() )->register(); } ( new PrivacyPolicyText() )->register(); if ( is_admin() ) { ( new Screens() )->register(); ( new BufferConflictNotice() )->register(); // Page-rewrite fallback after buffer conflicts (§6.2). ( new ActivationNotice() )->register(); // Requirements and conflicting plugins, once after activating (§9.7). ( new Onboarding() )->register(); ( new SetupScreen() )->register(); ( new Dashboard() )->register(); ( new EvidencePanel() )->register(); ( new FormsScreen() )->register(); if ( is_multisite() ) { ( new NetworkOverview() )->register(); // Plugin §8.5: read-only status across the network. } ( new Assets() )->register(); } } }