{"id":324706,"date":"2026-06-18T16:40:50","date_gmt":"2026-06-18T16:40:50","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/codefaeries-store-sentinel\/"},"modified":"2026-10-05T10:21:15","modified_gmt":"2026-10-05T10:21:15","slug":"codefaeries-store-sentinel","status":"publish","type":"plugin","link":"https:\/\/br.wordpress.org\/plugins\/codefaeries-store-sentinel\/","author":15664861,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.6","stable_tag":"1.0.6","tested":"7.1.3","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"CodeFaeries Store Sentinel","header_author":"CodeFaeries","header_description":"WooCommerce early warning system \u2014 monitors critical store actions and surfaces them in a chronological activity feed.","assets_banners_color":"e9f2ed","last_updated":"2026-10-05 10:21:15","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/codefaeries.com\/product\/store-sentinel\/","header_author_uri":"https:\/\/codefaeries.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":427,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"lwsdevelopers","date":"2026-06-18 16:40:31","revision":3577566},"1.0.3":{"tag":"1.0.3","author":"lwsdevelopers","date":"2026-07-03 21:41:02","revision":3595548},"1.0.4":{"tag":"1.0.4","author":"lwsdevelopers","date":"2026-10-02 13:55:44","revision":3724922},"1.0.5":{"tag":"1.0.5","author":"lwsdevelopers","date":"2026-10-02 19:09:58","revision":3725345},"1.0.6":{"tag":"1.0.6","author":"lwsdevelopers","date":"2026-10-05 10:21:15","revision":3728621}},"upgrade_notice":{"1.0.6":"<p>Maintenance release published alongside Store Sentinel Pro 1.0.6. No change to features or settings.<\/p>","1.0.4":"<p>Fixes a settings save that could shorten event retention to 7 days and delete older events. Recommended update.<\/p>","1.0.3":"<p>Fixes order-deletion events not being recorded on HPOS stores. Recommended update.<\/p>","1.0.2":"<p>Anomaly detection, email alerts, webhooks and scheduled reports are now part of the separate Store Sentinel Pro; the free plugin is leaner. Recommended update.<\/p>","1.0.0":"<p>Initial release. WooCommerce early warning system with activity feed, event tracking, settings, and dashboard widget.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3577560,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3577560,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3577560,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3577560,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2","1.0.3","1.0.4","1.0.5","1.0.6"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3734269,"resolution":"1","location":"assets","locale":"","width":1944,"height":1094},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3734269,"resolution":"2","location":"assets","locale":"","width":1944,"height":1094},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3734269,"resolution":"3","location":"assets","locale":"","width":1944,"height":1094},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3734269,"resolution":"4","location":"assets","locale":"","width":1944,"height":1092}},"screenshots":{"1":"Activity feed with chronological event timeline","2":"Filter bar with event type, severity, and date range filters","3":"Event detail modal showing full context","4":"Dashboard widget with today's event summary"}},"plugin_section":[262246],"plugin_tags":[8531,45369,600,267758,286],"plugin_category":[45,54],"plugin_contributors":[147161],"plugin_business_model":[],"class_list":["post-324706","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-activity-log","plugin_tags-order-tracking","plugin_tags-security","plugin_tags-store-monitoring","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-security-and-spam-protection","plugin_contributors-lwsdevelopers","plugin_committers-lwsdevelopers"],"banners":{"banner":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/banner-772x250.png?rev=3577560","banner_2x":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/banner-1544x500.png?rev=3577560","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/icon-128x128.png?rev=3577560","icon_2x":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/icon-256x256.png?rev=3577560","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/screenshot-1.png?rev=3734269","caption":"Activity feed with chronological event timeline"},{"src":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/screenshot-2.png?rev=3734269","caption":"Filter bar with event type, severity, and date range filters"},{"src":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/screenshot-3.png?rev=3734269","caption":"Event detail modal showing full context"},{"src":"https:\/\/ps.w.org\/codefaeries-store-sentinel\/assets\/screenshot-4.png?rev=3734269","caption":"Dashboard widget with today's event summary"}],"raw_content":"<!--section=description-->\n<p>CodeFaeries Store Sentinel is a WooCommerce activity monitor that tracks critical store events and presents them in a clean, chronological feed. Know immediately when orders are trashed, deleted, or change status \u2014 and when products disappear from your catalog.<\/p>\n\n<p><strong>Requires WooCommerce<\/strong> \u2014 Store Sentinel is purpose-built for WooCommerce stores. It is built and tested against WooCommerce 7.9 and later; on activation the plugin checks that WooCommerce is active, not which version it is.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>Chronological Activity Feed<\/strong> \u2014 All critical WooCommerce events in one timeline, sorted newest-first<\/li>\n<li><strong>Order Tracking<\/strong> \u2014 Monitor order trashed, permanently deleted, and status change events<\/li>\n<li><strong>Product Tracking<\/strong> \u2014 Monitor product trashed and permanently deleted events<\/li>\n<li><strong>Severity Levels<\/strong> \u2014 Events classified as info, warning, or critical for quick visual scanning<\/li>\n<li><strong>Filters<\/strong> \u2014 Filter by event type, severity level and date range, with Today \/ 7d \/ 30d presets, free-text search, user ID and object ID<\/li>\n<li><strong>Event Details<\/strong> \u2014 Click any event to see full context: order totals, old and new status, product info, the source of the change and the plugin behind it, the acting user, and a status history merging Sentinel events with WooCommerce order notes<\/li>\n<li><strong>Dashboard Widget<\/strong> \u2014 At-a-glance today's stats on the WordPress dashboard<\/li>\n<li><strong>HPOS-Native<\/strong> \u2014 Built for WooCommerce High-Performance Order Storage from day one<\/li>\n<li><strong>Privacy-First<\/strong> \u2014 Customer emails are partially masked and client IPs are stored only as a salted hash<\/li>\n<li><strong>GDPR Tools<\/strong> \u2014 Personal-data exporter, eraser, and a suggested privacy policy section<\/li>\n<li><strong>Automatic Cleanup<\/strong> \u2014 Daily cron removes events older than the retention period (configurable from 7 days to unlimited; 7-day default)<\/li>\n<li><strong>Multisite Support<\/strong> \u2014 Works on multisite networks with per-site data isolation<\/li>\n<li><strong>Developer Friendly<\/strong> \u2014 Filters and actions for every event, severity, and query<\/li>\n<\/ul>\n\n<h4>In Store Sentinel Pro<\/h4>\n\n<p>Anomaly detection, email alerts (immediate \/ hourly \/ daily digest), webhook\nnotifications, scheduled email reports, advanced filters (source, object type,\nsaved per-user presets), CSV export and additional event types (customers,\ncoupons, shipping) are part of <strong>Store Sentinel Pro<\/strong>, distributed separately\nfrom codefaeries.com. The free plugin exposes documented hooks that Pro builds\non. Retention is not one of them: the free plugin already offers unlimited\nretention.<\/p>\n\n<h4>Tracked Events<\/h4>\n\n<ul>\n<li><strong>Order trashed<\/strong> (warning) \u2014 Order moved to trash<\/li>\n<li><strong>Order deleted<\/strong> (critical) \u2014 Order permanently deleted<\/li>\n<li><strong>Order status changed<\/strong> (info) \u2014 Order status transition (e.g., processing to completed)<\/li>\n<li><strong>Product trashed<\/strong> (warning) \u2014 Product moved to trash<\/li>\n<li><strong>Product deleted<\/strong> (critical) \u2014 Product permanently deleted<\/li>\n<li><strong>Order meta deleted<\/strong> (warning) \u2014 Order metadata removed; off by default, enable it on the General tab<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>Store Sentinel records WooCommerce store events (order\/product trashes,\ndeletions and status changes) to a custom table in your own database. Customer\nemails captured in event context are partially masked, and client IP addresses,\nwhen IP tracking is enabled, are stored only as a one-way SHA-256 hash salted\nwith your site's WordPress salt. The raw IP is never written to the database.<\/p>\n\n<p>Two pieces of data about the person who acted are stored in clear: the display\nname, login and role of the logged-in user behind the event, snapshotted so the\nhistory survives that account being deleted; and, when IP tracking is enabled,\nthe browser user agent string, truncated to 255 characters. Both are exposed\nthrough the personal-data exporter and removed by the eraser.<\/p>\n\n<p>Store Sentinel does not phone home and does not send any data to external\nservices. All event data stays in your own database.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>codefaeries-store-sentinel<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory, or install directly through the WordPress plugin screen.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Ensure WooCommerce is installed and active.<\/li>\n<li>Navigate to <strong>Store Sentinel<\/strong> in the admin menu to view the activity feed.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20require%20woocommerce%3F\"><h3>Does this plugin require WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. Store Sentinel is a WooCommerce-specific monitoring tool, built and tested against WooCommerce 7.9 and later. If WooCommerce is not active, the plugin will show an admin notice and remain inactive; it does not check which version of WooCommerce is installed.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20hpos%20%28high-performance%20order%20storage%29%3F\"><h3>Is it compatible with HPOS (High-Performance Order Storage)?<\/h3><\/dt>\n<dd><p>Yes. Store Sentinel is built HPOS-native from the ground up: it works through WooCommerce order objects and HPOS-compatible hooks. On stores still using the legacy post-based order storage it falls back to reading wp_postmeta, which is what those stores require.<\/p><\/dd>\n<dt id=\"how%20long%20are%20events%20retained%3F\"><h3>How long are events retained?<\/h3><\/dt>\n<dd><p>Events are retained for 7 days by default; the retention period is configurable on the Settings \u2192 Data &amp; Privacy tab. A daily cron job automatically removes older events to keep the database lean.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20data%20if%20i%20deactivate%20the%20plugin%3F\"><h3>What happens to my data if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>By default, deactivation only clears the cron schedule and all event data is preserved, so reactivating gives you your full history back. Data is only removed when you <strong>delete<\/strong> (uninstall) the plugin. The one exception is the <strong>Delete all event data when the plugin is deactivated<\/strong> option on Settings \u2192 Data &amp; Privacy, off by default: with it on, deactivation drops the events table and all options.<\/p><\/dd>\n<dt id=\"does%20it%20work%20on%20multisite%3F\"><h3>Does it work on multisite?<\/h3><\/dt>\n<dd><p>Yes. Store Sentinel supports multisite with per-site activation. Each site has its own events table and settings. Uninstall cleans up all sites in batches.<\/p><\/dd>\n<dt id=\"can%20i%20extend%20it%20with%20custom%20events%3F\"><h3>Can I extend it with custom events?<\/h3><\/dt>\n<dd><p>Yes. Use the <code>codefaeries_store_sentinel_event_data<\/code> filter to modify event data before recording, or the <code>codefaeries_store_sentinel_should_record<\/code> filter to conditionally skip events. The <code>codefaeries_store_sentinel_event_recorded<\/code> action fires after each event is stored.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.6 - 2026-10-05<\/h4>\n\n<ul>\n<li>Improved: the bundled admin toolkit is updated to its latest release. No change to features or settings.<\/li>\n<li>Compatibility: tested up to WordPress 7.1.<\/li>\n<\/ul>\n\n<h4>1.0.5 - 2026-10-02<\/h4>\n\n<ul>\n<li>Improved: released together with Store Sentinel Pro 1.0.5, whose settings fixes need this version. Nothing changes in the free features.<\/li>\n<\/ul>\n\n<h4>1.0.4 - 2026-10-02<\/h4>\n\n<ul>\n<li>Fixed: a retention period that is no longer offered (for example 180 or 365 days after Store Sentinel Pro is deactivated or its licence lapses) is kept when the settings are saved, instead of dropping to 7 days and letting the next cleanup delete older events.<\/li>\n<li>Fixed: choosing \"Unlimited\" retention shows its warning straight away, not only after saving.<\/li>\n<li>Fixed: the review request no longer appears right after activation; it waits the intended 14 days.<\/li>\n<li>Fixed: the \"Get Support\" and Store Sentinel Pro links lead to pages that exist.<\/li>\n<li>Improved: the Pro panel inside the plugin describes exactly what Store Sentinel Pro adds.<\/li>\n<\/ul>\n\n<h4>1.0.3 - 2026-07-03<\/h4>\n\n<ul>\n<li>Fixed: permanently deleted orders were not being recorded because the deletion listener used an outdated hook name; order deletions are now captured correctly on HPOS stores.<\/li>\n<\/ul>\n\n<h4>1.0.2 - 2026-05-18<\/h4>\n\n<ul>\n<li>Improved: Store Sentinel is now a focused free plugin \u2014 anomaly detection, email alerts, webhooks and scheduled reports moved to the separately distributed Store Sentinel Pro, with documented hooks so Pro builds cleanly on the free version.<\/li>\n<li>Compatibility: \"Tested up to\" bumped to WordPress 7.0.<\/li>\n<li>Code quality: passes WordPress Plugin Check cleanly.<\/li>\n<li>New: filter to exclude specific plugin slugs from event source detection (helps when third-party plugins clutter the backtrace).<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Internal: release packaging refreshed and CHANGELOG.md consolidated into this changelog.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<p>First public release. Store Sentinel is a WooCommerce early-warning system: a chronological feed of critical store actions.<\/p>\n\n<ul>\n<li>Live activity feed with filters (event type, severity, date range) and pagination.<\/li>\n<li>Tracks orders (trashed, deleted, status changes, meta removal) and products (trashed, deleted).<\/li>\n<li>Severity levels \u2014 info, warning, critical \u2014 with a detail modal showing full context.<\/li>\n<li>Records the source of each action (Admin, REST API, WP-CLI, Cron, AJAX) and the actor (user, role, display name).<\/li>\n<li>Settings page for event toggles, retention, privacy, and data management.<\/li>\n<li>Dashboard widget showing today's activity.<\/li>\n<li>Daily automatic retention cleanup (7-day default, configurable).<\/li>\n<li>HPOS-native (WooCommerce 7.9+).<\/li>\n<li>Multisite-aware install and uninstall.<\/li>\n<li>Accessibility: focus-trapped modal, ARIA live regions, keyboard navigation.<\/li>\n<li>Extensible by developers via filters and actions.<\/li>\n<\/ul>","raw_excerpt":"WooCommerce early warning system \u2014 monitors critical store actions and surfaces them in a chronological activity feed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/324706","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=324706"}],"author":[{"embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/lwsdevelopers"}],"wp:attachment":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=324706"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=324706"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=324706"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=324706"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=324706"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=324706"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}