What problem does it solve? Salesforce record automation fails in predictable ways: flows and Apex triggers fighting over the same field, flows with no entry conditions firing on every save, DML inside loops burning governor limits, and FlowDefinition files silently overriding which flow version is active on deploy. This Skill encodes the decision rules, order-of-execution placement, metadata shapes, and anti-patterns needed to build flow automation that survives deployment. ## Core Features & Use Cases - Flow vs Apex decision matrix: Choose before-save flow, after-save flow, scheduled flow, platform-event flow, or Apex trigger based on where the work sits in the order of execution, with the rule of one automation owner per object. - Invocable Apex patterns: Write bulk-safe @InvocableMethod classes with @InvocableVariable request/response types, list-in list-out signatures, and no DML inside loops. - Flow metadata and deployment: Author Flow and FlowTest XML, avoid the FlowDefinition activeVersionNumber override trap, and handle flow activation and test coverage requirements on production deploys. - Use Case: When a story asks to set a renewal date when an Opportunity closes, the Skill directs a before-save flow assigning $Record with an entry condition and doesRequireRecordChangedToMeetCriteria, rather than an after-save flow with an extra Update Records element. ## Quick Start Ask the assistant to add a record-triggered flow that sets a field on Opportunity when the stage changes, and have it decide between Flow and Apex and produce the flow metadata.