PROJECT_FILES
Sentinel+
STABLEJust PSN Trophies (JPSNT)
STABLECASE_FILE // SENTINEL
Sentinel+
Sentinel began as internal tooling for Just PSN Trophies. The site needed enough trail and context to answer “what changed” before debugging turned into guesswork. As traffic and feature surface grew, failures stopped looking like a single fatal PHP error on a white screen. They looked like patterns: memory creeping up over time, hooks firing more than once, auth edge cases, and slow queries at the wrong moment.
That problem is not trophy-site-specific. The same classes of failure appear on client WordPress sites, side projects, and small shops, often run by one person or a tiny team. Sentinel was split out as a standalone plugin so those signals stay inside WordPress, without requiring an external observability SaaS to get a coherent picture.
Scarlett Media Lab owns the product and the public channel: documentation, downloads, and the Sentinel+ tier live on getsentinel.dev. The codebase is WordPress-native, with custom tables for logs and incidents, and cron for batch work, cleanup, and digests. The goal is practical visibility for operators, not a dashboard for its own sake.
Non-goals
- Not a hosted observability or APM product. Data stays on the WordPress install unless you export it.
- Does not replace solid hosting, backups, version control, or code review. It improves visibility when those layers slip.
- Does not send site data to third parties by default. Local-first logging is the baseline.
- Sentinel+ features are optional. Marketing should not blur “free core” and “premium depth”.
Constraints we accept
- High-traffic sites may need tuning of retention, batching, sampling, and mail settings. Defaults are conservative rather than universal.
- Third-party plugins vary. Integration coverage targets widely deployed surfaces rather than every niche stack revision.
- Premium-only screens require a valid Sentinel+ entitlement. Copy should not imply those views are universally available.
What it is
Sentinel is a WordPress activity and security logging plugin aimed at people who run real sites: administrators, freelancers, and small agencies. It records meaningful admin, user, and system events, routes them through a rate-aware notification path, and surfaces them in an admin-first UI backed by local database tables rather than a remote service.
Operator-facing surface
- Dashboard. Health and snapshot views, including memory insights and widgets for deeper signals where enabled.
- Activity Logs. Searchable stream of captured events with filters and export paths (CSV, JSON, XML depending on build).
- Event Registry. Toggle which event keys are tracked. Integrations surface events from common plugins (for example WooCommerce, major form plugins, Yoast) where hooks exist.
- Settings. Logging, privacy and IP tooling, retention, notification tiers, and performance sampling. Tuned so high-volume sites can throttle work rather than amplify it.
- File monitoring and memory monitoring. Integrity and performance signals with honest limits, and premium depth where Sentinel+ is active.
- Privacy toolkit. Data-deletion request shortcode flow and anonymisation scheduling aligned with retention choices.
Reliability and delivery
- Batch logging and queues. Reduces write amplification when WordPress gets noisy.
- WordPress cron. Cleanup, digest reports, retries for failed log writes, anonymiser runs, and file-check cadence. Bounded work rather than per-request synchronous writes.
- Email rate limiting. Real-time and digest mail are guarded by a per-event cooldown and an hourly cap in recent releases, so busy sites do not flood the inbox.
- Schema upgrades. Migrations run through the same version gate as
SENTINEL_VERSION. Tables are created and updated withdbDelta-style discipline.
Sentinel+
Sentinel+ is the paid tier: deeper authentication tooling (counters, allow and deny framing), incidents, and extended security-oriented views. The free core is designed to stay useful on its own. Sentinel+ adds depth where the operator actually needs more signal.
Recent shipping focus (1.1.x)
- v1.1.1 and v1.1.2. Deterministic scheduling and notification behaviour, plus email flood protection via transient-based rate limits.
- v1.1.3. Quick Setup for new installs: welcome, optional Sentinel+ licence check, monitoring and privacy presets, a preview of pending option changes, and an apply or skip path. Followed by a clear completion state after apply so operators can see the save went through.
Automation
A versioned REST API under sentinel-plugin/v1 exposes logs and stats for careful automation. Capability-gated, suitable for internal tooling rather than a public endpoint.