@salesforce/afv-skills 1.65.0 → 1.66.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/package.json +1 -1
  2. package/skills/agentforce-offline-experimentation-run/SKILL.md +16 -15
  3. package/skills/agentforce-offline-experimentation-run/scripts/sfap_replay.py +3 -245
  4. package/skills/dx-devops-work-item-manage/SKILL.md +34 -17
  5. package/skills/dx-devops-work-item-manage/examples/common-workflows.md +49 -0
  6. package/skills/dx-devops-work-item-manage/references/commit-api.md +116 -0
  7. package/skills/experience-lwc-widget-assess/SKILL.md +79 -0
  8. package/skills/experience-lwc-widget-migrate/SKILL.md +50 -0
  9. package/skills/field-service-data-capture-form-deployer-configure/SKILL.md +2 -23
  10. package/skills/field-service-data-capture-form-designer-configure/SKILL.md +3 -13
  11. package/skills/field-service-mobile-branding-configure/SKILL.md +3 -17
  12. package/skills/field-service-objective-designer-configure/SKILL.md +379 -72
  13. package/skills/field-service-prework-brief-deployer-configure/SKILL.md +537 -10
  14. package/skills/field-service-scheduling-policy-designer-query/SKILL.md +1093 -65
  15. package/skills/field-service-sobject-create-configure/SKILL.md +213 -13
  16. package/skills/field-service-voice-to-form-configure/SKILL.md +11 -40
  17. package/skills/field-service-work-rule-designer-configure/SKILL.md +95 -121
  18. package/skills/platform-role-hierarchy-apply/SKILL.md +177 -0
  19. package/skills/platform-widget-generate/SKILL.md +58 -41
  20. package/skills/platform-widget-generate/references/widget-bundle-validation.md +14 -0
  21. package/skills/service-agentforce-contact-center-coordinate/SKILL.md +1 -1
  22. package/skills/service-agentforce-contact-center-coordinate/references/number_management_api.md +11 -1
  23. package/skills/service-agentforce-contact-center-coordinate/scripts/fetch-numbers.sh +12 -6
  24. package/skills/service-agentforce-contact-center-coordinate/scripts/lib.sh +16 -0
  25. package/skills/service-agentforce-contact-center-coordinate/scripts/procure-number.sh +2 -1
  26. package/skills/service-concierge-portal-generate/references/portal-deploy-runbook.md +24 -11
  27. package/skills/service-digital-engagement-channel-configure/SKILL.md +25 -14
  28. package/skills/service-digital-engagement-channel-configure/references/onboarding_contract.md +143 -0
  29. package/skills/service-digital-engagement-deployment-configure/SKILL.md +61 -12
  30. package/skills/service-digital-engagement-deployment-configure/references/connect_api_creation.md +14 -5
  31. package/skills/service-digital-engagement-deployment-configure/references/onboarding_contract.md +146 -0
  32. package/skills/service-itsm-agentic-setup-incident-management/SKILL.md +23 -13
  33. package/skills/service-itsm-agentic-setup-incident-management/references/incident-persona-psg.md +7 -6
  34. package/skills/service-itsm-agentic-setup-incident-management/references/incident-preferences.md +9 -10
  35. package/skills/service-itsm-agentic-setup-incident-management/references/major-incident-management.md +6 -6
  36. package/skills/service-itsm-agentic-setup-incident-management/references/service-mgmt-privilege.md +1 -1
  37. package/skills/service-itsm-agentic-setup-incident-sla-configure/SKILL.md +34 -25
  38. package/skills/service-itsm-agentic-setup-incident-sla-configure/examples/milestone-patterns.md +1 -1
  39. package/skills/service-itsm-agentic-setup-incident-sla-configure/references/mcp-invocation.md +90 -86
  40. package/skills/service-itsm-agentic-setup-incident-sla-configure/references/workflow.md +63 -38
  41. package/skills/agentforce-gpt-email-generation-configure/SKILL.md +0 -312
  42. package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +0 -64
  43. package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +0 -46
  44. package/skills/automation-company-profile-info-query/SKILL.md +0 -51
  45. package/skills/automation-digital-wallet-configure/SKILL.md +0 -689
  46. package/skills/automation-flow-coordinate/SKILL.md +0 -95
  47. package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +0 -1569
  48. package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +0 -96
  49. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +0 -23
  50. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +0 -31
  51. package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +0 -179
  52. package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +0 -13
  53. package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +0 -83
  54. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +0 -69
  55. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +0 -274
  56. package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +0 -192
  57. package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +0 -130
  58. package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +0 -92
  59. package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +0 -88
  60. package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +0 -152
  61. package/skills/automation-flow-coordinate/references/elements/start/start.md +0 -539
  62. package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +0 -152
  63. package/skills/automation-flow-coordinate/references/elements/wait/wait.md +0 -497
  64. package/skills/automation-flow-coordinate/references/recipes/author/author.md +0 -868
  65. package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +0 -300
  66. package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +0 -292
  67. package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +0 -323
  68. package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +0 -109
  69. package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +0 -219
  70. package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +0 -180
  71. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +0 -175
  72. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +0 -255
  73. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +0 -212
  74. package/skills/automation-flow-coordinate/references/resources/variable/variable.md +0 -171
  75. package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +0 -786
  76. package/skills/automation-flow-coordinate/references/shared/end/end.md +0 -267
  77. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +0 -69
  78. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +0 -80
  79. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +0 -116
  80. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +0 -321
  81. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +0 -320
  82. package/skills/automation-flow-coordinate/references/shared/server-functions.md +0 -597
  83. package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +0 -69
  84. package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +0 -78
  85. package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +0 -373
  86. package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +0 -273
  87. package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +0 -259
  88. package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +0 -369
  89. package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +0 -542
  90. package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  91. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +0 -349
  92. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +0 -505
  93. package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +0 -380
  94. package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +0 -567
  95. package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  96. package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +0 -360
  97. package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +0 -539
  98. package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +0 -358
  99. package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +0 -602
  100. package/skills/commerce-b2b-store-configure/SKILL.md +0 -251
  101. package/skills/commerce-credit-memo-create/SKILL.md +0 -139
  102. package/skills/commerce-delivery-business-hours-configure/SKILL.md +0 -277
  103. package/skills/commerce-delivery-estimation-apply/SKILL.md +0 -155
  104. package/skills/commerce-delivery-estimation-configure/SKILL.md +0 -377
  105. package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +0 -174
  106. package/skills/commerce-estimate-bopis-query/SKILL.md +0 -279
  107. package/skills/commerce-estimate-delivery-date-query/SKILL.md +0 -349
  108. package/skills/commerce-fees-apply/SKILL.md +0 -227
  109. package/skills/commerce-fulfillment-routing-analyze/SKILL.md +0 -200
  110. package/skills/commerce-guest-buyer-create/SKILL.md +0 -173
  111. package/skills/commerce-location-bopis-configure/SKILL.md +0 -378
  112. package/skills/commerce-location-business-hours-configure/SKILL.md +0 -235
  113. package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +0 -309
  114. package/skills/commerce-location-graph-integrate/SKILL.md +0 -131
  115. package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +0 -755
  116. package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +0 -331
  117. package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +0 -579
  118. package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +0 -626
  119. package/skills/commerce-merchant-catalog-configure/SKILL.md +0 -614
  120. package/skills/commerce-merchant-extension-provider-configure/SKILL.md +0 -368
  121. package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +0 -118
  122. package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +0 -65
  123. package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +0 -90
  124. package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +0 -72
  125. package/skills/commerce-merchant-insights-query/SKILL.md +0 -279
  126. package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +0 -656
  127. package/skills/commerce-order-summary-change-apply/SKILL.md +0 -375
  128. package/skills/commerce-product-details-get/SKILL.md +0 -363
  129. package/skills/commerce-product-search/SKILL.md +0 -563
  130. package/skills/commerce-react-storefront-create/SKILL.md +0 -350
  131. package/skills/commerce-return-order-summary-create/SKILL.md +0 -513
  132. package/skills/commerce-search-relevance-analyze/SKILL.md +0 -757
  133. package/skills/commerce-temporary-processing-time-override-create/SKILL.md +0 -274
  134. package/skills/communications-initial-setup-configure/SKILL.md +0 -630
  135. package/skills/communications-multisite-configure/SKILL.md +0 -571
  136. package/skills/communications-revenue-cloud-settings-configure/SKILL.md +0 -74
  137. package/skills/communications-smb-fiber-catalog-create/SKILL.md +0 -413
  138. package/skills/communications-tmf-integrate/SKILL.md +0 -1368
  139. package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +0 -448
  140. package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +0 -269
  141. package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +0 -271
  142. package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +0 -382
  143. package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +0 -373
  144. package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +0 -389
  145. package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +0 -338
  146. package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +0 -547
  147. package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +0 -346
  148. package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +0 -1110
  149. package/skills/crm-analytics-adoption-insights-configure/SKILL.md +0 -224
  150. package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +0 -418
  151. package/skills/crm-analytics-dashboards-configure/SKILL.md +0 -731
  152. package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +0 -233
  153. package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +0 -184
  154. package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +0 -167
  155. package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +0 -55
  156. package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +0 -1350
  157. package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +0 -1862
  158. package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +0 -83
  159. package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +0 -81
  160. package/skills/data360-activation-create/SKILL.md +0 -104
  161. package/skills/data360-activation-external-platform-get/SKILL.md +0 -49
  162. package/skills/data360-activation-target-create/SKILL.md +0 -93
  163. package/skills/data360-activation-v2-create/SKILL.md +0 -456
  164. package/skills/data360-audience-dmo-get/SKILL.md +0 -38
  165. package/skills/data360-calculated-affinity-create/SKILL.md +0 -82
  166. package/skills/data360-calculated-insight-create/SKILL.md +0 -148
  167. package/skills/data360-catalog-metadata-create/SKILL.md +0 -183
  168. package/skills/data360-code-extension-create/SKILL.md +0 -115
  169. package/skills/data360-communication-capping-create/SKILL.md +0 -227
  170. package/skills/data360-connection-create/SKILL.md +0 -491
  171. package/skills/data360-content-lens-create/SKILL.md +0 -181
  172. package/skills/data360-data-action-create/SKILL.md +0 -126
  173. package/skills/data360-data-action-target-create/SKILL.md +0 -181
  174. package/skills/data360-data-clean-room-create/SKILL.md +0 -238
  175. package/skills/data360-data-governance-create/SKILL.md +0 -746
  176. package/skills/data360-data-graph-create/SKILL.md +0 -82
  177. package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +0 -38
  178. package/skills/data360-data-lake-object-create/SKILL.md +0 -207
  179. package/skills/data360-data-model-object-catalog-get/SKILL.md +0 -49
  180. package/skills/data360-data-model-object-create/SKILL.md +0 -128
  181. package/skills/data360-data-model-object-mapping-create/SKILL.md +0 -106
  182. package/skills/data360-data-space-create/SKILL.md +0 -161
  183. package/skills/data360-data-streams-create/SKILL.md +0 -324
  184. package/skills/data360-engagement-signal-get/SKILL.md +0 -38
  185. package/skills/data360-experiment-create/SKILL.md +0 -82
  186. package/skills/data360-goal-based-campaign-create/SKILL.md +0 -192
  187. package/skills/data360-harmonization-process-history-get/SKILL.md +0 -38
  188. package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +0 -84
  189. package/skills/data360-identity-resolution-create/SKILL.md +0 -115
  190. package/skills/data360-intelligent-document-processing-create/SKILL.md +0 -148
  191. package/skills/data360-knowledge-graph-construction-create/SKILL.md +0 -93
  192. package/skills/data360-knowledge-graph-create/SKILL.md +0 -216
  193. package/skills/data360-knowledge-space-mcp-configure/SKILL.md +0 -475
  194. package/skills/data360-machine-learning-mcp-configure/SKILL.md +0 -697
  195. package/skills/data360-multi-org-mcp-configure/SKILL.md +0 -117
  196. package/skills/data360-secondary-index-mcp-configure/SKILL.md +0 -126
  197. package/skills/data360-segment-mcp-configure/SKILL.md +0 -159
  198. package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +0 -93
  199. package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +0 -93
  200. package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +0 -93
  201. package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +0 -38
  202. package/skills/data360-semantic-engine-mcp-configure/SKILL.md +0 -62
  203. package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +0 -38
  204. package/skills/data360-semantic-metric-mcp-configure/SKILL.md +0 -93
  205. package/skills/data360-semantic-model-mcp-configure/SKILL.md +0 -115
  206. package/skills/data360-standard-mapping-mcp-configure/SKILL.md +0 -38
  207. package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +0 -73
  208. package/skills/experience-afv-query/SKILL.md +0 -234
  209. package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +0 -63
  210. package/skills/experience-apex-components-configure/SKILL.md +0 -69
  211. package/skills/experience-apex-pages-configure/SKILL.md +0 -107
  212. package/skills/experience-app-home-configure/SKILL.md +0 -76
  213. package/skills/experience-aura-lightning-out-access-configure/SKILL.md +0 -58
  214. package/skills/experience-briefcase-configure/SKILL.md +0 -287
  215. package/skills/experience-community-flexi-page-list-create/SKILL.md +0 -74
  216. package/skills/experience-community-template-definition-list-query/SKILL.md +0 -48
  217. package/skills/experience-community-theme-definition-list-query/SKILL.md +0 -38
  218. package/skills/experience-content-assets-configure/SKILL.md +0 -86
  219. package/skills/experience-custom-domain-create/SKILL.md +0 -727
  220. package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +0 -41
  221. package/skills/experience-field-service-app-builder-configure/SKILL.md +0 -187
  222. package/skills/experience-flow-category-configure/SKILL.md +0 -117
  223. package/skills/experience-formula-configure/SKILL.md +0 -358
  224. package/skills/experience-global-actions-configure/SKILL.md +0 -69
  225. package/skills/experience-global-publisher-layouts-configure/SKILL.md +0 -79
  226. package/skills/experience-instrumentation-configure/SKILL.md +0 -64
  227. package/skills/experience-lex-engagement-configure/SKILL.md +0 -50
  228. package/skills/experience-lightning-bolt-open/SKILL.md +0 -12
  229. package/skills/experience-lightning-out-configure/SKILL.md +0 -129
  230. package/skills/experience-lightning-preview-configure/SKILL.md +0 -67
  231. package/skills/experience-lightning-types-query/SKILL.md +0 -98
  232. package/skills/experience-malware-scan-configure/SKILL.md +0 -71
  233. package/skills/experience-my-salesforce-configure/SKILL.md +0 -126
  234. package/skills/experience-navigation-menus-configure/SKILL.md +0 -235
  235. package/skills/experience-notification-types-configure/SKILL.md +0 -206
  236. package/skills/experience-notifications-configure/SKILL.md +0 -75
  237. package/skills/experience-record-discovery-query/SKILL.md +0 -227
  238. package/skills/experience-regenerate-previews-open/SKILL.md +0 -94
  239. package/skills/experience-sales-cloud-mab-configure/SKILL.md +0 -254
  240. package/skills/experience-schema-builder-open/SKILL.md +0 -38
  241. package/skills/experience-simple-record-home-configure/SKILL.md +0 -110
  242. package/skills/experience-static-resources-configure/SKILL.md +0 -74
  243. package/skills/field-service-setup-coordinate/SKILL.md +0 -62
  244. package/skills/field-service-work-plan-configure/SKILL.md +0 -253
  245. package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +0 -180
  246. package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +0 -196
  247. package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +0 -106
  248. package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +0 -96
  249. package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +0 -111
  250. package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +0 -250
  251. package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +0 -122
  252. package/skills/fsc-digital-origination-coordinate/SKILL.md +0 -653
  253. package/skills/fsc-digital-origination-demo-run/SKILL.md +0 -225
  254. package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +0 -112
  255. package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +0 -396
  256. package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +0 -336
  257. package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +0 -208
  258. package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +0 -375
  259. package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +0 -83
  260. package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +0 -248
  261. package/skills/fsc-digital-origination-sample-data-create/SKILL.md +0 -206
  262. package/skills/fsc-document-checklist-settings-configure/SKILL.md +0 -57
  263. package/skills/fsc-flexible-hierarchy-configure/SKILL.md +0 -148
  264. package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +0 -1430
  265. package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +0 -471
  266. package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +0 -429
  267. package/skills/fsc-pricing-product-configurator-configure/SKILL.md +0 -150
  268. package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +0 -123
  269. package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +0 -82
  270. package/skills/fsc-product-act3-attributes-create/SKILL.md +0 -249
  271. package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +0 -196
  272. package/skills/fsc-product-act5-considerations-get/SKILL.md +0 -44
  273. package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +0 -384
  274. package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +0 -144
  275. package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +0 -107
  276. package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +0 -189
  277. package/skills/fsc-stage-management-definition-create/SKILL.md +0 -108
  278. package/skills/fsc-stage-management-permissions-assign/SKILL.md +0 -143
  279. package/skills/fsc-stage-management-transitions-configure/SKILL.md +0 -139
  280. package/skills/health-cloud-appt-booking-config-configure/SKILL.md +0 -135
  281. package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +0 -134
  282. package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +0 -136
  283. package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +0 -134
  284. package/skills/health-cloud-care-requests-create/SKILL.md +0 -178
  285. package/skills/health-cloud-initial-configure/SKILL.md +0 -511
  286. package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +0 -1374
  287. package/skills/health-cloud-provider-search-settings-configure/SKILL.md +0 -924
  288. package/skills/health-cloud-referral-management-coordinate/SKILL.md +0 -513
  289. package/skills/health-cloud-timeline-configure/SKILL.md +0 -622
  290. package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +0 -135
  291. package/skills/industries-account-score-settings-query/SKILL.md +0 -78
  292. package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +0 -177
  293. package/skills/industries-ad-product-availability-search/SKILL.md +0 -399
  294. package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +0 -628
  295. package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +0 -73
  296. package/skills/industries-atm-settings-starter-configure/SKILL.md +0 -76
  297. package/skills/industries-batch-document-ai-configure/SKILL.md +0 -196
  298. package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +0 -71
  299. package/skills/industries-branch-management-settings-configure/SKILL.md +0 -89
  300. package/skills/industries-bre-decision-table-access-configure/SKILL.md +0 -367
  301. package/skills/industries-brokerage-settings-configure/SKILL.md +0 -41
  302. package/skills/industries-calendar-sync-settings-configure/SKILL.md +0 -89
  303. package/skills/industries-care-request-settings-configure/SKILL.md +0 -218
  304. package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +0 -54
  305. package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +0 -380
  306. package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +0 -216
  307. package/skills/industries-catalog-process-intake-configure/SKILL.md +0 -219
  308. package/skills/industries-catalog-process-knowledge-configure/SKILL.md +0 -153
  309. package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +0 -168
  310. package/skills/industries-cds-general-settings-configure/SKILL.md +0 -69
  311. package/skills/industries-claim-financial-settings-configure/SKILL.md +0 -169
  312. package/skills/industries-clinical-data-model-settings-configure/SKILL.md +0 -136
  313. package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +0 -105
  314. package/skills/industries-collection-plan-settings-configure/SKILL.md +0 -132
  315. package/skills/industries-comms-service-console-settings-configure/SKILL.md +0 -159
  316. package/skills/industries-compliance-configure/SKILL.md +0 -102
  317. package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +0 -76
  318. package/skills/industries-contact-center-app-layout-configure/SKILL.md +0 -88
  319. package/skills/industries-contact-center-components-configure/SKILL.md +0 -96
  320. package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +0 -95
  321. package/skills/industries-contact-center-user-access-assign/SKILL.md +0 -96
  322. package/skills/industries-course-waitlist-config-configure/SKILL.md +0 -162
  323. package/skills/industries-crisis-center-settings-configure/SKILL.md +0 -84
  324. package/skills/industries-custom-object-settings-configure/SKILL.md +0 -94
  325. package/skills/industries-data-cloud-integration-configure/SKILL.md +0 -88
  326. package/skills/industries-data-space-feature-mappings-configure/SKILL.md +0 -245
  327. package/skills/industries-decision-matrix-builder-configure/SKILL.md +0 -78
  328. package/skills/industries-decision-table-hbase-configure/SKILL.md +0 -87
  329. package/skills/industries-decision-table-version-configure/SKILL.md +0 -74
  330. package/skills/industries-decision-tables-builder-configure/SKILL.md +0 -253
  331. package/skills/industries-decision-tables-configure/SKILL.md +0 -439
  332. package/skills/industries-energy-utilities-configure/SKILL.md +0 -251
  333. package/skills/industries-eu-cloud-multisite-configure/SKILL.md +0 -1008
  334. package/skills/industries-eu-new-connections-configure/SKILL.md +0 -30
  335. package/skills/industries-explainability-msg-template-configure/SKILL.md +0 -135
  336. package/skills/industries-expression-set-message-token-configure/SKILL.md +0 -135
  337. package/skills/industries-field-service-settings-configure/SKILL.md +0 -82
  338. package/skills/industries-form-framework-settings-configure/SKILL.md +0 -30
  339. package/skills/industries-fsc-ai-settings-configure/SKILL.md +0 -57
  340. package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +0 -172
  341. package/skills/industries-fsc-b2b-settings-configure/SKILL.md +0 -61
  342. package/skills/industries-fsc-insurance-settings-configure/SKILL.md +0 -58
  343. package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +0 -103
  344. package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +0 -117
  345. package/skills/industries-fsc-wealth-settings-configure/SKILL.md +0 -99
  346. package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +0 -120
  347. package/skills/industries-fundraising-rfm-configure/SKILL.md +0 -128
  348. package/skills/industries-fundraising-settings-configure/SKILL.md +0 -145
  349. package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +0 -299
  350. package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +0 -87
  351. package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +0 -58
  352. package/skills/industries-hc-score-category-settings-configure/SKILL.md +0 -167
  353. package/skills/industries-health-engagement-settings-configure/SKILL.md +0 -218
  354. package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +0 -131
  355. package/skills/industries-home-health-bundling-policy-create/SKILL.md +0 -50
  356. package/skills/industries-home-health-entity-labels-configure/SKILL.md +0 -29
  357. package/skills/industries-home-health-fsl-package-deploy/SKILL.md +0 -71
  358. package/skills/industries-home-health-fsl-settings-validate/SKILL.md +0 -27
  359. package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +0 -80
  360. package/skills/industries-home-health-guided-setup-configure/SKILL.md +0 -836
  361. package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +0 -55
  362. package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +0 -61
  363. package/skills/industries-home-health-licenses-assign/SKILL.md +0 -27
  364. package/skills/industries-home-health-operating-hours-create/SKILL.md +0 -40
  365. package/skills/industries-home-health-scheduling-policy-create/SKILL.md +0 -41
  366. package/skills/industries-home-health-service-objective-create/SKILL.md +0 -22
  367. package/skills/industries-home-health-skills-create/SKILL.md +0 -31
  368. package/skills/industries-home-health-users-create/SKILL.md +0 -29
  369. package/skills/industries-icm-act3-toggles-configure/SKILL.md +0 -198
  370. package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +0 -361
  371. package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +0 -550
  372. package/skills/industries-integrated-care-management-configure/SKILL.md +0 -168
  373. package/skills/industries-object-enablement-configure/SKILL.md +0 -86
  374. package/skills/industries-tpm-system-processing-service-configure/SKILL.md +0 -64
  375. package/skills/integration-apex-settings-configure/SKILL.md +0 -61
  376. package/skills/marketing-e360-email-archiving-configure/SKILL.md +0 -73
  377. package/skills/platform-custom-permissions-configure/SKILL.md +0 -687
  378. package/skills/platform-label-workbench-import-create/SKILL.md +0 -67
  379. package/skills/platform-privacy-agent-settings-configure/SKILL.md +0 -752
