@salesforce/afv-skills 1.22.0 → 1.23.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 (1668) hide show
  1. package/package.json +1 -1
  2. package/skills/activating-datacloud/README.md +0 -39
  3. package/skills/activating-datacloud/SKILL.md +0 -117
  4. package/skills/analyzing-omnistudio-dependencies/CREDITS.md +0 -5
  5. package/skills/analyzing-omnistudio-dependencies/SKILL.md +0 -476
  6. package/skills/analyzing-omnistudio-dependencies/references/dependency-patterns.md +0 -508
  7. package/skills/analyzing-omnistudio-dependencies/references/namespace-guide.md +0 -300
  8. package/skills/applying-cms-brand/SKILL.md +0 -170
  9. package/skills/applying-slds/SKILL.md +0 -322
  10. package/skills/applying-slds/checklists.md +0 -83
  11. package/skills/applying-slds/examples.md +0 -283
  12. package/skills/applying-slds/guidance/README.md +0 -83
  13. package/skills/applying-slds/guidance/blueprints-index.md +0 -213
  14. package/skills/applying-slds/guidance/icons-guidance.md +0 -186
  15. package/skills/applying-slds/guidance/overviews/borders.md +0 -236
  16. package/skills/applying-slds/guidance/overviews/color.md +0 -266
  17. package/skills/applying-slds/guidance/overviews/display-density.md +0 -366
  18. package/skills/applying-slds/guidance/overviews/icons.md +0 -240
  19. package/skills/applying-slds/guidance/overviews/illustrations.md +0 -235
  20. package/skills/applying-slds/guidance/overviews/shadows.md +0 -176
  21. package/skills/applying-slds/guidance/overviews/spacing.md +0 -216
  22. package/skills/applying-slds/guidance/overviews/typography.md +0 -323
  23. package/skills/applying-slds/guidance/overviews/utilities.md +0 -542
  24. package/skills/applying-slds/guidance/slds-development-guide.md +0 -288
  25. package/skills/applying-slds/guidance/styling-hooks/borders.md +0 -202
  26. package/skills/applying-slds/guidance/styling-hooks/color/expressive-palette-hooks.md +0 -153
  27. package/skills/applying-slds/guidance/styling-hooks/color/index.md +0 -171
  28. package/skills/applying-slds/guidance/styling-hooks/color/semantic/accent-hooks.md +0 -204
  29. package/skills/applying-slds/guidance/styling-hooks/color/semantic/feedback-hooks.md +0 -768
  30. package/skills/applying-slds/guidance/styling-hooks/color/semantic/surface-hooks.md +0 -337
  31. package/skills/applying-slds/guidance/styling-hooks/color/system-hooks.md +0 -132
  32. package/skills/applying-slds/guidance/styling-hooks/index.md +0 -327
  33. package/skills/applying-slds/guidance/styling-hooks/shadows.md +0 -238
  34. package/skills/applying-slds/guidance/styling-hooks/spacing.md +0 -254
  35. package/skills/applying-slds/guidance/styling-hooks/typography.md +0 -448
  36. package/skills/applying-slds/guidance/utilities/alignment.md +0 -119
  37. package/skills/applying-slds/guidance/utilities/borders.md +0 -131
  38. package/skills/applying-slds/guidance/utilities/box.md +0 -125
  39. package/skills/applying-slds/guidance/utilities/color.md +0 -165
  40. package/skills/applying-slds/guidance/utilities/dark-mode.md +0 -111
  41. package/skills/applying-slds/guidance/utilities/description-list.md +0 -168
  42. package/skills/applying-slds/guidance/utilities/floats.md +0 -117
  43. package/skills/applying-slds/guidance/utilities/grid.md +0 -264
  44. package/skills/applying-slds/guidance/utilities/horizontal-list.md +0 -110
  45. package/skills/applying-slds/guidance/utilities/hyphenation.md +0 -84
  46. package/skills/applying-slds/guidance/utilities/index.md +0 -205
  47. package/skills/applying-slds/guidance/utilities/interactions.md +0 -89
  48. package/skills/applying-slds/guidance/utilities/layout.md +0 -109
  49. package/skills/applying-slds/guidance/utilities/line-clamp.md +0 -131
  50. package/skills/applying-slds/guidance/utilities/margin.md +0 -155
  51. package/skills/applying-slds/guidance/utilities/media-object.md +0 -161
  52. package/skills/applying-slds/guidance/utilities/name-value-list.md +0 -152
  53. package/skills/applying-slds/guidance/utilities/padding.md +0 -155
  54. package/skills/applying-slds/guidance/utilities/position.md +0 -177
  55. package/skills/applying-slds/guidance/utilities/print.md +0 -114
  56. package/skills/applying-slds/guidance/utilities/scrollable.md +0 -126
  57. package/skills/applying-slds/guidance/utilities/sizing.md +0 -190
  58. package/skills/applying-slds/guidance/utilities/themes.md +0 -121
  59. package/skills/applying-slds/guidance/utilities/truncate.md +0 -127
  60. package/skills/applying-slds/guidance/utilities/typography.md +0 -166
  61. package/skills/applying-slds/guidance/utilities/vertical-list.md +0 -166
  62. package/skills/applying-slds/guidance/utilities/visibility.md +0 -228
  63. package/skills/applying-slds/metadata/README.md +0 -84
  64. package/skills/applying-slds/metadata/blueprints/components/accordion.yaml +0 -304
  65. package/skills/applying-slds/metadata/blueprints/components/activity-timeline.yaml +0 -92
  66. package/skills/applying-slds/metadata/blueprints/components/alert.yaml +0 -103
  67. package/skills/applying-slds/metadata/blueprints/components/app-launcher.yaml +0 -94
  68. package/skills/applying-slds/metadata/blueprints/components/avatar-group.yaml +0 -81
  69. package/skills/applying-slds/metadata/blueprints/components/avatar.yaml +0 -97
  70. package/skills/applying-slds/metadata/blueprints/components/badges.yaml +0 -102
  71. package/skills/applying-slds/metadata/blueprints/components/brand-band.yaml +0 -198
  72. package/skills/applying-slds/metadata/blueprints/components/breadcrumbs.yaml +0 -95
  73. package/skills/applying-slds/metadata/blueprints/components/builder-header.yaml +0 -192
  74. package/skills/applying-slds/metadata/blueprints/components/button-groups.yaml +0 -82
  75. package/skills/applying-slds/metadata/blueprints/components/button-icons.yaml +0 -295
  76. package/skills/applying-slds/metadata/blueprints/components/buttons.yaml +0 -230
  77. package/skills/applying-slds/metadata/blueprints/components/cards.yaml +0 -124
  78. package/skills/applying-slds/metadata/blueprints/components/carousel.yaml +0 -140
  79. package/skills/applying-slds/metadata/blueprints/components/chat.yaml +0 -179
  80. package/skills/applying-slds/metadata/blueprints/components/checkbox-button-group.yaml +0 -192
  81. package/skills/applying-slds/metadata/blueprints/components/checkbox-button.yaml +0 -204
  82. package/skills/applying-slds/metadata/blueprints/components/checkbox-toggle.yaml +0 -177
  83. package/skills/applying-slds/metadata/blueprints/components/checkbox.yaml +0 -108
  84. package/skills/applying-slds/metadata/blueprints/components/color-picker.yaml +0 -172
  85. package/skills/applying-slds/metadata/blueprints/components/combobox.yaml +0 -136
  86. package/skills/applying-slds/metadata/blueprints/components/counter.yaml +0 -147
  87. package/skills/applying-slds/metadata/blueprints/components/data-tables.yaml +0 -157
  88. package/skills/applying-slds/metadata/blueprints/components/datepickers.yaml +0 -130
  89. package/skills/applying-slds/metadata/blueprints/components/datetime-picker.yaml +0 -155
  90. package/skills/applying-slds/metadata/blueprints/components/docked-composer.yaml +0 -201
  91. package/skills/applying-slds/metadata/blueprints/components/docked-form-footer.yaml +0 -161
  92. package/skills/applying-slds/metadata/blueprints/components/docked-utility-bar.yaml +0 -175
  93. package/skills/applying-slds/metadata/blueprints/components/drop-zone.yaml +0 -115
  94. package/skills/applying-slds/metadata/blueprints/components/dueling-picklist.yaml +0 -196
  95. package/skills/applying-slds/metadata/blueprints/components/dynamic-icons.yaml +0 -128
  96. package/skills/applying-slds/metadata/blueprints/components/dynamic-menu.yaml +0 -141
  97. package/skills/applying-slds/metadata/blueprints/components/expandable-section.yaml +0 -115
  98. package/skills/applying-slds/metadata/blueprints/components/expression.yaml +0 -143
  99. package/skills/applying-slds/metadata/blueprints/components/feeds.yaml +0 -125
  100. package/skills/applying-slds/metadata/blueprints/components/file-selector.yaml +0 -154
  101. package/skills/applying-slds/metadata/blueprints/components/files.yaml +0 -119
  102. package/skills/applying-slds/metadata/blueprints/components/form-element.yaml +0 -145
  103. package/skills/applying-slds/metadata/blueprints/components/global-header.yaml +0 -120
  104. package/skills/applying-slds/metadata/blueprints/components/global-navigation.yaml +0 -100
  105. package/skills/applying-slds/metadata/blueprints/components/icons.yaml +0 -138
  106. package/skills/applying-slds/metadata/blueprints/components/illustration.yaml +0 -205
  107. package/skills/applying-slds/metadata/blueprints/components/input.yaml +0 -151
  108. package/skills/applying-slds/metadata/blueprints/components/list-builder.yaml +0 -127
  109. package/skills/applying-slds/metadata/blueprints/components/lookups.yaml +0 -132
  110. package/skills/applying-slds/metadata/blueprints/components/map.yaml +0 -118
  111. package/skills/applying-slds/metadata/blueprints/components/menus.yaml +0 -134
  112. package/skills/applying-slds/metadata/blueprints/components/modals.yaml +0 -152
  113. package/skills/applying-slds/metadata/blueprints/components/notifications.yaml +0 -88
  114. package/skills/applying-slds/metadata/blueprints/components/page-headers.yaml +0 -135
  115. package/skills/applying-slds/metadata/blueprints/components/panels.yaml +0 -149
  116. package/skills/applying-slds/metadata/blueprints/components/path.yaml +0 -154
  117. package/skills/applying-slds/metadata/blueprints/components/picklist.yaml +0 -125
  118. package/skills/applying-slds/metadata/blueprints/components/pills.yaml +0 -154
  119. package/skills/applying-slds/metadata/blueprints/components/popovers.yaml +0 -120
  120. package/skills/applying-slds/metadata/blueprints/components/progress-bar.yaml +0 -110
  121. package/skills/applying-slds/metadata/blueprints/components/progress-indicator.yaml +0 -133
  122. package/skills/applying-slds/metadata/blueprints/components/progress-ring.yaml +0 -102
  123. package/skills/applying-slds/metadata/blueprints/components/prompt.yaml +0 -126
  124. package/skills/applying-slds/metadata/blueprints/components/publishers.yaml +0 -178
  125. package/skills/applying-slds/metadata/blueprints/components/radio-button-group.yaml +0 -172
  126. package/skills/applying-slds/metadata/blueprints/components/radio-group.yaml +0 -112
  127. package/skills/applying-slds/metadata/blueprints/components/rich-text-editor.yaml +0 -135
  128. package/skills/applying-slds/metadata/blueprints/components/scoped-notifications.yaml +0 -188
  129. package/skills/applying-slds/metadata/blueprints/components/scoped-tabs.yaml +0 -97
  130. package/skills/applying-slds/metadata/blueprints/components/select.yaml +0 -127
  131. package/skills/applying-slds/metadata/blueprints/components/setup-assistant.yaml +0 -152
  132. package/skills/applying-slds/metadata/blueprints/components/slider.yaml +0 -111
  133. package/skills/applying-slds/metadata/blueprints/components/spinners.yaml +0 -135
  134. package/skills/applying-slds/metadata/blueprints/components/split-view.yaml +0 -112
  135. package/skills/applying-slds/metadata/blueprints/components/summary-detail.yaml +0 -103
  136. package/skills/applying-slds/metadata/blueprints/components/tabs.yaml +0 -138
  137. package/skills/applying-slds/metadata/blueprints/components/textarea.yaml +0 -116
  138. package/skills/applying-slds/metadata/blueprints/components/tiles.yaml +0 -108
  139. package/skills/applying-slds/metadata/blueprints/components/timepicker.yaml +0 -111
  140. package/skills/applying-slds/metadata/blueprints/components/toast.yaml +0 -154
  141. package/skills/applying-slds/metadata/blueprints/components/tooltips.yaml +0 -107
  142. package/skills/applying-slds/metadata/blueprints/components/tree-grid.yaml +0 -116
  143. package/skills/applying-slds/metadata/blueprints/components/trees.yaml +0 -116
  144. package/skills/applying-slds/metadata/blueprints/components/trial-bar.yaml +0 -112
  145. package/skills/applying-slds/metadata/blueprints/components/vertical-navigation.yaml +0 -130
  146. package/skills/applying-slds/metadata/blueprints/components/vertical-tabs.yaml +0 -140
  147. package/skills/applying-slds/metadata/blueprints/components/visual-picker.yaml +0 -150
  148. package/skills/applying-slds/metadata/blueprints/components/welcome-mat.yaml +0 -136
  149. package/skills/applying-slds/metadata/hooks-index.json +0 -6272
  150. package/skills/applying-slds/metadata/icon-metadata.json +0 -38466
  151. package/skills/applying-slds/metadata/utilities-index.json +0 -21912
  152. package/skills/applying-slds/references/component-selection.md +0 -112
  153. package/skills/applying-slds/references/icons-decision-guide.md +0 -124
  154. package/skills/applying-slds/references/styling-decision-guide.md +0 -228
  155. package/skills/applying-slds/references/utilities-quick-ref.md +0 -125
  156. package/skills/applying-slds/scripts/search-blueprints.cjs +0 -117
  157. package/skills/applying-slds/scripts/search-hooks.cjs +0 -139
  158. package/skills/applying-slds/scripts/search-icons.cjs +0 -174
  159. package/skills/applying-slds/scripts/search-utilities.cjs +0 -161
  160. package/skills/building-mobile-apps/SKILL.md +0 -69
  161. package/skills/building-omnistudio-callable-apex/CREDITS.md +0 -9
  162. package/skills/building-omnistudio-callable-apex/README.md +0 -80
  163. package/skills/building-omnistudio-callable-apex/SKILL.md +0 -275
  164. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_openinterface.cls +0 -40
  165. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_vanilla.cls +0 -32
  166. package/skills/building-omnistudio-callable-apex/assets/pattern_migration.cls +0 -54
  167. package/skills/building-omnistudio-callable-apex/assets/pattern_openinterface.cls +0 -45
  168. package/skills/building-omnistudio-callable-apex/assets/pattern_test_class.cls +0 -65
  169. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/IndustriesCallableException.cls +0 -7
  170. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallable.cls +0 -115
  171. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallableTest.cls +0 -189
  172. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/TRANSCRIPT.md +0 -115
  173. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/IndustriesCallableException.cls +0 -7
  174. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallable.cls +0 -74
  175. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallableTest.cls +0 -146
  176. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomRemoteClass.cls +0 -16
  177. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/TRANSCRIPT.md +0 -120
  178. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/IndustriesCallableException.cls +0 -7
  179. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallable.cls +0 -73
  180. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallableTest.cls +0 -128
  181. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomVlocityOpenInterface2.cls +0 -23
  182. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/TRANSCRIPT.md +0 -75
  183. package/skills/building-omnistudio-datamapper/CREDITS.md +0 -5
  184. package/skills/building-omnistudio-datamapper/SKILL.md +0 -269
  185. package/skills/building-omnistudio-datamapper/assets/completion-summary-template.md +0 -28
  186. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-extract.json +0 -6
  187. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-item.json +0 -12
  188. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-load.json +0 -6
  189. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-transform.json +0 -6
  190. package/skills/building-omnistudio-datamapper/references/best-practices.md +0 -277
  191. package/skills/building-omnistudio-datamapper/references/naming-conventions.md +0 -145
  192. package/skills/building-omnistudio-flexcard/CREDITS.md +0 -5
  193. package/skills/building-omnistudio-flexcard/SKILL.md +0 -324
  194. package/skills/building-omnistudio-flexcard/assets/omni-ui-card.json +0 -10
  195. package/skills/building-omnistudio-flexcard/references/best-practices.md +0 -291
  196. package/skills/building-omnistudio-flexcard/references/data-binding-guide.md +0 -311
  197. package/skills/building-omnistudio-flexcard/references/scoring-rubric.md +0 -66
  198. package/skills/building-omnistudio-flexcard/scripts/flexcard-commands.sh +0 -24
  199. package/skills/building-omnistudio-integration-procedure/CREDITS.md +0 -5
  200. package/skills/building-omnistudio-integration-procedure/SKILL.md +0 -274
  201. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-dr-extract.json +0 -10
  202. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-set-values.json +0 -10
  203. package/skills/building-omnistudio-integration-procedure/assets/omni-process-ip.json +0 -12
  204. package/skills/building-omnistudio-integration-procedure/assets/scoring-report-format.txt +0 -14
  205. package/skills/building-omnistudio-integration-procedure/references/best-practices.md +0 -388
  206. package/skills/building-omnistudio-integration-procedure/references/element-types.md +0 -588
  207. package/skills/building-omnistudio-integration-procedure/scripts/cli-commands.sh +0 -18
  208. package/skills/building-omnistudio-omniscript/CREDITS.md +0 -5
  209. package/skills/building-omnistudio-omniscript/SKILL.md +0 -366
  210. package/skills/building-omnistudio-omniscript/assets/omni-process-element-step.json +0 -10
  211. package/skills/building-omnistudio-omniscript/assets/omni-process-element-text-block.json +0 -11
  212. package/skills/building-omnistudio-omniscript/assets/omni-process-omniscript.json +0 -12
  213. package/skills/building-omnistudio-omniscript/references/best-practices.md +0 -480
  214. package/skills/building-omnistudio-omniscript/references/element-types.md +0 -1172
  215. package/skills/building-omnistudio-omniscript/scripts/check-duplicate-omniscript.sh +0 -13
  216. package/skills/building-omnistudio-omniscript/scripts/cli-reference.sh +0 -21
  217. package/skills/building-omnistudio-omniscript/scripts/deploy-omniscript.sh +0 -29
  218. package/skills/building-sf-integrations/CREDITS.md +0 -5
  219. package/skills/building-sf-integrations/README.md +0 -95
  220. package/skills/building-sf-integrations/SKILL.md +0 -191
  221. package/skills/building-sf-integrations/assets/callouts/callout-retry-handler.cls +0 -167
  222. package/skills/building-sf-integrations/assets/callouts/http-response-handler.cls +0 -257
  223. package/skills/building-sf-integrations/assets/callouts/rest-queueable-callout.cls +0 -262
  224. package/skills/building-sf-integrations/assets/callouts/rest-sync-callout.cls +0 -211
  225. package/skills/building-sf-integrations/assets/cdc/cdc-handler.cls +0 -246
  226. package/skills/building-sf-integrations/assets/cdc/cdc-subscriber-trigger.trigger +0 -139
  227. package/skills/building-sf-integrations/assets/endpoint-security/example.cspTrustedSite-meta.xml +0 -58
  228. package/skills/building-sf-integrations/assets/endpoint-security/example.remoteSite-meta.xml +0 -39
  229. package/skills/building-sf-integrations/assets/external-credentials/jwt-external-credential.externalCredential-meta.xml +0 -90
  230. package/skills/building-sf-integrations/assets/external-credentials/oauth-external-credential.externalCredential-meta.xml +0 -87
  231. package/skills/building-sf-integrations/assets/external-services/external-service-operations.md +0 -221
  232. package/skills/building-sf-integrations/assets/external-services/openapi-registration.externalServiceRegistration-meta.xml +0 -193
  233. package/skills/building-sf-integrations/assets/named-credentials/certificate-auth.namedCredential-meta.xml +0 -62
  234. package/skills/building-sf-integrations/assets/named-credentials/custom-auth.namedCredential-meta.xml +0 -71
  235. package/skills/building-sf-integrations/assets/named-credentials/oauth-client-credentials.namedCredential-meta.xml +0 -51
  236. package/skills/building-sf-integrations/assets/named-credentials/oauth-jwt-bearer.namedCredential-meta.xml +0 -67
  237. package/skills/building-sf-integrations/assets/platform-events/event-publisher.cls +0 -191
  238. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-action.cls +0 -295
  239. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-trigger.trigger +0 -108
  240. package/skills/building-sf-integrations/assets/platform-events/platform-event-definition.object-meta.xml +0 -124
  241. package/skills/building-sf-integrations/assets/soap/soap-callout-service.cls +0 -186
  242. package/skills/building-sf-integrations/assets/soap/wsdl2apex-guide.md +0 -213
  243. package/skills/building-sf-integrations/hooks/scripts/suggest_credential_setup.py +0 -271
  244. package/skills/building-sf-integrations/hooks/scripts/validate_integration.py +0 -363
  245. package/skills/building-sf-integrations/references/callout-patterns.md +0 -719
  246. package/skills/building-sf-integrations/references/cdc-guide.md +0 -288
  247. package/skills/building-sf-integrations/references/cli-reference.md +0 -94
  248. package/skills/building-sf-integrations/references/event-driven-architecture-guide.md +0 -266
  249. package/skills/building-sf-integrations/references/event-patterns.md +0 -838
  250. package/skills/building-sf-integrations/references/external-services-guide.md +0 -303
  251. package/skills/building-sf-integrations/references/messaging-api-v2.md +0 -609
  252. package/skills/building-sf-integrations/references/named-credentials-automation.md +0 -201
  253. package/skills/building-sf-integrations/references/named-credentials-guide.md +0 -173
  254. package/skills/building-sf-integrations/references/platform-events-guide.md +0 -288
  255. package/skills/building-sf-integrations/references/rest-callout-patterns.md +0 -288
  256. package/skills/building-sf-integrations/references/scoring-rubric.md +0 -59
  257. package/skills/building-sf-integrations/references/security-best-practices.md +0 -248
  258. package/skills/building-sf-integrations/scripts/README.md +0 -100
  259. package/skills/building-sf-integrations/scripts/configure-named-credential.sh +0 -236
  260. package/skills/building-sf-integrations/scripts/set-api-credential.sh +0 -146
  261. package/skills/building-sf-integrations/scripts/templates/setup-credentials-with-csp.sh +0 -158
  262. package/skills/building-ui-bundle-app/SKILL.md +0 -350
  263. package/skills/building-ui-bundle-frontend/SKILL.md +0 -135
  264. package/skills/building-ui-bundle-frontend/implementation/component.md +0 -78
  265. package/skills/building-ui-bundle-frontend/implementation/header-footer.md +0 -132
  266. package/skills/building-ui-bundle-frontend/implementation/page.md +0 -93
  267. package/skills/configuring-code-analyzer/SKILL.md +0 -482
  268. package/skills/configuring-code-analyzer/examples/apex-project-config.yml +0 -41
  269. package/skills/configuring-code-analyzer/examples/ci-github-actions.yml +0 -96
  270. package/skills/configuring-code-analyzer/examples/fullstack-project-config.yml +0 -46
  271. package/skills/configuring-code-analyzer/examples/lwc-project-config.yml +0 -26
  272. package/skills/configuring-code-analyzer/references/ci-cd-templates.md +0 -648
  273. package/skills/configuring-code-analyzer/references/config-schema.md +0 -257
  274. package/skills/configuring-code-analyzer/references/diagnostic-flow.md +0 -70
  275. package/skills/configuring-code-analyzer/references/engine-prerequisites.md +0 -276
  276. package/skills/configuring-code-analyzer/references/rule-name-resolution.md +0 -67
  277. package/skills/configuring-code-analyzer/references/troubleshooting.md +0 -298
  278. package/skills/configuring-code-analyzer/scripts/check-prerequisites.sh +0 -189
  279. package/skills/configuring-code-analyzer/scripts/generate-config.sh +0 -143
  280. package/skills/configuring-code-analyzer/scripts/validate-config.sh +0 -153
  281. package/skills/configuring-connected-apps/CREDITS.md +0 -3
  282. package/skills/configuring-connected-apps/README.md +0 -99
  283. package/skills/configuring-connected-apps/SKILL.md +0 -223
  284. package/skills/configuring-connected-apps/assets/connected-app-basic.xml +0 -29
  285. package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +0 -62
  286. package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +0 -49
  287. package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +0 -65
  288. package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +0 -36
  289. package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +0 -36
  290. package/skills/configuring-connected-apps/assets/eca-policies.xml +0 -36
  291. package/skills/configuring-connected-apps/assets/external-client-app.xml +0 -35
  292. package/skills/configuring-connected-apps/references/example-usage.md +0 -256
  293. package/skills/configuring-connected-apps/references/migration-guide.md +0 -328
  294. package/skills/configuring-connected-apps/references/oauth-flows-reference.md +0 -660
  295. package/skills/configuring-connected-apps/references/security-checklist.md +0 -209
  296. package/skills/configuring-connected-apps/references/testing-validation-guide.md +0 -275
  297. package/skills/connecting-datacloud/CREDITS.md +0 -5
  298. package/skills/connecting-datacloud/README.md +0 -59
  299. package/skills/connecting-datacloud/SKILL.md +0 -154
  300. package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +0 -15
  301. package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +0 -5
  302. package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +0 -31
  303. package/skills/connecting-datacloud/examples/connections/redshift.json +0 -16
  304. package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +0 -20
  305. package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +0 -42
  306. package/skills/creating-b2b-commerce-store/SKILL.md +0 -167
  307. package/skills/creating-b2b-commerce-store/references/store-vs-storefront.md +0 -169
  308. package/skills/debugging-apex-logs/CREDITS.md +0 -22
  309. package/skills/debugging-apex-logs/README.md +0 -74
  310. package/skills/debugging-apex-logs/SKILL.md +0 -171
  311. package/skills/debugging-apex-logs/assets/benchmarking-template.cls +0 -327
  312. package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +0 -307
  313. package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +0 -219
  314. package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +0 -252
  315. package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +0 -157
  316. package/skills/debugging-apex-logs/references/analysis-playbook.md +0 -53
  317. package/skills/debugging-apex-logs/references/benchmarking-guide.md +0 -287
  318. package/skills/debugging-apex-logs/references/cli-commands.md +0 -368
  319. package/skills/debugging-apex-logs/references/common-issues.md +0 -68
  320. package/skills/debugging-apex-logs/references/debug-log-reference.md +0 -328
  321. package/skills/debugging-apex-logs/references/log-analysis-tools.md +0 -248
  322. package/skills/debugging-apex-logs/references/scoring-rubric.md +0 -21
  323. package/skills/deploying-metadata/CREDITS.md +0 -25
  324. package/skills/deploying-metadata/README.md +0 -104
  325. package/skills/deploying-metadata/SKILL.md +0 -213
  326. package/skills/deploying-metadata/assets/destructiveChanges.xml +0 -143
  327. package/skills/deploying-metadata/assets/package.xml +0 -121
  328. package/skills/deploying-metadata/references/agent-deployment-guide.md +0 -628
  329. package/skills/deploying-metadata/references/deploy.sh +0 -73
  330. package/skills/deploying-metadata/references/deployment-report-template.md +0 -89
  331. package/skills/deploying-metadata/references/deployment-workflows.md +0 -395
  332. package/skills/deploying-metadata/references/orchestration.md +0 -183
  333. package/skills/deploying-metadata/references/trigger-deployment-safety.md +0 -376
  334. package/skills/deploying-omnistudio-datapacks/CREDITS.md +0 -5
  335. package/skills/deploying-omnistudio-datapacks/README.md +0 -88
  336. package/skills/deploying-omnistudio-datapacks/SKILL.md +0 -173
  337. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +0 -124
  338. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +0 -11
  339. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +0 -142
  340. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +0 -10
  341. package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +0 -42
  342. package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +0 -24
  343. package/skills/deploying-ui-bundle/SKILL.md +0 -79
  344. package/skills/developing-agentforce/README.md +0 -112
  345. package/skills/developing-agentforce/SKILL.md +0 -518
  346. package/skills/developing-agentforce/assets/README-legacy.md +0 -89
  347. package/skills/developing-agentforce/assets/agent-spec-template.md +0 -90
  348. package/skills/developing-agentforce/assets/agents/README.md +0 -45
  349. package/skills/developing-agentforce/assets/agents/hello-world.agent +0 -60
  350. package/skills/developing-agentforce/assets/agents/multi-subagent.agent +0 -105
  351. package/skills/developing-agentforce/assets/agents/order-service.agent +0 -272
  352. package/skills/developing-agentforce/assets/agents/production-faq.agent +0 -101
  353. package/skills/developing-agentforce/assets/agents/production-faq.bundle-meta.xml +0 -4
  354. package/skills/developing-agentforce/assets/agents/simple-qa.agent +0 -72
  355. package/skills/developing-agentforce/assets/agents/verification-gate.agent +0 -280
  356. package/skills/developing-agentforce/assets/apex/models-api-queueable.cls +0 -225
  357. package/skills/developing-agentforce/assets/bundle-meta.xml +0 -23
  358. package/skills/developing-agentforce/assets/components/apex-action.agent +0 -52
  359. package/skills/developing-agentforce/assets/components/error-handling.agent +0 -58
  360. package/skills/developing-agentforce/assets/components/escalation-setup.agent +0 -169
  361. package/skills/developing-agentforce/assets/components/flow-action.agent +0 -66
  362. package/skills/developing-agentforce/assets/components/n-ary-conditions.agent +0 -110
  363. package/skills/developing-agentforce/assets/components/subagent-with-actions.agent +0 -40
  364. package/skills/developing-agentforce/assets/deterministic-routing.agent +0 -166
  365. package/skills/developing-agentforce/assets/escalation-pattern.agent +0 -209
  366. package/skills/developing-agentforce/assets/flow-action-lookup.agent +0 -115
  367. package/skills/developing-agentforce/assets/hub-and-spoke.agent +0 -104
  368. package/skills/developing-agentforce/assets/invocable-apex-template.cls +0 -187
  369. package/skills/developing-agentforce/assets/local-info-agent-annotated.agent +0 -355
  370. package/skills/developing-agentforce/assets/metadata/basic-prompt-template.promptTemplate-meta.xml +0 -109
  371. package/skills/developing-agentforce/assets/metadata/genai-function-apex.xml +0 -92
  372. package/skills/developing-agentforce/assets/metadata/genai-function-flow.xml +0 -57
  373. package/skills/developing-agentforce/assets/metadata/genai-plugin.xml +0 -72
  374. package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +0 -348
  375. package/skills/developing-agentforce/assets/metadata/record-grounded-prompt.promptTemplate-meta.xml +0 -136
  376. package/skills/developing-agentforce/assets/minimal-starter.agent +0 -42
  377. package/skills/developing-agentforce/assets/patterns/README.md +0 -254
  378. package/skills/developing-agentforce/assets/patterns/action-callbacks.agent +0 -178
  379. package/skills/developing-agentforce/assets/patterns/advanced-input-bindings.agent +0 -141
  380. package/skills/developing-agentforce/assets/patterns/bidirectional-routing.agent +0 -156
  381. package/skills/developing-agentforce/assets/patterns/critical-input-collection.agent +0 -244
  382. package/skills/developing-agentforce/assets/patterns/delegation-routing.agent +0 -89
  383. package/skills/developing-agentforce/assets/patterns/lifecycle-events.agent +0 -127
  384. package/skills/developing-agentforce/assets/patterns/llm-controlled-actions.agent +0 -184
  385. package/skills/developing-agentforce/assets/patterns/multi-step-workflow.agent +0 -282
  386. package/skills/developing-agentforce/assets/patterns/open-gate-routing.agent +0 -287
  387. package/skills/developing-agentforce/assets/patterns/procedural-instructions.agent +0 -273
  388. package/skills/developing-agentforce/assets/patterns/prompt-template-action.agent +0 -188
  389. package/skills/developing-agentforce/assets/patterns/system-instruction-overrides.agent +0 -293
  390. package/skills/developing-agentforce/assets/prompt-rag-search.agent +0 -131
  391. package/skills/developing-agentforce/assets/template-multi-subagent.agent +0 -160
  392. package/skills/developing-agentforce/assets/template-single-subagent.agent +0 -81
  393. package/skills/developing-agentforce/assets/verification-gate.agent +0 -208
  394. package/skills/developing-agentforce/references/action-prompt-templates.md +0 -164
  395. package/skills/developing-agentforce/references/actions-reference.md +0 -612
  396. package/skills/developing-agentforce/references/agent-access-guide.md +0 -72
  397. package/skills/developing-agentforce/references/agent-design-and-spec-creation.md +0 -1010
  398. package/skills/developing-agentforce/references/agent-metadata-and-lifecycle.md +0 -575
  399. package/skills/developing-agentforce/references/agent-script-core-language.md +0 -1255
  400. package/skills/developing-agentforce/references/agent-subagent-map-diagrams.md +0 -323
  401. package/skills/developing-agentforce/references/agent-user-setup.md +0 -529
  402. package/skills/developing-agentforce/references/agent-validation-and-debugging.md +0 -805
  403. package/skills/developing-agentforce/references/architecture-patterns.md +0 -158
  404. package/skills/developing-agentforce/references/complex-data-types.md +0 -57
  405. package/skills/developing-agentforce/references/deploy-reference.md +0 -134
  406. package/skills/developing-agentforce/references/discover-reference.md +0 -102
  407. package/skills/developing-agentforce/references/examples.md +0 -350
  408. package/skills/developing-agentforce/references/feature-validity.md +0 -43
  409. package/skills/developing-agentforce/references/instruction-resolution.md +0 -545
  410. package/skills/developing-agentforce/references/known-issues.md +0 -353
  411. package/skills/developing-agentforce/references/minimal-examples.md +0 -67
  412. package/skills/developing-agentforce/references/production-gotchas.md +0 -300
  413. package/skills/developing-agentforce/references/safety-review-reference.md +0 -145
  414. package/skills/developing-agentforce/references/salesforce-cli-for-agents.md +0 -395
  415. package/skills/developing-agentforce/references/scaffold-reference.md +0 -153
  416. package/skills/developing-agentforce/references/scoring-rubric.md +0 -24
  417. package/skills/developing-agentforce/references/version-history.md +0 -23
  418. package/skills/dx-app-analytics-use/SKILL.md +0 -135
  419. package/skills/fetching-salesforce-docs/README.md +0 -66
  420. package/skills/fetching-salesforce-docs/SKILL.md +0 -208
  421. package/skills/fetching-salesforce-docs/requirements.txt +0 -2
  422. package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +0 -497
  423. package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +0 -357
  424. package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +0 -58
  425. package/skills/generating-apex/CREDITS.md +0 -5
  426. package/skills/generating-apex/SKILL.md +0 -409
  427. package/skills/generating-apex/assets/abstract.cls +0 -131
  428. package/skills/generating-apex/assets/batch.cls +0 -124
  429. package/skills/generating-apex/assets/domain.cls +0 -101
  430. package/skills/generating-apex/assets/dto.cls +0 -107
  431. package/skills/generating-apex/assets/exception.cls +0 -50
  432. package/skills/generating-apex/assets/interface.cls +0 -24
  433. package/skills/generating-apex/assets/invocable.cls +0 -114
  434. package/skills/generating-apex/assets/queueable.cls +0 -91
  435. package/skills/generating-apex/assets/rest-resource.cls +0 -300
  436. package/skills/generating-apex/assets/schedulable.cls +0 -74
  437. package/skills/generating-apex/assets/selector.cls +0 -91
  438. package/skills/generating-apex/assets/service.cls +0 -68
  439. package/skills/generating-apex/assets/trigger.cls +0 -45
  440. package/skills/generating-apex/assets/utility.cls +0 -96
  441. package/skills/generating-apex/references/AccountDeduplicationBatch.cls +0 -147
  442. package/skills/generating-apex/references/AccountSelector.cls +0 -192
  443. package/skills/generating-apex/references/AccountService.cls +0 -200
  444. package/skills/generating-apex-test/CREDITS.md +0 -5
  445. package/skills/generating-apex-test/SKILL.md +0 -201
  446. package/skills/generating-apex-test/assets/test-class-template.cls +0 -93
  447. package/skills/generating-apex-test/assets/test-data-factory-template.cls +0 -111
  448. package/skills/generating-apex-test/references/assertion-patterns.md +0 -108
  449. package/skills/generating-apex-test/references/async-testing.md +0 -193
  450. package/skills/generating-apex-test/references/mocking-patterns.md +0 -220
  451. package/skills/generating-apex-test/references/test-data-factory.md +0 -75
  452. package/skills/generating-custom-application/SKILL.md +0 -211
  453. package/skills/generating-custom-field/SKILL.md +0 -503
  454. package/skills/generating-custom-lightning-type/SKILL.md +0 -180
  455. package/skills/generating-custom-lightning-type/assets/primitive-types-and-constraints.md +0 -41
  456. package/skills/generating-custom-lightning-type/references/widget-rendition.md +0 -124
  457. package/skills/generating-custom-object/SKILL.md +0 -240
  458. package/skills/generating-custom-tab/SKILL.md +0 -156
  459. package/skills/generating-flexipage/SKILL.md +0 -522
  460. package/skills/generating-flow/SKILL.md +0 -372
  461. package/skills/generating-lightning-app/SKILL.md +0 -423
  462. package/skills/generating-list-view/SKILL.md +0 -218
  463. package/skills/generating-lwc-components/CREDITS.md +0 -5
  464. package/skills/generating-lwc-components/README.md +0 -126
  465. package/skills/generating-lwc-components/SKILL.md +0 -190
  466. package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +0 -327
  467. package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +0 -72
  468. package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +0 -111
  469. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +0 -163
  470. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +0 -137
  471. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +0 -111
  472. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +0 -367
  473. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +0 -63
  474. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +0 -154
  475. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +0 -348
  476. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +0 -87
  477. package/skills/generating-lwc-components/assets/form-component/formComponent.html +0 -165
  478. package/skills/generating-lwc-components/assets/form-component/formComponent.js +0 -275
  479. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +0 -100
  480. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +0 -336
  481. package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +0 -371
  482. package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +0 -71
  483. package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +0 -103
  484. package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +0 -181
  485. package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +0 -85
  486. package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +0 -199
  487. package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +0 -55
  488. package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +0 -199
  489. package/skills/generating-lwc-components/assets/state-store/store.js +0 -282
  490. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +0 -65
  491. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +0 -95
  492. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +0 -75
  493. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +0 -301
  494. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +0 -295
  495. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +0 -71
  496. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +0 -316
  497. package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +0 -295
  498. package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +0 -347
  499. package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +0 -74
  500. package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +0 -111
  501. package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +0 -127
  502. package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +0 -294
  503. package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +0 -22
  504. package/skills/generating-lwc-components/hooks/scripts/template_validator.py +0 -332
  505. package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +0 -595
  506. package/skills/generating-lwc-components/references/accessibility-guide.md +0 -843
  507. package/skills/generating-lwc-components/references/advanced-features.md +0 -108
  508. package/skills/generating-lwc-components/references/async-notification-patterns.md +0 -661
  509. package/skills/generating-lwc-components/references/cli-commands.md +0 -545
  510. package/skills/generating-lwc-components/references/component-patterns.md +0 -1476
  511. package/skills/generating-lwc-components/references/flow-integration-guide.md +0 -675
  512. package/skills/generating-lwc-components/references/jest-testing.md +0 -1011
  513. package/skills/generating-lwc-components/references/lms-guide.md +0 -860
  514. package/skills/generating-lwc-components/references/lwc-best-practices.md +0 -1310
  515. package/skills/generating-lwc-components/references/performance-guide.md +0 -861
  516. package/skills/generating-lwc-components/references/scoring-and-testing.md +0 -116
  517. package/skills/generating-lwc-components/references/slds-blueprints.json +0 -14389
  518. package/skills/generating-lwc-components/references/slds-design-guide.md +0 -166
  519. package/skills/generating-lwc-components/references/state-management.md +0 -642
  520. package/skills/generating-lwc-components/references/template-anti-patterns.md +0 -948
  521. package/skills/generating-lwc-components/references/triangle-pattern.md +0 -365
  522. package/skills/generating-lwc-components/scripts/local-dev-preview.sh +0 -34
  523. package/skills/generating-mermaid-diagrams/CREDITS.md +0 -46
  524. package/skills/generating-mermaid-diagrams/README.md +0 -114
  525. package/skills/generating-mermaid-diagrams/SKILL.md +0 -217
  526. package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +0 -313
  527. package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +0 -351
  528. package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +0 -317
  529. package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +0 -195
  530. package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +0 -262
  531. package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +0 -266
  532. package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +0 -261
  533. package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +0 -332
  534. package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +0 -237
  535. package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +0 -277
  536. package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +0 -343
  537. package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +0 -192
  538. package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +0 -209
  539. package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +0 -276
  540. package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +0 -217
  541. package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +0 -241
  542. package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +0 -387
  543. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +0 -197
  544. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +0 -152
  545. package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +0 -233
  546. package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +0 -295
  547. package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +0 -256
  548. package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +0 -281
  549. package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +0 -281
  550. package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +0 -322
  551. package/skills/generating-mermaid-diagrams/references/color-palette.md +0 -464
  552. package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +0 -313
  553. package/skills/generating-mermaid-diagrams/references/erd-conventions.md +0 -320
  554. package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +0 -434
  555. package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +0 -81
  556. package/skills/generating-mermaid-diagrams/references/preview-guide.md +0 -46
  557. package/skills/generating-mermaid-diagrams/references/usage-examples.md +0 -340
  558. package/skills/generating-mermaid-diagrams/scripts/README.md +0 -160
  559. package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +0 -654
  560. package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +0 -293
  561. package/skills/generating-permission-set/SKILL.md +0 -189
  562. package/skills/generating-ui-bundle-custom-app/SKILL.md +0 -93
  563. package/skills/generating-ui-bundle-custom-app/docs/configure-metadata-custom-application.md +0 -70
  564. package/skills/generating-ui-bundle-features/SKILL.md +0 -47
  565. package/skills/generating-ui-bundle-metadata/SKILL.md +0 -153
  566. package/skills/generating-ui-bundle-metadata/implementation/csp-metadata-format.md +0 -281
  567. package/skills/generating-ui-bundle-site/SKILL.md +0 -92
  568. package/skills/generating-ui-bundle-site/docs/configure-metadata-custom-site.md +0 -41
  569. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience-bundle.md +0 -17
  570. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience-config.md +0 -21
  571. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience.md +0 -40
  572. package/skills/generating-ui-bundle-site/docs/configure-metadata-network.md +0 -72
  573. package/skills/generating-ui-bundle-site/docs/update-site-urls.md +0 -100
  574. package/skills/generating-validation-rule/SKILL.md +0 -74
  575. package/skills/generating-visual-diagrams/CREDITS.md +0 -80
  576. package/skills/generating-visual-diagrams/README.md +0 -83
  577. package/skills/generating-visual-diagrams/SKILL.md +0 -207
  578. package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +0 -55
  579. package/skills/generating-visual-diagrams/assets/erd/core-objects.md +0 -131
  580. package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +0 -60
  581. package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +0 -45
  582. package/skills/generating-visual-diagrams/assets/lwc/data-table.md +0 -57
  583. package/skills/generating-visual-diagrams/assets/lwc/record-form.md +0 -60
  584. package/skills/generating-visual-diagrams/assets/review/apex-review.md +0 -57
  585. package/skills/generating-visual-diagrams/assets/review/lwc-review.md +0 -48
  586. package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +0 -257
  587. package/skills/generating-visual-diagrams/references/examples-index.md +0 -35
  588. package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +0 -65
  589. package/skills/generating-visual-diagrams/references/interview-questions.md +0 -529
  590. package/skills/generating-visual-diagrams/references/iteration-workflow.md +0 -173
  591. package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +0 -101
  592. package/skills/generating-visual-diagrams/scripts/generate_image.py +0 -243
  593. package/skills/getting-metadata-api-context/README.md +0 -79
  594. package/skills/getting-metadata-api-context/SKILL.md +0 -466
  595. package/skills/getting-metadata-api-context/data/metadata_api/AIApplication.json +0 -37
  596. package/skills/getting-metadata-api-context/data/metadata_api/AIApplicationConfig.json +0 -53
  597. package/skills/getting-metadata-api-context/data/metadata_api/AIReplyRecommendationsSettings.json +0 -40
  598. package/skills/getting-metadata-api-context/data/metadata_api/AIScoringModelDefinition.json +0 -87
  599. package/skills/getting-metadata-api-context/data/metadata_api/AIUsecaseDefinition.json +0 -215
  600. package/skills/getting-metadata-api-context/data/metadata_api/AccountInsightsSettings.json +0 -30
  601. package/skills/getting-metadata-api-context/data/metadata_api/AccountIntelligenceSettings.json +0 -40
  602. package/skills/getting-metadata-api-context/data/metadata_api/AccountPlanObjMeasCalcDef.json +0 -86
  603. package/skills/getting-metadata-api-context/data/metadata_api/AccountPlanSettings.json +0 -32
  604. package/skills/getting-metadata-api-context/data/metadata_api/AccountRelationshipShareRule.json +0 -56
  605. package/skills/getting-metadata-api-context/data/metadata_api/AccountSettings.json +0 -64
  606. package/skills/getting-metadata-api-context/data/metadata_api/AccountingFieldMapping.json +0 -70
  607. package/skills/getting-metadata-api-context/data/metadata_api/AccountingModelConfig.json +0 -94
  608. package/skills/getting-metadata-api-context/data/metadata_api/AccountingSettings.json +0 -53
  609. package/skills/getting-metadata-api-context/data/metadata_api/ActionLinkGroupTemplate.json +0 -118
  610. package/skills/getting-metadata-api-context/data/metadata_api/ActionOverride.json +0 -70
  611. package/skills/getting-metadata-api-context/data/metadata_api/ActionPlanTemplate.json +0 -166
  612. package/skills/getting-metadata-api-context/data/metadata_api/ActionableListDefinition.json +0 -114
  613. package/skills/getting-metadata-api-context/data/metadata_api/ActionsSettings.json +0 -44
  614. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatform.json +0 -95
  615. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatformActvAttr.json +0 -8
  616. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatformField.json +0 -55
  617. package/skills/getting-metadata-api-context/data/metadata_api/ActivitiesSettings.json +0 -136
  618. package/skills/getting-metadata-api-context/data/metadata_api/ActvPfrmDataConnectorS3.json +0 -41
  619. package/skills/getting-metadata-api-context/data/metadata_api/ActvPlatformAdncIdentifier.json +0 -46
  620. package/skills/getting-metadata-api-context/data/metadata_api/ActvPlatformFieldValue.json +0 -50
  621. package/skills/getting-metadata-api-context/data/metadata_api/AddressSettings.json +0 -90
  622. package/skills/getting-metadata-api-context/data/metadata_api/AdvAccountForecastSet.json +0 -261
  623. package/skills/getting-metadata-api-context/data/metadata_api/AffinityScoreDefinition.json +0 -74
  624. package/skills/getting-metadata-api-context/data/metadata_api/AgentPlatformSettings.json +0 -32
  625. package/skills/getting-metadata-api-context/data/metadata_api/AgentforceForDevelopersSettings.json +0 -32
  626. package/skills/getting-metadata-api-context/data/metadata_api/AiAuthoringBundle.json +0 -44
  627. package/skills/getting-metadata-api-context/data/metadata_api/AiEvaluationDefinition.json +0 -153
  628. package/skills/getting-metadata-api-context/data/metadata_api/AiPluginUtteranceDef.json +0 -40
  629. package/skills/getting-metadata-api-context/data/metadata_api/AllOrNoneHeader.json +0 -17
  630. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticSnapshot.json +0 -80
  631. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsDashboard.json +0 -369
  632. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsSettings.json +0 -488
  633. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsVisualization.json +0 -180
  634. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsWorkspace.json +0 -71
  635. package/skills/getting-metadata-api-context/data/metadata_api/AnimationRule.json +0 -71
  636. package/skills/getting-metadata-api-context/data/metadata_api/ApexClass.json +0 -70
  637. package/skills/getting-metadata-api-context/data/metadata_api/ApexComponent.json +0 -44
  638. package/skills/getting-metadata-api-context/data/metadata_api/ApexEmailNotifications.json +0 -49
  639. package/skills/getting-metadata-api-context/data/metadata_api/ApexPage.json +0 -64
  640. package/skills/getting-metadata-api-context/data/metadata_api/ApexSettings.json +0 -96
  641. package/skills/getting-metadata-api-context/data/metadata_api/ApexTestSuite.json +0 -32
  642. package/skills/getting-metadata-api-context/data/metadata_api/ApexTrigger.json +0 -52
  643. package/skills/getting-metadata-api-context/data/metadata_api/AppAnalyticsSettings.json +0 -36
  644. package/skills/getting-metadata-api-context/data/metadata_api/AppExperienceSettings.json +0 -32
  645. package/skills/getting-metadata-api-context/data/metadata_api/AppFrameworkTemplateBundle.json +0 -52
  646. package/skills/getting-metadata-api-context/data/metadata_api/AppMenu.json +0 -10
  647. package/skills/getting-metadata-api-context/data/metadata_api/AppointmentAssignmentPolicy.json +0 -48
  648. package/skills/getting-metadata-api-context/data/metadata_api/AppointmentSchedulingPolicy.json +0 -102
  649. package/skills/getting-metadata-api-context/data/metadata_api/ApprovalProcess.json +0 -234
  650. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType.json +0 -81
  651. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType_CustomField.json +0 -88
  652. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType_Layout.json +0 -63
  653. package/skills/getting-metadata-api-context/data/metadata_api/AssessmentQuestion.json +0 -117
  654. package/skills/getting-metadata-api-context/data/metadata_api/AssessmentQuestionSet.json +0 -41
  655. package/skills/getting-metadata-api-context/data/metadata_api/AssignmentRules.json +0 -87
  656. package/skills/getting-metadata-api-context/data/metadata_api/AssociationEngineSettings.json +0 -32
  657. package/skills/getting-metadata-api-context/data/metadata_api/AsyncResult.json +0 -89
  658. package/skills/getting-metadata-api-context/data/metadata_api/Audience.json +0 -172
  659. package/skills/getting-metadata-api-context/data/metadata_api/AuraDefinitionBundle.json +0 -94
  660. package/skills/getting-metadata-api-context/data/metadata_api/AuthProvider.json +0 -169
  661. package/skills/getting-metadata-api-context/data/metadata_api/AutoResponseRules.json +0 -79
  662. package/skills/getting-metadata-api-context/data/metadata_api/AutomatedContactsSettings.json +0 -44
  663. package/skills/getting-metadata-api-context/data/metadata_api/BaseSharingRule.json +0 -24
  664. package/skills/getting-metadata-api-context/data/metadata_api/BatchCalcJobDefinition.json +0 -849
  665. package/skills/getting-metadata-api-context/data/metadata_api/BatchProcessJobDefinition.json +0 -175
  666. package/skills/getting-metadata-api-context/data/metadata_api/BillingSettings.json +0 -152
  667. package/skills/getting-metadata-api-context/data/metadata_api/BlacklistedConsumer.json +0 -47
  668. package/skills/getting-metadata-api-context/data/metadata_api/Bot.json +0 -197
  669. package/skills/getting-metadata-api-context/data/metadata_api/BotBlock.json +0 -86
  670. package/skills/getting-metadata-api-context/data/metadata_api/BotSettings.json +0 -32
  671. package/skills/getting-metadata-api-context/data/metadata_api/BotTemplate.json +0 -96
  672. package/skills/getting-metadata-api-context/data/metadata_api/BotVersion.json +0 -667
  673. package/skills/getting-metadata-api-context/data/metadata_api/BranchManagementSettings.json +0 -32
  674. package/skills/getting-metadata-api-context/data/metadata_api/BrandingSet.json +0 -146
  675. package/skills/getting-metadata-api-context/data/metadata_api/BriefcaseDefinition.json +0 -127
  676. package/skills/getting-metadata-api-context/data/metadata_api/BusinessHoursSettings.json +0 -175
  677. package/skills/getting-metadata-api-context/data/metadata_api/BusinessProcess.json +0 -47
  678. package/skills/getting-metadata-api-context/data/metadata_api/BusinessProcessGroup.json +0 -91
  679. package/skills/getting-metadata-api-context/data/metadata_api/CMSConnectSource.json +0 -197
  680. package/skills/getting-metadata-api-context/data/metadata_api/CallCenter.json +0 -124
  681. package/skills/getting-metadata-api-context/data/metadata_api/CallCenterRoutingMap.json +0 -58
  682. package/skills/getting-metadata-api-context/data/metadata_api/CallCoachingMediaProvider.json +0 -40
  683. package/skills/getting-metadata-api-context/data/metadata_api/CallOptions.json +0 -17
  684. package/skills/getting-metadata-api-context/data/metadata_api/CampaignInfluenceModel.json +0 -59
  685. package/skills/getting-metadata-api-context/data/metadata_api/CampaignSettings.json +0 -71
  686. package/skills/getting-metadata-api-context/data/metadata_api/CancelDeployResult.json +0 -10
  687. package/skills/getting-metadata-api-context/data/metadata_api/CareBenefitVerifySettings.json +0 -70
  688. package/skills/getting-metadata-api-context/data/metadata_api/CareLimitType.json +0 -46
  689. package/skills/getting-metadata-api-context/data/metadata_api/CareProviderSearchConfig.json +0 -54
  690. package/skills/getting-metadata-api-context/data/metadata_api/CareRequestConfiguration.json +0 -57
  691. package/skills/getting-metadata-api-context/data/metadata_api/CareSystemFieldMapping.json +0 -58
  692. package/skills/getting-metadata-api-context/data/metadata_api/CaseSettings.json +0 -423
  693. package/skills/getting-metadata-api-context/data/metadata_api/CaseSubjectParticle.json +0 -35
  694. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApi.json +0 -97
  695. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApiArtifactVersionInfo.json +0 -46
  696. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApiVersion.json +0 -51
  697. package/skills/getting-metadata-api-context/data/metadata_api/Certificate.json +0 -54
  698. package/skills/getting-metadata-api-context/data/metadata_api/ChannelLayout.json +0 -63
  699. package/skills/getting-metadata-api-context/data/metadata_api/ChatterAnswersSettings.json +0 -76
  700. package/skills/getting-metadata-api-context/data/metadata_api/ChatterEmailsMDSettings.json +0 -68
  701. package/skills/getting-metadata-api-context/data/metadata_api/ChatterExtension.json +0 -64
  702. package/skills/getting-metadata-api-context/data/metadata_api/ChatterSettings.json +0 -92
  703. package/skills/getting-metadata-api-context/data/metadata_api/ChoiceList.json +0 -66
  704. package/skills/getting-metadata-api-context/data/metadata_api/ClaimFinancialSettings.json +0 -51
  705. package/skills/getting-metadata-api-context/data/metadata_api/ClauseCatgConfiguration.json +0 -45
  706. package/skills/getting-metadata-api-context/data/metadata_api/CleanDataService.json +0 -166
  707. package/skills/getting-metadata-api-context/data/metadata_api/CodeBuilderSettings.json +0 -32
  708. package/skills/getting-metadata-api-context/data/metadata_api/CollectionsDashboardSettings.json +0 -32
  709. package/skills/getting-metadata-api-context/data/metadata_api/CommerceSettings.json +0 -80
  710. package/skills/getting-metadata-api-context/data/metadata_api/CommunitiesSettings.json +0 -116
  711. package/skills/getting-metadata-api-context/data/metadata_api/Community.json +0 -121
  712. package/skills/getting-metadata-api-context/data/metadata_api/CommunityTemplateDefinition.json +0 -116
  713. package/skills/getting-metadata-api-context/data/metadata_api/CommunityThemeDefinition.json +0 -146
  714. package/skills/getting-metadata-api-context/data/metadata_api/CompactLayout.json +0 -32
  715. package/skills/getting-metadata-api-context/data/metadata_api/CompanySettings.json +0 -49
  716. package/skills/getting-metadata-api-context/data/metadata_api/ConnectedApp.json +0 -384
  717. package/skills/getting-metadata-api-context/data/metadata_api/ConnectedAppSettings.json +0 -40
  718. package/skills/getting-metadata-api-context/data/metadata_api/ContentAsset.json +0 -121
  719. package/skills/getting-metadata-api-context/data/metadata_api/ContentSettings.json +0 -116
  720. package/skills/getting-metadata-api-context/data/metadata_api/ContentTypeBundle.json +0 -64
  721. package/skills/getting-metadata-api-context/data/metadata_api/ContextDefinition.json +0 -340
  722. package/skills/getting-metadata-api-context/data/metadata_api/ContractSettings.json +0 -36
  723. package/skills/getting-metadata-api-context/data/metadata_api/ConvIntelligenceSignalRule.json +0 -106
  724. package/skills/getting-metadata-api-context/data/metadata_api/ConversationChannelDefinition.json +0 -140
  725. package/skills/getting-metadata-api-context/data/metadata_api/ConversationMessageDefinition.json +0 -380
  726. package/skills/getting-metadata-api-context/data/metadata_api/ConversationMessageDefinitionTranslation.json +0 -49
  727. package/skills/getting-metadata-api-context/data/metadata_api/ConversationVendorInfo.json +0 -148
  728. package/skills/getting-metadata-api-context/data/metadata_api/ConversationalIntelligenceSettings.json +0 -76
  729. package/skills/getting-metadata-api-context/data/metadata_api/CorsWhitelistOrigin.json +0 -32
  730. package/skills/getting-metadata-api-context/data/metadata_api/CriteriaBasedSharingRule.json +0 -206
  731. package/skills/getting-metadata-api-context/data/metadata_api/CspTrustedSite.json +0 -82
  732. package/skills/getting-metadata-api-context/data/metadata_api/CurrencySettings.json +0 -48
  733. package/skills/getting-metadata-api-context/data/metadata_api/CustomAddressFieldSettings.json +0 -32
  734. package/skills/getting-metadata-api-context/data/metadata_api/CustomApplication.json +0 -453
  735. package/skills/getting-metadata-api-context/data/metadata_api/CustomApplicationComponent.json +0 -72
  736. package/skills/getting-metadata-api-context/data/metadata_api/CustomFeedFilter.json +0 -63
  737. package/skills/getting-metadata-api-context/data/metadata_api/CustomField.json +0 -392
  738. package/skills/getting-metadata-api-context/data/metadata_api/CustomFieldDisplay.json +0 -45
  739. package/skills/getting-metadata-api-context/data/metadata_api/CustomHelpMenuSection.json +0 -57
  740. package/skills/getting-metadata-api-context/data/metadata_api/CustomIndex.json +0 -36
  741. package/skills/getting-metadata-api-context/data/metadata_api/CustomLabels.json +0 -69
  742. package/skills/getting-metadata-api-context/data/metadata_api/CustomMetadata.json +0 -90
  743. package/skills/getting-metadata-api-context/data/metadata_api/CustomNotificationType.json +0 -94
  744. package/skills/getting-metadata-api-context/data/metadata_api/CustomObject.json +0 -313
  745. package/skills/getting-metadata-api-context/data/metadata_api/CustomObjectTranslation.json +0 -319
  746. package/skills/getting-metadata-api-context/data/metadata_api/CustomPageWebLink.json +0 -121
  747. package/skills/getting-metadata-api-context/data/metadata_api/CustomPermission.json +0 -65
  748. package/skills/getting-metadata-api-context/data/metadata_api/CustomSite.json +0 -288
  749. package/skills/getting-metadata-api-context/data/metadata_api/CustomTab.json +0 -97
  750. package/skills/getting-metadata-api-context/data/metadata_api/CustomValue.json +0 -85
  751. package/skills/getting-metadata-api-context/data/metadata_api/CustomerDataPlatformSettings.json +0 -32
  752. package/skills/getting-metadata-api-context/data/metadata_api/Dashboard.json +0 -584
  753. package/skills/getting-metadata-api-context/data/metadata_api/DataCategoryGroup.json +0 -81
  754. package/skills/getting-metadata-api-context/data/metadata_api/DataConnector.json +0 -230
  755. package/skills/getting-metadata-api-context/data/metadata_api/DataConnectorIngestApi.json +0 -41
  756. package/skills/getting-metadata-api-context/data/metadata_api/DataConnectorS3.json +0 -44
  757. package/skills/getting-metadata-api-context/data/metadata_api/DataDotComSettings.json +0 -56
  758. package/skills/getting-metadata-api-context/data/metadata_api/DataImportManagementSettings.json +0 -32
  759. package/skills/getting-metadata-api-context/data/metadata_api/DataKitObjectDependency.json +0 -49
  760. package/skills/getting-metadata-api-context/data/metadata_api/DataKitObjectTemplate.json +0 -59
  761. package/skills/getting-metadata-api-context/data/metadata_api/DataObjectBuildOrgTemplate.json +0 -61
  762. package/skills/getting-metadata-api-context/data/metadata_api/DataObjectSearchIndexConf.json +0 -62
  763. package/skills/getting-metadata-api-context/data/metadata_api/DataPackageKitDefinition.json +0 -74
  764. package/skills/getting-metadata-api-context/data/metadata_api/DataPackageKitObject.json +0 -47
  765. package/skills/getting-metadata-api-context/data/metadata_api/DataSource.json +0 -29
  766. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceBundleDefinition.json +0 -57
  767. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceField.json +0 -115
  768. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceObject.json +0 -93
  769. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceTenant.json +0 -8
  770. package/skills/getting-metadata-api-context/data/metadata_api/DataSrcDataModelFieldMap.json +0 -69
  771. package/skills/getting-metadata-api-context/data/metadata_api/DataStreamDefinition.json +0 -105
  772. package/skills/getting-metadata-api-context/data/metadata_api/DataStreamTemplate.json +0 -99
  773. package/skills/getting-metadata-api-context/data/metadata_api/DataWeaveResource.json +0 -46
  774. package/skills/getting-metadata-api-context/data/metadata_api/DebuggingHeader.json +0 -20
  775. package/skills/getting-metadata-api-context/data/metadata_api/DecisionMatrixDefinition.json +0 -140
  776. package/skills/getting-metadata-api-context/data/metadata_api/DecisionTable.json +0 -211
  777. package/skills/getting-metadata-api-context/data/metadata_api/DecisionTableDatasetLink.json +0 -72
  778. package/skills/getting-metadata-api-context/data/metadata_api/DelegateGroup.json +0 -62
  779. package/skills/getting-metadata-api-context/data/metadata_api/DeleteResult.json +0 -22
  780. package/skills/getting-metadata-api-context/data/metadata_api/DeployResult.json +0 -253
  781. package/skills/getting-metadata-api-context/data/metadata_api/DeploymentSettings.json +0 -32
  782. package/skills/getting-metadata-api-context/data/metadata_api/DescribeMetadataResult.json +0 -31
  783. package/skills/getting-metadata-api-context/data/metadata_api/DescribeValueTypeResult.json +0 -56
  784. package/skills/getting-metadata-api-context/data/metadata_api/DevHubSettings.json +0 -60
  785. package/skills/getting-metadata-api-context/data/metadata_api/DgtAssetMgmtProvider.json +0 -43
  786. package/skills/getting-metadata-api-context/data/metadata_api/DgtAssetMgmtPrvdLghtCpnt.json +0 -48
  787. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle.json +0 -102
  788. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle_Marketing_Workspace_Bundle_and_Folders.json +0 -8
  789. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle_Site_Workspace_Bundle_and_Folders.json +0 -541
  790. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceConfig.json +0 -51
  791. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureDefinition.json +0 -45
  792. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureDefinitionVersion.json +0 -78
  793. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureType.json +0 -53
  794. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryAIModel.json +0 -263
  795. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryGoal.json +0 -361
  796. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryStory.json +0 -98
  797. package/skills/getting-metadata-api-context/data/metadata_api/Document.json +0 -54
  798. package/skills/getting-metadata-api-context/data/metadata_api/DocumentCategory.json +0 -42
  799. package/skills/getting-metadata-api-context/data/metadata_api/DocumentCategoryDocumentType.json +0 -48
  800. package/skills/getting-metadata-api-context/data/metadata_api/DocumentChecklistSettings.json +0 -36
  801. package/skills/getting-metadata-api-context/data/metadata_api/DocumentGenerationSetting.json +0 -60
  802. package/skills/getting-metadata-api-context/data/metadata_api/DocumentType.json +0 -43
  803. package/skills/getting-metadata-api-context/data/metadata_api/DuplicateRule.json +0 -160
  804. package/skills/getting-metadata-api-context/data/metadata_api/DynamicFormsSettings.json +0 -32
  805. package/skills/getting-metadata-api-context/data/metadata_api/EACSettings.json +0 -112
  806. package/skills/getting-metadata-api-context/data/metadata_api/EclairGeoData.json +0 -73
  807. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinAISettings.json +0 -45
  808. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinAgentSettings.json +0 -40
  809. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinGptSettings.json +0 -64
  810. package/skills/getting-metadata-api-context/data/metadata_api/EmailAdministrationSettings.json +0 -104
  811. package/skills/getting-metadata-api-context/data/metadata_api/EmailAuthorizationSettings.json +0 -32
  812. package/skills/getting-metadata-api-context/data/metadata_api/EmailIntegrationSettings.json +0 -92
  813. package/skills/getting-metadata-api-context/data/metadata_api/EmailServicesFunction.json +0 -116
  814. package/skills/getting-metadata-api-context/data/metadata_api/EmailTemplate.json +0 -116
  815. package/skills/getting-metadata-api-context/data/metadata_api/EmailTemplateSettings.json +0 -32
  816. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceBranding.json +0 -78
  817. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceConfig.json +0 -318
  818. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceFieldService.json +0 -73
  819. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceFlowConfig.json +0 -32
  820. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceLiveAgent.json +0 -141
  821. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceMenuSettings.json +0 -165
  822. package/skills/getting-metadata-api-context/data/metadata_api/EmployeeUserSettings.json +0 -54
  823. package/skills/getting-metadata-api-context/data/metadata_api/EnablementMeasureDefinition.json +0 -139
  824. package/skills/getting-metadata-api-context/data/metadata_api/EnablementProgramDefinition.json +0 -241
  825. package/skills/getting-metadata-api-context/data/metadata_api/EnblProgramTaskSubCategory.json +0 -47
  826. package/skills/getting-metadata-api-context/data/metadata_api/EncryptionKeySettings.json +0 -51
  827. package/skills/getting-metadata-api-context/data/metadata_api/EnhancedNotesSettings.json +0 -36
  828. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementProcess.json +0 -147
  829. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementSettings.json +0 -80
  830. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementTemplate.json +0 -52
  831. package/skills/getting-metadata-api-context/data/metadata_api/Error.json +0 -25
  832. package/skills/getting-metadata-api-context/data/metadata_api/EscalationRules.json +0 -117
  833. package/skills/getting-metadata-api-context/data/metadata_api/EventDelivery.json +0 -57
  834. package/skills/getting-metadata-api-context/data/metadata_api/EventRelayConfig.json +0 -55
  835. package/skills/getting-metadata-api-context/data/metadata_api/EventSettings.json +0 -76
  836. package/skills/getting-metadata-api-context/data/metadata_api/EventSubscription.json +0 -62
  837. package/skills/getting-metadata-api-context/data/metadata_api/ExperienceBundle.json +0 -387
  838. package/skills/getting-metadata-api-context/data/metadata_api/ExperienceBundleSettings.json +0 -25
  839. package/skills/getting-metadata-api-context/data/metadata_api/ExperiencePropertyTypeBundle.json +0 -68
  840. package/skills/getting-metadata-api-context/data/metadata_api/ExplainabilityMsgTemplate.json +0 -56
  841. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetDefinition.json +0 -496
  842. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetMessageToken.json +0 -42
  843. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetObjectAlias.json +0 -61
  844. package/skills/getting-metadata-api-context/data/metadata_api/ExternalAIModel.json +0 -54
  845. package/skills/getting-metadata-api-context/data/metadata_api/ExternalAuthIdentityProvider.json +0 -79
  846. package/skills/getting-metadata-api-context/data/metadata_api/ExternalClientAppSettings.json +0 -40
  847. package/skills/getting-metadata-api-context/data/metadata_api/ExternalClientApplication.json +0 -72
  848. package/skills/getting-metadata-api-context/data/metadata_api/ExternalCredential.json +0 -94
  849. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataConnector.json +0 -51
  850. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataSource.json +0 -162
  851. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTranObject.json +0 -191
  852. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTransportFieldTemplate.json +0 -8
  853. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTransportObjectTemplate.json +0 -8
  854. package/skills/getting-metadata-api-context/data/metadata_api/ExternalServiceRegistration.json +0 -121
  855. package/skills/getting-metadata-api-context/data/metadata_api/ExternalServicesSettings.json +0 -34
  856. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppCanvasSettings.json +0 -63
  857. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppConfigurablePolicies.json +0 -75
  858. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppGlobalOauthSettings.json +0 -135
  859. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppMobileConfigurablePolicies.json +0 -34
  860. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppMobileSettings.json +0 -35
  861. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppNotificationSettings.json +0 -49
  862. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppOauthConfigurablePolicies.json +0 -153
  863. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppOauthSettings.json +0 -120
  864. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppPushConfigurablePolicies.json +0 -35
  865. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppPushSettings.json +0 -93
  866. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppSamlConfigurablePolicies.json +0 -119
  867. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterBoolean.json +0 -47
  868. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterDate.json +0 -47
  869. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterInteger.json +0 -47
  870. package/skills/getting-metadata-api-context/data/metadata_api/FieldMappingConfig.json +0 -43
  871. package/skills/getting-metadata-api-context/data/metadata_api/FieldRestrictionRule.json +0 -80
  872. package/skills/getting-metadata-api-context/data/metadata_api/FieldServiceSettings.json +0 -226
  873. package/skills/getting-metadata-api-context/data/metadata_api/FieldSet.json +0 -60
  874. package/skills/getting-metadata-api-context/data/metadata_api/FieldSrcTrgtRelationship.json +0 -56
  875. package/skills/getting-metadata-api-context/data/metadata_api/FileUploadAndDownloadSecuritySettings.json +0 -53
  876. package/skills/getting-metadata-api-context/data/metadata_api/FilesConnectSettings.json +0 -40
  877. package/skills/getting-metadata-api-context/data/metadata_api/FlexiPage.json +0 -355
  878. package/skills/getting-metadata-api-context/data/metadata_api/Flow.json +0 -2377
  879. package/skills/getting-metadata-api-context/data/metadata_api/FlowCategory.json +0 -51
  880. package/skills/getting-metadata-api-context/data/metadata_api/FlowDefinition.json +0 -37
  881. package/skills/getting-metadata-api-context/data/metadata_api/FlowSettings.json +0 -124
  882. package/skills/getting-metadata-api-context/data/metadata_api/FlowTest.json +0 -205
  883. package/skills/getting-metadata-api-context/data/metadata_api/FlowValueMap.json +0 -68
  884. package/skills/getting-metadata-api-context/data/metadata_api/Folder.json +0 -50
  885. package/skills/getting-metadata-api-context/data/metadata_api/FolderShare.json +0 -45
  886. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingFilter.json +0 -48
  887. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingFilterCondition.json +0 -62
  888. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingObjectListSettings.json +0 -77
  889. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingSettings.json +0 -303
  890. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingSourceDefinition.json +0 -62
  891. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingType.json +0 -100
  892. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingTypeSource.json +0 -60
  893. package/skills/getting-metadata-api-context/data/metadata_api/FuelType.json +0 -52
  894. package/skills/getting-metadata-api-context/data/metadata_api/FuelTypeSustnUom.json +0 -45
  895. package/skills/getting-metadata-api-context/data/metadata_api/FunctionReference.json +0 -31
  896. package/skills/getting-metadata-api-context/data/metadata_api/FundraisingConfig.json +0 -86
  897. package/skills/getting-metadata-api-context/data/metadata_api/GatewayProviderPaymentMethodType.json +0 -50
  898. package/skills/getting-metadata-api-context/data/metadata_api/GenAiFunction.json +0 -171
  899. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlanner.json +0 -215
  900. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlannerBundle.json +0 -220
  901. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlugin.json +0 -87
  902. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPluginInstructionDef.json +0 -42
  903. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPromptTemplate.json +0 -183
  904. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPromptTemplateActv.json +0 -42
  905. package/skills/getting-metadata-api-context/data/metadata_api/GiftEntryGridTemplate.json +0 -42
  906. package/skills/getting-metadata-api-context/data/metadata_api/GlobalPicklist.json +0 -43
  907. package/skills/getting-metadata-api-context/data/metadata_api/GlobalPicklistValue.json +0 -81
  908. package/skills/getting-metadata-api-context/data/metadata_api/GlobalValueSet.json +0 -46
  909. package/skills/getting-metadata-api-context/data/metadata_api/GlobalValueSetTranslation.json +0 -44
  910. package/skills/getting-metadata-api-context/data/metadata_api/GoogleAppsSettings.json +0 -56
  911. package/skills/getting-metadata-api-context/data/metadata_api/Group.json +0 -46
  912. package/skills/getting-metadata-api-context/data/metadata_api/HighVelocitySalesSettings.json +0 -96
  913. package/skills/getting-metadata-api-context/data/metadata_api/HistoryRetentionPolicy.json +0 -41
  914. package/skills/getting-metadata-api-context/data/metadata_api/HomePageComponent.json +0 -66
  915. package/skills/getting-metadata-api-context/data/metadata_api/HomePageLayout.json +0 -40
  916. package/skills/getting-metadata-api-context/data/metadata_api/IPAddressRange.json +0 -60
  917. package/skills/getting-metadata-api-context/data/metadata_api/IdeasSettings.json +0 -52
  918. package/skills/getting-metadata-api-context/data/metadata_api/IdentityProviderSettings.json +0 -39
  919. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcDef.json +0 -173
  920. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcDtl.json +0 -136
  921. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcFld.json +0 -76
  922. package/skills/getting-metadata-api-context/data/metadata_api/IframeWhiteListUrlSettings.json +0 -46
  923. package/skills/getting-metadata-api-context/data/metadata_api/InboundCertificate.json +0 -48
  924. package/skills/getting-metadata-api-context/data/metadata_api/InboundNetworkConnection.json +0 -72
  925. package/skills/getting-metadata-api-context/data/metadata_api/IncidentMgmtSettings.json +0 -140
  926. package/skills/getting-metadata-api-context/data/metadata_api/Index.json +0 -48
  927. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesEinsteinFeatureSettings.json +0 -34
  928. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesLoyaltySettings.json +0 -108
  929. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesPricingSettings.json +0 -61
  930. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesRatingSettings.json +0 -40
  931. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesSettings.json +0 -731
  932. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesUnifiedInventorySettings.json +0 -40
  933. package/skills/getting-metadata-api-context/data/metadata_api/InsPlcyLimitConsumptionRule.json +0 -46
  934. package/skills/getting-metadata-api-context/data/metadata_api/InstalledPackage.json +0 -46
  935. package/skills/getting-metadata-api-context/data/metadata_api/IntegArtifactDef.json +0 -10
  936. package/skills/getting-metadata-api-context/data/metadata_api/IntegrationProviderDef.json +0 -155
  937. package/skills/getting-metadata-api-context/data/metadata_api/InterestTaggingSettings.json +0 -32
  938. package/skills/getting-metadata-api-context/data/metadata_api/InternalDataConnector.json +0 -8
  939. package/skills/getting-metadata-api-context/data/metadata_api/InvLatePymntRiskCalcSettings.json +0 -32
  940. package/skills/getting-metadata-api-context/data/metadata_api/InventorySettings.json +0 -36
  941. package/skills/getting-metadata-api-context/data/metadata_api/InvocableActionExtension.json +0 -84
  942. package/skills/getting-metadata-api-context/data/metadata_api/InvocableActionSettings.json +0 -28
  943. package/skills/getting-metadata-api-context/data/metadata_api/KeywordList.json +0 -51
  944. package/skills/getting-metadata-api-context/data/metadata_api/KnowledgeSettings.json +0 -280
  945. package/skills/getting-metadata-api-context/data/metadata_api/LanguageSettings.json +0 -68
  946. package/skills/getting-metadata-api-context/data/metadata_api/Layout.json +0 -659
  947. package/skills/getting-metadata-api-context/data/metadata_api/LeadConfigSettings.json +0 -64
  948. package/skills/getting-metadata-api-context/data/metadata_api/LeadConvertSettings.json +0 -71
  949. package/skills/getting-metadata-api-context/data/metadata_api/LearningItemType.json +0 -65
  950. package/skills/getting-metadata-api-context/data/metadata_api/Letterhead.json +0 -119
  951. package/skills/getting-metadata-api-context/data/metadata_api/LightningBolt.json +0 -103
  952. package/skills/getting-metadata-api-context/data/metadata_api/LightningComponentBundle.json +0 -109
  953. package/skills/getting-metadata-api-context/data/metadata_api/LightningExperienceSettings.json +0 -191
  954. package/skills/getting-metadata-api-context/data/metadata_api/LightningExperienceTheme.json +0 -54
  955. package/skills/getting-metadata-api-context/data/metadata_api/LightningMessageChannel.json +0 -63
  956. package/skills/getting-metadata-api-context/data/metadata_api/LightningOnboardingConfig.json +0 -62
  957. package/skills/getting-metadata-api-context/data/metadata_api/LightningTypeBundle.json +0 -88
  958. package/skills/getting-metadata-api-context/data/metadata_api/ListMetadataQuery.json +0 -10
  959. package/skills/getting-metadata-api-context/data/metadata_api/ListView.json +0 -86
  960. package/skills/getting-metadata-api-context/data/metadata_api/LiveAgentSettings.json +0 -44
  961. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatAgentConfig.json +0 -188
  962. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatButton.json +0 -188
  963. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatDeployment.json +0 -81
  964. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatSensitiveDataRule.json +0 -56
  965. package/skills/getting-metadata-api-context/data/metadata_api/LiveMessageSettings.json +0 -36
  966. package/skills/getting-metadata-api-context/data/metadata_api/LoyaltyProgramSetup.json +0 -297
  967. package/skills/getting-metadata-api-context/data/metadata_api/MLDataDefinition.json +0 -146
  968. package/skills/getting-metadata-api-context/data/metadata_api/MLPredictionDefinition.json +0 -67
  969. package/skills/getting-metadata-api-context/data/metadata_api/MacroSettings.json +0 -36
  970. package/skills/getting-metadata-api-context/data/metadata_api/MailMergeSettings.json +0 -36
  971. package/skills/getting-metadata-api-context/data/metadata_api/ManagedContentType.json +0 -86
  972. package/skills/getting-metadata-api-context/data/metadata_api/ManagedEventSubscription.json +0 -52
  973. package/skills/getting-metadata-api-context/data/metadata_api/ManagedTopics.json +0 -57
  974. package/skills/getting-metadata-api-context/data/metadata_api/MapAndLocationSettings.json +0 -34
  975. package/skills/getting-metadata-api-context/data/metadata_api/MarketSegmentDefinition.json +0 -58
  976. package/skills/getting-metadata-api-context/data/metadata_api/MarketingAppExtension.json +0 -139
  977. package/skills/getting-metadata-api-context/data/metadata_api/MatchingRule.json +0 -69
  978. package/skills/getting-metadata-api-context/data/metadata_api/MeetingsSettings.json +0 -36
  979. package/skills/getting-metadata-api-context/data/metadata_api/MessagingChannel.json +0 -278
  980. package/skills/getting-metadata-api-context/data/metadata_api/MetadataWithContent.json +0 -24
  981. package/skills/getting-metadata-api-context/data/metadata_api/Metadata_Type_Limits.json +0 -8
  982. package/skills/getting-metadata-api-context/data/metadata_api/MfgProgramTemplate.json +0 -88
  983. package/skills/getting-metadata-api-context/data/metadata_api/MfgServiceConsoleSettings.json +0 -32
  984. package/skills/getting-metadata-api-context/data/metadata_api/MilestoneType.json +0 -36
  985. package/skills/getting-metadata-api-context/data/metadata_api/MktCalcInsightObjectDef.json +0 -54
  986. package/skills/getting-metadata-api-context/data/metadata_api/MktDataTranObject.json +0 -99
  987. package/skills/getting-metadata-api-context/data/metadata_api/MlDomain.json +0 -136
  988. package/skills/getting-metadata-api-context/data/metadata_api/MobSecurityCertPinConfig.json +0 -76
  989. package/skills/getting-metadata-api-context/data/metadata_api/MobileApplicationDetail.json +0 -71
  990. package/skills/getting-metadata-api-context/data/metadata_api/MobileSecurityAssignment.json +0 -44
  991. package/skills/getting-metadata-api-context/data/metadata_api/MobileSecurityPolicy.json +0 -75
  992. package/skills/getting-metadata-api-context/data/metadata_api/MobileSettings.json +0 -121
  993. package/skills/getting-metadata-api-context/data/metadata_api/ModerationRule.json +0 -99
  994. package/skills/getting-metadata-api-context/data/metadata_api/MutingPermissionSet.json +0 -33
  995. package/skills/getting-metadata-api-context/data/metadata_api/MyDomainDiscoverableLogin.json +0 -41
  996. package/skills/getting-metadata-api-context/data/metadata_api/MyDomainSettings.json +0 -140
  997. package/skills/getting-metadata-api-context/data/metadata_api/NameSettings.json +0 -40
  998. package/skills/getting-metadata-api-context/data/metadata_api/NamedCredential.json +0 -205
  999. package/skills/getting-metadata-api-context/data/metadata_api/NamedFilter.json +0 -89
  1000. package/skills/getting-metadata-api-context/data/metadata_api/NavigationMenu.json +0 -101
  1001. package/skills/getting-metadata-api-context/data/metadata_api/Network.json +0 -606
  1002. package/skills/getting-metadata-api-context/data/metadata_api/NetworkBranding.json +0 -117
  1003. package/skills/getting-metadata-api-context/data/metadata_api/NotificationTypeConfig.json +0 -75
  1004. package/skills/getting-metadata-api-context/data/metadata_api/NotificationsSettings.json +0 -40
  1005. package/skills/getting-metadata-api-context/data/metadata_api/OauthCustomScope.json +0 -56
  1006. package/skills/getting-metadata-api-context/data/metadata_api/OauthOidcSettings.json +0 -52
  1007. package/skills/getting-metadata-api-context/data/metadata_api/OauthTokenExchangeHandler.json +0 -119
  1008. package/skills/getting-metadata-api-context/data/metadata_api/ObjectHierarchyRelationship.json +0 -108
  1009. package/skills/getting-metadata-api-context/data/metadata_api/ObjectLinkingSettings.json +0 -32
  1010. package/skills/getting-metadata-api-context/data/metadata_api/ObjectSourceTargetMap.json +0 -85
  1011. package/skills/getting-metadata-api-context/data/metadata_api/OcrSampleDocument.json +0 -158
  1012. package/skills/getting-metadata-api-context/data/metadata_api/OcrTemplate.json +0 -180
  1013. package/skills/getting-metadata-api-context/data/metadata_api/OmniChannelSettings.json +0 -48
  1014. package/skills/getting-metadata-api-context/data/metadata_api/OmniExtTrackingDef.json +0 -66
  1015. package/skills/getting-metadata-api-context/data/metadata_api/OmniInteractionAccessConfig.json +0 -90
  1016. package/skills/getting-metadata-api-context/data/metadata_api/OmniInteractionConfig.json +0 -37
  1017. package/skills/getting-metadata-api-context/data/metadata_api/OmniScript.json +0 -204
  1018. package/skills/getting-metadata-api-context/data/metadata_api/OmniSupervisorConfig.json +0 -156
  1019. package/skills/getting-metadata-api-context/data/metadata_api/OmniTrackingGroup.json +0 -77
  1020. package/skills/getting-metadata-api-context/data/metadata_api/OnboardingDataObjectGroup.json +0 -131
  1021. package/skills/getting-metadata-api-context/data/metadata_api/OpportunityInsightsSettings.json +0 -30
  1022. package/skills/getting-metadata-api-context/data/metadata_api/OpportunityScoreSettings.json +0 -32
  1023. package/skills/getting-metadata-api-context/data/metadata_api/OpportunitySettings.json +0 -132
  1024. package/skills/getting-metadata-api-context/data/metadata_api/OrchestrationPlanCtxMapping.json +0 -63
  1025. package/skills/getting-metadata-api-context/data/metadata_api/OrderManagementSettings.json +0 -52
  1026. package/skills/getting-metadata-api-context/data/metadata_api/OrderSettings.json +0 -60
  1027. package/skills/getting-metadata-api-context/data/metadata_api/OrgPreferenceSettings.json +0 -43
  1028. package/skills/getting-metadata-api-context/data/metadata_api/OrgSettings.json +0 -40
  1029. package/skills/getting-metadata-api-context/data/metadata_api/OutboundNetworkConnection.json +0 -71
  1030. package/skills/getting-metadata-api-context/data/metadata_api/OwnerSharingRule.json +0 -206
  1031. package/skills/getting-metadata-api-context/data/metadata_api/Package.json +0 -19
  1032. package/skills/getting-metadata-api-context/data/metadata_api/PardotEinsteinSettings.json +0 -36
  1033. package/skills/getting-metadata-api-context/data/metadata_api/PardotSettings.json +0 -72
  1034. package/skills/getting-metadata-api-context/data/metadata_api/ParticipantRole.json +0 -48
  1035. package/skills/getting-metadata-api-context/data/metadata_api/PartyDataModelSettings.json +0 -40
  1036. package/skills/getting-metadata-api-context/data/metadata_api/PathAssistant.json +0 -74
  1037. package/skills/getting-metadata-api-context/data/metadata_api/PathAssistantSettings.json +0 -40
  1038. package/skills/getting-metadata-api-context/data/metadata_api/PaymentGatewayProvider.json +0 -50
  1039. package/skills/getting-metadata-api-context/data/metadata_api/PaymentsSettings.json +0 -32
  1040. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSet.json +0 -372
  1041. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSetGroup.json +0 -57
  1042. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSetLicenseDefinition.json +0 -58
  1043. package/skills/getting-metadata-api-context/data/metadata_api/PersonAccountOwnerPowerUser.json +0 -38
  1044. package/skills/getting-metadata-api-context/data/metadata_api/Picklist.json +0 -43
  1045. package/skills/getting-metadata-api-context/data/metadata_api/PicklistSettings.json +0 -32
  1046. package/skills/getting-metadata-api-context/data/metadata_api/PipelineInspMetricConfig.json +0 -48
  1047. package/skills/getting-metadata-api-context/data/metadata_api/PlatformCachePartition.json +0 -79
  1048. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEncryptionSettings.json +0 -51
  1049. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventChannel.json +0 -56
  1050. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventChannelMember.json +0 -71
  1051. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventMigration.json +0 -39
  1052. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventSettings.json +0 -32
  1053. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventSubscriberConfig.json +0 -58
  1054. package/skills/getting-metadata-api-context/data/metadata_api/Portal.json +0 -137
  1055. package/skills/getting-metadata-api-context/data/metadata_api/PortalDelegablePermissionSet.json +0 -48
  1056. package/skills/getting-metadata-api-context/data/metadata_api/PostTemplate.json +0 -47
  1057. package/skills/getting-metadata-api-context/data/metadata_api/PredictionBuilderSettings.json +0 -36
  1058. package/skills/getting-metadata-api-context/data/metadata_api/PresenceDeclineReason.json +0 -32
  1059. package/skills/getting-metadata-api-context/data/metadata_api/PresenceUserConfig.json +0 -122
  1060. package/skills/getting-metadata-api-context/data/metadata_api/PricingActionParameters.json +0 -64
  1061. package/skills/getting-metadata-api-context/data/metadata_api/PricingRecipe.json +0 -117
  1062. package/skills/getting-metadata-api-context/data/metadata_api/PrivacySettings.json +0 -80
  1063. package/skills/getting-metadata-api-context/data/metadata_api/ProcessFlowMigration.json +0 -58
  1064. package/skills/getting-metadata-api-context/data/metadata_api/ProductAttributeSet.json +0 -33
  1065. package/skills/getting-metadata-api-context/data/metadata_api/ProductSettings.json +0 -44
  1066. package/skills/getting-metadata-api-context/data/metadata_api/Profile.json +0 -492
  1067. package/skills/getting-metadata-api-context/data/metadata_api/ProfileActionOverride.json +0 -48
  1068. package/skills/getting-metadata-api-context/data/metadata_api/ProfilePasswordPolicy.json +0 -80
  1069. package/skills/getting-metadata-api-context/data/metadata_api/ProfileSearchLayouts.json +0 -32
  1070. package/skills/getting-metadata-api-context/data/metadata_api/ProfileSessionSetting.json +0 -55
  1071. package/skills/getting-metadata-api-context/data/metadata_api/Prompt.json +0 -255
  1072. package/skills/getting-metadata-api-context/data/metadata_api/PublicKeyCertificate.json +0 -50
  1073. package/skills/getting-metadata-api-context/data/metadata_api/PublicKeyCertificateSet.json +0 -65
  1074. package/skills/getting-metadata-api-context/data/metadata_api/Queue.json +0 -123
  1075. package/skills/getting-metadata-api-context/data/metadata_api/QueueRoutingConfig.json +0 -96
  1076. package/skills/getting-metadata-api-context/data/metadata_api/QuickAction.json +0 -175
  1077. package/skills/getting-metadata-api-context/data/metadata_api/QuoteSettings.json +0 -36
  1078. package/skills/getting-metadata-api-context/data/metadata_api/ReadResult.json +0 -16
  1079. package/skills/getting-metadata-api-context/data/metadata_api/RealTimeEventSettings.json +0 -45
  1080. package/skills/getting-metadata-api-context/data/metadata_api/RecommendationStrategy.json +0 -327
  1081. package/skills/getting-metadata-api-context/data/metadata_api/RecordActionDeployment.json +0 -184
  1082. package/skills/getting-metadata-api-context/data/metadata_api/RecordAggregationDefinition.json +0 -148
  1083. package/skills/getting-metadata-api-context/data/metadata_api/RecordAlertCategory.json +0 -42
  1084. package/skills/getting-metadata-api-context/data/metadata_api/RecordPageSettings.json +0 -40
  1085. package/skills/getting-metadata-api-context/data/metadata_api/RecordType.json +0 -68
  1086. package/skills/getting-metadata-api-context/data/metadata_api/RedirectWhitelistUrl.json +0 -26
  1087. package/skills/getting-metadata-api-context/data/metadata_api/ReferencedDashboard.json +0 -55
  1088. package/skills/getting-metadata-api-context/data/metadata_api/RegisteredExternalService.json +0 -72
  1089. package/skills/getting-metadata-api-context/data/metadata_api/RelatedRecordAssocCriteria.json +0 -75
  1090. package/skills/getting-metadata-api-context/data/metadata_api/RelationshipGraphDefinition.json +0 -63
  1091. package/skills/getting-metadata-api-context/data/metadata_api/RemoteSiteSetting.json +0 -51
  1092. package/skills/getting-metadata-api-context/data/metadata_api/Report.json +0 -715
  1093. package/skills/getting-metadata-api-context/data/metadata_api/ReportType.json +0 -118
  1094. package/skills/getting-metadata-api-context/data/metadata_api/RestrictionRule.json +0 -71
  1095. package/skills/getting-metadata-api-context/data/metadata_api/RetailExecutionSettings.json +0 -40
  1096. package/skills/getting-metadata-api-context/data/metadata_api/RetrievalSummaryDefinition.json +0 -76
  1097. package/skills/getting-metadata-api-context/data/metadata_api/RetrieveRequest.json +0 -35
  1098. package/skills/getting-metadata-api-context/data/metadata_api/RetrieveResult.json +0 -103
  1099. package/skills/getting-metadata-api-context/data/metadata_api/Role.json +0 -35
  1100. package/skills/getting-metadata-api-context/data/metadata_api/RoleOrTerritory.json +0 -57
  1101. package/skills/getting-metadata-api-context/data/metadata_api/SalesAgreementSettings.json +0 -180
  1102. package/skills/getting-metadata-api-context/data/metadata_api/SalesWorkQueueSettings.json +0 -40
  1103. package/skills/getting-metadata-api-context/data/metadata_api/SamlSsoConfig.json +0 -128
  1104. package/skills/getting-metadata-api-context/data/metadata_api/SandboxSettings.json +0 -32
  1105. package/skills/getting-metadata-api-context/data/metadata_api/SaveResult.json +0 -22
  1106. package/skills/getting-metadata-api-context/data/metadata_api/SchedulingObjective.json +0 -66
  1107. package/skills/getting-metadata-api-context/data/metadata_api/SchedulingRule.json +0 -66
  1108. package/skills/getting-metadata-api-context/data/metadata_api/SchemaSettings.json +0 -44
  1109. package/skills/getting-metadata-api-context/data/metadata_api/Scontrol.json +0 -72
  1110. package/skills/getting-metadata-api-context/data/metadata_api/SearchCustomization.json +0 -120
  1111. package/skills/getting-metadata-api-context/data/metadata_api/SearchLayouts.json +0 -64
  1112. package/skills/getting-metadata-api-context/data/metadata_api/SearchOrgWideObjectConfig.json +0 -61
  1113. package/skills/getting-metadata-api-context/data/metadata_api/SearchSettings.json +0 -155
  1114. package/skills/getting-metadata-api-context/data/metadata_api/SecuritySettings.json +0 -437
  1115. package/skills/getting-metadata-api-context/data/metadata_api/ServiceAISetupDefinition.json +0 -48
  1116. package/skills/getting-metadata-api-context/data/metadata_api/ServiceAISetupField.json +0 -58
  1117. package/skills/getting-metadata-api-context/data/metadata_api/ServiceChannel.json +0 -123
  1118. package/skills/getting-metadata-api-context/data/metadata_api/ServiceCloudVoiceSettings.json +0 -83
  1119. package/skills/getting-metadata-api-context/data/metadata_api/ServicePresenceStatus.json +0 -45
  1120. package/skills/getting-metadata-api-context/data/metadata_api/ServiceProcess.json +0 -141
  1121. package/skills/getting-metadata-api-context/data/metadata_api/ServiceSetupAssistantSettings.json +0 -32
  1122. package/skills/getting-metadata-api-context/data/metadata_api/SessionHeader.json +0 -17
  1123. package/skills/getting-metadata-api-context/data/metadata_api/SharedTo.json +0 -105
  1124. package/skills/getting-metadata-api-context/data/metadata_api/SharingBaseRule.json +0 -60
  1125. package/skills/getting-metadata-api-context/data/metadata_api/SharingReason.json +0 -34
  1126. package/skills/getting-metadata-api-context/data/metadata_api/SharingRecalculation.json +0 -29
  1127. package/skills/getting-metadata-api-context/data/metadata_api/SharingRules.json +0 -186
  1128. package/skills/getting-metadata-api-context/data/metadata_api/SharingSet.json +0 -78
  1129. package/skills/getting-metadata-api-context/data/metadata_api/SharingSettings.json +0 -92
  1130. package/skills/getting-metadata-api-context/data/metadata_api/SiteDotCom.json +0 -37
  1131. package/skills/getting-metadata-api-context/data/metadata_api/SiteSettings.json +0 -60
  1132. package/skills/getting-metadata-api-context/data/metadata_api/Skill.json +0 -69
  1133. package/skills/getting-metadata-api-context/data/metadata_api/SocialCustomerServiceSettings.json +0 -61
  1134. package/skills/getting-metadata-api-context/data/metadata_api/SocialProfileSettings.json +0 -35
  1135. package/skills/getting-metadata-api-context/data/metadata_api/SourceTrackingSettings.json +0 -32
  1136. package/skills/getting-metadata-api-context/data/metadata_api/StageAssignment.json +0 -113
  1137. package/skills/getting-metadata-api-context/data/metadata_api/StageDefinition.json +0 -237
  1138. package/skills/getting-metadata-api-context/data/metadata_api/StandardValueSet.json +0 -41
  1139. package/skills/getting-metadata-api-context/data/metadata_api/StandardValueSetTranslation.json +0 -32
  1140. package/skills/getting-metadata-api-context/data/metadata_api/StaticResource.json +0 -49
  1141. package/skills/getting-metadata-api-context/data/metadata_api/StreamingAppDataConnector.json +0 -51
  1142. package/skills/getting-metadata-api-context/data/metadata_api/SubscriptionManagementSettings.json +0 -56
  1143. package/skills/getting-metadata-api-context/data/metadata_api/SurveySettings.json +0 -44
  1144. package/skills/getting-metadata-api-context/data/metadata_api/SustainabilityUom.json +0 -61
  1145. package/skills/getting-metadata-api-context/data/metadata_api/SustnUomConversion.json +0 -58
  1146. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogCategory.json +0 -54
  1147. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogFulfillmentFlow.json +0 -99
  1148. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogItemDef.json +0 -202
  1149. package/skills/getting-metadata-api-context/data/metadata_api/SynonymDictionary.json +0 -56
  1150. package/skills/getting-metadata-api-context/data/metadata_api/Tag.json +0 -70
  1151. package/skills/getting-metadata-api-context/data/metadata_api/TagSet.json +0 -47
  1152. package/skills/getting-metadata-api-context/data/metadata_api/Territory.json +0 -39
  1153. package/skills/getting-metadata-api-context/data/metadata_api/Territory2.json +0 -112
  1154. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Model.json +0 -41
  1155. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Rule.json +0 -68
  1156. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Settings.json +0 -111
  1157. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Type.json +0 -42
  1158. package/skills/getting-metadata-api-context/data/metadata_api/TimeSheetTemplate.json +0 -75
  1159. package/skills/getting-metadata-api-context/data/metadata_api/TimelineObjectDefinition.json +0 -48
  1160. package/skills/getting-metadata-api-context/data/metadata_api/TopicsForObjects.json +0 -38
  1161. package/skills/getting-metadata-api-context/data/metadata_api/TrailheadSettings.json +0 -40
  1162. package/skills/getting-metadata-api-context/data/metadata_api/TransactionSecurityPolicy.json +0 -127
  1163. package/skills/getting-metadata-api-context/data/metadata_api/Translations.json +0 -976
  1164. package/skills/getting-metadata-api-context/data/metadata_api/TrialOrgSettings.json +0 -32
  1165. package/skills/getting-metadata-api-context/data/metadata_api/UIBundle.json +0 -54
  1166. package/skills/getting-metadata-api-context/data/metadata_api/UIObjectRelationConfig.json +0 -101
  1167. package/skills/getting-metadata-api-context/data/metadata_api/UiFormatSpecificationSet.json +0 -103
  1168. package/skills/getting-metadata-api-context/data/metadata_api/UiPreviewMessageTabDef.json +0 -70
  1169. package/skills/getting-metadata-api-context/data/metadata_api/UpsertResult.json +0 -25
  1170. package/skills/getting-metadata-api-context/data/metadata_api/UserAccessPolicy.json +0 -120
  1171. package/skills/getting-metadata-api-context/data/metadata_api/UserAuthCertificate.json +0 -57
  1172. package/skills/getting-metadata-api-context/data/metadata_api/UserCriteria.json +0 -48
  1173. package/skills/getting-metadata-api-context/data/metadata_api/UserEngagementSettings.json +0 -136
  1174. package/skills/getting-metadata-api-context/data/metadata_api/UserInterfaceSettings.json +0 -96
  1175. package/skills/getting-metadata-api-context/data/metadata_api/UserManagementSettings.json +0 -108
  1176. package/skills/getting-metadata-api-context/data/metadata_api/UserProfileSearchScope.json +0 -8
  1177. package/skills/getting-metadata-api-context/data/metadata_api/UserProvisioningConfig.json +0 -72
  1178. package/skills/getting-metadata-api-context/data/metadata_api/ValidationRule.json +0 -51
  1179. package/skills/getting-metadata-api-context/data/metadata_api/VirtualVisitConfig.json +0 -97
  1180. package/skills/getting-metadata-api-context/data/metadata_api/VoiceSettings.json +0 -68
  1181. package/skills/getting-metadata-api-context/data/metadata_api/WarrantyLifeCycleMgmtSettings.json +0 -32
  1182. package/skills/getting-metadata-api-context/data/metadata_api/WaveAnalyticAssetCollection.json +0 -73
  1183. package/skills/getting-metadata-api-context/data/metadata_api/WaveApplication.json +0 -56
  1184. package/skills/getting-metadata-api-context/data/metadata_api/WaveComponent.json +0 -46
  1185. package/skills/getting-metadata-api-context/data/metadata_api/WaveDashboard.json +0 -50
  1186. package/skills/getting-metadata-api-context/data/metadata_api/WaveDataflow.json +0 -45
  1187. package/skills/getting-metadata-api-context/data/metadata_api/WaveDataset.json +0 -50
  1188. package/skills/getting-metadata-api-context/data/metadata_api/WaveLens.json +0 -59
  1189. package/skills/getting-metadata-api-context/data/metadata_api/WaveRecipe.json +0 -58
  1190. package/skills/getting-metadata-api-context/data/metadata_api/WaveTemplateBundle.json +0 -37
  1191. package/skills/getting-metadata-api-context/data/metadata_api/WaveXmd.json +0 -567
  1192. package/skills/getting-metadata-api-context/data/metadata_api/WebLink.json +0 -117
  1193. package/skills/getting-metadata-api-context/data/metadata_api/WebStoreBundle.json +0 -10
  1194. package/skills/getting-metadata-api-context/data/metadata_api/WebStoreTemplate.json +0 -166
  1195. package/skills/getting-metadata-api-context/data/metadata_api/WorkDotComSettings.json +0 -76
  1196. package/skills/getting-metadata-api-context/data/metadata_api/WorkSkillRouting.json +0 -76
  1197. package/skills/getting-metadata-api-context/data/metadata_api/Workflow.json +0 -415
  1198. package/skills/getting-metadata-api-context/data/metadata_api/WorkforceEngagementSettings.json +0 -56
  1199. package/skills/getting-metadata-api-context/examples/README.md +0 -169
  1200. package/skills/getting-metadata-api-context/examples/bash_section_loading.sh +0 -142
  1201. package/skills/getting-metadata-api-context/examples/javascript_section_loading.js +0 -162
  1202. package/skills/getting-metadata-api-context/examples/python_section_loading.py +0 -112
  1203. package/skills/getting-metadata-api-context/references/metadata_index_table.md +0 -654
  1204. package/skills/getting-metadata-api-context/references/usage_guide.md +0 -420
  1205. package/skills/handling-sf-data/CREDITS.md +0 -5
  1206. package/skills/handling-sf-data/README.md +0 -112
  1207. package/skills/handling-sf-data/SKILL.md +0 -234
  1208. package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +0 -293
  1209. package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +0 -208
  1210. package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +0 -219
  1211. package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +0 -324
  1212. package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +0 -319
  1213. package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +0 -240
  1214. package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +0 -311
  1215. package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +0 -266
  1216. package/skills/handling-sf-data/assets/csv/account-import.csv +0 -11
  1217. package/skills/handling-sf-data/assets/csv/contact-import.csv +0 -11
  1218. package/skills/handling-sf-data/assets/csv/custom-object-import.csv +0 -11
  1219. package/skills/handling-sf-data/assets/csv/opportunity-import.csv +0 -11
  1220. package/skills/handling-sf-data/assets/factories/account-factory.apex +0 -165
  1221. package/skills/handling-sf-data/assets/factories/case-factory.apex +0 -237
  1222. package/skills/handling-sf-data/assets/factories/contact-factory.apex +0 -168
  1223. package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +0 -260
  1224. package/skills/handling-sf-data/assets/factories/event-factory.apex +0 -275
  1225. package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +0 -372
  1226. package/skills/handling-sf-data/assets/factories/lead-factory.apex +0 -190
  1227. package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +0 -206
  1228. package/skills/handling-sf-data/assets/factories/task-factory.apex +0 -246
  1229. package/skills/handling-sf-data/assets/factories/user-factory.apex +0 -278
  1230. package/skills/handling-sf-data/assets/json/account-contact-tree.json +0 -130
  1231. package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +0 -110
  1232. package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +0 -188
  1233. package/skills/handling-sf-data/assets/soql/aggregate.soql +0 -226
  1234. package/skills/handling-sf-data/assets/soql/child-to-parent.soql +0 -162
  1235. package/skills/handling-sf-data/assets/soql/parent-to-child.soql +0 -153
  1236. package/skills/handling-sf-data/assets/soql/polymorphic.soql +0 -198
  1237. package/skills/handling-sf-data/assets/soql/subquery.soql +0 -287
  1238. package/skills/handling-sf-data/references/anonymous-apex-guide.md +0 -98
  1239. package/skills/handling-sf-data/references/bulk-operations-guide.md +0 -94
  1240. package/skills/handling-sf-data/references/bulk-testing-example.md +0 -194
  1241. package/skills/handling-sf-data/references/cleanup-rollback-example.md +0 -322
  1242. package/skills/handling-sf-data/references/cleanup-rollback-guide.md +0 -84
  1243. package/skills/handling-sf-data/references/crud-workflow-example.md +0 -183
  1244. package/skills/handling-sf-data/references/governor-limits-reference.md +0 -74
  1245. package/skills/handling-sf-data/references/orchestration.md +0 -174
  1246. package/skills/handling-sf-data/references/relationship-query-examples.md +0 -249
  1247. package/skills/handling-sf-data/references/sf-cli-data-commands.md +0 -158
  1248. package/skills/handling-sf-data/references/soql-relationship-guide.md +0 -84
  1249. package/skills/handling-sf-data/references/test-data-best-practices.md +0 -104
  1250. package/skills/handling-sf-data/references/test-data-factory-usage.md +0 -290
  1251. package/skills/handling-sf-data/references/test-data-patterns.md +0 -98
  1252. package/skills/handling-sf-data/scripts/soql_validator.py +0 -292
  1253. package/skills/handling-sf-data/scripts/validate_data_operation.py +0 -379
  1254. package/skills/harmonizing-datacloud/CREDITS.md +0 -3
  1255. package/skills/harmonizing-datacloud/README.md +0 -31
  1256. package/skills/harmonizing-datacloud/SKILL.md +0 -116
  1257. package/skills/implementing-ui-bundle-agentforce-conversation-client/SKILL.md +0 -280
  1258. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/agent-id-resolution.md +0 -46
  1259. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/constraints.md +0 -134
  1260. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/examples.md +0 -132
  1261. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/style-tokens.md +0 -260
  1262. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/troubleshooting.md +0 -57
  1263. package/skills/implementing-ui-bundle-file-upload/SKILL.md +0 -398
  1264. package/skills/integrating-b2b-commerce-open-code-components/SKILL.md +0 -165
  1265. package/skills/investigating-agentforce-architecture/README.md +0 -156
  1266. package/skills/investigating-agentforce-architecture/SKILL.md +0 -230
  1267. package/skills/investigating-agentforce-architecture/assets/cli/describe_sobject.yaml +0 -16
  1268. package/skills/investigating-agentforce-architecture/assets/cli/describe_tooling_sobject.yaml +0 -17
  1269. package/skills/investigating-agentforce-architecture/assets/cli/list_metadata_genaiprompttemplate.yaml +0 -17
  1270. package/skills/investigating-agentforce-architecture/assets/cli/org_display.yaml +0 -15
  1271. package/skills/investigating-agentforce-architecture/assets/cli/retrieve_genai_plugin.yaml +0 -18
  1272. package/skills/investigating-agentforce-architecture/assets/cli/show_access_token.yaml +0 -27
  1273. package/skills/investigating-agentforce-architecture/assets/mermaid/action_tree.mmd +0 -20
  1274. package/skills/investigating-agentforce-architecture/assets/mermaid/data_flow.mmd +0 -19
  1275. package/skills/investigating-agentforce-architecture/assets/mermaid/dependency_graph.mmd +0 -19
  1276. package/skills/investigating-agentforce-architecture/assets/mermaid/invocation_sequence.mmd +0 -20
  1277. package/skills/investigating-agentforce-architecture/assets/mermaid/planner_state.mmd +0 -18
  1278. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_ids.soql +0 -3
  1279. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_names.soql +0 -3
  1280. package/skills/investigating-agentforce-architecture/assets/soql/bot_definition_details.soql +0 -3
  1281. package/skills/investigating-agentforce-architecture/assets/soql/bot_version_lookup.soql +0 -4
  1282. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_by_ids.soql +0 -3
  1283. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_ids_by_names.soql +0 -3
  1284. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_view_by_durable_ids.soql +0 -4
  1285. package/skills/investigating-agentforce-architecture/assets/soql/flow_metadata_by_id.soql +0 -3
  1286. package/skills/investigating-agentforce-architecture/assets/soql/functions_by_plugins.soql +0 -5
  1287. package/skills/investigating-agentforce-architecture/assets/soql/planner_attrs_by_parent_ids.soql +0 -3
  1288. package/skills/investigating-agentforce-architecture/assets/soql/planner_bundle_functions.soql +0 -3
  1289. package/skills/investigating-agentforce-architecture/assets/soql/planner_definition_by_agent_chain.soql +0 -3
  1290. package/skills/investigating-agentforce-architecture/assets/soql/plugin_functions_by_plugin_ids.soql +0 -3
  1291. package/skills/investigating-agentforce-architecture/assets/soql/plugin_instructions_by_plugin_ids.soql +0 -3
  1292. package/skills/investigating-agentforce-architecture/assets/soql/plugins_by_planner.soql +0 -4
  1293. package/skills/investigating-agentforce-architecture/references/architecture_sections.md +0 -243
  1294. package/skills/investigating-agentforce-architecture/references/contract.json +0 -244
  1295. package/skills/investigating-agentforce-architecture/references/soql_fields.md +0 -512
  1296. package/skills/investigating-agentforce-architecture/scripts/_shared/__init__.py +0 -1
  1297. package/skills/investigating-agentforce-architecture/scripts/_shared/fs_guard.py +0 -329
  1298. package/skills/investigating-agentforce-architecture/scripts/_shared/paths.py +0 -110
  1299. package/skills/investigating-agentforce-architecture/scripts/_shared/runtime.py +0 -59
  1300. package/skills/investigating-agentforce-architecture/scripts/_shared/sql.py +0 -10
  1301. package/skills/investigating-agentforce-architecture/scripts/cache_check.py +0 -234
  1302. package/skills/investigating-agentforce-architecture/scripts/config.py +0 -131
  1303. package/skills/investigating-agentforce-architecture/scripts/fetch_soql.py +0 -689
  1304. package/skills/investigating-agentforce-architecture/scripts/finalize.py +0 -295
  1305. package/skills/investigating-agentforce-architecture/scripts/main.py +0 -2835
  1306. package/skills/investigating-agentforce-architecture/scripts/metadata_listing.py +0 -265
  1307. package/skills/investigating-agentforce-architecture/scripts/parallel_retrieve.py +0 -69
  1308. package/skills/investigating-agentforce-architecture/scripts/parse_bundle.py +0 -215
  1309. package/skills/investigating-agentforce-architecture/scripts/parse_wave.py +0 -845
  1310. package/skills/investigating-agentforce-architecture/scripts/probe_channels.py +0 -302
  1311. package/skills/investigating-agentforce-architecture/scripts/render_architecture.py +0 -1043
  1312. package/skills/investigating-agentforce-architecture/scripts/resolve_bot.py +0 -255
  1313. package/skills/investigating-agentforce-architecture/scripts/resolve_invocation_target.py +0 -130
  1314. package/skills/investigating-agentforce-architecture/scripts/rest_client.py +0 -763
  1315. package/skills/investigating-agentforce-architecture/scripts/retrieve_planner.py +0 -13
  1316. package/skills/investigating-agentforce-architecture/scripts/sf_cli.py +0 -242
  1317. package/skills/investigating-agentforce-architecture/scripts/soql_loader.py +0 -253
  1318. package/skills/investigating-agentforce-architecture/scripts/summarize_tree.py +0 -143
  1319. package/skills/investigating-agentforce-architecture/scripts/tests/__init__.py +0 -0
  1320. package/skills/investigating-agentforce-architecture/scripts/tests/_bootstrap.py +0 -23
  1321. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/__init__.py +0 -0
  1322. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/genai_payloads.py +0 -400
  1323. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check.py +0 -307
  1324. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check_main.py +0 -283
  1325. package/skills/investigating-agentforce-architecture/scripts/tests/test_config.py +0 -115
  1326. package/skills/investigating-agentforce-architecture/scripts/tests/test_end_to_end_fixture.py +0 -651
  1327. package/skills/investigating-agentforce-architecture/scripts/tests/test_finalize.py +0 -278
  1328. package/skills/investigating-agentforce-architecture/scripts/tests/test_flow_children_inflation.py +0 -582
  1329. package/skills/investigating-agentforce-architecture/scripts/tests/test_fs_guard.py +0 -113
  1330. package/skills/investigating-agentforce-architecture/scripts/tests/test_iterative_wave_b.py +0 -478
  1331. package/skills/investigating-agentforce-architecture/scripts/tests/test_main_pipeline.py +0 -3359
  1332. package/skills/investigating-agentforce-architecture/scripts/tests/test_parallel_retrieve.py +0 -131
  1333. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_bundle.py +0 -400
  1334. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave.py +0 -644
  1335. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_classifiers.py +0 -224
  1336. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_helpers.py +0 -380
  1337. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_main.py +0 -397
  1338. package/skills/investigating-agentforce-architecture/scripts/tests/test_per_branch_visited.py +0 -244
  1339. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_channels.py +0 -359
  1340. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_cli_recipes.py +0 -185
  1341. package/skills/investigating-agentforce-architecture/scripts/tests/test_render_architecture.py +0 -810
  1342. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_bot.py +0 -203
  1343. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_creds.py +0 -157
  1344. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_invocation_target.py +0 -145
  1345. package/skills/investigating-agentforce-architecture/scripts/tests/test_rest_client.py +0 -1253
  1346. package/skills/investigating-agentforce-architecture/scripts/tests/test_runtime_override.py +0 -100
  1347. package/skills/investigating-agentforce-architecture/scripts/tests/test_sf_cli.py +0 -261
  1348. package/skills/investigating-agentforce-architecture/scripts/tests/test_signature_stamping.py +0 -466
  1349. package/skills/investigating-agentforce-architecture/scripts/tests/test_soql_loader.py +0 -501
  1350. package/skills/investigating-agentforce-architecture/scripts/tests/test_summarize_tree.py +0 -241
  1351. package/skills/investigating-agentforce-architecture/scripts/tests/test_write_emit_ctx.py +0 -480
  1352. package/skills/investigating-agentforce-architecture/tools/emit_env.py +0 -157
  1353. package/skills/investigating-agentforce-architecture/tools/emit_result.py +0 -262
  1354. package/skills/investigating-agentforce-architecture/tools/sanitize.py +0 -33
  1355. package/skills/investigating-agentforce-architecture/tools/write_emit_ctx.py +0 -332
  1356. package/skills/investigating-agentforce-d360/README.md +0 -123
  1357. package/skills/investigating-agentforce-d360/SKILL.md +0 -163
  1358. package/skills/investigating-agentforce-d360/assets/dc/app_generation.sql +0 -51
  1359. package/skills/investigating-agentforce-d360/assets/dc/content_category.sql +0 -44
  1360. package/skills/investigating-agentforce-d360/assets/dc/content_quality.sql +0 -41
  1361. package/skills/investigating-agentforce-d360/assets/dc/discover_sessions.sql +0 -36
  1362. package/skills/investigating-agentforce-d360/assets/dc/feedback.sql +0 -47
  1363. package/skills/investigating-agentforce-d360/assets/dc/feedback_details.sql +0 -38
  1364. package/skills/investigating-agentforce-d360/assets/dc/gateway_records.sql +0 -45
  1365. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_llm.sql +0 -50
  1366. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_metadata.sql +0 -44
  1367. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_tags.sql +0 -42
  1368. package/skills/investigating-agentforce-d360/assets/dc/gateway_requests.sql +0 -89
  1369. package/skills/investigating-agentforce-d360/assets/dc/gateway_responses.sql +0 -43
  1370. package/skills/investigating-agentforce-d360/assets/dc/generations.sql +0 -52
  1371. package/skills/investigating-agentforce-d360/assets/dc/interactions.sql +0 -53
  1372. package/skills/investigating-agentforce-d360/assets/dc/messages.sql +0 -53
  1373. package/skills/investigating-agentforce-d360/assets/dc/messaging_session.sql +0 -37
  1374. package/skills/investigating-agentforce-d360/assets/dc/moment_interactions.sql +0 -34
  1375. package/skills/investigating-agentforce-d360/assets/dc/moments.sql +0 -39
  1376. package/skills/investigating-agentforce-d360/assets/dc/participants.sql +0 -48
  1377. package/skills/investigating-agentforce-d360/assets/dc/sessions.sql +0 -78
  1378. package/skills/investigating-agentforce-d360/assets/dc/steps.sql +0 -64
  1379. package/skills/investigating-agentforce-d360/assets/dc/tag_associations.sql +0 -46
  1380. package/skills/investigating-agentforce-d360/assets/dc/tag_definition_associations.sql +0 -37
  1381. package/skills/investigating-agentforce-d360/assets/dc/tag_definitions.sql +0 -50
  1382. package/skills/investigating-agentforce-d360/assets/dc/tags.sql +0 -37
  1383. package/skills/investigating-agentforce-d360/assets/dc/telemetry_spans.sql +0 -55
  1384. package/skills/investigating-agentforce-d360/references/artifacts.md +0 -50
  1385. package/skills/investigating-agentforce-d360/references/dc_dmo_fields.md +0 -823
  1386. package/skills/investigating-agentforce-d360/references/dc_pipeline_contract.md +0 -608
  1387. package/skills/investigating-agentforce-d360/scripts/_shared/__init__.py +0 -2
  1388. package/skills/investigating-agentforce-d360/scripts/_shared/cli_override.py +0 -98
  1389. package/skills/investigating-agentforce-d360/scripts/_shared/fs_guard.py +0 -334
  1390. package/skills/investigating-agentforce-d360/scripts/_shared/paths.py +0 -155
  1391. package/skills/investigating-agentforce-d360/scripts/_shared/runtime.py +0 -59
  1392. package/skills/investigating-agentforce-d360/scripts/_shared/sql.py +0 -14
  1393. package/skills/investigating-agentforce-d360/scripts/assemble_dc.py +0 -1624
  1394. package/skills/investigating-agentforce-d360/scripts/config.py +0 -45
  1395. package/skills/investigating-agentforce-d360/scripts/dc.py +0 -188
  1396. package/skills/investigating-agentforce-d360/scripts/discover_sessions.py +0 -556
  1397. package/skills/investigating-agentforce-d360/scripts/fetch_dc.py +0 -1045
  1398. package/skills/investigating-agentforce-d360/scripts/render_dc.py +0 -1750
  1399. package/skills/investigating-agentforce-d360/scripts/resolve_session.py +0 -264
  1400. package/skills/investigating-agentforce-d360/scripts/storage.py +0 -92
  1401. package/skills/investigating-agentforce-d360/scripts/tests/__init__.py +0 -0
  1402. package/skills/investigating-agentforce-d360/scripts/tests/_bootstrap.py +0 -15
  1403. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/__init__.py +0 -0
  1404. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/synthetic_session.py +0 -424
  1405. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_bootstrap_and_mode.py +0 -115
  1406. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct.py +0 -220
  1407. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct_integration.py +0 -158
  1408. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_helpers.py +0 -287
  1409. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_integration.py +0 -247
  1410. package/skills/investigating-agentforce-d360/scripts/tests/test_dc_and_resolve_session.py +0 -433
  1411. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions.py +0 -458
  1412. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions_grep_ci.py +0 -193
  1413. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_helpers.py +0 -266
  1414. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_identity.py +0 -528
  1415. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_main.py +0 -251
  1416. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall.py +0 -229
  1417. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall_full.py +0 -283
  1418. package/skills/investigating-agentforce-d360/scripts/tests/test_identity_coherence.py +0 -327
  1419. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_branches.py +0 -256
  1420. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_gateway_direct.py +0 -130
  1421. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_helpers.py +0 -291
  1422. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_integration.py +0 -220
  1423. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_planner_llm_calls.py +0 -284
  1424. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_show_prompts_gating.py +0 -215
  1425. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_from_disk.py +0 -100
  1426. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_session_main.py +0 -149
  1427. package/skills/investigating-agentforce-d360/scripts/tests/test_runtime_override.py +0 -104
  1428. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape.py +0 -95
  1429. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape_dropped_by_stdm.py +0 -85
  1430. package/skills/managing-cdc-enablement/SKILL.md +0 -164
  1431. package/skills/managing-cdc-enablement/assets/PlatformEventChannel-template.xml +0 -5
  1432. package/skills/managing-cdc-enablement/assets/PlatformEventChannelMember-template.xml +0 -11
  1433. package/skills/managing-cdc-enablement/references/deploy-troubleshooting.md +0 -73
  1434. package/skills/managing-cdc-enablement/references/filter-expressions.md +0 -93
  1435. package/skills/managing-managed-event-subscription/SKILL.md +0 -152
  1436. package/skills/managing-managed-event-subscription/assets/managed-event-subscription-template.xml +0 -20
  1437. package/skills/managing-managed-event-subscription/references/delete-guide.md +0 -57
  1438. package/skills/managing-managed-event-subscription/references/topic-name-formats.md +0 -26
  1439. package/skills/managing-managed-event-subscription/references/update-constraints.md +0 -30
  1440. package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +0 -14
  1441. package/skills/modeling-omnistudio-epc-catalog/README.md +0 -89
  1442. package/skills/modeling-omnistudio-epc-catalog/SKILL.md +0 -394
  1443. package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +0 -402
  1444. package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +0 -43
  1445. package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +0 -8
  1446. package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +0 -233
  1447. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +0 -514
  1448. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +0 -21
  1449. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +0 -649
  1450. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +0 -200
  1451. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +0 -138
  1452. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +0 -54
  1453. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +0 -266
  1454. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +0 -23
  1455. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +0 -54
  1456. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +0 -35
  1457. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +0 -34
  1458. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +0 -21
  1459. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +0 -410
  1460. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +0 -535
  1461. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +0 -35
  1462. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +0 -138
  1463. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +0 -28
  1464. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +0 -23
  1465. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +0 -220
  1466. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +0 -35
  1467. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +0 -414
  1468. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +0 -382
  1469. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +0 -565
  1470. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +0 -35
  1471. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +0 -104
  1472. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +0 -28
  1473. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +0 -13
  1474. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +0 -106
  1475. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +0 -35
  1476. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +0 -72
  1477. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +0 -142
  1478. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +0 -377
  1479. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +0 -35
  1480. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +0 -36
  1481. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +0 -8
  1482. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +0 -54
  1483. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +0 -35
  1484. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +0 -34
  1485. package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +0 -138
  1486. package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +0 -54
  1487. package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +0 -134
  1488. package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +0 -29
  1489. package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +0 -158
  1490. package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +0 -35
  1491. package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +0 -338
  1492. package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +0 -527
  1493. package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +0 -1
  1494. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +0 -95
  1495. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +0 -1
  1496. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +0 -214
  1497. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +0 -28
  1498. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +0 -98
  1499. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +0 -22
  1500. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +0 -1
  1501. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +0 -13
  1502. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +0 -35
  1503. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +0 -28
  1504. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +0 -110
  1505. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +0 -58
  1506. package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +0 -90
  1507. package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +0 -80
  1508. package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +0 -57
  1509. package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +0 -19
  1510. package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +0 -18
  1511. package/skills/observing-agentforce/SKILL.md +0 -366
  1512. package/skills/observing-agentforce/apex/AgentforceOptimizeService.cls +0 -1262
  1513. package/skills/observing-agentforce/apex/AgentforceOptimizeService.cls-meta.xml +0 -5
  1514. package/skills/observing-agentforce/references/improve-reference.md +0 -359
  1515. package/skills/observing-agentforce/references/issue-classification.md +0 -220
  1516. package/skills/observing-agentforce/references/reproduce-reference.md +0 -131
  1517. package/skills/observing-agentforce/references/stdm-queries.md +0 -373
  1518. package/skills/observing-agentforce/references/stdm-schema.md +0 -189
  1519. package/skills/orchestrating-datacloud/CREDITS.md +0 -15
  1520. package/skills/orchestrating-datacloud/README.md +0 -127
  1521. package/skills/orchestrating-datacloud/SKILL.md +0 -235
  1522. package/skills/orchestrating-datacloud/UPSTREAM.md +0 -45
  1523. package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +0 -5
  1524. package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +0 -7
  1525. package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +0 -7
  1526. package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +0 -5
  1527. package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +0 -5
  1528. package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +0 -21
  1529. package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +0 -55
  1530. package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +0 -17
  1531. package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +0 -30
  1532. package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +0 -14
  1533. package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +0 -12
  1534. package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +0 -9
  1535. package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +0 -16
  1536. package/skills/orchestrating-datacloud/references/feature-readiness.md +0 -157
  1537. package/skills/orchestrating-datacloud/references/plugin-setup.md +0 -138
  1538. package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +0 -53
  1539. package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +0 -511
  1540. package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +0 -68
  1541. package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +0 -58
  1542. package/skills/platform-agentexchange-partner-offers-enable/SKILL.md +0 -111
  1543. package/skills/platform-agentexchange-partner-offers-enable/assets/org-pref-template.md +0 -27
  1544. package/skills/platform-agentexchange-partner-offers-enable/examples/org-preference-settings.xml +0 -4
  1545. package/skills/preparing-datacloud/CREDITS.md +0 -7
  1546. package/skills/preparing-datacloud/README.md +0 -51
  1547. package/skills/preparing-datacloud/SKILL.md +0 -190
  1548. package/skills/preparing-datacloud/examples/ingestion-api/.env.example +0 -8
  1549. package/skills/preparing-datacloud/examples/ingestion-api/README.md +0 -48
  1550. package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +0 -144
  1551. package/skills/querying-soql/CREDITS.md +0 -21
  1552. package/skills/querying-soql/README.md +0 -41
  1553. package/skills/querying-soql/SKILL.md +0 -142
  1554. package/skills/querying-soql/assets/aggregate-queries.soql +0 -242
  1555. package/skills/querying-soql/assets/basic-queries.soql +0 -188
  1556. package/skills/querying-soql/assets/bulkified-query-pattern.cls +0 -280
  1557. package/skills/querying-soql/assets/optimization-patterns.soql +0 -259
  1558. package/skills/querying-soql/assets/relationship-queries.soql +0 -203
  1559. package/skills/querying-soql/assets/selector-class.cls +0 -219
  1560. package/skills/querying-soql/references/anti-patterns.md +0 -348
  1561. package/skills/querying-soql/references/cli-commands.md +0 -358
  1562. package/skills/querying-soql/references/field-coverage-rules.md +0 -514
  1563. package/skills/querying-soql/references/query-optimization.md +0 -142
  1564. package/skills/querying-soql/references/selector-patterns.md +0 -479
  1565. package/skills/querying-soql/references/soql-reference.md +0 -227
  1566. package/skills/querying-soql/references/soql-syntax-reference.md +0 -208
  1567. package/skills/querying-soql/scripts/post-tool-validate.py +0 -322
  1568. package/skills/retrieving-datacloud/CREDITS.md +0 -7
  1569. package/skills/retrieving-datacloud/README.md +0 -44
  1570. package/skills/retrieving-datacloud/SKILL.md +0 -119
  1571. package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +0 -44
  1572. package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +0 -43
  1573. package/skills/reviewing-lwc-mobile-offline/SKILL.md +0 -167
  1574. package/skills/reviewing-lwc-mobile-offline/references/grounding.md +0 -7
  1575. package/skills/reviewing-lwc-mobile-offline/references/inline-graphql.md +0 -43
  1576. package/skills/reviewing-lwc-mobile-offline/references/komaci-eslint.md +0 -125
  1577. package/skills/reviewing-lwc-mobile-offline/references/lwc-if.md +0 -78
  1578. package/skills/reviewing-lwc-mobile-offline/scripts/komaci.config.mjs +0 -18
  1579. package/skills/reviewing-lwc-mobile-offline/scripts/package.json +0 -10
  1580. package/skills/reviewing-lwc-mobile-offline/scripts/run-komaci.sh +0 -69
  1581. package/skills/running-apex-tests/CREDITS.md +0 -22
  1582. package/skills/running-apex-tests/README.md +0 -94
  1583. package/skills/running-apex-tests/SKILL.md +0 -157
  1584. package/skills/running-apex-tests/assets/basic-test.cls +0 -169
  1585. package/skills/running-apex-tests/assets/bulk-test.cls +0 -255
  1586. package/skills/running-apex-tests/assets/dml-mock.cls +0 -339
  1587. package/skills/running-apex-tests/assets/mock-callout-test.cls +0 -353
  1588. package/skills/running-apex-tests/assets/stub-provider-example.cls +0 -364
  1589. package/skills/running-apex-tests/assets/test-data-factory.cls +0 -328
  1590. package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +0 -364
  1591. package/skills/running-apex-tests/references/cli-commands.md +0 -289
  1592. package/skills/running-apex-tests/references/mocking-patterns.md +0 -500
  1593. package/skills/running-apex-tests/references/performance-optimization.md +0 -283
  1594. package/skills/running-apex-tests/references/test-fix-loop.md +0 -49
  1595. package/skills/running-apex-tests/references/test-patterns.md +0 -154
  1596. package/skills/running-apex-tests/references/testing-best-practices.md +0 -509
  1597. package/skills/running-code-analyzer/SKILL.md +0 -495
  1598. package/skills/running-code-analyzer/examples/README.md +0 -38
  1599. package/skills/running-code-analyzer/examples/basic-scan-output.json +0 -92
  1600. package/skills/running-code-analyzer/examples/command-variations.md +0 -333
  1601. package/skills/running-code-analyzer/examples/fix-application-before-after.md +0 -142
  1602. package/skills/running-code-analyzer/examples/large-scan-output.json +0 -67
  1603. package/skills/running-code-analyzer/examples/security-focused-output.json +0 -95
  1604. package/skills/running-code-analyzer/references/command-examples.md +0 -27
  1605. package/skills/running-code-analyzer/references/engine-reference.md +0 -34
  1606. package/skills/running-code-analyzer/references/error-handling.md +0 -29
  1607. package/skills/running-code-analyzer/references/flag-reference.md +0 -96
  1608. package/skills/running-code-analyzer/references/post-scan-workflows.md +0 -286
  1609. package/skills/running-code-analyzer/references/quick-start.md +0 -28
  1610. package/skills/running-code-analyzer/references/special-behaviors.md +0 -83
  1611. package/skills/running-code-analyzer/references/vendor-file-handling.md +0 -239
  1612. package/skills/running-code-analyzer/scripts/apply-fixes.js +0 -86
  1613. package/skills/running-code-analyzer/scripts/describe-rule.js +0 -382
  1614. package/skills/running-code-analyzer/scripts/discover-fixes.js +0 -34
  1615. package/skills/running-code-analyzer/scripts/filter-violations.js +0 -405
  1616. package/skills/running-code-analyzer/scripts/list-rules.js +0 -260
  1617. package/skills/running-code-analyzer/scripts/parse-results.js +0 -59
  1618. package/skills/running-code-analyzer/scripts/query-results.js +0 -230
  1619. package/skills/running-code-analyzer/scripts/summarize-fixes.js +0 -32
  1620. package/skills/running-code-analyzer/scripts/verify-execution.sh +0 -28
  1621. package/skills/searching-media/SKILL.md +0 -348
  1622. package/skills/segmenting-datacloud/CREDITS.md +0 -3
  1623. package/skills/segmenting-datacloud/README.md +0 -36
  1624. package/skills/segmenting-datacloud/SKILL.md +0 -114
  1625. package/skills/switching-org/SKILL.md +0 -28
  1626. package/skills/testing-agentforce/SKILL.md +0 -333
  1627. package/skills/testing-agentforce/assets/basic-test-spec.yaml +0 -63
  1628. package/skills/testing-agentforce/assets/guardrail-test-spec.yaml +0 -105
  1629. package/skills/testing-agentforce/assets/standard-test-spec.yaml +0 -127
  1630. package/skills/testing-agentforce/references/action-execution.md +0 -241
  1631. package/skills/testing-agentforce/references/batch-testing.md +0 -274
  1632. package/skills/testing-agentforce/references/preview-testing.md +0 -353
  1633. package/skills/testing-agentforce/references/test-report-format.md +0 -160
  1634. package/skills/testing-agentforce/references/troubleshooting.md +0 -73
  1635. package/skills/uplifting-components-to-slds2/SKILL.md +0 -239
  1636. package/skills/uplifting-components-to-slds2/references/color-hooks-decision-guide.md +0 -459
  1637. package/skills/uplifting-components-to-slds2/references/common-patterns.md +0 -87
  1638. package/skills/uplifting-components-to-slds2/references/examples.md +0 -461
  1639. package/skills/uplifting-components-to-slds2/references/migration-checklist.md +0 -67
  1640. package/skills/uplifting-components-to-slds2/references/non-color-hooks-decision-guide.md +0 -333
  1641. package/skills/uplifting-components-to-slds2/references/rule-lwc-token-to-slds-hook.md +0 -135
  1642. package/skills/uplifting-components-to-slds2/references/rule-no-deprecated-tokens-slds1.md +0 -211
  1643. package/skills/uplifting-components-to-slds2/references/rule-no-hardcoded-values.md +0 -160
  1644. package/skills/uplifting-components-to-slds2/references/rule-no-slds-class-overrides.md +0 -126
  1645. package/skills/using-mobile-native-capabilities/SKILL.md +0 -181
  1646. package/skills/using-mobile-native-capabilities/references/app-review.md +0 -68
  1647. package/skills/using-mobile-native-capabilities/references/ar-space-capture.md +0 -125
  1648. package/skills/using-mobile-native-capabilities/references/barcode-scanner.md +0 -219
  1649. package/skills/using-mobile-native-capabilities/references/base-capability.md +0 -22
  1650. package/skills/using-mobile-native-capabilities/references/biometrics.md +0 -90
  1651. package/skills/using-mobile-native-capabilities/references/calendar.md +0 -213
  1652. package/skills/using-mobile-native-capabilities/references/contacts.md +0 -232
  1653. package/skills/using-mobile-native-capabilities/references/document-scanner.md +0 -342
  1654. package/skills/using-mobile-native-capabilities/references/geofencing.md +0 -123
  1655. package/skills/using-mobile-native-capabilities/references/location.md +0 -158
  1656. package/skills/using-mobile-native-capabilities/references/mobile-capabilities.md +0 -30
  1657. package/skills/using-mobile-native-capabilities/references/nfc.md +0 -181
  1658. package/skills/using-mobile-native-capabilities/references/payments.md +0 -95
  1659. package/skills/using-salesforce-archive/SKILL.md +0 -121
  1660. package/skills/using-salesforce-archive/examples/monitor-failed-jobs.md +0 -47
  1661. package/skills/using-salesforce-archive/references/archive-activity-entity.md +0 -59
  1662. package/skills/using-salesforce-archive/references/connect-api-operations.md +0 -157
  1663. package/skills/using-ui-bundle-salesforce-data/SKILL.md +0 -638
  1664. package/skills/using-ui-bundle-salesforce-data/scripts/graphql-search.sh +0 -191
  1665. package/skills/validating-slds/SKILL.md +0 -262
  1666. package/skills/validating-slds/references/quality-checks.md +0 -308
  1667. package/skills/validating-slds/references/report-format.md +0 -302
  1668. package/skills/validating-slds/scripts/analyze-quality.cjs +0 -521
