PracticeVideosBlogFlashcards

11.2 Change Set Dependency Tracking & Deployment Sequencing

Key Takeaways

  • The 'View/Add Dependencies' button in Outbound Change Sets analyzes selected metadata and surfaces required upstream components to prevent deployment validation failures.

  • Critical platform features are unsupported by change sets and must be manually configured, including standard picklist values not available as change-set components, org-wide email addresses, and fiscal year settings; verify business-process prerequisites before record-type deployment.

  • When a Profile is added to a change set, Salesforce only migrates permissions for the metadata components explicitly bundled in that change set, but other profile settings, such as user permissions and login IP ranges, can also deploy.

  • A rigorous deployment runbook sequences release activities across pre-deployment manual steps, change set deployment, and post-deployment manual activation and data seeding.

  • Custom fields created on standard objects can be deployed independently without bundling the entire standard object definition into the change set.

Last updated: October 2026

Change Set Dependency Tracking & Deployment Sequencing

One of the most frequent causes of change set deployment failure is missing metadata dependencies. When deploying a sophisticated declarative application—such as a custom object equipped with formula fields, validation rules, page layouts, custom tabs, email alerts, and record-triggered flows—Salesforce requires that all upstream referenced components either pre-exist in the target organization or be packaged alongside the primary component.

Furthermore, not all Salesforce platform features can be transferred via change sets. Successful application deployment requires an app builder to master dependency tracking, understand the strict boundary between supported and unsupported metadata, and execute a structured deployment runbook comprising pre-deployment and post-deployment manual steps.


Dependency Management & The "View/Add Dependencies" Engine

When you add a primary component to an Outbound Change Set, Salesforce does not automatically bundle all related child or dependent components. For example, adding a Custom Object does not automatically pull in its custom fields, custom tabs, or page layouts.

To address this, Salesforce provides the View/Add Dependencies button on the Outbound Change Set detail page:

  1. After adding your core components, click View/Add Dependencies.
  2. The platform queries the internal metadata dependency registry and displays a list of all upstream components referenced by the items already in your change set.
  3. Common dependencies identified by the tool include:
    • Custom Fields referenced in Formula Fields, Validation Rules, or Record-Triggered Flows.
    • Global Value Sets referenced by custom picklists.
    • Custom Email Templates and Letterheads referenced by Email Alerts.
    • Custom Report Types referenced by Reports and Dashboard components.
    • Custom Fields on Standard Objects referenced by Lightning Record Pages.

If you deploy a change set containing a validation rule that references Discount_Rate__c, but Discount_Rate__c does not exist in the target org and is omitted from the change set, the inbound validation fails immediately with an error: Field Discount_Rate__c does not exist.

[Primary Component Added]
   Record-Triggered Flow
          │
          ▼ References
   ┌──────────────────────────────────────────────┐
   │  Email Alert  ──> Email Template ──> Letterhead
   │  Custom Field ──> Global Value Set           │
   └──────────────────────────────────────────────┘
          ▲
   [View/Add Dependencies]
   Identifies and bundles all required upstream metadata

Note

Deploying Custom Fields on Standard Objects: You cannot add a standard object (such as Account or Contact) to a change set. To deploy new custom fields on standard objects, navigate to the Custom Field component type in the change set builder and select the specific custom fields (e.g., Account.Customer_Segment__c).


The Profile Deployment Trap in Change Sets

A major area of confusion on the Platform App Builder exam involves how User Profiles interact with change sets:

  • When you add a Profile (e.g., Custom: Sales Rep) to an outbound change set, Salesforce does not deploy the entire profile definition.
  • Instead, the deployment engine only transfers the profile's permissions for the specific components included in that exact change set.
  • For example, if your change set contains Custom_Object__c and the Custom: Sales Rep profile, the target org updates permissions for Custom_Object__c on that profile. Custom component permissions depend on included supporting components, while profile settings can also carry user permissions, login IP ranges, tab settings, and assignments. Review the payload rather than assuming everything unrelated is untouched.
  • If you deploy a custom field without including any profiles or permission sets, the field deploys with Hidden field-level security for all profiles in the target org (except System Administrator).

Important

Profiles vs. Permission Sets: Because profiles only migrate permissions for components explicitly bundled in the change set, managing security via profiles in change sets is fragile and error-prone. Modern Salesforce architecture strongly recommends deploying security access using Permission Sets, which migrate their full, self-contained permission definitions independently.


Supported vs. Unsupported Components in Change Sets

Salesforce supports hundreds of metadata types in change sets, but several critical application components cannot be deployed using change sets and require manual configuration in the target environment.

Component TypeChange Set Support StatusArchitectural Handling & Strategy
Custom Objects & FieldsFully SupportedAdded directly; remember to add custom tabs and page layouts via dependencies.
Salesforce FlowsFully SupportedDeploy as active if Apex tests pass; otherwise deploy inactive and activate post-deployment.
Validation RulesFully SupportedDeployed alongside the parent object or as independent child components.
Permission SetsFully SupportedDeploy full definitions; assign to target users post-deployment.
Standard Picklist ValuesUnsupportedModifying values on standard fields (e.g., Lead.LeadSource, Opportunity.StageName) must be configured manually in the target org.
Sales / Lead / Support ProcessesVerify target prerequisites and dependency/tool supportEnsure the required process and selected standard values exist before deploying dependent record types; use manual setup or supported metadata tooling where needed.
Organization-Wide Email AddressesUnsupportedMust be manually configured and verified via email confirmation in the target organization prior to deployment.
Currencies & Exchange RatesUnsupportedEnabling multi-currency, active currencies, and conversion rates must be configured manually under Company Information.
Fiscal Year SettingsUnsupportedCustom fiscal year configurations must be defined manually in the target org.
Web-to-Lead / Web-to-CaseUnsupportedHTML generation and endpoint/reCAPTCHA configuration need target review; Auto-Response Rule is a supported change-set component.
Data Records (Seed / Master Data)UnsupportedChange sets deploy metadata only; record data (Accounts, Products, Price Books) requires Data Loader or CLI.