@@ -1,180 +0,0 @@
1
- ---
2
- name: fsc-actionable-segmentation-settings-configure
3
- description: "Use this skill when users want to manages Actionable Segmentation (FSC Actionable List) admin settings. Trigger when users mention actionable, segmentation, settings, actionable segmentation settings."
4
- metadata:
5
- version: "1.0"
6
- accessCheck: "(ActionableList.userHasActionableListAccess) || (SetupUtil.isSetupAdmin)"
7
- ---
8
-
9
- # Managing Actionable Segmentation Settings
10
-
11
- ## When to Use This Skill
12
-
13
- Manages Actionable Segmentation (FSC Actionable List) admin settings. Three concept clusters: (1) two org prefs `listPref` (master feature toggle) and `adminConfigAccess` (admin-config edit perm) read together as a map and toggled individually; (2) install + status of the bundled CRM Analytics (Wave) application that backs the feature; (3) admin-list-view ops on `ActionableListDefinition` (ALD) records — toggle IsActive, upsert dataset columns and member statuses with server-enforced caps + uniqueness, and a canDelete + delete pair. `BatchCalcJobDefinition` lookup by anchor entity supports the ALD editor.
14
-
15
- ## Workflow
16
-
17
- Enable the feature via save-pref(listPref=true), then install-wave-application; poll get-actionable-list-folder-status until it returns `CompletedStatus` (`InProgressStatus` while still running; `NotAvailable` before it starts). ALD edits need an existing ALD id (creation lives on industries-actionablelist-connect-api). Always call can-delete-actionable-list-definition before delete-actionable-list-definition.
18
-
19
- ## Critical Constraints
20
-
21
- **Preconditions:**
22
-
23
- - User must have ActionableList ActionableListAccess access. (check: `Actionable List access`)
24
- - Caller must be a Setup admin. The backing bean gates BOTH the read (getActionableListAllConfigurations) and the write (savePref) with `!isSetupAdmin() && ORG_HAS_ACTIONABLE_LIST → NoAccessException`, so once ActionableList is enabled on the org a non-admin cannot read the config map or toggle any pref. Skill-wide, not step-scoped. (check: `Setup administrator access`)
25
-
26
- **Destructive operations — require explicit user confirmation:**
27
-
28
- - **`delete-actionable-list-definition`** — Delete the ActionableListDefinition; cascades to its dataset columns and member statuses. Pair with can-delete-actionable-list-definition to gate the call and avoid orphaning ActionableList rows.
29
- - Rollback: No automatic rollback.
30
-
31
- ## Verification Checklist
32
-
33
- After every write operation, confirm the effect by re-reading state:
34
-
35
- - After `save-pref`: call `verify-save-pref` (`GET /headless/invoke/platform/actionable-segmentation-settings`)
36
- - After `install-wave-application`: call `verify-install-wave-application` (`GET /headless/invoke/platform/actionable-segmentation-settings/get-actionable-list-folder-status`)
37
-
38
- ## Operations Reference
39
-
40
- Operations grouped by purpose. Use these as the building blocks for the workflows above.
41
-
42
- ### Summary
43
-
44
- | Operation | Purpose | Status | Call | Depends on |
45
- |-----------|---------|--------|------|------------|
46
- | `get-all-configurations` | read | proposed | `GET /headless/invoke/platform/actionable-segmentation-settings` | — |
47
- | `get-datatable-data-types` | read | proposed | `GET /headless/invoke/platform/actionable-segmentation-settings/get-datatable-data-types` | — |
48
- | `save-pref` | write | implemented | `PATCH /headless/invoke/platform/actionable-segmentation-settings/save-pref` | — |
49
- | `get-actionable-list-folder-status` | read | proposed | `GET /headless/invoke/platform/actionable-segmentation-settings/get-actionable-list-folder-status` | — |
50
- | `install-wave-application` | write | proposed | `PATCH /headless/invoke/platform/actionable-segmentation-settings/install-wave-application` | — |
51
- | `update-actionable-list-member-status` | write | proposed | `PATCH /headless/invoke/platform/actionable-segmentation-settings/update-actionable-list-member-status` | — |
52
- | `update-dataset-columns` | write | proposed | `PATCH /headless/invoke/platform/actionable-segmentation-settings/update-dataset-columns` | — |
53
- | `toggle-actionable-list-definition` | write | proposed | `PATCH /headless/invoke/platform/actionable-segmentation-settings/toggle-actionable-list-definition` | — |
54
- | `can-delete-actionable-list-definition` | read | proposed | `GET /headless/invoke/platform/actionable-segmentation-settings/can-delete-actionable-list-definition` | — |
55
- | `delete-actionable-list-definition` | delete | proposed | `DELETE /headless/invoke/platform/actionable-segmentation-settings/delete-actionable-list-definition` | — |
56
- | `get-batch-calc-job-definitions` | read | proposed | `GET /headless/invoke/platform/actionable-segmentation-settings/get-batch-calc-job-definitions` | — |
57
- | `verify-save-pref` | verify | — | `GET /headless/invoke/platform/actionable-segmentation-settings` | `save-pref` |
58
- | `verify-install-wave-application` | verify | — | `GET /headless/invoke/platform/actionable-segmentation-settings/get-actionable-list-folder-status` | `install-wave-application` |
59
-
60
- ### Read operations
61
-
62
- #### `get-all-configurations`
63
-
64
- Returns Map<String,Boolean> with `listPref` (master toggle) and `adminConfigAccess` (admin-config edit perm). Throws NoAccessException for non-Setup-admins when listPref is on. AURA-IS-CANONICAL — feature-scoped 2-key projection of org prefs.
65
-
66
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings` — status: `proposed`
67
-
68
- #### `get-datatable-data-types`
69
-
70
- Returns supported column types as Map<name,apiValue>: Boolean, Currency, Date, DateTime, Email, Location, Number, Percent, Phone, Text (default), Url. AURA-IS-CANONICAL — wraps internal Java enum, no public describe surface.
71
-
72
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings/get-datatable-data-types` — status: `proposed`
73
-
74
- #### `get-actionable-list-folder-status`
75
-
76
- Returns the bundled CRM Analytics (Wave) app install status, or null when caller lacks View Setup. Fixed 3-value enum: `CompletedStatus` (install finished successfully), `InProgressStatus` (install still running), `NotAvailable` (no install present / not started). AURA-IS-CANONICAL — controller hides the canonical Wave folder name; raw `/wave/folders/{id}` requires the agent to know it.
77
-
78
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings/get-actionable-list-folder-status` — status: `proposed`
79
-
80
- #### `can-delete-actionable-list-definition`
81
-
82
- Returns true when no ActionableList rows reference the given ALD (delete would not orphan). Call before delete-actionable-list-definition. AURA-IS-CANONICAL — wraps orphan-check semantics that may evolve; raw SOQL count bakes the current implementation in.
83
-
84
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings/can-delete-actionable-list-definition` — status: `proposed`
85
-
86
- **Inputs:**
87
-
88
- - `actionableListDefinitionId` *(`String`)*
89
-
90
- #### `get-batch-calc-job-definitions`
91
-
92
- Lists BatchCalcJobDefinition records whose AnchorEntity matches the given object API name. Powers the ALD editor's calc-job picker. AURA-IS-CANONICAL — BatchCalcJobDefinition is industries-internal; sObject substitution plausible but unverified.
93
-
94
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings/get-batch-calc-job-definitions` — status: `proposed`
95
-
96
- **Inputs:**
97
-
98
- - `anchorEntity` *(`String`)*
99
-
100
- ### Write operations
101
-
102
- #### `save-pref`
103
-
104
- Writes one org pref. `pref` is restricted to {listPref, adminConfigAccess}; any other name is ignored. Server-enforced gating inside savePref: a non-Setup-admin caller (with ActionableList enabled) gets NoAccessException; a Setup-admin caller must additionally have Data Pipelines/Insights enabled (InsightsAccessCheck.ORG_HAS_DATA_PIPELINES_APP AND ORG_HAS_DATA_PIPELINES_APP_ENABLED — else AuraHandledException "DataPipeLineNotEnabledError") and Data Processing Engine enabled (CalcserviceAccessCheck.ORG_HAS_CALCSERVICE — else "DPENotEnabledError"). AURA-IS-CANONICAL — the pref allowlist + admin cross-feature gate are not reconstructable via a raw pref / Metadata-API write.
105
-
106
- **Call:** `PATCH /headless/invoke/platform/actionable-segmentation-settings/save-pref` — status: `implemented`
107
-
108
- **Inputs:**
109
-
110
- - `pref` *(`String`)* — Value for the pref field.
111
- - `enabled` *(`boolean`)* — Whether d is enabled.
112
-
113
- #### `install-wave-application`
114
-
115
- Triggers install of the bundled CRM Analytics (Wave) app required for Actionable Segmentation. Setup-admin only. Idempotent at the service layer. AURA-IS-CANONICAL — controller hides the canonical templateApiName; sibling SORs RevenueInsightsSetup / ServiceUnifiedAnalytics wrap the install per-feature for the same reason.
116
-
117
- **Call:** `PATCH /headless/invoke/platform/actionable-segmentation-settings/install-wave-application` — status: `proposed`
118
-
119
- #### `update-actionable-list-member-status`
120
-
121
- Upserts ActionableListMemberStatus rows on one ALD. inputJson is `{memberStatus:[{id?, statusIcon, status}]}`; entries without id created, with id modified, duplicate `status` rejected server-side. Returns ALL member statuses (max 100). AURA-IS-CANONICAL — batch + uniqueness not reconstructable via per-row sObject PATCH.
122
-
123
- **Call:** `PATCH /headless/invoke/platform/actionable-segmentation-settings/update-actionable-list-member-status` — status: `proposed`
124
-
125
- **Inputs:**
126
-
127
- - `actionableListDefinitionId` *(`String`)* — Id of the actionable list definition.
128
- - `inputJson` *(`String`)* — Value for the input json field.
129
-
130
- #### `update-dataset-columns`
131
-
132
- Upserts ActionableListDatasetColumn rows on one ALD. inputJson is `{datasetColumn:[{id, sourceFieldName, objectName, isDefault, dataDomain, dataType, isTypeAheadSearchEnabled}]}`. Server enforces MAX_DEF_ALDC_IN_ALD cap on default-flagged columns and rejects renaming the anchor object's Id column. AURA-IS-CANONICAL.
133
-
134
- **Call:** `PATCH /headless/invoke/platform/actionable-segmentation-settings/update-dataset-columns` — status: `proposed`
135
-
136
- **Inputs:**
137
-
138
- - `actionableListDefinitionId` *(`String`)* — Id of the actionable list definition.
139
- - `inputJson` *(`String`)* — Value for the input json field.
140
-
141
- #### `toggle-actionable-list-definition`
142
-
143
- Sets IsActive on the named ALD and returns the updated record (id + recordLink + named fields). AURA-IS-CANONICAL — Connect API has no PATCH on ALD; raw sObject PATCH returns 204, losing the controller's record-projection response.
144
-
145
- **Call:** `PATCH /headless/invoke/platform/actionable-segmentation-settings/toggle-actionable-list-definition` — status: `proposed`
146
-
147
- **Inputs:**
148
-
149
- - `actionableListDefinitionId` *(`String`)* — Id of the actionable list definition.
150
- - `isActive` *(`boolean`)* — Whether active is enabled.
151
-
152
- ### Verify operations
153
-
154
- #### `verify-save-pref`
155
-
156
- Read back the org-pref map via getActionableListAllConfigurations to confirm save-pref took effect; check the targeted key (`listPref` or `adminConfigAccess`) equals the value that was written.
157
-
158
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings`
159
-
160
- **Depends on:** `save-pref`
161
-
162
- #### `verify-install-wave-application`
163
-
164
- Read the Wave folder install status via getActionableListFolderStatus to confirm install-wave-application kicked off and to poll until it reports `CompletedStatus` (`InProgressStatus` while the install is still running; `NotAvailable` before it starts).
165
-
166
- **Call:** `GET /headless/invoke/platform/actionable-segmentation-settings/get-actionable-list-folder-status`
167
-
168
- **Depends on:** `install-wave-application`
169
-
170
- ### Destructive operations
171
-
172
- #### `delete-actionable-list-definition`
173
-
174
- Delete the ActionableListDefinition; cascades to its dataset columns and member statuses. Pair with can-delete-actionable-list-definition to gate the call and avoid orphaning ActionableList rows.
175
-
176
- **Call:** `DELETE /headless/invoke/platform/actionable-segmentation-settings/delete-actionable-list-definition` — status: `proposed`
177
-
178
- **Inputs:**
179
-
180
- - `actionableListDefinitionId` *(`String`)*
@@ -1,196 +0,0 @@
1
- ---
2
- name: fsc-digital-origination-bre-decision-matrix-foundation-create
3
- parent: "digital-origination-bre-setup"
4
- purpose: "Create, populate, and activate a Business Rules Engine decision matrix used by a lending BRE feature."
5
- description: "Create a Business Rules Engine decision matrix, define its input and output columns, load its rows, and activate the version - the shared building block for the Digital Lending Disclosures and Consent, Document Upload, and STP applicant eligibility features. The matrix is a CalculationMatrix sObject (key prefix 0lI); its Type field MUST be set to \"Standard\" (the derived version MatrixType formula reads from it - a null Type makes the runtime lookup throw \"Unsupported Matrix type null\"). Columns are written through the BRE Taurus decision-matrix Connect builder API (columns auto-create version 1); rows are written by direct CalculationMatrixRow sObject insert with an engine-computed MD5-hash Name into a draft version; and the version is activated through the decision-matrix builder controller. Resolves an existing matrix by exact name before creating one, and validates activation with a fresh read AND a live BRE lookup."
6
- metadata:
7
- version: "1.0"
8
- ---
9
-
10
- # Digital Origination decision-matrix foundation
11
-
12
- Create the Business Rules Engine **decision matrix** that a lending BRE feature depends on: a lookup of
13
- input column values to output column values. This sibling owns the matrix lifecycle only — create,
14
- columns, rows, activate. The calling feature sibling supplies the matrix name, the column contract, and
15
- the concrete rows, and consumes the returned matrix and version IDs.
16
-
17
- A decision matrix here is the admin-typed lookup surface from the help articles (Business Rules Engine →
18
- Lookup Tables → New → Decision Matrix), **not** the source-object decision *table* used by
19
- `digital-origination-pricing-setup`. Do not use the decision-table Connect API for this work.
20
-
21
- ## The matrix is a CalculationMatrix, not a DecisionMatrixDefinition
22
-
23
- Org-verified: the FSC Digital Lending decision matrix is stored as a **`CalculationMatrix`** sObject
24
- (key prefix `0lI`), with `CalculationMatrixVersion` (`0lN`), `CalculationMatrixColumn` (`0lJ`), and
25
- `CalculationMatrixRow` (`9mt`). The BRE `DecisionMatrixDefinition`/`DecisionMatrixDefinitionVersion`
26
- sObjects (prefixes `9QN`/`9QO`) are a **different model** — the Connect decision-matrix API rejects a
27
- `9QN` id with `INVALID_ID_FIELD`. Always create and address the matrix as a `CalculationMatrix`.
28
-
29
- There is **no Connect "create matrix definition" operation.** The matrix definition is created by a
30
- direct `CalculationMatrix` sObject insert (or, the officially supported path, a Metadata API deploy of a
31
- `DecisionMatrixDefinition` metadata component with `type` set). Do not look for a
32
- `POST /connect/business-rules/...` create op — it does not exist.
33
-
34
- ## The single most important field: `CalculationMatrix.Type`
35
-
36
- **Org-verified root cause — set `CalculationMatrix.Type` or the matrix will never evaluate.**
37
- `CalculationMatrixVersion.MatrixType` is a **derived formula field** that mirrors the parent
38
- `CalculationMatrix.Type` at query time (it is read-only — createable=false, updateable=false — so nothing
39
- writes it directly). A raw `CalculationMatrix` sObject insert leaves `Type` null, so `MatrixType` reads
40
- null on every version forever, and the runtime lookup dispatch (`Standard` vs `Grouped`) falls through to
41
- `throw "Unsupported Matrix type null"` — surfaced to callers as *"there isn't any output for the specified
42
- input parameters."* The same null also 500s the Connect rows write.
43
-
44
- **Fix / requirement:** immediately after inserting the `CalculationMatrix`, PATCH
45
- `Type = "Standard"` (a plain settable STATICENUM; enum `CalcMatrixType` = `Standard` | `Grouped` — use
46
- `Standard` unless you genuinely need grouped semantics). Verify with a query that
47
- `CalculationMatrixVersion.MatrixType` reads `Standard`, not null. The supported *creation* path — a
48
- Metadata API deploy of a `DecisionMatrixDefinition` with a required `type` — sets `Type` for you; a raw
49
- sObject insert does not, so you must PATCH it.
50
-
51
- ## Preconditions and input contract
52
-
53
- Require from the calling feature sibling:
54
-
55
- - Target-org alias and acting admin.
56
- - Exact matrix **Name**.
57
- - Column contract: for each column, the header name/apiName, header type (`Input` or `Output`), and
58
- data type. Use the exact enum the `CalculationMatrixColumn` describe accepts — verified tokens:
59
- `ColumnType` = `Input` | `Output`; `DataType` = `Text` | `Number` | `NumberRange` | `TextRange` |
60
- `Currency` | `Percent` | `Boolean`. Map help-article labels (e.g. "Number Range") to these tokens
61
- (`NumberRange`) — never submit the English label.
62
- - Row contract: one or more rows, each mapping input values to output values.
63
-
64
- Confirm Rule Engine Designer access from the `permissions` sibling before creating a matrix.
65
-
66
- ## Corpus operations and sObjects to use
67
-
68
- **Create the matrix definition (sObject insert).** Insert a `CalculationMatrix` record — required field
69
- `Name`, optional `Description`. Capture the returned id (`0lI…`) as `matrixId`. **Then PATCH
70
- `CalculationMatrix.Type = "Standard"`** (see "The single most important field" above) — without it the
71
- matrix never evaluates.
72
-
73
- **Columns — approved BRE Taurus decision-matrix Connect API**
74
- (SOR `connect-api/bre-taurus/industries-interaction-decisionmatrix-connect-api__sfdc.industries.interaction.decisionmatrix.connect.api_oas_67.0`):
75
-
76
- | Purpose | Step | Endpoint |
77
- |---|---|---|
78
- | Add columns | `post-decision-matrix-columns` | `POST /connect/omnistudio/decision-matrices/{matrixId}/columns` |
79
- | Verify columns | `verify-columns` / `get-decision-matrix-columns` | `GET /connect/omnistudio/decision-matrices/{matrixId}/columns` |
80
- | Read rows | `verify-rows` / `get-decision-matrix-rows` | `GET /connect/omnistudio/decision-matrices/{matrixId}/versions/{versionId}/rows` |
81
-
82
- Rows are written by **direct `CalculationMatrixRow` sObject insert**, not a Connect POST — see the rows
83
- section below. The Connect `post-decision-matrix-rows` op exists but 500s on the verified org.
84
-
85
- Each column object: `{name, apiName, columnType, dataType, displaySequence}` — and, for a `NumberRange`
86
- input column, `rangeValues` (see below). **The first `post-decision-matrix-columns` call auto-creates
87
- version 1** (`CalculationMatrixVersion`, `0lN`). Do **not** insert a `CalculationMatrixVersion` yourself —
88
- inserting it before columns fails ("needs at least one input and one output column"), and inserting it
89
- after fails ("version number 1 already in use"). Read the auto-created version id with a SOQL query on
90
- `CalculationMatrixVersion` filtered by `CalculationMatrixId`.
91
-
92
- **`NumberRange` banding is a column property, set at column-creation time.** A `NumberRange` input column
93
- carries a `rangeValues` string — a comma-separated list of band boundaries (org-verified shape, e.g.
94
- `"0,740,10000"` for two bands 0–739 and 740–9999). It **cannot** be edited later: once the version is
95
- enabled the Connect columns-POST returns "You can't edit the column data in an enabled Decision Matrix
96
- version," and once the matrix has more than one version it returns "Can't edit columns in a Decision
97
- Matrix with more than 1000 rows or more than one version." So set `rangeValues` on the very first
98
- `post-decision-matrix-columns` call. A column posted without it reads back `rangeValues: null` and the
99
- runtime lookup will never match a range row.
100
-
101
- **Rows — direct `CalculationMatrixRow` sObject insert with an engine-computed MD5-hash `Name`
102
- (org-verified).** Insert each row as a `CalculationMatrixRow` sObject. Fields: `CalculationMatrixVersionId`
103
- (the ONLY FK — there is no `CalculationMatrixId` field on the row), `Name` (the engine hash, below),
104
- `InputData` (JSON string), `OutputData` (JSON string). Direct inserts **do** materialize into the runtime
105
- lookup **once `CalculationMatrix.Type` is set** (the earlier belief that they don't was a
106
- misdiagnosis — the real blocker was the null `Type`). The Connect `post-decision-matrix-rows` write 500s
107
- on the verified org (`UNKNOWN_EXCEPTION`) regardless of body, so do not depend on it.
108
-
109
- - **The `Name` MUST be the engine's row hash, or the lookup won't find the row.** Algorithm (this is the
110
- exact hash the matrix engine computes to match a row at lookup time, reproduced here): over the **input columns only**, sort keys in natural String order;
111
- for each build `columnName + String.valueOf(value).toLowerCase()` (the column `Name` is NOT lowercased,
112
- the value IS); join with `""` (no separator); MD5 the UTF-8 bytes; hex-encode lowercase (32 chars).
113
- Example (`CreditScore` boundary `740`): `md5("CreditScore740")` = `f3b5ae55316f2fb03e4b416d3b80940e`.
114
- - **`InputData` shape:** for a `NumberRange` column, the **band-boundary value as a string**
115
- (`{"CreditScore":"0"}`, `{"CreditScore":"740"}` — NOT `{"min":0,"max":739}`; the boundary is the hashed
116
- value). For `Text`, the literal value. `OutputData` carries the raw typed output (`{"IsSTP":true}`,
117
- `{"docTypeLabel":"ApplicationForm"}`, `{"DataUsePurpose":"<id>"}`).
118
- - **Rows can only be inserted/deleted while the version is a draft (`IsEnabled=false`)** — an enabled
119
- version rejects row DML. Set `IsEnabled=false` first. To change an existing row, DELETE then INSERT
120
- (an in-place UPDATE is rejected by the matrix save-hook). To add rows to an already-enabled matrix,
121
- disable the version (or append a new draft version — see step 4a), do the row DML, then re-activate.
122
-
123
- Verify with the `get-decision-matrix-rows` GET (or a SOQL on `CalculationMatrixRow`), then prove
124
- materialization with a live BRE lookup.
125
-
126
- **Activate — decision-matrix builder controller** (SOR
127
- `wizard-ui-industries-interaction-decisionmatrix-components`):
128
-
129
- | Purpose | Step | Endpoint |
130
- |---|---|---|
131
- | Activate a matrix version | `decision-matrix-version-controller-activate-d-m-version` | `PATCH /headless/invoke/industries/industries-interaction-decisionmatrix/activate-dmversion` (body `{decisionMatrixVersionId}`) |
132
-
133
- Related builder ops exist (`get-decision-matrix-definition-id`, `create-new-dmversion`,
134
- `is-missing-columns-in-dm`) but `create-new-dmversion` needs an existing anchor version, so it is for
135
- adding a **second** version to an already-built matrix, not the initial build.
136
-
137
- ## Create-or-reuse algorithm
138
-
139
- 1. **Resolve existing.** SOQL `CalculationMatrix` by exact `Name`. If found, capture its id and its
140
- latest `CalculationMatrixVersion`; read its columns/rows via the Connect GETs. Do not create a
141
- duplicate merely because an id was not handed in. (`GET /connect/omnistudio/decision-matrices` search
142
- is gated by `orgHasInteractionCalculationAccess` and may 400 — fall back to SOQL.)
143
- 2. **Create the matrix if absent.** Insert a `CalculationMatrix` sObject with the requested `Name`.
144
- Capture `matrixId`. **PATCH `Type = "Standard"`** and confirm the version's derived `MatrixType` reads
145
- `Standard` (not null) — this is the step that makes the matrix evaluable at runtime.
146
- 3. **Add columns (with `NumberRange` banding).** Call `post-decision-matrix-columns` with the full column
147
- contract — including `rangeValues` on any `NumberRange` input column, because it cannot be set later —
148
- then confirm with `get-decision-matrix-columns`. This auto-creates version 1 — read its id from
149
- `CalculationMatrixVersion` (filter on `CalculationMatrixId`). Set input attributes on input columns
150
- only.
151
- 4. **Add rows by direct sObject insert.** For the auto-created draft version 1, insert each
152
- `CalculationMatrixRow` with `CalculationMatrixVersionId`, the MD5-hash `Name`, `InputData`
153
- (`NumberRange` = boundary-scalar string, `Text` = literal), and `OutputData` (raw typed value). Confirm
154
- with the `get-decision-matrix-rows` GET (or SOQL) that every row round-trips. The version must be a
155
- draft (`IsEnabled=false`) for the insert; the auto-created v1 is a draft until you activate it.
156
- 4a. **Editing rows on an already-enabled matrix.** If the target version is enabled, set
157
- `IsEnabled=false` first (or append a new draft `CalculationMatrixVersion` — the `create-new-dmversion`
158
- clone API returns "Cannot create definition record" on sObject-created matrices, so a direct version
159
- insert with `IsEnabled=false` and the next `VersionNumber` is the fallback), do the row DML
160
- (DELETE+INSERT to change a row — in-place UPDATE is rejected by the save-hook), then re-activate.
161
- 5. **Activate.** Call `activate-dmversion` with the version id, then re-read the
162
- `CalculationMatrixVersion`. Activation is confirmed when `StartDateTime` is set and `EndDateTime` is
163
- null (there is no `Status` field on the version and no `ActiveVersionId` on the matrix). A 200 alone
164
- is not proof — require the fresh read.
165
- 5a. **Prove runtime materialization.** Call the live BRE lookup
166
- `POST /connect/business-rules/decision-matrices/{Name}` with a representative input and confirm it
167
- returns the expected output (not "there isn't any output for the specified input parameters"). An
168
- Active window with a failing lookup means the rows did not materialize — revisit step 4.
169
- 6. **Setup checkpoint fallback.** If `activate-dmversion` is rejected or the version never shows an
170
- active window, stop at the Setup checkpoint: App Launcher → Business Rules Engine → Lookup Tables →
171
- open the matrix → open the version → Save and Activate. Resume only after re-reading the active
172
- window. Do not report an in-progress or draft matrix as active.
173
-
174
- ## Idempotency and rollback
175
-
176
- - Reuse an exact-match matrix (same columns, same header/data types) and exact-match rows.
177
- - Do not create suffixed duplicates such as `IsSTPApplication2` automatically. On a shape mismatch,
178
- stop and present the diff.
179
- - Rollback for rows added by this run is a targeted removal; do not delete a matrix that a feature or
180
- OmniScript already depends on without explicit approval.
181
-
182
- ## Output contract
183
-
184
- Return matrix Name, `CalculationMatrix` id (`0lI…`), `CalculationMatrixVersion` id (`0lN…`), active
185
- status (the version's `StartDateTime`/`EndDateTime` window), the verified column list (with
186
- header/data types), and the verified row set. These IDs are the handoff back to the calling feature
187
- sibling.
188
-
189
- ## Definition of done
190
-
191
- The requested matrix exists exactly once as a `CalculationMatrix`, carries the exact columns and rows
192
- supplied by the feature sibling, its version reads active (StartDateTime set, EndDateTime null) on a
193
- fresh read, **and a live BRE lookup against the matrix returns the expected output** (proving the rows
194
- materialized into the runtime index). A matrix that is Active but whose lookup returns "no output for the
195
- specified input" is NOT done. A manual activation checkpoint left incomplete means this sibling is
196
- partial.
@@ -1,106 +0,0 @@
1
- ---
2
- name: fsc-digital-origination-bre-disclosures-consent-configure
3
- parent: "digital-origination-bre-setup"
4
- purpose: "Set up disclosure and consent for a lending product via a decision matrix, a data use purpose, and an authorization form."
5
- description: "Set up Disclosures and Consent for Digital Lending: a Business Rules Engine decision matrix that matches a lending product and applicant type to the data use purpose that defines why consent and disclosure are collected, plus the supporting home loan product, Data Use Purpose record, and locale-scoped Authorization Form. Drives the shared decision-matrix-foundation sibling for the matrix, and handles the Data Use Purpose and Authorization Form objects through standard sObject REST with describe-first discovery. Never invents disclosure text, products, or applicant types."
6
- metadata:
7
- version: "1.0"
8
- ---
9
-
10
- # Digital Origination disclosure and consent
11
-
12
- Automate which disclosure-and-consent applies to a lending application. A decision matrix matches the
13
- lending product and applicant type to a **Data Use Purpose** record (the reason consent and disclosure
14
- are collected); an **Authorization Form** holds the locale-scoped text the applicant sees. This sibling
15
- owns the consent matrix and its supporting records. It does not create OmniScripts or document types.
16
-
17
- Source: Salesforce Help "Disclosure and Consent for Digital Lending" and its use-case example. Concept:
18
- *disclosure* is information the institution must share with a customer; *consent* is the permission the
19
- customer grants the institution to act on their behalf.
20
-
21
- ## Required inputs
22
-
23
- - Target-org alias and acting admin.
24
- - The lending Product (create or reuse) and the applicant type (the example uses `Primary Applicant`).
25
- - The Data Use Purpose definition — the business reason for collecting consent/disclosure.
26
- - The disclosure-and-consent text and its locale (the example uses English).
27
-
28
- Help-article values are examples, never customer defaults. A missing product, purpose, or text is a
29
- user decision, not something to infer.
30
-
31
- ## Decision matrix contract
32
-
33
- Drive nested `decision-matrix-foundation` to create and activate a decision matrix with:
34
-
35
- | Column header (apiName) | columnType | dataType |
36
- |---|---|---|
37
- | `ProductId` | `Input` | `Text` |
38
- | `ApplicantType` | `Input` | `Text` |
39
- | `Level` | `Input` | `Text` |
40
- | `DataUsePurpose` | `Output` | `Text` |
41
-
42
- Use the exact `CalculationMatrixColumn` enum tokens (`Input`/`Output`, `Text`); do not submit English
43
- labels. The `DataUsePurpose` output cell holds the activated Data Use Purpose Id.
44
-
45
- ## Supporting records (sObject REST, describe-first)
46
-
47
- The Data Use Purpose and Authorization Form objects have no dedicated corpus SOR. Handle them through
48
- standard sObject REST, describing each object first and binding only to field API names the describe
49
- returns. Never guess a field name from a UI label. Org-verified objects on a Digital Lending org:
50
- `DataUsePurpose` (`0ZW`, has `IsActive`), `AuthorizationForm` (`0cI`, has `DefaultAuthFormTextId`,
51
- `EffectiveFromDate`/`EffectiveToDate`), `AuthorizationFormText` (`0cN`, has `Locale`/`LocaleSelection`
52
- picklists — English is `en_US` — plus `IsActive` and `DetailAuthorizationFormText`), and the
53
- `AuthorizationFormDataUse` junction (`0cM`, links `AuthorizationFormId` + `DataUsePurposeId`).
54
-
55
- **Order matters — each step gates the next (org-verified):**
56
-
57
- 1. **Product.** Reuse an existing lending product or create one (`Product2`) with the admin-approved
58
- Name, Product Code, and Active = true. Capture its Id.
59
- 2. **Data Use Purpose.** Query for an existing record matching the approved purpose before creating
60
- one. Create it with the approved definition (do not activate it yet — activation fails until it is
61
- linked to an Authorization Form). Capture its Id.
62
- 3. **Authorization Form.** Create the `AuthorizationForm`.
63
- 4. **Authorization Form Text.** Create an `AuthorizationFormText` with `Locale`/`LocaleSelection` =
64
- `en_US`, `IsActive` = true, and the approved disclosure-and-consent text in
65
- `DetailAuthorizationFormText`.
66
- 5. **Set the form's default text.** Update the `AuthorizationForm.DefaultAuthFormTextId` to the text
67
- created in step 4. The next step fails ("Authorization Form doesn't have default text assigned") if
68
- this is skipped.
69
- 6. **Link form to purpose.** Create the `AuthorizationFormDataUse` junction referencing the form and the
70
- Data Use Purpose.
71
- 7. **Activate the Data Use Purpose** (`IsActive` = true) and confirm with a fresh read. This fails
72
- ("must be associated with an Authorization Form") if the junction in step 6 is missing.
73
-
74
- If describe shows either object is not present in the target org, stop and report it as a blocker
75
- (missing feature/package artifact) rather than deploying an ad-hoc custom object.
76
-
77
- ## Matrix row
78
-
79
- After the supporting records exist and the Data Use Purpose is active, hand the row to
80
- `decision-matrix-foundation`:
81
-
82
- - `ProductId` = the created/reused Product Id
83
- - `ApplicantType` = the approved applicant type (example: `Primary Applicant`)
84
- - `Level` = the application-form product level (example: `ApplicationFormProduct`)
85
- - `DataUsePurpose` = the activated Data Use Purpose Id
86
-
87
- Then activate the matrix through `decision-matrix-foundation` and confirm Active on a fresh read.
88
-
89
- ## Idempotency and rollback
90
-
91
- - Reuse an exact-match product, purpose, form, and matrix row rather than creating duplicates.
92
- - Do not silently overwrite differing disclosure text or a differing purpose; present current vs
93
- requested and ask.
94
- - Rollback removes only records created by this run, and only after confirming no active matrix row or
95
- application depends on them.
96
-
97
- ## Output contract
98
-
99
- Return the Product Id, Data Use Purpose Id and active status, Authorization Form Id and locale, the
100
- matrix Name/ID/version with its verified row, and the activation evidence.
101
-
102
- ## Definition of done
103
-
104
- The consent decision matrix is Active with the linking row, the Data Use Purpose is active, and the
105
- Authorization Form exists with the English locale and is linked to the purpose. Any missing object or
106
- unresolved checkpoint is reported; a partial run is never reported as complete.
@@ -1,96 +0,0 @@
1
- ---
2
- name: fsc-digital-origination-bre-document-upload-configure
3
- parent: "digital-origination-bre-setup"
4
- purpose: "Set up the document-upload decision matrix that maps a lending product and applicant type to the document types an applicant must upload."
5
- description: "Set up Document Upload for Digital Lending: a Business Rules Engine decision matrix that determines which document types an applicant must upload based on the lending product, applicant type, and level, returning a document type label. Drives the shared decision-matrix-foundation sibling for the matrix, and reuses the approved Document Type and Document Category entity SORs for the supporting metadata. Resolves and reuses existing document types by API name, and never invents products, applicant types, or document types."
6
- metadata:
7
- version: "1.0"
8
- ---
9
-
10
- # Digital Origination document upload
11
-
12
- Determine which document types an applicant must upload for a lending application. A decision matrix
13
- matches the lending product, applicant type, and level to a document type label. This sibling owns the
14
- document-upload matrix and its supporting document-type metadata. It does not create consent records or
15
- OmniScripts.
16
-
17
- Source: Salesforce Help "Create a Decision Matrix for Digital Lending" (document upload). The example
18
- matches a home loan product and applicant type to the document types required for the application.
19
-
20
- ## Required inputs
21
-
22
- - Target-org alias and acting admin.
23
- - The lending Product (create or reuse).
24
- - The applicant type (the example uses `Primary Applicant`) and level (example: `ApplicationFormProduct`).
25
- - The Document Type(s) an applicant must upload, with their exact API names.
26
-
27
- Help-article values are examples, never customer defaults.
28
-
29
- ## Decision matrix contract
30
-
31
- Drive nested `decision-matrix-foundation` to create and activate a decision matrix (the example names it
32
- `LendingDocumentTypes`) with:
33
-
34
- | Column header (apiName) | columnType | dataType |
35
- |---|---|---|
36
- | `productId` | `Input` | `Text` |
37
- | `applicantType` | `Input` | `Text` |
38
- | `level` | `Input` | `Text` |
39
- | `docTypeLabel` | `Output` | `Text` |
40
-
41
- Use the exact `CalculationMatrixColumn` enum tokens (`Input`/`Output`, `Text`); do not submit English
42
- labels.
43
-
44
- ## Supporting metadata (reuse Document Type / Document Category entity SORs)
45
-
46
- Reuse the approved entity SORs rather than deploying custom objects (find each with `discover`, then
47
- `describe` it for its operations):
48
-
49
- - The **Document Type** entity SOR — `describe`, `list`, `get-by-id`, `create`, `update`.
50
- - The **Document Category** entity SOR — same operations, for the category the type belongs to.
51
- - The **Document Category Document Type** entity SOR — the junction linking a category to a type, when
52
- the org models that relationship.
53
-
54
- 1. **Product.** Reuse or create the lending `Product2` (Name, Product Code, Family/Type, Active) and
55
- capture its Id.
56
- 2. **Document Type.** Query `DocumentType` (`list` / by name) for an existing type matching the required
57
- document. If present, capture its **API name** and reuse it. If absent, `create` it with the approved
58
- values, and create/link its `DocumentCategory` and `DocumentCategoryDocumentType` where the org
59
- requires the category relationship. Save each Document Type's API name for the matrix row.
60
-
61
- Do not invent a document type from a UI label; resolve the API name from the create/describe response.
62
-
63
- **If the `DocumentType` sObject is not present on the org** (org-observed: not all Digital Lending orgs
64
- have it), the matrix still builds — `docTypeLabel` is a free `Text` output column, so populate it with
65
- the intended label string and report the missing `DocumentType` object as a supporting-metadata gap
66
- rather than deploying a custom object.
67
-
68
- ## Matrix row
69
-
70
- Hand the row to `decision-matrix-foundation` after the product and document type(s) exist:
71
-
72
- - `productId` = the created/reused Product Id
73
- - `applicantType` = the approved applicant type (example: `Primary Applicant`)
74
- - `level` = the level (example: `ApplicationFormProduct`)
75
- - `docTypeLabel` = the Document Type API name saved above
76
-
77
- Add one row per required product / applicant-type / document-type combination. Then activate the matrix
78
- through `decision-matrix-foundation` and confirm Active on a fresh read.
79
-
80
- ## Idempotency and rollback
81
-
82
- - Reuse an exact-match product, document type, and matrix row rather than creating duplicates.
83
- - Do not silently overwrite a differing document type; present current vs requested and ask.
84
- - Rollback removes only records created by this run, and only after confirming no active matrix row
85
- depends on them. Never auto-delete a shared Document Type or Category.
86
-
87
- ## Output contract
88
-
89
- Return the Product Id, the Document Type API name(s) and IDs (with any Category / junction IDs), and the
90
- matrix Name/ID/version with its verified row(s) and activation evidence.
91
-
92
- ## Definition of done
93
-
94
- The document-upload decision matrix is Active with the intended row(s), and every referenced Document
95
- Type exists and is linked through the row. Any missing metadata or unresolved checkpoint is reported; a
96
- partial run is never reported as complete.