What problem does it solve? Adopting the fflib Apex Enterprise Patterns stack (fflib-apex-common, fflib-apex-mocks) involves many failure-prone decisions: whether the library earns its keep, how to vendor it without a published package version, how to wire Application.cls correctly, and how to diagnose DeveloperException errors when factory bindings are missing. This Skill provides verified, commit-pinned guidance for all of these. ## Core Features & Use Cases - Adoption decision support: A decision table comparing fflib against plain trigger handlers plus service classes, with the same requirement implemented both ways so the cost is visible. - Application factory wiring: Complete reference Application.cls with UnitOfWork, Service, Selector, and Domain factory registrations, the setMock injection matrix, and a wiring-mistake troubleshooting table. - Installation and layout: Vendoring and git submodule procedures pinned to specific commits, sfdx-project.json and .forceignore configuration, and coverage implications of vendoring library tests. - Use Case: A team adding fflib to an existing Salesforce repo uses this Skill to vendor fflib-apex-mocks and fflib-apex-common at pinned commits, create Application.cls with correctly ordered SObjectType bindings, and verify the wiring with anonymous Apex assertions. ## Quick Start Ask the assistant to add fflib to the project and create an Application.cls registering the Account selector, service, and domain layers.