Repository navigation
v4.19.3 - Fixed MIXED_DML_OPERATION Errors in Tests + Added AI Agent Skills
Thanks to @Norema9 for reporting issue #938 (originally reported in discussion #932) and thanks to @manuerwin for fixing it in PR #965 馃憦
Thanks also goes to @benjaminloerincz for PR #1004 to add AI agent skills to help AI coding agents (Claude Code, GitHub Copilot, Cursor, and others) install, configure, and use Nebula Logger with the recommended patterns 馃
Core Unlocked Package Changes
Fixed #938 where some tests within LogHandler_Tests and LogEntryEventHandler_Tests would fail due to MIXED_DML_OPERATION errors in some orgs (especially orgs with automation on the User object, like Apex triggers or record-triggered Flows)
- The problematic test methods in
LogHandler_TestsandLogEntryEventHandler_Testswere updated to useSystem.runAs()when creating test users (setup object data) - A pipeline-only Apex trigger for
User(stored undernebula-logger/extra-tests/) has also been added to Nebula Logger's pipeline to simulate the original issue reported by @Norema9 to help avoid new or updated test methods from accidentally reintroducing these kinds of issues
AI Agent Skills Support
@benjaminloerincz introduced Agent Skills to the repo via PR #1004. Developers can now install official Nebula Logger-specific guidance directly into their AI-assisted development workflow via:
npx skills add jongpie/NebulaLoggerIncluded Skills
This release includes 7 skills:
| Skill | Purpose |
|---|---|
| nebula-logger-install | Installing Nebula Logger, choosing between unlocked and managed packages, permission-set assignment, and initial LoggerSettings__c configuration. |
| nebula-logger-instrumentation | Adding Nebula Logger instrumentation in Apex, LWC, Aura, Flow, and OmniStudio. Covers logging APIs, exception handling, record association, tags/scenarios, async transaction linking, and the CallableLogger optional-dependency pattern for ISVs. |
| nebula-logger-console | Browsing and investigating logs in the Salesforce UI - list views, record pages, home page components, and the live log entry event stream. |
| nebula-logger-purging-and-retention | Configuring how long logs live before being purged - LogRetentionDate__c semantics, LogBatchPurger scheduling, and per-user/profile/scenario overrides. |
| nebula-logger-testing-your-code | Writing Apex and LWC tests for code that calls Nebula Logger. Global-only APIs and patterns for observing entries without polluting the org. |
| nebula-logger-plugin-development | Building custom plugins that extend Nebula Logger via the LoggerPlugin.Triggerable and LoggerPlugin.Batchable interfaces. |
| nebula-logger-best-practices | Team-wide instrumentation standards, environment-aware logging levels, and governor-limit considerations. |
Installation Info
Core Unlocked Package - no namespace
Full Changelog: v4.19.2...v4.19.3
- SF CLI:
sf package install --wait 20 --security-type AdminsOnly --package 04tg7000000IEirAAG - Sandbox: https://test.salesforce.com/packaging/installPackage.apexp?p0=04tg7000000IEirAAG
- Production: https://login.salesforce.com/packaging/installPackage.apexp?p0=04tg7000000IEirAAG