@@ -1,1253 +0,0 @@
1
- """Tests for (cross-host redirect strips Authorization) and
2
- (redact_error scrubs bearer tokens).
3
-
4
- adds: `retry_on_401` decorator + `tooling_query` / `data_query`
5
- helpers. Tests cover both the HTTP-401 and the INVALID_SESSION_ID-in-body
6
- code paths, as well as the non-auth-error propagation guarantee.
7
- """
8
- from __future__ import annotations
9
-
10
- import email.message
11
- import email.utils
12
- import io
13
- import json
14
- import time
15
- import unittest
16
- import unittest.mock as mock
17
- import urllib.error
18
- import urllib.request
19
-
20
- from . import _bootstrap # noqa: F401
21
-
22
- import rest_client # type: ignore
23
-
24
-
25
- class RedirectHeaderStripTests(unittest.TestCase):
26
- """Authorization must be dropped on cross-host redirect."""
27
-
28
- def setUp(self) -> None:
29
- self.handler = rest_client.StripAuthOnCrossHostRedirect()
30
- # Minimal stand-in for the `fp` argument — the handler ignores it
31
- # except when constructing HTTPError on unsupported-scheme paths.
32
- self.fp = io.BytesIO(b"")
33
- # Headers are a Message-like; handler reads nothing from it for
34
- # the 302 path. An empty dict-like suffices.
35
- self.msg = {}
36
-
37
- def _make_request(self, url: str, auth: str = "Bearer tok123"):
38
- req = urllib.request.Request(url)
39
- if auth:
40
- req.add_header("Authorization", auth)
41
- return req
42
-
43
- def _has_authorization(self, req) -> bool:
44
- for k in list(req.headers.keys()) + list(req.unredirected_hdrs.keys()):
45
- if k.lower() == "authorization":
46
- return True
47
- return False
48
-
49
- def test_same_host_redirect_preserves_authorization(self):
50
- req = self._make_request("https://na1.salesforce.com/services/data/v60.0/query")
51
- new_req = self.handler.redirect_request(
52
- req, self.fp, 302, "Found", self.msg,
53
- "https://na1.salesforce.com/services/data/v60.0/query?page=2",
54
- )
55
- self.assertIsNotNone(new_req)
56
- self.assertTrue(
57
- self._has_authorization(new_req),
58
- "same-host redirect must preserve Authorization",
59
- )
60
-
61
- def test_cross_host_redirect_strips_authorization(self):
62
- req = self._make_request("https://na1.salesforce.com/services/data/v60.0/query")
63
- new_req = self.handler.redirect_request(
64
- req, self.fp, 302, "Found", self.msg,
65
- "https://attacker.example.com/steal",
66
- )
67
- self.assertIsNotNone(new_req)
68
- self.assertFalse(
69
- self._has_authorization(new_req),
70
- "cross-host redirect must strip Authorization ",
71
- )
72
-
73
- def test_downgrade_to_http_cross_host_strips(self):
74
- """A redirect from HTTPS→HTTP on a different host is the classic
75
- MITM bait. Authorization must not follow."""
76
- req = self._make_request("https://na1.salesforce.com/services/data/v60.0/query")
77
- new_req = self.handler.redirect_request(
78
- req, self.fp, 302, "Found", self.msg,
79
- "http://attacker.example.com/",
80
- )
81
- self.assertIsNotNone(new_req)
82
- self.assertFalse(self._has_authorization(new_req))
83
-
84
- def test_case_insensitive_host_match(self):
85
- """DNS is case-insensitive — `Foo.com` and `foo.com` are same host."""
86
- req = self._make_request("https://Foo.Salesforce.com/path")
87
- new_req = self.handler.redirect_request(
88
- req, self.fp, 302, "Found", self.msg,
89
- "https://foo.salesforce.com/other",
90
- )
91
- self.assertIsNotNone(new_req)
92
- self.assertTrue(self._has_authorization(new_req))
93
-
94
- def test_build_opener_wires_the_handler(self):
95
- opener = rest_client.build_opener()
96
- self.assertIsInstance(opener, urllib.request.OpenerDirector)
97
- installed = [
98
- h for h in opener.handlers
99
- if isinstance(h, rest_client.StripAuthOnCrossHostRedirect)
100
- ]
101
- self.assertEqual(
102
- len(installed), 1,
103
- "build_opener must install exactly one StripAuthOnCrossHostRedirect",
104
- )
105
-
106
-
107
- class RedactErrorTests(unittest.TestCase):
108
- """redact_error must scrub bearer tokens from exception strings."""
109
-
110
- def test_bearer_token_redacted(self):
111
- # Scanner-inert placeholder — redactor only cares about the
112
- # `Authorization: Bearer ` prefix; the value is opaque `\S+`.
113
- raw = "Authorization: Bearer TESTONLY_HEADER.TESTONLY_PAYLOAD.TESTONLY_SIG"
114
- exc = RuntimeError(raw)
115
- out = rest_client.redact_error(exc)
116
- self.assertIn("<redacted>", out)
117
- self.assertNotIn("TESTONLY_HEADER", out)
118
- self.assertNotIn("TESTONLY_PAYLOAD", out)
119
-
120
- def test_bearer_token_case_insensitive(self):
121
- exc = RuntimeError("authorization: BEARER TESTONLY_BEARER_VALUE")
122
- out = rest_client.redact_error(exc)
123
- self.assertNotIn("TESTONLY_BEARER_VALUE", out)
124
-
125
- def test_access_token_querystring_redacted(self):
126
- exc = RuntimeError("POST /oauth/token accessToken=TESTONLY_TOKEN&foo=1")
127
- out = rest_client.redact_error(exc)
128
- self.assertNotIn("TESTONLY_TOKEN", out)
129
- self.assertIn("<redacted>", out)
130
- # The non-sensitive tail is preserved — handy for debugging.
131
- self.assertIn("foo=1", out)
132
-
133
- def test_access_token_snake_case_querystring_redacted(self):
134
- exc = RuntimeError("access_token=TESTONLY_SNAKE_TOKEN&other=ok")
135
- out = rest_client.redact_error(exc)
136
- self.assertNotIn("TESTONLY_SNAKE_TOKEN", out)
137
- self.assertIn("other=ok", out)
138
-
139
- def test_access_token_json_redacted(self):
140
- exc = RuntimeError('{"accessToken":"TESTONLY_JSON_TOKEN","status":0}')
141
- out = rest_client.redact_error(exc)
142
- self.assertNotIn("TESTONLY_JSON_TOKEN", out)
143
- self.assertIn("<redacted>", out)
144
- # Non-sensitive JSON preserved.
145
- self.assertIn("status", out)
146
-
147
- def test_access_token_json_snake_case_redacted(self):
148
- exc = RuntimeError('{"access_token":"tok.ABC"}')
149
- out = rest_client.redact_error(exc)
150
- self.assertNotIn("tok.ABC", out)
151
-
152
- def test_output_includes_exception_type(self):
153
- exc = ValueError("boring message")
154
- out = rest_client.redact_error(exc)
155
- self.assertTrue(out.startswith("ValueError:"))
156
-
157
- def test_empty_exception_safe(self):
158
- exc = RuntimeError("")
159
- out = rest_client.redact_error(exc)
160
- self.assertTrue(out.startswith("RuntimeError:"))
161
-
162
- def test_plain_message_unchanged(self):
163
- exc = RuntimeError("connection refused")
164
- out = rest_client.redact_error(exc)
165
- self.assertIn("connection refused", out)
166
-
167
-
168
- class RedactTextPublicSymbolTests(unittest.TestCase):
169
- """`redact_text` is the public symbol; `_redact_text` stays as
170
- a deprecated alias for backwards compatibility.
171
- """
172
-
173
- def test_redact_text_importable_at_module_top(self):
174
- """Public name must be reachable via a plain `from` import — this
175
- is what sf_cli now relies on at module-top import time.
176
- """
177
- from rest_client import redact_text # noqa: F401
178
- self.assertTrue(callable(redact_text))
179
-
180
- def test_redact_text_same_behavior_as_alias(self):
181
- """The deprecated alias must be bound to the same function object
182
- so behavior drift is impossible.
183
- """
184
- self.assertIs(rest_client._redact_text, rest_client.redact_text)
185
-
186
- def test_underscore_alias_still_works(self):
187
- """Backwards-compat: any lingering `from rest_client import
188
- _redact_text` must keep functioning until the alias is removed
189
- in a follow-up batch.
190
- """
191
- from rest_client import _redact_text # noqa: F401
192
- out = _redact_text("Authorization: Bearer tokXYZ")
193
- self.assertIn("<redacted>", out)
194
- self.assertNotIn("tokXYZ", out)
195
-
196
- def test_public_redact_text_scrubs_bearer(self):
197
- out = rest_client.redact_text("Authorization: Bearer secrettok")
198
- self.assertNotIn("secrettok", out)
199
- self.assertIn("<redacted>", out)
200
-
201
-
202
- def _make_http_error(code: int, body: bytes = b"") -> urllib.error.HTTPError:
203
- """Build a minimal HTTPError carrying `code` + `body`.
204
-
205
- We don't need a real socket — the decorator only reads `.code` and
206
- (optionally) the stringified form. Body is passed for parity with
207
- the wire.
208
- """
209
- return urllib.error.HTTPError(
210
- url="https://example.salesforce.com/x",
211
- code=code,
212
- msg="error",
213
- hdrs={}, # type: ignore[arg-type]
214
- fp=io.BytesIO(body),
215
- )
216
-
217
-
218
- class RetryOn401Tests(unittest.TestCase):
219
- """decorator refreshes the token on 401 and retries once."""
220
-
221
- def test_401_then_success_calls_refresh_once(self):
222
- """Wrapped fn raises 401 first, succeeds on retry.
223
-
224
- refresh_fn MUST be called exactly once; wrapped fn returns normally.
225
- """
226
- call_count = {"n": 0}
227
-
228
- def wrapped():
229
- call_count["n"] += 1
230
- if call_count["n"] == 1:
231
- raise _make_http_error(401)
232
- return {"ok": True}
233
-
234
- refresh_calls = []
235
-
236
- def refresh():
237
- refresh_calls.append(1)
238
- return ("https://example.salesforce.com", "new_tok")
239
-
240
- decorated = rest_client.retry_on_401(refresh)(wrapped)
241
- result = decorated()
242
-
243
- self.assertEqual(result, {"ok": True})
244
- self.assertEqual(len(refresh_calls), 1, "refresh_fn must be called exactly once")
245
- self.assertEqual(call_count["n"], 2)
246
-
247
- def test_401_twice_reraises_with_original_context(self):
248
- """Second 401 → original 401 context surfaces (wrapped as RestClientError).
249
-
250
- refresh_fn still called only once (no infinite retry).
251
- """
252
-
253
- def wrapped():
254
- raise _make_http_error(401, body=b"session bad")
255
-
256
- refresh_calls = []
257
-
258
- def refresh():
259
- refresh_calls.append(1)
260
- return ("https://example.salesforce.com", "new_tok")
261
-
262
- decorated = rest_client.retry_on_401(refresh)(wrapped)
263
- with self.assertRaises(rest_client.RestClientError) as ctx:
264
- decorated()
265
-
266
- self.assertIn("auth error after refresh", str(ctx.exception))
267
- self.assertEqual(len(refresh_calls), 1, "refresh_fn must be called only once")
268
-
269
- def test_invalid_session_body_triggers_refresh(self):
270
- """INVALID_SESSION_ID signalled via body (HTTP 200) → refresh + retry."""
271
- call_count = {"n": 0}
272
-
273
- def wrapped():
274
- call_count["n"] += 1
275
- if call_count["n"] == 1:
276
- raise rest_client._InvalidSessionSignal("body had INVALID_SESSION_ID")
277
- return {"ok": True}
278
-
279
- refresh_calls = []
280
-
281
- def refresh():
282
- refresh_calls.append(1)
283
- return ("https://example.salesforce.com", "new_tok")
284
-
285
- decorated = rest_client.retry_on_401(refresh)(wrapped)
286
- result = decorated()
287
-
288
- self.assertEqual(result, {"ok": True})
289
- self.assertEqual(len(refresh_calls), 1)
290
-
291
- def test_non_auth_http_error_propagates_without_refresh(self):
292
- """500 → NO refresh, error propagates as-is."""
293
-
294
- def wrapped():
295
- raise _make_http_error(500)
296
-
297
- refresh_calls = []
298
-
299
- def refresh():
300
- refresh_calls.append(1)
301
- return ("https://example.salesforce.com", "new_tok")
302
-
303
- decorated = rest_client.retry_on_401(refresh)(wrapped)
304
- with self.assertRaises(urllib.error.HTTPError) as ctx:
305
- decorated()
306
-
307
- self.assertEqual(ctx.exception.code, 500)
308
- self.assertEqual(len(refresh_calls), 0, "500 must NOT trigger refresh")
309
-
310
- def test_retry_error_messages_go_through_redact_error(self):
311
- """A token baked into the original 401 body must not survive in the
312
- RestClientError that gets re-raised on the second 401.
313
- """
314
-
315
- def wrapped():
316
- # The HTTPError's str form echoes url + code. We bake a bearer
317
- # token into the msg to exercise the redact path on the
318
- # re-raise.
319
- err = urllib.error.HTTPError(
320
- url="https://example.salesforce.com",
321
- code=401,
322
- msg="Authorization: Bearer TESTONLY_HTTPERROR_TOKEN",
323
- hdrs={}, # type: ignore[arg-type]
324
- fp=io.BytesIO(b""),
325
- )
326
- raise err
327
-
328
- def refresh():
329
- return ("https://example.salesforce.com", "new_tok")
330
-
331
- decorated = rest_client.retry_on_401(refresh)(wrapped)
332
- with self.assertRaises(rest_client.RestClientError) as ctx:
333
- decorated()
334
- msg = str(ctx.exception)
335
- self.assertNotIn("TESTONLY_HTTPERROR_TOKEN", msg)
336
- # The redaction sentinel must appear somewhere — proof the
337
- # substitution actually ran.
338
- self.assertIn("<redacted>", msg)
339
-
340
-
341
- class QueryHelperTests(unittest.TestCase):
342
- """tooling_query + data_query — happy paths with mocked opener."""
343
-
344
- def _install_mock_opener(self, response_body: bytes):
345
- """Monkeypatch build_opener to return an opener whose .open returns
346
- a context manager yielding an object with .read() == response_body.
347
- """
348
- fake_resp = mock.MagicMock()
349
- fake_resp.read.return_value = response_body
350
- fake_resp.__enter__ = mock.MagicMock(return_value=fake_resp)
351
- fake_resp.__exit__ = mock.MagicMock(return_value=False)
352
-
353
- fake_opener = mock.MagicMock()
354
- fake_opener.open = mock.MagicMock(return_value=fake_resp)
355
- return mock.patch.object(
356
- rest_client, "build_opener", return_value=fake_opener
357
- )
358
-
359
- def test_tooling_query_happy_path(self):
360
- body = json.dumps({"records": [{"Id": "01p000000000001"}]}).encode("utf-8")
361
- with self._install_mock_opener(body):
362
- out = rest_client.tooling_query(
363
- rest_client.static_creds("https://example.salesforce.com", "tok"),
364
- "SELECT Id FROM ApexClass",
365
- api_version="v60.0",
366
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
367
- )
368
- self.assertEqual(out["records"][0]["Id"], "01p000000000001")
369
-
370
- def test_data_query_happy_path(self):
371
- body = json.dumps({"totalSize": 0, "records": []}).encode("utf-8")
372
- with self._install_mock_opener(body):
373
- out = rest_client.data_query(
374
- rest_client.static_creds("https://example.salesforce.com", "tok"),
375
- "SELECT Id FROM Account LIMIT 1",
376
- api_version="v60.0",
377
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
378
- )
379
- self.assertEqual(out["totalSize"], 0)
380
-
381
- def test_tooling_query_apex_body_with_marker_does_not_trigger_refresh(self):
382
- """BUGFIX 2026-05-03: 200 OK Tooling response where ApexClass.Body
383
- references `INVALID_SESSION_ID` in source must pass through
384
- unchanged — no refresh, no retry, no error wrapping."""
385
- good_body = json.dumps({
386
- "size": 1,
387
- "totalSize": 1,
388
- "done": True,
389
- "queryLocator": None,
390
- "entityTypeName": "ApexClass",
391
- "records": [
392
- {
393
- "attributes": {"type": "ApexClass"},
394
- "Id": "01pUv000003a1YaIAI",
395
- "Name": "XCSF_FlowFaultMessage",
396
- "Body": "// if (code == 'INVALID_SESSION_ID') rethrow;",
397
- }
398
- ],
399
- }).encode("utf-8")
400
-
401
- open_count = {"n": 0}
402
-
403
- def fake_open(req):
404
- open_count["n"] += 1
405
- resp = mock.MagicMock()
406
- resp.read.return_value = good_body
407
- resp.__enter__ = mock.MagicMock(return_value=resp)
408
- resp.__exit__ = mock.MagicMock(return_value=False)
409
- return resp
410
-
411
- fake_opener = mock.MagicMock()
412
- fake_opener.open = fake_open
413
-
414
- refresh_calls = []
415
-
416
- def refresh():
417
- refresh_calls.append(1)
418
- return ("https://example.salesforce.com", "new_tok")
419
-
420
- with mock.patch.object(rest_client, "build_opener", return_value=fake_opener):
421
- out = rest_client.tooling_query(
422
- rest_client.static_creds("https://example.salesforce.com", "tok"),
423
- "SELECT Id, Name, Body FROM ApexClass WHERE Id IN (...)",
424
- api_version="v66.0",
425
- on_401_refresh=refresh,
426
- )
427
-
428
- self.assertEqual(out["totalSize"], 1)
429
- self.assertEqual(out["records"][0]["Name"], "XCSF_FlowFaultMessage")
430
- self.assertEqual(open_count["n"], 1,
431
- "exactly one HTTP call — no spurious retry")
432
- self.assertEqual(refresh_calls, [],
433
- "refresh must not fire on a 200 OK success payload")
434
-
435
- def test_tooling_query_invalid_session_in_body_triggers_refresh(self):
436
- """HTTP 200 with INVALID_SESSION_ID body → refresh closure invoked."""
437
- bad_body = json.dumps([
438
- {"errorCode": "INVALID_SESSION_ID", "message": "Session expired"}
439
- ]).encode("utf-8")
440
- good_body = json.dumps({"records": []}).encode("utf-8")
441
-
442
- # Two-shot opener: first call returns bad_body, second returns good.
443
- responses = [bad_body, good_body]
444
-
445
- def fake_open(req):
446
- resp = mock.MagicMock()
447
- resp.read.return_value = responses.pop(0)
448
- resp.__enter__ = mock.MagicMock(return_value=resp)
449
- resp.__exit__ = mock.MagicMock(return_value=False)
450
- return resp
451
-
452
- fake_opener = mock.MagicMock()
453
- fake_opener.open = fake_open
454
-
455
- refresh_calls = []
456
-
457
- def refresh():
458
- refresh_calls.append(1)
459
- return ("https://example.salesforce.com", "new_tok")
460
-
461
- with mock.patch.object(rest_client, "build_opener", return_value=fake_opener):
462
- out = rest_client.tooling_query(
463
- rest_client.static_creds("https://example.salesforce.com", "tok"),
464
- "SELECT Id FROM ApexClass",
465
- api_version="v60.0",
466
- on_401_refresh=refresh,
467
- )
468
-
469
- self.assertEqual(out, {"records": []})
470
- self.assertEqual(len(refresh_calls), 1)
471
-
472
-
473
- class RetryOn401CredentialRefreshIntegrationTests(unittest.TestCase):
474
- """Verify the retry carries the NEW token, not the stale one.
475
-
476
- The previous design looked correct under unit tests (refresh_fn called
477
- once, retry returns success) but was broken end-to-end: the closure
478
- around `(instance_url, token)` was captured at decoration time, so
479
- `refresh_fn`'s return value was thrown away and the retry saw the
480
- SAME stale credentials. Any real 401 (bad token) would hit the retry
481
- with the same bad token and 401 again.
482
-
483
- This test exercises a full tooling_query through a mock opener that
484
- 401s for the stale token and succeeds for the refreshed token. A
485
- fix that only changes decorator bookkeeping (without threading the
486
- refresh into the retry's actual HTTP call) will fail this test.
487
- """
488
-
489
- def test_retry_on_401_uses_refreshed_credentials(self):
490
- # creds cell — a single-slot list mutated by refresh_fn.
491
- creds_cell: list = [("https://example.salesforce.com", "bad_token")]
492
-
493
- def creds_provider():
494
- return creds_cell[0]
495
-
496
- def refresh_fn():
497
- creds_cell[0] = ("https://example.salesforce.com", "good_token")
498
- return creds_cell[0]
499
-
500
- # Tracks the Authorization header seen on every request — this is
501
- # what proves whether the retry carried the refreshed token or not.
502
- auth_headers_seen: list[str] = []
503
-
504
- def fake_open(req):
505
- # urllib normalizes header names on add_header; read whichever
506
- # case lands.
507
- auth = None
508
- for k, v in req.headers.items():
509
- if k.lower() == "authorization":
510
- auth = v
511
- break
512
- auth_headers_seen.append(auth or "")
513
-
514
- if auth == "Bearer bad_token":
515
- raise urllib.error.HTTPError(
516
- url=req.full_url,
517
- code=401,
518
- msg="Unauthorized",
519
- hdrs={}, # type: ignore[arg-type]
520
- fp=io.BytesIO(b""),
521
- )
522
- # Good token path — return a tiny success JSON.
523
- resp = mock.MagicMock()
524
- resp.read.return_value = json.dumps({"records": []}).encode("utf-8")
525
- resp.__enter__ = mock.MagicMock(return_value=resp)
526
- resp.__exit__ = mock.MagicMock(return_value=False)
527
- return resp
528
-
529
- fake_opener = mock.MagicMock()
530
- fake_opener.open = fake_open
531
-
532
- with mock.patch.object(rest_client, "build_opener", return_value=fake_opener):
533
- out = rest_client.tooling_query(
534
- creds_provider,
535
- "SELECT Id FROM ApexClass",
536
- api_version="v60.0",
537
- on_401_refresh=refresh_fn,
538
- )
539
-
540
- self.assertEqual(out, {"records": []})
541
- self.assertEqual(
542
- len(auth_headers_seen), 2,
543
- f"expected 2 attempts (401 + retry), got {len(auth_headers_seen)}",
544
- )
545
- self.assertEqual(
546
- auth_headers_seen[0], "Bearer bad_token",
547
- "first attempt should have used the stale token",
548
- )
549
- self.assertEqual(
550
- auth_headers_seen[1], "Bearer good_token",
551
- "retry MUST use the refreshed token — this is the bug",
552
- )
553
-
554
-
555
- class TransientHttpWithRefreshIntegrationTests(unittest.TestCase):
556
- """End-to-end stack test through `tooling_query`.
557
-
558
- Drives the real decorator chain baked into `tooling_query`: first
559
- response 429 (transient retry), second response 401 (refresh + retry),
560
- third response 200. Proves that the stacking in the production
561
- helper — NOT just the raw decorators — gives the intended behavior.
562
- """
563
-
564
- def test_tooling_query_429_then_401_then_success(self):
565
- responses = [
566
- ("429", None),
567
- ("401", None),
568
- ("ok", json.dumps({"records": [{"Id": "a"}]}).encode("utf-8")),
569
- ]
570
- creds_cell = [("https://example.salesforce.com", "bad_token")]
571
- refresh_calls = []
572
-
573
- def creds_provider():
574
- return creds_cell[0]
575
-
576
- def refresh():
577
- refresh_calls.append(1)
578
- creds_cell[0] = ("https://example.salesforce.com", "good_token")
579
- return creds_cell[0]
580
-
581
- def fake_open(req):
582
- kind, body = responses.pop(0)
583
- if kind == "429":
584
- exc = urllib.error.HTTPError(
585
- url=req.full_url,
586
- code=429,
587
- msg="rate limited",
588
- hdrs=email.message.Message(),
589
- fp=io.BytesIO(b""),
590
- )
591
- exc.headers["Retry-After"] = "0" # 0 → base_delay wins, but sleep is mocked
592
- raise exc
593
- if kind == "401":
594
- raise urllib.error.HTTPError(
595
- url=req.full_url,
596
- code=401,
597
- msg="unauthorized",
598
- hdrs={}, # type: ignore[arg-type]
599
- fp=io.BytesIO(b""),
600
- )
601
- resp = mock.MagicMock()
602
- resp.read.return_value = body
603
- resp.__enter__ = mock.MagicMock(return_value=resp)
604
- resp.__exit__ = mock.MagicMock(return_value=False)
605
- return resp
606
-
607
- fake_opener = mock.MagicMock()
608
- fake_opener.open = fake_open
609
-
610
- with mock.patch.object(rest_client, "build_opener", return_value=fake_opener), \
611
- mock.patch.object(rest_client.time, "sleep"):
612
- out = rest_client.tooling_query(
613
- creds_provider,
614
- "SELECT Id FROM ApexClass",
615
- api_version="v60.0",
616
- on_401_refresh=refresh,
617
- )
618
-
619
- self.assertEqual(out["records"][0]["Id"], "a")
620
- self.assertEqual(len(refresh_calls), 1,
621
- "exactly one refresh — 429 must NOT trigger the refresh")
622
- self.assertEqual(responses, [], "all three canned responses consumed")
623
-
624
-
625
- class AcceptEncodingAndForbiddenInvalidSessionTests(unittest.TestCase):
626
- """Accept-Encoding: identity + 403+INVALID_SESSION_ID handling."""
627
-
628
- def test_query_sends_accept_encoding_identity(self):
629
- """The outbound request carries `Accept-Encoding: identity` so no
630
- gzip body ever lands on the body-inspection path."""
631
- body = json.dumps({"records": []}).encode("utf-8")
632
-
633
- captured: list = []
634
-
635
- def fake_open(req):
636
- captured.append(req)
637
- resp = mock.MagicMock()
638
- resp.read.return_value = body
639
- resp.__enter__ = mock.MagicMock(return_value=resp)
640
- resp.__exit__ = mock.MagicMock(return_value=False)
641
- return resp
642
-
643
- fake_opener = mock.MagicMock()
644
- fake_opener.open = fake_open
645
-
646
- with mock.patch.object(rest_client, "build_opener", return_value=fake_opener):
647
- rest_client.tooling_query(
648
- rest_client.static_creds("https://example.salesforce.com", "tok"),
649
- "SELECT Id FROM ApexClass",
650
- api_version="v60.0",
651
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
652
- )
653
-
654
- self.assertEqual(len(captured), 1)
655
- req = captured[0]
656
- # urllib stores add_header'd names via .capitalize(); read any case.
657
- accept_enc = None
658
- for k, v in req.headers.items():
659
- if k.lower() == "accept-encoding":
660
- accept_enc = v
661
- break
662
- self.assertEqual(accept_enc, "identity",
663
- "Accept-Encoding must be 'identity'")
664
-
665
- def test_403_invalid_session_triggers_refresh(self):
666
- """HTTP 403 + INVALID_SESSION_ID body is treated as refreshable."""
667
-
668
- call_count = {"n": 0}
669
-
670
- def wrapped():
671
- call_count["n"] += 1
672
- if call_count["n"] == 1:
673
- # 403 with INVALID_SESSION_ID body → should refresh.
674
- raise urllib.error.HTTPError(
675
- url="https://example.salesforce.com/x",
676
- code=403,
677
- msg="Forbidden",
678
- hdrs={}, # type: ignore[arg-type]
679
- fp=io.BytesIO(
680
- b'[{"errorCode":"INVALID_SESSION_ID","message":"Session expired"}]'
681
- ),
682
- )
683
- return {"ok": True}
684
-
685
- refresh_calls = []
686
-
687
- def refresh():
688
- refresh_calls.append(1)
689
- return ("https://example.salesforce.com", "new_tok")
690
-
691
- decorated = rest_client.retry_on_401(refresh)(wrapped)
692
- result = decorated()
693
-
694
- self.assertEqual(result, {"ok": True})
695
- self.assertEqual(len(refresh_calls), 1,
696
- "403+INVALID_SESSION_ID must trigger refresh")
697
-
698
- def test_403_non_invalid_session_does_not_trigger_refresh(self):
699
- """HTTP 403 with some OTHER errorCode propagates unchanged."""
700
-
701
- def wrapped():
702
- raise urllib.error.HTTPError(
703
- url="https://example.salesforce.com/x",
704
- code=403,
705
- msg="Forbidden",
706
- hdrs={}, # type: ignore[arg-type]
707
- fp=io.BytesIO(
708
- b'[{"errorCode":"INSUFFICIENT_ACCESS","message":"Denied"}]'
709
- ),
710
- )
711
-
712
- refresh_calls = []
713
-
714
- def refresh():
715
- refresh_calls.append(1)
716
- return ("https://example.salesforce.com", "new_tok")
717
-
718
- decorated = rest_client.retry_on_401(refresh)(wrapped)
719
- with self.assertRaises(urllib.error.HTTPError) as ctx:
720
- decorated()
721
-
722
- self.assertEqual(ctx.exception.code, 403)
723
- self.assertEqual(len(refresh_calls), 0,
724
- "non-auth 403 must NOT burn a refresh")
725
-
726
-
727
- class RetryOnTransientHttpTests(unittest.TestCase):
728
- """429/503 → exponential-backoff retry up to max_retries."""
729
-
730
- def test_429_then_success_retries_once(self):
731
- calls = {"n": 0}
732
-
733
- def fn():
734
- calls["n"] += 1
735
- if calls["n"] == 1:
736
- raise _make_http_error(429)
737
- return {"ok": True}
738
-
739
- with mock.patch.object(rest_client.time, "sleep") as slept:
740
- decorated = rest_client.retry_on_transient_http()(fn)
741
- out = decorated()
742
-
743
- self.assertEqual(out, {"ok": True})
744
- self.assertEqual(calls["n"], 2)
745
- slept.assert_called_once()
746
- # First retry: base_delay * 2**0 = 1.0
747
- self.assertAlmostEqual(slept.call_args[0][0], 1.0)
748
-
749
- def test_503_three_times_propagates_httperror(self):
750
- """With max_retries=3, total attempts = 4. Four 503s must surface
751
- the HTTPError after exactly 3 sleeps."""
752
- def fn():
753
- raise _make_http_error(503)
754
-
755
- with mock.patch.object(rest_client.time, "sleep") as slept:
756
- decorated = rest_client.retry_on_transient_http(max_retries=3)(fn)
757
- with self.assertRaises(urllib.error.HTTPError) as ctx:
758
- decorated()
759
-
760
- self.assertEqual(ctx.exception.code, 503)
761
- self.assertEqual(slept.call_count, 3,
762
- "3 sleeps for 3 retries before the final failure")
763
-
764
- def test_retry_after_header_honored_when_larger(self):
765
- """Retry-After: 10 overrides the 1s exponential schedule."""
766
- def fn():
767
- exc = urllib.error.HTTPError(
768
- url="https://example.salesforce.com/x",
769
- code=429,
770
- msg="rate limited",
771
- hdrs=email.message.Message(),
772
- fp=io.BytesIO(b""),
773
- )
774
- exc.headers["Retry-After"] = "10"
775
- raise exc
776
-
777
- # fn always raises → exhaust retries; we just need to observe the
778
- # first sleep value.
779
- with mock.patch.object(rest_client.time, "sleep") as slept:
780
- decorated = rest_client.retry_on_transient_http(max_retries=1)(fn)
781
- with self.assertRaises(urllib.error.HTTPError):
782
- decorated()
783
-
784
- self.assertEqual(slept.call_count, 1)
785
- self.assertAlmostEqual(slept.call_args_list[0][0][0], 10.0,
786
- msg="Retry-After (10) must win over base_delay (1)")
787
-
788
- def test_retry_after_smaller_than_base_loses(self):
789
- """Retry-After: 0.5 with base_delay=1.0 → sleep 1.0 (base_delay wins)."""
790
- def fn():
791
- exc = urllib.error.HTTPError(
792
- url="https://example.salesforce.com/x",
793
- code=429,
794
- msg="rate limited",
795
- hdrs=email.message.Message(),
796
- fp=io.BytesIO(b""),
797
- )
798
- exc.headers["Retry-After"] = "0.5"
799
- raise exc
800
-
801
- with mock.patch.object(rest_client.time, "sleep") as slept:
802
- decorated = rest_client.retry_on_transient_http(max_retries=1)(fn)
803
- with self.assertRaises(urllib.error.HTTPError):
804
- decorated()
805
-
806
- self.assertAlmostEqual(slept.call_args_list[0][0][0], 1.0)
807
-
808
- def test_500_propagates_without_sleep(self):
809
- """Non-429/503 HTTP errors are out of scope — no retry, no sleep."""
810
- def fn():
811
- raise _make_http_error(500)
812
-
813
- with mock.patch.object(rest_client.time, "sleep") as slept:
814
- decorated = rest_client.retry_on_transient_http()(fn)
815
- with self.assertRaises(urllib.error.HTTPError) as ctx:
816
- decorated()
817
-
818
- self.assertEqual(ctx.exception.code, 500)
819
- slept.assert_not_called()
820
-
821
- def test_401_propagates_without_sleep(self):
822
- """401 is retry_on_401's job — this decorator must pass it through."""
823
- def fn():
824
- raise _make_http_error(401)
825
-
826
- with mock.patch.object(rest_client.time, "sleep") as slept:
827
- decorated = rest_client.retry_on_transient_http()(fn)
828
- with self.assertRaises(urllib.error.HTTPError) as ctx:
829
- decorated()
830
-
831
- self.assertEqual(ctx.exception.code, 401)
832
- slept.assert_not_called()
833
-
834
- def test_stacks_correctly_with_retry_on_401(self):
835
- """Integration: 429 → transient retry → 401 → refresh retry → success.
836
-
837
- This verifies the documented ordering in `tooling_query` /
838
- `data_query`: transient-HTTP is inner, 401-refresh is outer. If
839
- the layering were reversed, the refresh would fire on the 429.
840
- """
841
- sequence = ["429", "401", "ok"]
842
- refresh_calls = []
843
-
844
- def fn():
845
- code = sequence.pop(0)
846
- if code == "429":
847
- raise _make_http_error(429)
848
- if code == "401":
849
- raise _make_http_error(401)
850
- return {"ok": True}
851
-
852
- def refresh():
853
- refresh_calls.append(1)
854
- return ("https://example.salesforce.com", "new")
855
-
856
- with mock.patch.object(rest_client.time, "sleep"):
857
- # Inner: transient retry. Outer: 401 refresh. Matches the
858
- # stack in tooling_query / data_query.
859
- decorated = rest_client.retry_on_401(refresh)(
860
- rest_client.retry_on_transient_http()(fn)
861
- )
862
- out = decorated()
863
-
864
- self.assertEqual(out, {"ok": True})
865
- self.assertEqual(len(refresh_calls), 1,
866
- "exactly one refresh — 429 must not burn a refresh")
867
- self.assertEqual(sequence, [], "all three responses consumed")
868
-
869
- def test_retry_after_http_date_parses(self):
870
- """HTTP-date form of Retry-After is accepted.
871
-
872
- We pass an RFC 7231 date roughly 5 seconds in the future. The
873
- parsed delta should be >= 0 and, since base_delay=1.0, the delta
874
- wins whenever it exceeds 1s. We accept any value >= 1.0 to avoid
875
- flakiness on slow test machines.
876
- """
877
- future_ts = time.time() + 30 # 30s out, plenty of slack
878
- http_date = email.utils.formatdate(future_ts, usegmt=True)
879
-
880
- def fn():
881
- exc = urllib.error.HTTPError(
882
- url="https://example.salesforce.com/x",
883
- code=503,
884
- msg="unavailable",
885
- hdrs=email.message.Message(),
886
- fp=io.BytesIO(b""),
887
- )
888
- exc.headers["Retry-After"] = http_date
889
- raise exc
890
-
891
- with mock.patch.object(rest_client.time, "sleep") as slept:
892
- decorated = rest_client.retry_on_transient_http(max_retries=1)(fn)
893
- with self.assertRaises(urllib.error.HTTPError):
894
- decorated()
895
-
896
- self.assertEqual(slept.call_count, 1)
897
- delay = slept.call_args_list[0][0][0]
898
- # Sanity: must be larger than base_delay (1.0) and no bigger than
899
- # the original offset (30) plus generous test-timing slack.
900
- self.assertGreaterEqual(delay, 1.0)
901
- self.assertLessEqual(delay, 35.0)
902
-
903
- def test_malformed_retry_after_falls_back_to_base(self):
904
- """`Retry-After: not-a-date` → base_delay wins."""
905
- def fn():
906
- exc = urllib.error.HTTPError(
907
- url="https://example.salesforce.com/x",
908
- code=429,
909
- msg="rate limited",
910
- hdrs=email.message.Message(),
911
- fp=io.BytesIO(b""),
912
- )
913
- exc.headers["Retry-After"] = "not-a-date"
914
- raise exc
915
-
916
- with mock.patch.object(rest_client.time, "sleep") as slept:
917
- decorated = rest_client.retry_on_transient_http(max_retries=1, base_delay=2.0)(fn)
918
- with self.assertRaises(urllib.error.HTTPError):
919
- decorated()
920
-
921
- self.assertAlmostEqual(slept.call_args_list[0][0][0], 2.0,
922
- msg="malformed Retry-After falls back to base_delay")
923
-
924
-
925
- class InvalidSessionDetectionTests(unittest.TestCase):
926
- """Unit coverage for the body-inspection helper."""
927
-
928
- def test_list_with_invalid_session_detected(self):
929
- body = [{"errorCode": "INVALID_SESSION_ID", "message": "foo"}]
930
- self.assertTrue(rest_client._body_indicates_invalid_session(body))
931
-
932
- def test_dict_without_invalid_session_not_detected(self):
933
- body = {"records": [{"Id": "a"}]}
934
- self.assertFalse(rest_client._body_indicates_invalid_session(body))
935
-
936
- def test_none_safe(self):
937
- self.assertFalse(rest_client._body_indicates_invalid_session(None))
938
-
939
- def test_string_with_marker(self):
940
- self.assertTrue(rest_client._body_indicates_invalid_session(
941
- "...INVALID_SESSION_ID..."
942
- ))
943
-
944
- # --- BUGFIX 2026-05-03: false positive on ApexClass.Body substring -----
945
- # Regression: _body_indicates_invalid_session used to walk ALL dict
946
- # values and substring-match. A 200 OK Tooling Query response whose
947
- # records carried Apex source referencing the string INVALID_SESSION_ID
948
- # (e.g. `XCSF_FlowFaultMessage`, `SkillRulesMatchAction`) was
949
- # misclassified as a session error, triggering spurious Wave B retries
950
- # and a bogus `INVALID_SESSION_ID after refresh` entry in `_unresolved`.
951
-
952
- def test_success_body_with_apex_source_substring_not_detected(self):
953
- """200 OK Tooling response whose ApexClass.Body mentions
954
- INVALID_SESSION_ID in source code must NOT be flagged."""
955
- apex_source = (
956
- "public class XCSF_FlowFaultMessage {\n"
957
- " // Handles INVALID_SESSION_ID by rethrowing a typed error.\n"
958
- " public static void raise(String code) {\n"
959
- " if (code == 'INVALID_SESSION_ID') {\n"
960
- " throw new HandledException('session expired');\n"
961
- " }\n"
962
- " }\n"
963
- "}"
964
- )
965
- body = {
966
- "size": 2,
967
- "totalSize": 2,
968
- "done": True,
969
- "queryLocator": None,
970
- "entityTypeName": "ApexClass",
971
- "records": [
972
- {
973
- "attributes": {
974
- "type": "ApexClass",
975
- "url": "/services/data/v66.0/tooling/sobjects/ApexClass/01pUv0",
976
- },
977
- "Id": "01pUv000003a1YaIAI",
978
- "Name": "XCSF_FlowFaultMessage",
979
- "Body": apex_source,
980
- },
981
- {
982
- "attributes": {"type": "ApexClass"},
983
- "Id": "01pUv000003a1YbIAI",
984
- "Name": "SkillRulesMatchAction",
985
- "Body": "// references INVALID_SESSION_ID constant",
986
- },
987
- ],
988
- }
989
- self.assertFalse(
990
- rest_client._body_indicates_invalid_session(body),
991
- "success payload with INVALID_SESSION_ID inside ApexClass.Body "
992
- "must not be misclassified as an auth failure",
993
- )
994
-
995
- def test_error_envelope_under_errors_key_still_detected(self):
996
- """Dict-wrapped error envelope under a known key still flags."""
997
- body = {
998
- "errors": [
999
- {"errorCode": "INVALID_SESSION_ID", "message": "Session expired"}
1000
- ]
1001
- }
1002
- self.assertTrue(rest_client._body_indicates_invalid_session(body))
1003
-
1004
- def test_success_body_with_marker_in_data_field_not_detected(self):
1005
- """A top-level data field whose string value mentions the marker
1006
- must not trigger — only error-envelope keys are walked."""
1007
- body = {"records": [{"Id": "a", "Description": "handles INVALID_SESSION_ID"}]}
1008
- self.assertFalse(rest_client._body_indicates_invalid_session(body))
1009
-
1010
-
1011
- class QueryWireShapeTests(unittest.TestCase):
1012
- """`_query_once` must send GET with a urlencoded `q=`
1013
- querystring. The prior POST-with-JSON-body shape returned HTTP 405
1014
- on every real-org run — three reference fixtures failed
1015
- end-to-end. These tests pin the wire shape so a regression back to
1016
- POST would break CI before landing.
1017
- """
1018
-
1019
- def _install_capturing_opener(self, captured: list, response_body: bytes):
1020
- def fake_open(req):
1021
- captured.append(req)
1022
- resp = mock.MagicMock()
1023
- resp.read.return_value = response_body
1024
- resp.__enter__ = mock.MagicMock(return_value=resp)
1025
- resp.__exit__ = mock.MagicMock(return_value=False)
1026
- return resp
1027
-
1028
- fake_opener = mock.MagicMock()
1029
- fake_opener.open = fake_open
1030
- return mock.patch.object(
1031
- rest_client, "build_opener", return_value=fake_opener
1032
- )
1033
-
1034
- def test_data_query_sends_get_with_urlencoded_querystring(self):
1035
- captured: list = []
1036
- body = json.dumps({"records": []}).encode("utf-8")
1037
- soql = "SELECT Id FROM BotDefinition WHERE DeveloperName = 'Foo'"
1038
-
1039
- with self._install_capturing_opener(captured, body):
1040
- rest_client.data_query(
1041
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1042
- soql,
1043
- api_version="v60.0",
1044
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1045
- )
1046
-
1047
- self.assertEqual(len(captured), 1)
1048
- req = captured[0]
1049
- # method must be GET. Previously POST.
1050
- self.assertEqual(req.get_method(), "GET",
1051
- "REST Query endpoint is GET-only; POST returns 405")
1052
- # GET has no body.
1053
- self.assertIsNone(req.data,
1054
- "GET requests must carry no body")
1055
- # URL must carry the urlencoded querystring.
1056
- self.assertIn("/services/data/v60.0/query/?q=", req.full_url)
1057
- # urllib.parse.urlencode produces `+` for spaces — decoding
1058
- # should round-trip the SOQL exactly.
1059
- import urllib.parse
1060
- parsed = urllib.parse.urlparse(req.full_url)
1061
- qs = urllib.parse.parse_qs(parsed.query)
1062
- self.assertEqual(qs.get("q"), [soql],
1063
- "urlencoded `q` must round-trip the SOQL exactly")
1064
-
1065
- def test_tooling_query_sends_get_to_tooling_path(self):
1066
- captured: list = []
1067
- body = json.dumps({"records": []}).encode("utf-8")
1068
- soql = "SELECT Id, DeveloperName FROM BotVersion"
1069
-
1070
- with self._install_capturing_opener(captured, body):
1071
- rest_client.tooling_query(
1072
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1073
- soql,
1074
- api_version="v60.0",
1075
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1076
- )
1077
-
1078
- self.assertEqual(len(captured), 1)
1079
- req = captured[0]
1080
- self.assertEqual(req.get_method(), "GET")
1081
- self.assertIsNone(req.data)
1082
- # Tooling path is distinct from Data API path.
1083
- self.assertIn("/services/data/v60.0/tooling/query/?q=", req.full_url)
1084
-
1085
- def test_query_does_not_send_content_type_header(self):
1086
- """GET has no body — Content-Type is inappropriate and was
1087
- removed alongside the method change. Some edge proxies complain
1088
- about Content-Type on a bodyless GET; we just drop it."""
1089
- captured: list = []
1090
- body = json.dumps({"records": []}).encode("utf-8")
1091
-
1092
- with self._install_capturing_opener(captured, body):
1093
- rest_client.data_query(
1094
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1095
- "SELECT Id FROM Account LIMIT 1",
1096
- api_version="v60.0",
1097
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1098
- )
1099
-
1100
- req = captured[0]
1101
- content_type = None
1102
- for k, v in req.headers.items():
1103
- if k.lower() == "content-type":
1104
- content_type = v
1105
- break
1106
- self.assertIsNone(content_type,
1107
- "GET requests must not carry Content-Type")
1108
-
1109
- def test_soql_with_special_chars_is_urlencoded(self):
1110
- """SOQL string literals contain single quotes, commas, spaces,
1111
- parentheses. urlencode must escape them all; a naive concat
1112
- would break either the URL parse or the SOQL semantics."""
1113
- captured: list = []
1114
- body = json.dumps({"records": []}).encode("utf-8")
1115
- # Exercise the full SOQL character classes that routinely appear.
1116
- soql = (
1117
- "SELECT Id, Name FROM ApexClass "
1118
- "WHERE Name IN ('Foo', 'Bar Baz') "
1119
- "AND NamespacePrefix IS NULL LIMIT 200"
1120
- )
1121
-
1122
- with self._install_capturing_opener(captured, body):
1123
- rest_client.data_query(
1124
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1125
- soql,
1126
- api_version="v60.0",
1127
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1128
- )
1129
-
1130
- req = captured[0]
1131
- import urllib.parse
1132
- parsed = urllib.parse.urlparse(req.full_url)
1133
- qs = urllib.parse.parse_qs(parsed.query)
1134
- self.assertEqual(qs.get("q"), [soql])
1135
- # Spaces MUST be escaped — a raw space in a URL is malformed.
1136
- self.assertNotIn(" ", parsed.query,
1137
- "querystring must contain no literal spaces")
1138
-
1139
-
1140
- class ApiVersionRequiredKwargTests(unittest.TestCase):
1141
- """`api_version` is a REQUIRED keyword-only
1142
- argument on `tooling_query` + `data_query`.
1143
-
1144
- The prior design hardcoded `v60.0`. Real orgs (my-org-alias,
1145
- my-perf-org-alias) run on v66 and expose fields v60 does not — confirmed
1146
- empirically: `BotDefinition.Description` resolves on v66, raises
1147
- `INVALID_FIELD` on v60 for the same org. Making `api_version`
1148
- required surfaces a missed call-site as a TypeError at call time,
1149
- not a silent regression back to a stale pinned version.
1150
- """
1151
-
1152
- def test_tooling_query_requires_api_version(self):
1153
- with self.assertRaises(TypeError) as ctx:
1154
- rest_client.tooling_query(
1155
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1156
- "SELECT Id FROM ApexClass",
1157
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1158
- )
1159
- self.assertIn("api_version", str(ctx.exception))
1160
-
1161
- def test_data_query_requires_api_version(self):
1162
- with self.assertRaises(TypeError) as ctx:
1163
- rest_client.data_query(
1164
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1165
- "SELECT Id FROM Account LIMIT 1",
1166
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1167
- )
1168
- self.assertIn("api_version", str(ctx.exception))
1169
-
1170
-
1171
- class ApiVersionUrlSubstitutionTests(unittest.TestCase):
1172
- """the `api_version` kwarg lands in the URL path
1173
- unchanged. A caller passing `v66.0` must produce
1174
- `/services/data/v66.0/...` in the outbound Request, NOT the old
1175
- hardcoded `v60.0`.
1176
-
1177
- Regression shield: if a future refactor re-pins the version string,
1178
- these tests fail at the wire-shape assertion even when unit-level
1179
- behavior of `tooling_query` still looks correct.
1180
- """
1181
-
1182
- def _install_capturing_opener(self, captured: list, response_body: bytes):
1183
- def fake_open(req):
1184
- captured.append(req)
1185
- resp = mock.MagicMock()
1186
- resp.read.return_value = response_body
1187
- resp.__enter__ = mock.MagicMock(return_value=resp)
1188
- resp.__exit__ = mock.MagicMock(return_value=False)
1189
- return resp
1190
-
1191
- fake_opener = mock.MagicMock()
1192
- fake_opener.open = fake_open
1193
- return mock.patch.object(
1194
- rest_client, "build_opener", return_value=fake_opener
1195
- )
1196
-
1197
- def test_tooling_query_v66_in_url(self):
1198
- captured: list = []
1199
- body = json.dumps({"records": []}).encode("utf-8")
1200
- with self._install_capturing_opener(captured, body):
1201
- rest_client.tooling_query(
1202
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1203
- "SELECT Id FROM ApexClass",
1204
- api_version="v66.0",
1205
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1206
- )
1207
- self.assertEqual(len(captured), 1)
1208
- url = captured[0].full_url
1209
- self.assertIn("/services/data/v66.0/tooling/query/?q=", url)
1210
- # And the old hardcoded version must NOT appear — otherwise the
1211
- # substitution silently failed.
1212
- self.assertNotIn("v60.0", url)
1213
-
1214
- def test_data_query_v66_in_url(self):
1215
- captured: list = []
1216
- body = json.dumps({"records": []}).encode("utf-8")
1217
- with self._install_capturing_opener(captured, body):
1218
- rest_client.data_query(
1219
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1220
- "SELECT Id FROM BotDefinition LIMIT 1",
1221
- api_version="v66.0",
1222
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1223
- )
1224
- url = captured[0].full_url
1225
- self.assertIn("/services/data/v66.0/query/?q=", url)
1226
- self.assertNotIn("v60.0", url)
1227
-
1228
- def test_different_api_version_per_call(self):
1229
- """Two calls with different `api_version` land on distinct URLs —
1230
- proves the value is NOT cached in module-level state between
1231
- invocations."""
1232
- captured: list = []
1233
- body = json.dumps({"records": []}).encode("utf-8")
1234
- with self._install_capturing_opener(captured, body):
1235
- rest_client.tooling_query(
1236
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1237
- "SELECT Id FROM ApexClass",
1238
- api_version="v60.0",
1239
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1240
- )
1241
- rest_client.tooling_query(
1242
- rest_client.static_creds("https://example.salesforce.com", "tok"),
1243
- "SELECT Id FROM ApexClass",
1244
- api_version="v66.0",
1245
- on_401_refresh=lambda: ("https://example.salesforce.com", "new"),
1246
- )
1247
- self.assertEqual(len(captured), 2)
1248
- self.assertIn("/services/data/v60.0/tooling/query/", captured[0].full_url)
1249
- self.assertIn("/services/data/v66.0/tooling/query/", captured[1].full_url)
1250
-
1251
-
1252
- if __name__ == "__main__":
1253
- unittest.main()