Pre-Deployment and Post-Deployment Sequencing (Runbook)

Complex enterprise deployments must be structured into an ordered execution runbook to prevent deployment validation failures and ensure continuous system availability.

┌─────────────────────────────────────────────────────────────────┐
│                     DEPLOYMENT RUNBOOK STAGES                   │
├─────────────────────────────────────────────────────────────────┤
│  STAGE 1: PRE-DEPLOYMENT MANUAL STEPS                           │
│  • Configure Org-Wide Email Addresses and verify sender inbox   │
│  • Add standard picklist values and configure Sales Processes   │
│  • Enable platform feature licenses (Multi-Currency, etc.)      │
│  • Temporarily disable validation rules or Apex triggers        │
├─────────────────────────────────────────────────────────────────┤
│  STAGE 2: METADATA CHANGE SET DEPLOYMENT                        │
│  • Validate inbound change set (Dry Run)                        │
│  • Execute deployment (Default / Specified Tests)               │
├─────────────────────────────────────────────────────────────────┤
│  STAGE 3: POST-DEPLOYMENT MANUAL STEPS                          │
│  • Activate newly deployed Flows and Assignment Rules           │
│  • Assign newly deployed Permission Sets to business users      │
│  • Migrate master/seed data (Price Books, Products, Settings)   │
│  • Re-enable validation rules and execute smoke testing         │
└─────────────────────────────────────────────────────────────────┘

Stage 1: Pre-Deployment Manual Tasks

Before deploying the inbound change set, administrators must prepare the target environment:

  1. Org-Wide Email Addresses: If a deployed Flow or Email Alert sends emails from support@universalcontainers.com, that address must already exist and be verified in the target org. Otherwise, the change set will fail to deploy.
  2. Standard Picklist Values & Business Processes: If a new Record Type relies on a new Opportunity Stage, the stage value must be manually added to Opportunity.StageName in the target org, and the corresponding Sales Process must be created.
  3. Feature Enablement: Features like State and Country Picklists, Multi-Currency, or Digital Experiences must be activated manually if the incoming metadata depends on them.

Stage 2: Metadata Deployment

Validate and deploy the inbound change set using the appropriate test option, checking deployment logs for any unresolved dependencies.

Stage 3: Post-Deployment Manual Tasks

After the change set commits successfully:

  1. Flow & Rule Activation: Verify whether flows and lead/case assignment rules deployed as active; activate them manually if necessary.
  2. Security Assignment: Assign deployed Permission Sets to designated users or user groups.
  3. Master Data Seeding: Use Data Loader or Salesforce CLI to insert lookup records, product catalogs, price book entries, or custom setting records that the declarative automation requires.
  4. Smoke Testing: Execute representative business transactions to verify that validation rules, formulas, and flows operate as designed.

Tip

Deployment Runbook Documentation: Always maintain a standardized deployment checklist for every release. Documenting exact pre-deployment and post-deployment manual steps ensures repeatable, audit-compliant releases and eliminates high-stress guessing during production maintenance windows.

Official Source Check

Checked October 19, 2026: Permission sets and profile settings in change sets.

Loading diagram...
Comprehensive Metadata Deployment Sequencing Pipeline
Test Your Knowledge

A new Opportunity Record Type depends on new stage values and a Sales Process. Which release plan is sound?

A

Verify/create the required standard stage values and business-process prerequisites in the target, review available dependencies/tool support, then validate the record type and layouts.

B

Assume every prerequisite is automatically included when the record type is selected.

C

Deploy the record type first and ignore any missing-process validation error.

D

Use a custom field to replace the standard Stage field without reviewing forecasting.

Test Your Knowledge

A change set contains a new custom object, four fields, and profile settings. What security review is required before production deployment?

A

Assume the entire profile will be replaced byte for byte.

B

Review included component permissions and the other profile settings, such as user permissions and login IP ranges, that can also deploy.

C

Assume profile settings cannot travel through a change set.

D

Assume the profile is converted into a permission set group.

Test Your Knowledge

An inbound change set containing a new Customer Satisfaction Survey Flow fails deployment validation with the error: 'The email alert referenced by this flow uses an invalid sender address'. The email alert uses an Organization-Wide Email Address of 'feedback@universalcontainers.com'. How should the deployment team resolve this issue?

A

Add the 'feedback@universalcontainers.com' user record to the change set dependencies list and re-upload.

B

Change the email alert in the sandbox to send from the running user's personal email address before deploying.

C

Manually create and verify the Organization-Wide Email Address in the target org before re-validating the change set.

D

Select the 'Run All Tests' deployment option to bypass third-party email validation verification rules.

Sections you finish are checked off in the contents.