@salesforce/afv-skills 1.22.0 → 1.24.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 (1675) hide show
  1. package/package.json +1 -1
  2. package/skills/{developing-datacloud-code-extension → data360-code-extension-generate}/SKILL.md +7 -7
  3. package/skills/{developing-datacloud-code-extension → data360-code-extension-generate}/references/README.md +7 -7
  4. package/skills/{developing-datacloud-code-extension → data360-code-extension-generate}/references/quick-reference.md +2 -2
  5. package/skills/{getting-datacloud-schema → data360-schema-get}/SKILL.md +26 -26
  6. package/skills/{getting-datacloud-schema → data360-schema-get}/references/README.md +9 -9
  7. package/skills/activating-datacloud/README.md +0 -39
  8. package/skills/activating-datacloud/SKILL.md +0 -117
  9. package/skills/analyzing-omnistudio-dependencies/CREDITS.md +0 -5
  10. package/skills/analyzing-omnistudio-dependencies/SKILL.md +0 -476
  11. package/skills/analyzing-omnistudio-dependencies/references/dependency-patterns.md +0 -508
  12. package/skills/analyzing-omnistudio-dependencies/references/namespace-guide.md +0 -300
  13. package/skills/applying-cms-brand/SKILL.md +0 -170
  14. package/skills/applying-slds/SKILL.md +0 -322
  15. package/skills/applying-slds/checklists.md +0 -83
  16. package/skills/applying-slds/examples.md +0 -283
  17. package/skills/applying-slds/guidance/README.md +0 -83
  18. package/skills/applying-slds/guidance/blueprints-index.md +0 -213
  19. package/skills/applying-slds/guidance/icons-guidance.md +0 -186
  20. package/skills/applying-slds/guidance/overviews/borders.md +0 -236
  21. package/skills/applying-slds/guidance/overviews/color.md +0 -266
  22. package/skills/applying-slds/guidance/overviews/display-density.md +0 -366
  23. package/skills/applying-slds/guidance/overviews/icons.md +0 -240
  24. package/skills/applying-slds/guidance/overviews/illustrations.md +0 -235
  25. package/skills/applying-slds/guidance/overviews/shadows.md +0 -176
  26. package/skills/applying-slds/guidance/overviews/spacing.md +0 -216
  27. package/skills/applying-slds/guidance/overviews/typography.md +0 -323
  28. package/skills/applying-slds/guidance/overviews/utilities.md +0 -542
  29. package/skills/applying-slds/guidance/slds-development-guide.md +0 -288
  30. package/skills/applying-slds/guidance/styling-hooks/borders.md +0 -202
  31. package/skills/applying-slds/guidance/styling-hooks/color/expressive-palette-hooks.md +0 -153
  32. package/skills/applying-slds/guidance/styling-hooks/color/index.md +0 -171
  33. package/skills/applying-slds/guidance/styling-hooks/color/semantic/accent-hooks.md +0 -204
  34. package/skills/applying-slds/guidance/styling-hooks/color/semantic/feedback-hooks.md +0 -768
  35. package/skills/applying-slds/guidance/styling-hooks/color/semantic/surface-hooks.md +0 -337
  36. package/skills/applying-slds/guidance/styling-hooks/color/system-hooks.md +0 -132
  37. package/skills/applying-slds/guidance/styling-hooks/index.md +0 -327
  38. package/skills/applying-slds/guidance/styling-hooks/shadows.md +0 -238
  39. package/skills/applying-slds/guidance/styling-hooks/spacing.md +0 -254
  40. package/skills/applying-slds/guidance/styling-hooks/typography.md +0 -448
  41. package/skills/applying-slds/guidance/utilities/alignment.md +0 -119
  42. package/skills/applying-slds/guidance/utilities/borders.md +0 -131
  43. package/skills/applying-slds/guidance/utilities/box.md +0 -125
  44. package/skills/applying-slds/guidance/utilities/color.md +0 -165
  45. package/skills/applying-slds/guidance/utilities/dark-mode.md +0 -111
  46. package/skills/applying-slds/guidance/utilities/description-list.md +0 -168
  47. package/skills/applying-slds/guidance/utilities/floats.md +0 -117
  48. package/skills/applying-slds/guidance/utilities/grid.md +0 -264
  49. package/skills/applying-slds/guidance/utilities/horizontal-list.md +0 -110
  50. package/skills/applying-slds/guidance/utilities/hyphenation.md +0 -84
  51. package/skills/applying-slds/guidance/utilities/index.md +0 -205
  52. package/skills/applying-slds/guidance/utilities/interactions.md +0 -89
  53. package/skills/applying-slds/guidance/utilities/layout.md +0 -109
  54. package/skills/applying-slds/guidance/utilities/line-clamp.md +0 -131
  55. package/skills/applying-slds/guidance/utilities/margin.md +0 -155
  56. package/skills/applying-slds/guidance/utilities/media-object.md +0 -161
  57. package/skills/applying-slds/guidance/utilities/name-value-list.md +0 -152
  58. package/skills/applying-slds/guidance/utilities/padding.md +0 -155
  59. package/skills/applying-slds/guidance/utilities/position.md +0 -177
  60. package/skills/applying-slds/guidance/utilities/print.md +0 -114
  61. package/skills/applying-slds/guidance/utilities/scrollable.md +0 -126
  62. package/skills/applying-slds/guidance/utilities/sizing.md +0 -190
  63. package/skills/applying-slds/guidance/utilities/themes.md +0 -121
  64. package/skills/applying-slds/guidance/utilities/truncate.md +0 -127
  65. package/skills/applying-slds/guidance/utilities/typography.md +0 -166
  66. package/skills/applying-slds/guidance/utilities/vertical-list.md +0 -166
  67. package/skills/applying-slds/guidance/utilities/visibility.md +0 -228
  68. package/skills/applying-slds/metadata/README.md +0 -84
  69. package/skills/applying-slds/metadata/blueprints/components/accordion.yaml +0 -304
  70. package/skills/applying-slds/metadata/blueprints/components/activity-timeline.yaml +0 -92
  71. package/skills/applying-slds/metadata/blueprints/components/alert.yaml +0 -103
  72. package/skills/applying-slds/metadata/blueprints/components/app-launcher.yaml +0 -94
  73. package/skills/applying-slds/metadata/blueprints/components/avatar-group.yaml +0 -81
  74. package/skills/applying-slds/metadata/blueprints/components/avatar.yaml +0 -97
  75. package/skills/applying-slds/metadata/blueprints/components/badges.yaml +0 -102
  76. package/skills/applying-slds/metadata/blueprints/components/brand-band.yaml +0 -198
  77. package/skills/applying-slds/metadata/blueprints/components/breadcrumbs.yaml +0 -95
  78. package/skills/applying-slds/metadata/blueprints/components/builder-header.yaml +0 -192
  79. package/skills/applying-slds/metadata/blueprints/components/button-groups.yaml +0 -82
  80. package/skills/applying-slds/metadata/blueprints/components/button-icons.yaml +0 -295
  81. package/skills/applying-slds/metadata/blueprints/components/buttons.yaml +0 -230
  82. package/skills/applying-slds/metadata/blueprints/components/cards.yaml +0 -124
  83. package/skills/applying-slds/metadata/blueprints/components/carousel.yaml +0 -140
  84. package/skills/applying-slds/metadata/blueprints/components/chat.yaml +0 -179
  85. package/skills/applying-slds/metadata/blueprints/components/checkbox-button-group.yaml +0 -192
  86. package/skills/applying-slds/metadata/blueprints/components/checkbox-button.yaml +0 -204
  87. package/skills/applying-slds/metadata/blueprints/components/checkbox-toggle.yaml +0 -177
  88. package/skills/applying-slds/metadata/blueprints/components/checkbox.yaml +0 -108
  89. package/skills/applying-slds/metadata/blueprints/components/color-picker.yaml +0 -172
  90. package/skills/applying-slds/metadata/blueprints/components/combobox.yaml +0 -136
  91. package/skills/applying-slds/metadata/blueprints/components/counter.yaml +0 -147
  92. package/skills/applying-slds/metadata/blueprints/components/data-tables.yaml +0 -157
  93. package/skills/applying-slds/metadata/blueprints/components/datepickers.yaml +0 -130
  94. package/skills/applying-slds/metadata/blueprints/components/datetime-picker.yaml +0 -155
  95. package/skills/applying-slds/metadata/blueprints/components/docked-composer.yaml +0 -201
  96. package/skills/applying-slds/metadata/blueprints/components/docked-form-footer.yaml +0 -161
  97. package/skills/applying-slds/metadata/blueprints/components/docked-utility-bar.yaml +0 -175
  98. package/skills/applying-slds/metadata/blueprints/components/drop-zone.yaml +0 -115
  99. package/skills/applying-slds/metadata/blueprints/components/dueling-picklist.yaml +0 -196
  100. package/skills/applying-slds/metadata/blueprints/components/dynamic-icons.yaml +0 -128
  101. package/skills/applying-slds/metadata/blueprints/components/dynamic-menu.yaml +0 -141
  102. package/skills/applying-slds/metadata/blueprints/components/expandable-section.yaml +0 -115
  103. package/skills/applying-slds/metadata/blueprints/components/expression.yaml +0 -143
  104. package/skills/applying-slds/metadata/blueprints/components/feeds.yaml +0 -125
  105. package/skills/applying-slds/metadata/blueprints/components/file-selector.yaml +0 -154
  106. package/skills/applying-slds/metadata/blueprints/components/files.yaml +0 -119
  107. package/skills/applying-slds/metadata/blueprints/components/form-element.yaml +0 -145
  108. package/skills/applying-slds/metadata/blueprints/components/global-header.yaml +0 -120
  109. package/skills/applying-slds/metadata/blueprints/components/global-navigation.yaml +0 -100
  110. package/skills/applying-slds/metadata/blueprints/components/icons.yaml +0 -138
  111. package/skills/applying-slds/metadata/blueprints/components/illustration.yaml +0 -205
  112. package/skills/applying-slds/metadata/blueprints/components/input.yaml +0 -151
  113. package/skills/applying-slds/metadata/blueprints/components/list-builder.yaml +0 -127
  114. package/skills/applying-slds/metadata/blueprints/components/lookups.yaml +0 -132
  115. package/skills/applying-slds/metadata/blueprints/components/map.yaml +0 -118
  116. package/skills/applying-slds/metadata/blueprints/components/menus.yaml +0 -134
  117. package/skills/applying-slds/metadata/blueprints/components/modals.yaml +0 -152
  118. package/skills/applying-slds/metadata/blueprints/components/notifications.yaml +0 -88
  119. package/skills/applying-slds/metadata/blueprints/components/page-headers.yaml +0 -135
  120. package/skills/applying-slds/metadata/blueprints/components/panels.yaml +0 -149
  121. package/skills/applying-slds/metadata/blueprints/components/path.yaml +0 -154
  122. package/skills/applying-slds/metadata/blueprints/components/picklist.yaml +0 -125
  123. package/skills/applying-slds/metadata/blueprints/components/pills.yaml +0 -154
  124. package/skills/applying-slds/metadata/blueprints/components/popovers.yaml +0 -120
  125. package/skills/applying-slds/metadata/blueprints/components/progress-bar.yaml +0 -110
  126. package/skills/applying-slds/metadata/blueprints/components/progress-indicator.yaml +0 -133
  127. package/skills/applying-slds/metadata/blueprints/components/progress-ring.yaml +0 -102
  128. package/skills/applying-slds/metadata/blueprints/components/prompt.yaml +0 -126
  129. package/skills/applying-slds/metadata/blueprints/components/publishers.yaml +0 -178
  130. package/skills/applying-slds/metadata/blueprints/components/radio-button-group.yaml +0 -172
  131. package/skills/applying-slds/metadata/blueprints/components/radio-group.yaml +0 -112
  132. package/skills/applying-slds/metadata/blueprints/components/rich-text-editor.yaml +0 -135
  133. package/skills/applying-slds/metadata/blueprints/components/scoped-notifications.yaml +0 -188
  134. package/skills/applying-slds/metadata/blueprints/components/scoped-tabs.yaml +0 -97
  135. package/skills/applying-slds/metadata/blueprints/components/select.yaml +0 -127
  136. package/skills/applying-slds/metadata/blueprints/components/setup-assistant.yaml +0 -152
  137. package/skills/applying-slds/metadata/blueprints/components/slider.yaml +0 -111
  138. package/skills/applying-slds/metadata/blueprints/components/spinners.yaml +0 -135
  139. package/skills/applying-slds/metadata/blueprints/components/split-view.yaml +0 -112
  140. package/skills/applying-slds/metadata/blueprints/components/summary-detail.yaml +0 -103
  141. package/skills/applying-slds/metadata/blueprints/components/tabs.yaml +0 -138
  142. package/skills/applying-slds/metadata/blueprints/components/textarea.yaml +0 -116
  143. package/skills/applying-slds/metadata/blueprints/components/tiles.yaml +0 -108
  144. package/skills/applying-slds/metadata/blueprints/components/timepicker.yaml +0 -111
  145. package/skills/applying-slds/metadata/blueprints/components/toast.yaml +0 -154
  146. package/skills/applying-slds/metadata/blueprints/components/tooltips.yaml +0 -107
  147. package/skills/applying-slds/metadata/blueprints/components/tree-grid.yaml +0 -116
  148. package/skills/applying-slds/metadata/blueprints/components/trees.yaml +0 -116
  149. package/skills/applying-slds/metadata/blueprints/components/trial-bar.yaml +0 -112
  150. package/skills/applying-slds/metadata/blueprints/components/vertical-navigation.yaml +0 -130
  151. package/skills/applying-slds/metadata/blueprints/components/vertical-tabs.yaml +0 -140
  152. package/skills/applying-slds/metadata/blueprints/components/visual-picker.yaml +0 -150
  153. package/skills/applying-slds/metadata/blueprints/components/welcome-mat.yaml +0 -136
  154. package/skills/applying-slds/metadata/hooks-index.json +0 -6272
  155. package/skills/applying-slds/metadata/icon-metadata.json +0 -38466
  156. package/skills/applying-slds/metadata/utilities-index.json +0 -21912
  157. package/skills/applying-slds/references/component-selection.md +0 -112
  158. package/skills/applying-slds/references/icons-decision-guide.md +0 -124
  159. package/skills/applying-slds/references/styling-decision-guide.md +0 -228
  160. package/skills/applying-slds/references/utilities-quick-ref.md +0 -125
  161. package/skills/applying-slds/scripts/search-blueprints.cjs +0 -117
  162. package/skills/applying-slds/scripts/search-hooks.cjs +0 -139
  163. package/skills/applying-slds/scripts/search-icons.cjs +0 -174
  164. package/skills/applying-slds/scripts/search-utilities.cjs +0 -161
  165. package/skills/building-mobile-apps/SKILL.md +0 -69
  166. package/skills/building-omnistudio-callable-apex/CREDITS.md +0 -9
  167. package/skills/building-omnistudio-callable-apex/README.md +0 -80
  168. package/skills/building-omnistudio-callable-apex/SKILL.md +0 -275
  169. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_openinterface.cls +0 -40
  170. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_vanilla.cls +0 -32
  171. package/skills/building-omnistudio-callable-apex/assets/pattern_migration.cls +0 -54
  172. package/skills/building-omnistudio-callable-apex/assets/pattern_openinterface.cls +0 -45
  173. package/skills/building-omnistudio-callable-apex/assets/pattern_test_class.cls +0 -65
  174. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/IndustriesCallableException.cls +0 -7
  175. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallable.cls +0 -115
  176. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallableTest.cls +0 -189
  177. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/TRANSCRIPT.md +0 -115
  178. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/IndustriesCallableException.cls +0 -7
  179. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallable.cls +0 -74
  180. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallableTest.cls +0 -146
  181. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomRemoteClass.cls +0 -16
  182. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/TRANSCRIPT.md +0 -120
  183. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/IndustriesCallableException.cls +0 -7
  184. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallable.cls +0 -73
  185. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallableTest.cls +0 -128
  186. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomVlocityOpenInterface2.cls +0 -23
  187. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/TRANSCRIPT.md +0 -75
  188. package/skills/building-omnistudio-datamapper/CREDITS.md +0 -5
  189. package/skills/building-omnistudio-datamapper/SKILL.md +0 -269
  190. package/skills/building-omnistudio-datamapper/assets/completion-summary-template.md +0 -28
  191. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-extract.json +0 -6
  192. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-item.json +0 -12
  193. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-load.json +0 -6
  194. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-transform.json +0 -6
  195. package/skills/building-omnistudio-datamapper/references/best-practices.md +0 -277
  196. package/skills/building-omnistudio-datamapper/references/naming-conventions.md +0 -145
  197. package/skills/building-omnistudio-flexcard/CREDITS.md +0 -5
  198. package/skills/building-omnistudio-flexcard/SKILL.md +0 -324
  199. package/skills/building-omnistudio-flexcard/assets/omni-ui-card.json +0 -10
  200. package/skills/building-omnistudio-flexcard/references/best-practices.md +0 -291
  201. package/skills/building-omnistudio-flexcard/references/data-binding-guide.md +0 -311
  202. package/skills/building-omnistudio-flexcard/references/scoring-rubric.md +0 -66
  203. package/skills/building-omnistudio-flexcard/scripts/flexcard-commands.sh +0 -24
  204. package/skills/building-omnistudio-integration-procedure/CREDITS.md +0 -5
  205. package/skills/building-omnistudio-integration-procedure/SKILL.md +0 -274
  206. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-dr-extract.json +0 -10
  207. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-set-values.json +0 -10
  208. package/skills/building-omnistudio-integration-procedure/assets/omni-process-ip.json +0 -12
  209. package/skills/building-omnistudio-integration-procedure/assets/scoring-report-format.txt +0 -14
  210. package/skills/building-omnistudio-integration-procedure/references/best-practices.md +0 -388
  211. package/skills/building-omnistudio-integration-procedure/references/element-types.md +0 -588
  212. package/skills/building-omnistudio-integration-procedure/scripts/cli-commands.sh +0 -18
  213. package/skills/building-omnistudio-omniscript/CREDITS.md +0 -5
  214. package/skills/building-omnistudio-omniscript/SKILL.md +0 -366
  215. package/skills/building-omnistudio-omniscript/assets/omni-process-element-step.json +0 -10
  216. package/skills/building-omnistudio-omniscript/assets/omni-process-element-text-block.json +0 -11
  217. package/skills/building-omnistudio-omniscript/assets/omni-process-omniscript.json +0 -12
  218. package/skills/building-omnistudio-omniscript/references/best-practices.md +0 -480
  219. package/skills/building-omnistudio-omniscript/references/element-types.md +0 -1172
  220. package/skills/building-omnistudio-omniscript/scripts/check-duplicate-omniscript.sh +0 -13
  221. package/skills/building-omnistudio-omniscript/scripts/cli-reference.sh +0 -21
  222. package/skills/building-omnistudio-omniscript/scripts/deploy-omniscript.sh +0 -29
  223. package/skills/building-sf-integrations/CREDITS.md +0 -5
  224. package/skills/building-sf-integrations/README.md +0 -95
  225. package/skills/building-sf-integrations/SKILL.md +0 -191
  226. package/skills/building-sf-integrations/assets/callouts/callout-retry-handler.cls +0 -167
  227. package/skills/building-sf-integrations/assets/callouts/http-response-handler.cls +0 -257
  228. package/skills/building-sf-integrations/assets/callouts/rest-queueable-callout.cls +0 -262
  229. package/skills/building-sf-integrations/assets/callouts/rest-sync-callout.cls +0 -211
  230. package/skills/building-sf-integrations/assets/cdc/cdc-handler.cls +0 -246
  231. package/skills/building-sf-integrations/assets/cdc/cdc-subscriber-trigger.trigger +0 -139
  232. package/skills/building-sf-integrations/assets/endpoint-security/example.cspTrustedSite-meta.xml +0 -58
  233. package/skills/building-sf-integrations/assets/endpoint-security/example.remoteSite-meta.xml +0 -39
  234. package/skills/building-sf-integrations/assets/external-credentials/jwt-external-credential.externalCredential-meta.xml +0 -90
  235. package/skills/building-sf-integrations/assets/external-credentials/oauth-external-credential.externalCredential-meta.xml +0 -87
  236. package/skills/building-sf-integrations/assets/external-services/external-service-operations.md +0 -221
  237. package/skills/building-sf-integrations/assets/external-services/openapi-registration.externalServiceRegistration-meta.xml +0 -193
  238. package/skills/building-sf-integrations/assets/named-credentials/certificate-auth.namedCredential-meta.xml +0 -62
  239. package/skills/building-sf-integrations/assets/named-credentials/custom-auth.namedCredential-meta.xml +0 -71
  240. package/skills/building-sf-integrations/assets/named-credentials/oauth-client-credentials.namedCredential-meta.xml +0 -51
  241. package/skills/building-sf-integrations/assets/named-credentials/oauth-jwt-bearer.namedCredential-meta.xml +0 -67
  242. package/skills/building-sf-integrations/assets/platform-events/event-publisher.cls +0 -191
  243. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-action.cls +0 -295
  244. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-trigger.trigger +0 -108
  245. package/skills/building-sf-integrations/assets/platform-events/platform-event-definition.object-meta.xml +0 -124
  246. package/skills/building-sf-integrations/assets/soap/soap-callout-service.cls +0 -186
  247. package/skills/building-sf-integrations/assets/soap/wsdl2apex-guide.md +0 -213
  248. package/skills/building-sf-integrations/hooks/scripts/suggest_credential_setup.py +0 -271
  249. package/skills/building-sf-integrations/hooks/scripts/validate_integration.py +0 -363
  250. package/skills/building-sf-integrations/references/callout-patterns.md +0 -719
  251. package/skills/building-sf-integrations/references/cdc-guide.md +0 -288
  252. package/skills/building-sf-integrations/references/cli-reference.md +0 -94
  253. package/skills/building-sf-integrations/references/event-driven-architecture-guide.md +0 -266
  254. package/skills/building-sf-integrations/references/event-patterns.md +0 -838
  255. package/skills/building-sf-integrations/references/external-services-guide.md +0 -303
  256. package/skills/building-sf-integrations/references/messaging-api-v2.md +0 -609
  257. package/skills/building-sf-integrations/references/named-credentials-automation.md +0 -201
  258. package/skills/building-sf-integrations/references/named-credentials-guide.md +0 -173
  259. package/skills/building-sf-integrations/references/platform-events-guide.md +0 -288
  260. package/skills/building-sf-integrations/references/rest-callout-patterns.md +0 -288
  261. package/skills/building-sf-integrations/references/scoring-rubric.md +0 -59
  262. package/skills/building-sf-integrations/references/security-best-practices.md +0 -248
  263. package/skills/building-sf-integrations/scripts/README.md +0 -100
  264. package/skills/building-sf-integrations/scripts/configure-named-credential.sh +0 -236
  265. package/skills/building-sf-integrations/scripts/set-api-credential.sh +0 -146
  266. package/skills/building-sf-integrations/scripts/templates/setup-credentials-with-csp.sh +0 -158
  267. package/skills/building-ui-bundle-app/SKILL.md +0 -350
  268. package/skills/building-ui-bundle-frontend/SKILL.md +0 -135
  269. package/skills/building-ui-bundle-frontend/implementation/component.md +0 -78
  270. package/skills/building-ui-bundle-frontend/implementation/header-footer.md +0 -132
  271. package/skills/building-ui-bundle-frontend/implementation/page.md +0 -93
  272. package/skills/configuring-code-analyzer/SKILL.md +0 -482
  273. package/skills/configuring-code-analyzer/examples/apex-project-config.yml +0 -41
  274. package/skills/configuring-code-analyzer/examples/ci-github-actions.yml +0 -96
  275. package/skills/configuring-code-analyzer/examples/fullstack-project-config.yml +0 -46
  276. package/skills/configuring-code-analyzer/examples/lwc-project-config.yml +0 -26
  277. package/skills/configuring-code-analyzer/references/ci-cd-templates.md +0 -648
  278. package/skills/configuring-code-analyzer/references/config-schema.md +0 -257
  279. package/skills/configuring-code-analyzer/references/diagnostic-flow.md +0 -70
  280. package/skills/configuring-code-analyzer/references/engine-prerequisites.md +0 -276
  281. package/skills/configuring-code-analyzer/references/rule-name-resolution.md +0 -67
  282. package/skills/configuring-code-analyzer/references/troubleshooting.md +0 -298
  283. package/skills/configuring-code-analyzer/scripts/check-prerequisites.sh +0 -189
  284. package/skills/configuring-code-analyzer/scripts/generate-config.sh +0 -143
  285. package/skills/configuring-code-analyzer/scripts/validate-config.sh +0 -153
  286. package/skills/configuring-connected-apps/CREDITS.md +0 -3
  287. package/skills/configuring-connected-apps/README.md +0 -99
  288. package/skills/configuring-connected-apps/SKILL.md +0 -223
  289. package/skills/configuring-connected-apps/assets/connected-app-basic.xml +0 -29
  290. package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +0 -62
  291. package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +0 -49
  292. package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +0 -65
  293. package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +0 -36
  294. package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +0 -36
  295. package/skills/configuring-connected-apps/assets/eca-policies.xml +0 -36
  296. package/skills/configuring-connected-apps/assets/external-client-app.xml +0 -35
  297. package/skills/configuring-connected-apps/references/example-usage.md +0 -256
  298. package/skills/configuring-connected-apps/references/migration-guide.md +0 -328
  299. package/skills/configuring-connected-apps/references/oauth-flows-reference.md +0 -660
  300. package/skills/configuring-connected-apps/references/security-checklist.md +0 -209
  301. package/skills/configuring-connected-apps/references/testing-validation-guide.md +0 -275
  302. package/skills/connecting-datacloud/CREDITS.md +0 -5
  303. package/skills/connecting-datacloud/README.md +0 -59
  304. package/skills/connecting-datacloud/SKILL.md +0 -154
  305. package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +0 -15
  306. package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +0 -5
  307. package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +0 -31
  308. package/skills/connecting-datacloud/examples/connections/redshift.json +0 -16
  309. package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +0 -20
  310. package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +0 -42
  311. package/skills/creating-b2b-commerce-store/SKILL.md +0 -167
  312. package/skills/creating-b2b-commerce-store/references/store-vs-storefront.md +0 -169
  313. package/skills/debugging-apex-logs/CREDITS.md +0 -22
  314. package/skills/debugging-apex-logs/README.md +0 -74
  315. package/skills/debugging-apex-logs/SKILL.md +0 -171
  316. package/skills/debugging-apex-logs/assets/benchmarking-template.cls +0 -327
  317. package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +0 -307
  318. package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +0 -219
  319. package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +0 -252
  320. package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +0 -157
  321. package/skills/debugging-apex-logs/references/analysis-playbook.md +0 -53
  322. package/skills/debugging-apex-logs/references/benchmarking-guide.md +0 -287
  323. package/skills/debugging-apex-logs/references/cli-commands.md +0 -368
  324. package/skills/debugging-apex-logs/references/common-issues.md +0 -68
  325. package/skills/debugging-apex-logs/references/debug-log-reference.md +0 -328
  326. package/skills/debugging-apex-logs/references/log-analysis-tools.md +0 -248
  327. package/skills/debugging-apex-logs/references/scoring-rubric.md +0 -21
  328. package/skills/deploying-metadata/CREDITS.md +0 -25
  329. package/skills/deploying-metadata/README.md +0 -104
  330. package/skills/deploying-metadata/SKILL.md +0 -213
  331. package/skills/deploying-metadata/assets/destructiveChanges.xml +0 -143
  332. package/skills/deploying-metadata/assets/package.xml +0 -121
  333. package/skills/deploying-metadata/references/agent-deployment-guide.md +0 -628
  334. package/skills/deploying-metadata/references/deploy.sh +0 -73
  335. package/skills/deploying-metadata/references/deployment-report-template.md +0 -89
  336. package/skills/deploying-metadata/references/deployment-workflows.md +0 -395
  337. package/skills/deploying-metadata/references/orchestration.md +0 -183
  338. package/skills/deploying-metadata/references/trigger-deployment-safety.md +0 -376
  339. package/skills/deploying-omnistudio-datapacks/CREDITS.md +0 -5
  340. package/skills/deploying-omnistudio-datapacks/README.md +0 -88
  341. package/skills/deploying-omnistudio-datapacks/SKILL.md +0 -173
  342. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +0 -124
  343. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +0 -11
  344. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +0 -142
  345. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +0 -10
  346. package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +0 -42
  347. package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +0 -24
  348. package/skills/deploying-ui-bundle/SKILL.md +0 -79
  349. package/skills/developing-agentforce/README.md +0 -112
  350. package/skills/developing-agentforce/SKILL.md +0 -518
  351. package/skills/developing-agentforce/assets/README-legacy.md +0 -89
  352. package/skills/developing-agentforce/assets/agent-spec-template.md +0 -90
  353. package/skills/developing-agentforce/assets/agents/README.md +0 -45
  354. package/skills/developing-agentforce/assets/agents/hello-world.agent +0 -60
  355. package/skills/developing-agentforce/assets/agents/multi-subagent.agent +0 -105
  356. package/skills/developing-agentforce/assets/agents/order-service.agent +0 -272
  357. package/skills/developing-agentforce/assets/agents/production-faq.agent +0 -101
  358. package/skills/developing-agentforce/assets/agents/production-faq.bundle-meta.xml +0 -4
  359. package/skills/developing-agentforce/assets/agents/simple-qa.agent +0 -72
  360. package/skills/developing-agentforce/assets/agents/verification-gate.agent +0 -280
  361. package/skills/developing-agentforce/assets/apex/models-api-queueable.cls +0 -225
  362. package/skills/developing-agentforce/assets/bundle-meta.xml +0 -23
  363. package/skills/developing-agentforce/assets/components/apex-action.agent +0 -52
  364. package/skills/developing-agentforce/assets/components/error-handling.agent +0 -58
  365. package/skills/developing-agentforce/assets/components/escalation-setup.agent +0 -169
  366. package/skills/developing-agentforce/assets/components/flow-action.agent +0 -66
  367. package/skills/developing-agentforce/assets/components/n-ary-conditions.agent +0 -110
  368. package/skills/developing-agentforce/assets/components/subagent-with-actions.agent +0 -40
  369. package/skills/developing-agentforce/assets/deterministic-routing.agent +0 -166
  370. package/skills/developing-agentforce/assets/escalation-pattern.agent +0 -209
  371. package/skills/developing-agentforce/assets/flow-action-lookup.agent +0 -115
  372. package/skills/developing-agentforce/assets/hub-and-spoke.agent +0 -104
  373. package/skills/developing-agentforce/assets/invocable-apex-template.cls +0 -187
  374. package/skills/developing-agentforce/assets/local-info-agent-annotated.agent +0 -355
  375. package/skills/developing-agentforce/assets/metadata/basic-prompt-template.promptTemplate-meta.xml +0 -109
  376. package/skills/developing-agentforce/assets/metadata/genai-function-apex.xml +0 -92
  377. package/skills/developing-agentforce/assets/metadata/genai-function-flow.xml +0 -57
  378. package/skills/developing-agentforce/assets/metadata/genai-plugin.xml +0 -72
  379. package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +0 -348
  380. package/skills/developing-agentforce/assets/metadata/record-grounded-prompt.promptTemplate-meta.xml +0 -136
  381. package/skills/developing-agentforce/assets/minimal-starter.agent +0 -42
  382. package/skills/developing-agentforce/assets/patterns/README.md +0 -254
  383. package/skills/developing-agentforce/assets/patterns/action-callbacks.agent +0 -178
  384. package/skills/developing-agentforce/assets/patterns/advanced-input-bindings.agent +0 -141
  385. package/skills/developing-agentforce/assets/patterns/bidirectional-routing.agent +0 -156
  386. package/skills/developing-agentforce/assets/patterns/critical-input-collection.agent +0 -244
  387. package/skills/developing-agentforce/assets/patterns/delegation-routing.agent +0 -89
  388. package/skills/developing-agentforce/assets/patterns/lifecycle-events.agent +0 -127
  389. package/skills/developing-agentforce/assets/patterns/llm-controlled-actions.agent +0 -184
  390. package/skills/developing-agentforce/assets/patterns/multi-step-workflow.agent +0 -282
  391. package/skills/developing-agentforce/assets/patterns/open-gate-routing.agent +0 -287
  392. package/skills/developing-agentforce/assets/patterns/procedural-instructions.agent +0 -273
  393. package/skills/developing-agentforce/assets/patterns/prompt-template-action.agent +0 -188
  394. package/skills/developing-agentforce/assets/patterns/system-instruction-overrides.agent +0 -293
  395. package/skills/developing-agentforce/assets/prompt-rag-search.agent +0 -131
  396. package/skills/developing-agentforce/assets/template-multi-subagent.agent +0 -160
  397. package/skills/developing-agentforce/assets/template-single-subagent.agent +0 -81
  398. package/skills/developing-agentforce/assets/verification-gate.agent +0 -208
  399. package/skills/developing-agentforce/references/action-prompt-templates.md +0 -164
  400. package/skills/developing-agentforce/references/actions-reference.md +0 -612
  401. package/skills/developing-agentforce/references/agent-access-guide.md +0 -72
  402. package/skills/developing-agentforce/references/agent-design-and-spec-creation.md +0 -1010
  403. package/skills/developing-agentforce/references/agent-metadata-and-lifecycle.md +0 -575
  404. package/skills/developing-agentforce/references/agent-script-core-language.md +0 -1255
  405. package/skills/developing-agentforce/references/agent-subagent-map-diagrams.md +0 -323
  406. package/skills/developing-agentforce/references/agent-user-setup.md +0 -529
  407. package/skills/developing-agentforce/references/agent-validation-and-debugging.md +0 -805
  408. package/skills/developing-agentforce/references/architecture-patterns.md +0 -158
  409. package/skills/developing-agentforce/references/complex-data-types.md +0 -57
  410. package/skills/developing-agentforce/references/deploy-reference.md +0 -134
  411. package/skills/developing-agentforce/references/discover-reference.md +0 -102
  412. package/skills/developing-agentforce/references/examples.md +0 -350
  413. package/skills/developing-agentforce/references/feature-validity.md +0 -43
  414. package/skills/developing-agentforce/references/instruction-resolution.md +0 -545
  415. package/skills/developing-agentforce/references/known-issues.md +0 -353
  416. package/skills/developing-agentforce/references/minimal-examples.md +0 -67
  417. package/skills/developing-agentforce/references/production-gotchas.md +0 -300
  418. package/skills/developing-agentforce/references/safety-review-reference.md +0 -145
  419. package/skills/developing-agentforce/references/salesforce-cli-for-agents.md +0 -395
  420. package/skills/developing-agentforce/references/scaffold-reference.md +0 -153
  421. package/skills/developing-agentforce/references/scoring-rubric.md +0 -24
  422. package/skills/developing-agentforce/references/version-history.md +0 -23
  423. package/skills/dx-app-analytics-use/SKILL.md +0 -135
  424. package/skills/fetching-salesforce-docs/README.md +0 -66
  425. package/skills/fetching-salesforce-docs/SKILL.md +0 -208
  426. package/skills/fetching-salesforce-docs/requirements.txt +0 -2
  427. package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +0 -497
  428. package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +0 -357
  429. package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +0 -58
  430. package/skills/generating-apex/CREDITS.md +0 -5
  431. package/skills/generating-apex/SKILL.md +0 -409
  432. package/skills/generating-apex/assets/abstract.cls +0 -131
  433. package/skills/generating-apex/assets/batch.cls +0 -124
  434. package/skills/generating-apex/assets/domain.cls +0 -101
  435. package/skills/generating-apex/assets/dto.cls +0 -107
  436. package/skills/generating-apex/assets/exception.cls +0 -50
  437. package/skills/generating-apex/assets/interface.cls +0 -24
  438. package/skills/generating-apex/assets/invocable.cls +0 -114
  439. package/skills/generating-apex/assets/queueable.cls +0 -91
  440. package/skills/generating-apex/assets/rest-resource.cls +0 -300
  441. package/skills/generating-apex/assets/schedulable.cls +0 -74
  442. package/skills/generating-apex/assets/selector.cls +0 -91
  443. package/skills/generating-apex/assets/service.cls +0 -68
  444. package/skills/generating-apex/assets/trigger.cls +0 -45
  445. package/skills/generating-apex/assets/utility.cls +0 -96
  446. package/skills/generating-apex/references/AccountDeduplicationBatch.cls +0 -147
  447. package/skills/generating-apex/references/AccountSelector.cls +0 -192
  448. package/skills/generating-apex/references/AccountService.cls +0 -200
  449. package/skills/generating-apex-test/CREDITS.md +0 -5
  450. package/skills/generating-apex-test/SKILL.md +0 -201
  451. package/skills/generating-apex-test/assets/test-class-template.cls +0 -93
  452. package/skills/generating-apex-test/assets/test-data-factory-template.cls +0 -111
  453. package/skills/generating-apex-test/references/assertion-patterns.md +0 -108
  454. package/skills/generating-apex-test/references/async-testing.md +0 -193
  455. package/skills/generating-apex-test/references/mocking-patterns.md +0 -220
  456. package/skills/generating-apex-test/references/test-data-factory.md +0 -75
  457. package/skills/generating-custom-application/SKILL.md +0 -211
  458. package/skills/generating-custom-field/SKILL.md +0 -503
  459. package/skills/generating-custom-lightning-type/SKILL.md +0 -180
  460. package/skills/generating-custom-lightning-type/assets/primitive-types-and-constraints.md +0 -41
  461. package/skills/generating-custom-lightning-type/references/widget-rendition.md +0 -124
  462. package/skills/generating-custom-object/SKILL.md +0 -240
  463. package/skills/generating-custom-tab/SKILL.md +0 -156
  464. package/skills/generating-flexipage/SKILL.md +0 -522
  465. package/skills/generating-flow/SKILL.md +0 -372
  466. package/skills/generating-lightning-app/SKILL.md +0 -423
  467. package/skills/generating-list-view/SKILL.md +0 -218
  468. package/skills/generating-lwc-components/CREDITS.md +0 -5
  469. package/skills/generating-lwc-components/README.md +0 -126
  470. package/skills/generating-lwc-components/SKILL.md +0 -190
  471. package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +0 -327
  472. package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +0 -72
  473. package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +0 -111
  474. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +0 -163
  475. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +0 -137
  476. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +0 -111
  477. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +0 -367
  478. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +0 -63
  479. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +0 -154
  480. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +0 -348
  481. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +0 -87
  482. package/skills/generating-lwc-components/assets/form-component/formComponent.html +0 -165
  483. package/skills/generating-lwc-components/assets/form-component/formComponent.js +0 -275
  484. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +0 -100
  485. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +0 -336
  486. package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +0 -371
  487. package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +0 -71
  488. package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +0 -103
  489. package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +0 -181
  490. package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +0 -85
  491. package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +0 -199
  492. package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +0 -55
  493. package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +0 -199
  494. package/skills/generating-lwc-components/assets/state-store/store.js +0 -282
  495. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +0 -65
  496. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +0 -95
  497. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +0 -75
  498. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +0 -301
  499. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +0 -295
  500. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +0 -71
  501. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +0 -316
  502. package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +0 -295
  503. package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +0 -347
  504. package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +0 -74
  505. package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +0 -111
  506. package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +0 -127
  507. package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +0 -294
  508. package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +0 -22
  509. package/skills/generating-lwc-components/hooks/scripts/template_validator.py +0 -332
  510. package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +0 -595
  511. package/skills/generating-lwc-components/references/accessibility-guide.md +0 -843
  512. package/skills/generating-lwc-components/references/advanced-features.md +0 -108
  513. package/skills/generating-lwc-components/references/async-notification-patterns.md +0 -661
  514. package/skills/generating-lwc-components/references/cli-commands.md +0 -545
  515. package/skills/generating-lwc-components/references/component-patterns.md +0 -1476
  516. package/skills/generating-lwc-components/references/flow-integration-guide.md +0 -675
  517. package/skills/generating-lwc-components/references/jest-testing.md +0 -1011
  518. package/skills/generating-lwc-components/references/lms-guide.md +0 -860
  519. package/skills/generating-lwc-components/references/lwc-best-practices.md +0 -1310
  520. package/skills/generating-lwc-components/references/performance-guide.md +0 -861
  521. package/skills/generating-lwc-components/references/scoring-and-testing.md +0 -116
  522. package/skills/generating-lwc-components/references/slds-blueprints.json +0 -14389
  523. package/skills/generating-lwc-components/references/slds-design-guide.md +0 -166
  524. package/skills/generating-lwc-components/references/state-management.md +0 -642
  525. package/skills/generating-lwc-components/references/template-anti-patterns.md +0 -948
  526. package/skills/generating-lwc-components/references/triangle-pattern.md +0 -365
  527. package/skills/generating-lwc-components/scripts/local-dev-preview.sh +0 -34
  528. package/skills/generating-mermaid-diagrams/CREDITS.md +0 -46
  529. package/skills/generating-mermaid-diagrams/README.md +0 -114
  530. package/skills/generating-mermaid-diagrams/SKILL.md +0 -217
  531. package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +0 -313
  532. package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +0 -351
  533. package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +0 -317
  534. package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +0 -195
  535. package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +0 -262
  536. package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +0 -266
  537. package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +0 -261
  538. package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +0 -332
  539. package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +0 -237
  540. package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +0 -277
  541. package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +0 -343
  542. package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +0 -192
  543. package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +0 -209
  544. package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +0 -276
  545. package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +0 -217
  546. package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +0 -241
  547. package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +0 -387
  548. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +0 -197
  549. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +0 -152
  550. package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +0 -233
  551. package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +0 -295
  552. package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +0 -256
  553. package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +0 -281
  554. package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +0 -281
  555. package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +0 -322
  556. package/skills/generating-mermaid-diagrams/references/color-palette.md +0 -464
  557. package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +0 -313
  558. package/skills/generating-mermaid-diagrams/references/erd-conventions.md +0 -320
  559. package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +0 -434
  560. package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +0 -81
  561. package/skills/generating-mermaid-diagrams/references/preview-guide.md +0 -46
  562. package/skills/generating-mermaid-diagrams/references/usage-examples.md +0 -340
  563. package/skills/generating-mermaid-diagrams/scripts/README.md +0 -160
  564. package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +0 -654
  565. package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +0 -293
  566. package/skills/generating-permission-set/SKILL.md +0 -189
  567. package/skills/generating-ui-bundle-custom-app/SKILL.md +0 -93
  568. package/skills/generating-ui-bundle-custom-app/docs/configure-metadata-custom-application.md +0 -70
  569. package/skills/generating-ui-bundle-features/SKILL.md +0 -47
  570. package/skills/generating-ui-bundle-metadata/SKILL.md +0 -153
  571. package/skills/generating-ui-bundle-metadata/implementation/csp-metadata-format.md +0 -281
  572. package/skills/generating-ui-bundle-site/SKILL.md +0 -92
  573. package/skills/generating-ui-bundle-site/docs/configure-metadata-custom-site.md +0 -41
  574. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience-bundle.md +0 -17
  575. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience-config.md +0 -21
  576. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience.md +0 -40
  577. package/skills/generating-ui-bundle-site/docs/configure-metadata-network.md +0 -72
  578. package/skills/generating-ui-bundle-site/docs/update-site-urls.md +0 -100
  579. package/skills/generating-validation-rule/SKILL.md +0 -74
  580. package/skills/generating-visual-diagrams/CREDITS.md +0 -80
  581. package/skills/generating-visual-diagrams/README.md +0 -83
  582. package/skills/generating-visual-diagrams/SKILL.md +0 -207
  583. package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +0 -55
  584. package/skills/generating-visual-diagrams/assets/erd/core-objects.md +0 -131
  585. package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +0 -60
  586. package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +0 -45
  587. package/skills/generating-visual-diagrams/assets/lwc/data-table.md +0 -57
  588. package/skills/generating-visual-diagrams/assets/lwc/record-form.md +0 -60
  589. package/skills/generating-visual-diagrams/assets/review/apex-review.md +0 -57
  590. package/skills/generating-visual-diagrams/assets/review/lwc-review.md +0 -48
  591. package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +0 -257
  592. package/skills/generating-visual-diagrams/references/examples-index.md +0 -35
  593. package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +0 -65
  594. package/skills/generating-visual-diagrams/references/interview-questions.md +0 -529
  595. package/skills/generating-visual-diagrams/references/iteration-workflow.md +0 -173
  596. package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +0 -101
  597. package/skills/generating-visual-diagrams/scripts/generate_image.py +0 -243
  598. package/skills/getting-metadata-api-context/README.md +0 -79
  599. package/skills/getting-metadata-api-context/SKILL.md +0 -466
  600. package/skills/getting-metadata-api-context/data/metadata_api/AIApplication.json +0 -37
  601. package/skills/getting-metadata-api-context/data/metadata_api/AIApplicationConfig.json +0 -53
  602. package/skills/getting-metadata-api-context/data/metadata_api/AIReplyRecommendationsSettings.json +0 -40
  603. package/skills/getting-metadata-api-context/data/metadata_api/AIScoringModelDefinition.json +0 -87
  604. package/skills/getting-metadata-api-context/data/metadata_api/AIUsecaseDefinition.json +0 -215
  605. package/skills/getting-metadata-api-context/data/metadata_api/AccountInsightsSettings.json +0 -30
  606. package/skills/getting-metadata-api-context/data/metadata_api/AccountIntelligenceSettings.json +0 -40
  607. package/skills/getting-metadata-api-context/data/metadata_api/AccountPlanObjMeasCalcDef.json +0 -86
  608. package/skills/getting-metadata-api-context/data/metadata_api/AccountPlanSettings.json +0 -32
  609. package/skills/getting-metadata-api-context/data/metadata_api/AccountRelationshipShareRule.json +0 -56
  610. package/skills/getting-metadata-api-context/data/metadata_api/AccountSettings.json +0 -64
  611. package/skills/getting-metadata-api-context/data/metadata_api/AccountingFieldMapping.json +0 -70
  612. package/skills/getting-metadata-api-context/data/metadata_api/AccountingModelConfig.json +0 -94
  613. package/skills/getting-metadata-api-context/data/metadata_api/AccountingSettings.json +0 -53
  614. package/skills/getting-metadata-api-context/data/metadata_api/ActionLinkGroupTemplate.json +0 -118
  615. package/skills/getting-metadata-api-context/data/metadata_api/ActionOverride.json +0 -70
  616. package/skills/getting-metadata-api-context/data/metadata_api/ActionPlanTemplate.json +0 -166
  617. package/skills/getting-metadata-api-context/data/metadata_api/ActionableListDefinition.json +0 -114
  618. package/skills/getting-metadata-api-context/data/metadata_api/ActionsSettings.json +0 -44
  619. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatform.json +0 -95
  620. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatformActvAttr.json +0 -8
  621. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatformField.json +0 -55
  622. package/skills/getting-metadata-api-context/data/metadata_api/ActivitiesSettings.json +0 -136
  623. package/skills/getting-metadata-api-context/data/metadata_api/ActvPfrmDataConnectorS3.json +0 -41
  624. package/skills/getting-metadata-api-context/data/metadata_api/ActvPlatformAdncIdentifier.json +0 -46
  625. package/skills/getting-metadata-api-context/data/metadata_api/ActvPlatformFieldValue.json +0 -50
  626. package/skills/getting-metadata-api-context/data/metadata_api/AddressSettings.json +0 -90
  627. package/skills/getting-metadata-api-context/data/metadata_api/AdvAccountForecastSet.json +0 -261
  628. package/skills/getting-metadata-api-context/data/metadata_api/AffinityScoreDefinition.json +0 -74
  629. package/skills/getting-metadata-api-context/data/metadata_api/AgentPlatformSettings.json +0 -32
  630. package/skills/getting-metadata-api-context/data/metadata_api/AgentforceForDevelopersSettings.json +0 -32
  631. package/skills/getting-metadata-api-context/data/metadata_api/AiAuthoringBundle.json +0 -44
  632. package/skills/getting-metadata-api-context/data/metadata_api/AiEvaluationDefinition.json +0 -153
  633. package/skills/getting-metadata-api-context/data/metadata_api/AiPluginUtteranceDef.json +0 -40
  634. package/skills/getting-metadata-api-context/data/metadata_api/AllOrNoneHeader.json +0 -17
  635. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticSnapshot.json +0 -80
  636. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsDashboard.json +0 -369
  637. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsSettings.json +0 -488
  638. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsVisualization.json +0 -180
  639. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsWorkspace.json +0 -71
  640. package/skills/getting-metadata-api-context/data/metadata_api/AnimationRule.json +0 -71
  641. package/skills/getting-metadata-api-context/data/metadata_api/ApexClass.json +0 -70
  642. package/skills/getting-metadata-api-context/data/metadata_api/ApexComponent.json +0 -44
  643. package/skills/getting-metadata-api-context/data/metadata_api/ApexEmailNotifications.json +0 -49
  644. package/skills/getting-metadata-api-context/data/metadata_api/ApexPage.json +0 -64
  645. package/skills/getting-metadata-api-context/data/metadata_api/ApexSettings.json +0 -96
  646. package/skills/getting-metadata-api-context/data/metadata_api/ApexTestSuite.json +0 -32
  647. package/skills/getting-metadata-api-context/data/metadata_api/ApexTrigger.json +0 -52
  648. package/skills/getting-metadata-api-context/data/metadata_api/AppAnalyticsSettings.json +0 -36
  649. package/skills/getting-metadata-api-context/data/metadata_api/AppExperienceSettings.json +0 -32
  650. package/skills/getting-metadata-api-context/data/metadata_api/AppFrameworkTemplateBundle.json +0 -52
  651. package/skills/getting-metadata-api-context/data/metadata_api/AppMenu.json +0 -10
  652. package/skills/getting-metadata-api-context/data/metadata_api/AppointmentAssignmentPolicy.json +0 -48
  653. package/skills/getting-metadata-api-context/data/metadata_api/AppointmentSchedulingPolicy.json +0 -102
  654. package/skills/getting-metadata-api-context/data/metadata_api/ApprovalProcess.json +0 -234
  655. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType.json +0 -81
  656. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType_CustomField.json +0 -88
  657. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType_Layout.json +0 -63
  658. package/skills/getting-metadata-api-context/data/metadata_api/AssessmentQuestion.json +0 -117
  659. package/skills/getting-metadata-api-context/data/metadata_api/AssessmentQuestionSet.json +0 -41
  660. package/skills/getting-metadata-api-context/data/metadata_api/AssignmentRules.json +0 -87
  661. package/skills/getting-metadata-api-context/data/metadata_api/AssociationEngineSettings.json +0 -32
  662. package/skills/getting-metadata-api-context/data/metadata_api/AsyncResult.json +0 -89
  663. package/skills/getting-metadata-api-context/data/metadata_api/Audience.json +0 -172
  664. package/skills/getting-metadata-api-context/data/metadata_api/AuraDefinitionBundle.json +0 -94
  665. package/skills/getting-metadata-api-context/data/metadata_api/AuthProvider.json +0 -169
  666. package/skills/getting-metadata-api-context/data/metadata_api/AutoResponseRules.json +0 -79
  667. package/skills/getting-metadata-api-context/data/metadata_api/AutomatedContactsSettings.json +0 -44
  668. package/skills/getting-metadata-api-context/data/metadata_api/BaseSharingRule.json +0 -24
  669. package/skills/getting-metadata-api-context/data/metadata_api/BatchCalcJobDefinition.json +0 -849
  670. package/skills/getting-metadata-api-context/data/metadata_api/BatchProcessJobDefinition.json +0 -175
  671. package/skills/getting-metadata-api-context/data/metadata_api/BillingSettings.json +0 -152
  672. package/skills/getting-metadata-api-context/data/metadata_api/BlacklistedConsumer.json +0 -47
  673. package/skills/getting-metadata-api-context/data/metadata_api/Bot.json +0 -197
  674. package/skills/getting-metadata-api-context/data/metadata_api/BotBlock.json +0 -86
  675. package/skills/getting-metadata-api-context/data/metadata_api/BotSettings.json +0 -32
  676. package/skills/getting-metadata-api-context/data/metadata_api/BotTemplate.json +0 -96
  677. package/skills/getting-metadata-api-context/data/metadata_api/BotVersion.json +0 -667
  678. package/skills/getting-metadata-api-context/data/metadata_api/BranchManagementSettings.json +0 -32
  679. package/skills/getting-metadata-api-context/data/metadata_api/BrandingSet.json +0 -146
  680. package/skills/getting-metadata-api-context/data/metadata_api/BriefcaseDefinition.json +0 -127
  681. package/skills/getting-metadata-api-context/data/metadata_api/BusinessHoursSettings.json +0 -175
  682. package/skills/getting-metadata-api-context/data/metadata_api/BusinessProcess.json +0 -47
  683. package/skills/getting-metadata-api-context/data/metadata_api/BusinessProcessGroup.json +0 -91
  684. package/skills/getting-metadata-api-context/data/metadata_api/CMSConnectSource.json +0 -197
  685. package/skills/getting-metadata-api-context/data/metadata_api/CallCenter.json +0 -124
  686. package/skills/getting-metadata-api-context/data/metadata_api/CallCenterRoutingMap.json +0 -58
  687. package/skills/getting-metadata-api-context/data/metadata_api/CallCoachingMediaProvider.json +0 -40
  688. package/skills/getting-metadata-api-context/data/metadata_api/CallOptions.json +0 -17
  689. package/skills/getting-metadata-api-context/data/metadata_api/CampaignInfluenceModel.json +0 -59
  690. package/skills/getting-metadata-api-context/data/metadata_api/CampaignSettings.json +0 -71
  691. package/skills/getting-metadata-api-context/data/metadata_api/CancelDeployResult.json +0 -10
  692. package/skills/getting-metadata-api-context/data/metadata_api/CareBenefitVerifySettings.json +0 -70
  693. package/skills/getting-metadata-api-context/data/metadata_api/CareLimitType.json +0 -46
  694. package/skills/getting-metadata-api-context/data/metadata_api/CareProviderSearchConfig.json +0 -54
  695. package/skills/getting-metadata-api-context/data/metadata_api/CareRequestConfiguration.json +0 -57
  696. package/skills/getting-metadata-api-context/data/metadata_api/CareSystemFieldMapping.json +0 -58
  697. package/skills/getting-metadata-api-context/data/metadata_api/CaseSettings.json +0 -423
  698. package/skills/getting-metadata-api-context/data/metadata_api/CaseSubjectParticle.json +0 -35
  699. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApi.json +0 -97
  700. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApiArtifactVersionInfo.json +0 -46
  701. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApiVersion.json +0 -51
  702. package/skills/getting-metadata-api-context/data/metadata_api/Certificate.json +0 -54
  703. package/skills/getting-metadata-api-context/data/metadata_api/ChannelLayout.json +0 -63
  704. package/skills/getting-metadata-api-context/data/metadata_api/ChatterAnswersSettings.json +0 -76
  705. package/skills/getting-metadata-api-context/data/metadata_api/ChatterEmailsMDSettings.json +0 -68
  706. package/skills/getting-metadata-api-context/data/metadata_api/ChatterExtension.json +0 -64
  707. package/skills/getting-metadata-api-context/data/metadata_api/ChatterSettings.json +0 -92
  708. package/skills/getting-metadata-api-context/data/metadata_api/ChoiceList.json +0 -66
  709. package/skills/getting-metadata-api-context/data/metadata_api/ClaimFinancialSettings.json +0 -51
  710. package/skills/getting-metadata-api-context/data/metadata_api/ClauseCatgConfiguration.json +0 -45
  711. package/skills/getting-metadata-api-context/data/metadata_api/CleanDataService.json +0 -166
  712. package/skills/getting-metadata-api-context/data/metadata_api/CodeBuilderSettings.json +0 -32
  713. package/skills/getting-metadata-api-context/data/metadata_api/CollectionsDashboardSettings.json +0 -32
  714. package/skills/getting-metadata-api-context/data/metadata_api/CommerceSettings.json +0 -80
  715. package/skills/getting-metadata-api-context/data/metadata_api/CommunitiesSettings.json +0 -116
  716. package/skills/getting-metadata-api-context/data/metadata_api/Community.json +0 -121
  717. package/skills/getting-metadata-api-context/data/metadata_api/CommunityTemplateDefinition.json +0 -116
  718. package/skills/getting-metadata-api-context/data/metadata_api/CommunityThemeDefinition.json +0 -146
  719. package/skills/getting-metadata-api-context/data/metadata_api/CompactLayout.json +0 -32
  720. package/skills/getting-metadata-api-context/data/metadata_api/CompanySettings.json +0 -49
  721. package/skills/getting-metadata-api-context/data/metadata_api/ConnectedApp.json +0 -384
  722. package/skills/getting-metadata-api-context/data/metadata_api/ConnectedAppSettings.json +0 -40
  723. package/skills/getting-metadata-api-context/data/metadata_api/ContentAsset.json +0 -121
  724. package/skills/getting-metadata-api-context/data/metadata_api/ContentSettings.json +0 -116
  725. package/skills/getting-metadata-api-context/data/metadata_api/ContentTypeBundle.json +0 -64
  726. package/skills/getting-metadata-api-context/data/metadata_api/ContextDefinition.json +0 -340
  727. package/skills/getting-metadata-api-context/data/metadata_api/ContractSettings.json +0 -36
  728. package/skills/getting-metadata-api-context/data/metadata_api/ConvIntelligenceSignalRule.json +0 -106
  729. package/skills/getting-metadata-api-context/data/metadata_api/ConversationChannelDefinition.json +0 -140
  730. package/skills/getting-metadata-api-context/data/metadata_api/ConversationMessageDefinition.json +0 -380
  731. package/skills/getting-metadata-api-context/data/metadata_api/ConversationMessageDefinitionTranslation.json +0 -49
  732. package/skills/getting-metadata-api-context/data/metadata_api/ConversationVendorInfo.json +0 -148
  733. package/skills/getting-metadata-api-context/data/metadata_api/ConversationalIntelligenceSettings.json +0 -76
  734. package/skills/getting-metadata-api-context/data/metadata_api/CorsWhitelistOrigin.json +0 -32
  735. package/skills/getting-metadata-api-context/data/metadata_api/CriteriaBasedSharingRule.json +0 -206
  736. package/skills/getting-metadata-api-context/data/metadata_api/CspTrustedSite.json +0 -82
  737. package/skills/getting-metadata-api-context/data/metadata_api/CurrencySettings.json +0 -48
  738. package/skills/getting-metadata-api-context/data/metadata_api/CustomAddressFieldSettings.json +0 -32
  739. package/skills/getting-metadata-api-context/data/metadata_api/CustomApplication.json +0 -453
  740. package/skills/getting-metadata-api-context/data/metadata_api/CustomApplicationComponent.json +0 -72
  741. package/skills/getting-metadata-api-context/data/metadata_api/CustomFeedFilter.json +0 -63
  742. package/skills/getting-metadata-api-context/data/metadata_api/CustomField.json +0 -392
  743. package/skills/getting-metadata-api-context/data/metadata_api/CustomFieldDisplay.json +0 -45
  744. package/skills/getting-metadata-api-context/data/metadata_api/CustomHelpMenuSection.json +0 -57
  745. package/skills/getting-metadata-api-context/data/metadata_api/CustomIndex.json +0 -36
  746. package/skills/getting-metadata-api-context/data/metadata_api/CustomLabels.json +0 -69
  747. package/skills/getting-metadata-api-context/data/metadata_api/CustomMetadata.json +0 -90
  748. package/skills/getting-metadata-api-context/data/metadata_api/CustomNotificationType.json +0 -94
  749. package/skills/getting-metadata-api-context/data/metadata_api/CustomObject.json +0 -313
  750. package/skills/getting-metadata-api-context/data/metadata_api/CustomObjectTranslation.json +0 -319
  751. package/skills/getting-metadata-api-context/data/metadata_api/CustomPageWebLink.json +0 -121
  752. package/skills/getting-metadata-api-context/data/metadata_api/CustomPermission.json +0 -65
  753. package/skills/getting-metadata-api-context/data/metadata_api/CustomSite.json +0 -288
  754. package/skills/getting-metadata-api-context/data/metadata_api/CustomTab.json +0 -97
  755. package/skills/getting-metadata-api-context/data/metadata_api/CustomValue.json +0 -85
  756. package/skills/getting-metadata-api-context/data/metadata_api/CustomerDataPlatformSettings.json +0 -32
  757. package/skills/getting-metadata-api-context/data/metadata_api/Dashboard.json +0 -584
  758. package/skills/getting-metadata-api-context/data/metadata_api/DataCategoryGroup.json +0 -81
  759. package/skills/getting-metadata-api-context/data/metadata_api/DataConnector.json +0 -230
  760. package/skills/getting-metadata-api-context/data/metadata_api/DataConnectorIngestApi.json +0 -41
  761. package/skills/getting-metadata-api-context/data/metadata_api/DataConnectorS3.json +0 -44
  762. package/skills/getting-metadata-api-context/data/metadata_api/DataDotComSettings.json +0 -56
  763. package/skills/getting-metadata-api-context/data/metadata_api/DataImportManagementSettings.json +0 -32
  764. package/skills/getting-metadata-api-context/data/metadata_api/DataKitObjectDependency.json +0 -49
  765. package/skills/getting-metadata-api-context/data/metadata_api/DataKitObjectTemplate.json +0 -59
  766. package/skills/getting-metadata-api-context/data/metadata_api/DataObjectBuildOrgTemplate.json +0 -61
  767. package/skills/getting-metadata-api-context/data/metadata_api/DataObjectSearchIndexConf.json +0 -62
  768. package/skills/getting-metadata-api-context/data/metadata_api/DataPackageKitDefinition.json +0 -74
  769. package/skills/getting-metadata-api-context/data/metadata_api/DataPackageKitObject.json +0 -47
  770. package/skills/getting-metadata-api-context/data/metadata_api/DataSource.json +0 -29
  771. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceBundleDefinition.json +0 -57
  772. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceField.json +0 -115
  773. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceObject.json +0 -93
  774. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceTenant.json +0 -8
  775. package/skills/getting-metadata-api-context/data/metadata_api/DataSrcDataModelFieldMap.json +0 -69
  776. package/skills/getting-metadata-api-context/data/metadata_api/DataStreamDefinition.json +0 -105
  777. package/skills/getting-metadata-api-context/data/metadata_api/DataStreamTemplate.json +0 -99
  778. package/skills/getting-metadata-api-context/data/metadata_api/DataWeaveResource.json +0 -46
  779. package/skills/getting-metadata-api-context/data/metadata_api/DebuggingHeader.json +0 -20
  780. package/skills/getting-metadata-api-context/data/metadata_api/DecisionMatrixDefinition.json +0 -140
  781. package/skills/getting-metadata-api-context/data/metadata_api/DecisionTable.json +0 -211
  782. package/skills/getting-metadata-api-context/data/metadata_api/DecisionTableDatasetLink.json +0 -72
  783. package/skills/getting-metadata-api-context/data/metadata_api/DelegateGroup.json +0 -62
  784. package/skills/getting-metadata-api-context/data/metadata_api/DeleteResult.json +0 -22
  785. package/skills/getting-metadata-api-context/data/metadata_api/DeployResult.json +0 -253
  786. package/skills/getting-metadata-api-context/data/metadata_api/DeploymentSettings.json +0 -32
  787. package/skills/getting-metadata-api-context/data/metadata_api/DescribeMetadataResult.json +0 -31
  788. package/skills/getting-metadata-api-context/data/metadata_api/DescribeValueTypeResult.json +0 -56
  789. package/skills/getting-metadata-api-context/data/metadata_api/DevHubSettings.json +0 -60
  790. package/skills/getting-metadata-api-context/data/metadata_api/DgtAssetMgmtProvider.json +0 -43
  791. package/skills/getting-metadata-api-context/data/metadata_api/DgtAssetMgmtPrvdLghtCpnt.json +0 -48
  792. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle.json +0 -102
  793. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle_Marketing_Workspace_Bundle_and_Folders.json +0 -8
  794. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle_Site_Workspace_Bundle_and_Folders.json +0 -541
  795. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceConfig.json +0 -51
  796. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureDefinition.json +0 -45
  797. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureDefinitionVersion.json +0 -78
  798. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureType.json +0 -53
  799. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryAIModel.json +0 -263
  800. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryGoal.json +0 -361
  801. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryStory.json +0 -98
  802. package/skills/getting-metadata-api-context/data/metadata_api/Document.json +0 -54
  803. package/skills/getting-metadata-api-context/data/metadata_api/DocumentCategory.json +0 -42
  804. package/skills/getting-metadata-api-context/data/metadata_api/DocumentCategoryDocumentType.json +0 -48
  805. package/skills/getting-metadata-api-context/data/metadata_api/DocumentChecklistSettings.json +0 -36
  806. package/skills/getting-metadata-api-context/data/metadata_api/DocumentGenerationSetting.json +0 -60
  807. package/skills/getting-metadata-api-context/data/metadata_api/DocumentType.json +0 -43
  808. package/skills/getting-metadata-api-context/data/metadata_api/DuplicateRule.json +0 -160
  809. package/skills/getting-metadata-api-context/data/metadata_api/DynamicFormsSettings.json +0 -32
  810. package/skills/getting-metadata-api-context/data/metadata_api/EACSettings.json +0 -112
  811. package/skills/getting-metadata-api-context/data/metadata_api/EclairGeoData.json +0 -73
  812. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinAISettings.json +0 -45
  813. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinAgentSettings.json +0 -40
  814. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinGptSettings.json +0 -64
  815. package/skills/getting-metadata-api-context/data/metadata_api/EmailAdministrationSettings.json +0 -104
  816. package/skills/getting-metadata-api-context/data/metadata_api/EmailAuthorizationSettings.json +0 -32
  817. package/skills/getting-metadata-api-context/data/metadata_api/EmailIntegrationSettings.json +0 -92
  818. package/skills/getting-metadata-api-context/data/metadata_api/EmailServicesFunction.json +0 -116
  819. package/skills/getting-metadata-api-context/data/metadata_api/EmailTemplate.json +0 -116
  820. package/skills/getting-metadata-api-context/data/metadata_api/EmailTemplateSettings.json +0 -32
  821. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceBranding.json +0 -78
  822. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceConfig.json +0 -318
  823. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceFieldService.json +0 -73
  824. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceFlowConfig.json +0 -32
  825. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceLiveAgent.json +0 -141
  826. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceMenuSettings.json +0 -165
  827. package/skills/getting-metadata-api-context/data/metadata_api/EmployeeUserSettings.json +0 -54
  828. package/skills/getting-metadata-api-context/data/metadata_api/EnablementMeasureDefinition.json +0 -139
  829. package/skills/getting-metadata-api-context/data/metadata_api/EnablementProgramDefinition.json +0 -241
  830. package/skills/getting-metadata-api-context/data/metadata_api/EnblProgramTaskSubCategory.json +0 -47
  831. package/skills/getting-metadata-api-context/data/metadata_api/EncryptionKeySettings.json +0 -51
  832. package/skills/getting-metadata-api-context/data/metadata_api/EnhancedNotesSettings.json +0 -36
  833. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementProcess.json +0 -147
  834. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementSettings.json +0 -80
  835. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementTemplate.json +0 -52
  836. package/skills/getting-metadata-api-context/data/metadata_api/Error.json +0 -25
  837. package/skills/getting-metadata-api-context/data/metadata_api/EscalationRules.json +0 -117
  838. package/skills/getting-metadata-api-context/data/metadata_api/EventDelivery.json +0 -57
  839. package/skills/getting-metadata-api-context/data/metadata_api/EventRelayConfig.json +0 -55
  840. package/skills/getting-metadata-api-context/data/metadata_api/EventSettings.json +0 -76
  841. package/skills/getting-metadata-api-context/data/metadata_api/EventSubscription.json +0 -62
  842. package/skills/getting-metadata-api-context/data/metadata_api/ExperienceBundle.json +0 -387
  843. package/skills/getting-metadata-api-context/data/metadata_api/ExperienceBundleSettings.json +0 -25
  844. package/skills/getting-metadata-api-context/data/metadata_api/ExperiencePropertyTypeBundle.json +0 -68
  845. package/skills/getting-metadata-api-context/data/metadata_api/ExplainabilityMsgTemplate.json +0 -56
  846. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetDefinition.json +0 -496
  847. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetMessageToken.json +0 -42
  848. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetObjectAlias.json +0 -61
  849. package/skills/getting-metadata-api-context/data/metadata_api/ExternalAIModel.json +0 -54
  850. package/skills/getting-metadata-api-context/data/metadata_api/ExternalAuthIdentityProvider.json +0 -79
  851. package/skills/getting-metadata-api-context/data/metadata_api/ExternalClientAppSettings.json +0 -40
  852. package/skills/getting-metadata-api-context/data/metadata_api/ExternalClientApplication.json +0 -72
  853. package/skills/getting-metadata-api-context/data/metadata_api/ExternalCredential.json +0 -94
  854. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataConnector.json +0 -51
  855. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataSource.json +0 -162
  856. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTranObject.json +0 -191
  857. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTransportFieldTemplate.json +0 -8
  858. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTransportObjectTemplate.json +0 -8
  859. package/skills/getting-metadata-api-context/data/metadata_api/ExternalServiceRegistration.json +0 -121
  860. package/skills/getting-metadata-api-context/data/metadata_api/ExternalServicesSettings.json +0 -34
  861. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppCanvasSettings.json +0 -63
  862. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppConfigurablePolicies.json +0 -75
  863. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppGlobalOauthSettings.json +0 -135
  864. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppMobileConfigurablePolicies.json +0 -34
  865. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppMobileSettings.json +0 -35
  866. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppNotificationSettings.json +0 -49
  867. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppOauthConfigurablePolicies.json +0 -153
  868. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppOauthSettings.json +0 -120
  869. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppPushConfigurablePolicies.json +0 -35
  870. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppPushSettings.json +0 -93
  871. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppSamlConfigurablePolicies.json +0 -119
  872. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterBoolean.json +0 -47
  873. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterDate.json +0 -47
  874. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterInteger.json +0 -47
  875. package/skills/getting-metadata-api-context/data/metadata_api/FieldMappingConfig.json +0 -43
  876. package/skills/getting-metadata-api-context/data/metadata_api/FieldRestrictionRule.json +0 -80
  877. package/skills/getting-metadata-api-context/data/metadata_api/FieldServiceSettings.json +0 -226
  878. package/skills/getting-metadata-api-context/data/metadata_api/FieldSet.json +0 -60
  879. package/skills/getting-metadata-api-context/data/metadata_api/FieldSrcTrgtRelationship.json +0 -56
  880. package/skills/getting-metadata-api-context/data/metadata_api/FileUploadAndDownloadSecuritySettings.json +0 -53
  881. package/skills/getting-metadata-api-context/data/metadata_api/FilesConnectSettings.json +0 -40
  882. package/skills/getting-metadata-api-context/data/metadata_api/FlexiPage.json +0 -355
  883. package/skills/getting-metadata-api-context/data/metadata_api/Flow.json +0 -2377
  884. package/skills/getting-metadata-api-context/data/metadata_api/FlowCategory.json +0 -51
  885. package/skills/getting-metadata-api-context/data/metadata_api/FlowDefinition.json +0 -37
  886. package/skills/getting-metadata-api-context/data/metadata_api/FlowSettings.json +0 -124
  887. package/skills/getting-metadata-api-context/data/metadata_api/FlowTest.json +0 -205
  888. package/skills/getting-metadata-api-context/data/metadata_api/FlowValueMap.json +0 -68
  889. package/skills/getting-metadata-api-context/data/metadata_api/Folder.json +0 -50
  890. package/skills/getting-metadata-api-context/data/metadata_api/FolderShare.json +0 -45
  891. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingFilter.json +0 -48
  892. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingFilterCondition.json +0 -62
  893. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingObjectListSettings.json +0 -77
  894. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingSettings.json +0 -303
  895. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingSourceDefinition.json +0 -62
  896. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingType.json +0 -100
  897. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingTypeSource.json +0 -60
  898. package/skills/getting-metadata-api-context/data/metadata_api/FuelType.json +0 -52
  899. package/skills/getting-metadata-api-context/data/metadata_api/FuelTypeSustnUom.json +0 -45
  900. package/skills/getting-metadata-api-context/data/metadata_api/FunctionReference.json +0 -31
  901. package/skills/getting-metadata-api-context/data/metadata_api/FundraisingConfig.json +0 -86
  902. package/skills/getting-metadata-api-context/data/metadata_api/GatewayProviderPaymentMethodType.json +0 -50
  903. package/skills/getting-metadata-api-context/data/metadata_api/GenAiFunction.json +0 -171
  904. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlanner.json +0 -215
  905. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlannerBundle.json +0 -220
  906. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlugin.json +0 -87
  907. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPluginInstructionDef.json +0 -42
  908. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPromptTemplate.json +0 -183
  909. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPromptTemplateActv.json +0 -42
  910. package/skills/getting-metadata-api-context/data/metadata_api/GiftEntryGridTemplate.json +0 -42
  911. package/skills/getting-metadata-api-context/data/metadata_api/GlobalPicklist.json +0 -43
  912. package/skills/getting-metadata-api-context/data/metadata_api/GlobalPicklistValue.json +0 -81
  913. package/skills/getting-metadata-api-context/data/metadata_api/GlobalValueSet.json +0 -46
  914. package/skills/getting-metadata-api-context/data/metadata_api/GlobalValueSetTranslation.json +0 -44
  915. package/skills/getting-metadata-api-context/data/metadata_api/GoogleAppsSettings.json +0 -56
  916. package/skills/getting-metadata-api-context/data/metadata_api/Group.json +0 -46
  917. package/skills/getting-metadata-api-context/data/metadata_api/HighVelocitySalesSettings.json +0 -96
  918. package/skills/getting-metadata-api-context/data/metadata_api/HistoryRetentionPolicy.json +0 -41
  919. package/skills/getting-metadata-api-context/data/metadata_api/HomePageComponent.json +0 -66
  920. package/skills/getting-metadata-api-context/data/metadata_api/HomePageLayout.json +0 -40
  921. package/skills/getting-metadata-api-context/data/metadata_api/IPAddressRange.json +0 -60
  922. package/skills/getting-metadata-api-context/data/metadata_api/IdeasSettings.json +0 -52
  923. package/skills/getting-metadata-api-context/data/metadata_api/IdentityProviderSettings.json +0 -39
  924. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcDef.json +0 -173
  925. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcDtl.json +0 -136
  926. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcFld.json +0 -76
  927. package/skills/getting-metadata-api-context/data/metadata_api/IframeWhiteListUrlSettings.json +0 -46
  928. package/skills/getting-metadata-api-context/data/metadata_api/InboundCertificate.json +0 -48
  929. package/skills/getting-metadata-api-context/data/metadata_api/InboundNetworkConnection.json +0 -72
  930. package/skills/getting-metadata-api-context/data/metadata_api/IncidentMgmtSettings.json +0 -140
  931. package/skills/getting-metadata-api-context/data/metadata_api/Index.json +0 -48
  932. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesEinsteinFeatureSettings.json +0 -34
  933. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesLoyaltySettings.json +0 -108
  934. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesPricingSettings.json +0 -61
  935. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesRatingSettings.json +0 -40
  936. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesSettings.json +0 -731
  937. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesUnifiedInventorySettings.json +0 -40
  938. package/skills/getting-metadata-api-context/data/metadata_api/InsPlcyLimitConsumptionRule.json +0 -46
  939. package/skills/getting-metadata-api-context/data/metadata_api/InstalledPackage.json +0 -46
  940. package/skills/getting-metadata-api-context/data/metadata_api/IntegArtifactDef.json +0 -10
  941. package/skills/getting-metadata-api-context/data/metadata_api/IntegrationProviderDef.json +0 -155
  942. package/skills/getting-metadata-api-context/data/metadata_api/InterestTaggingSettings.json +0 -32
  943. package/skills/getting-metadata-api-context/data/metadata_api/InternalDataConnector.json +0 -8
  944. package/skills/getting-metadata-api-context/data/metadata_api/InvLatePymntRiskCalcSettings.json +0 -32
  945. package/skills/getting-metadata-api-context/data/metadata_api/InventorySettings.json +0 -36
  946. package/skills/getting-metadata-api-context/data/metadata_api/InvocableActionExtension.json +0 -84
  947. package/skills/getting-metadata-api-context/data/metadata_api/InvocableActionSettings.json +0 -28
  948. package/skills/getting-metadata-api-context/data/metadata_api/KeywordList.json +0 -51
  949. package/skills/getting-metadata-api-context/data/metadata_api/KnowledgeSettings.json +0 -280
  950. package/skills/getting-metadata-api-context/data/metadata_api/LanguageSettings.json +0 -68
  951. package/skills/getting-metadata-api-context/data/metadata_api/Layout.json +0 -659
  952. package/skills/getting-metadata-api-context/data/metadata_api/LeadConfigSettings.json +0 -64
  953. package/skills/getting-metadata-api-context/data/metadata_api/LeadConvertSettings.json +0 -71
  954. package/skills/getting-metadata-api-context/data/metadata_api/LearningItemType.json +0 -65
  955. package/skills/getting-metadata-api-context/data/metadata_api/Letterhead.json +0 -119
  956. package/skills/getting-metadata-api-context/data/metadata_api/LightningBolt.json +0 -103
  957. package/skills/getting-metadata-api-context/data/metadata_api/LightningComponentBundle.json +0 -109
  958. package/skills/getting-metadata-api-context/data/metadata_api/LightningExperienceSettings.json +0 -191
  959. package/skills/getting-metadata-api-context/data/metadata_api/LightningExperienceTheme.json +0 -54
  960. package/skills/getting-metadata-api-context/data/metadata_api/LightningMessageChannel.json +0 -63
  961. package/skills/getting-metadata-api-context/data/metadata_api/LightningOnboardingConfig.json +0 -62
  962. package/skills/getting-metadata-api-context/data/metadata_api/LightningTypeBundle.json +0 -88
  963. package/skills/getting-metadata-api-context/data/metadata_api/ListMetadataQuery.json +0 -10
  964. package/skills/getting-metadata-api-context/data/metadata_api/ListView.json +0 -86
  965. package/skills/getting-metadata-api-context/data/metadata_api/LiveAgentSettings.json +0 -44
  966. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatAgentConfig.json +0 -188
  967. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatButton.json +0 -188
  968. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatDeployment.json +0 -81
  969. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatSensitiveDataRule.json +0 -56
  970. package/skills/getting-metadata-api-context/data/metadata_api/LiveMessageSettings.json +0 -36
  971. package/skills/getting-metadata-api-context/data/metadata_api/LoyaltyProgramSetup.json +0 -297
  972. package/skills/getting-metadata-api-context/data/metadata_api/MLDataDefinition.json +0 -146
  973. package/skills/getting-metadata-api-context/data/metadata_api/MLPredictionDefinition.json +0 -67
  974. package/skills/getting-metadata-api-context/data/metadata_api/MacroSettings.json +0 -36
  975. package/skills/getting-metadata-api-context/data/metadata_api/MailMergeSettings.json +0 -36
  976. package/skills/getting-metadata-api-context/data/metadata_api/ManagedContentType.json +0 -86
  977. package/skills/getting-metadata-api-context/data/metadata_api/ManagedEventSubscription.json +0 -52
  978. package/skills/getting-metadata-api-context/data/metadata_api/ManagedTopics.json +0 -57
  979. package/skills/getting-metadata-api-context/data/metadata_api/MapAndLocationSettings.json +0 -34
  980. package/skills/getting-metadata-api-context/data/metadata_api/MarketSegmentDefinition.json +0 -58
  981. package/skills/getting-metadata-api-context/data/metadata_api/MarketingAppExtension.json +0 -139
  982. package/skills/getting-metadata-api-context/data/metadata_api/MatchingRule.json +0 -69
  983. package/skills/getting-metadata-api-context/data/metadata_api/MeetingsSettings.json +0 -36
  984. package/skills/getting-metadata-api-context/data/metadata_api/MessagingChannel.json +0 -278
  985. package/skills/getting-metadata-api-context/data/metadata_api/MetadataWithContent.json +0 -24
  986. package/skills/getting-metadata-api-context/data/metadata_api/Metadata_Type_Limits.json +0 -8
  987. package/skills/getting-metadata-api-context/data/metadata_api/MfgProgramTemplate.json +0 -88
  988. package/skills/getting-metadata-api-context/data/metadata_api/MfgServiceConsoleSettings.json +0 -32
  989. package/skills/getting-metadata-api-context/data/metadata_api/MilestoneType.json +0 -36
  990. package/skills/getting-metadata-api-context/data/metadata_api/MktCalcInsightObjectDef.json +0 -54
  991. package/skills/getting-metadata-api-context/data/metadata_api/MktDataTranObject.json +0 -99
  992. package/skills/getting-metadata-api-context/data/metadata_api/MlDomain.json +0 -136
  993. package/skills/getting-metadata-api-context/data/metadata_api/MobSecurityCertPinConfig.json +0 -76
  994. package/skills/getting-metadata-api-context/data/metadata_api/MobileApplicationDetail.json +0 -71
  995. package/skills/getting-metadata-api-context/data/metadata_api/MobileSecurityAssignment.json +0 -44
  996. package/skills/getting-metadata-api-context/data/metadata_api/MobileSecurityPolicy.json +0 -75
  997. package/skills/getting-metadata-api-context/data/metadata_api/MobileSettings.json +0 -121
  998. package/skills/getting-metadata-api-context/data/metadata_api/ModerationRule.json +0 -99
  999. package/skills/getting-metadata-api-context/data/metadata_api/MutingPermissionSet.json +0 -33
  1000. package/skills/getting-metadata-api-context/data/metadata_api/MyDomainDiscoverableLogin.json +0 -41
  1001. package/skills/getting-metadata-api-context/data/metadata_api/MyDomainSettings.json +0 -140
  1002. package/skills/getting-metadata-api-context/data/metadata_api/NameSettings.json +0 -40
  1003. package/skills/getting-metadata-api-context/data/metadata_api/NamedCredential.json +0 -205
  1004. package/skills/getting-metadata-api-context/data/metadata_api/NamedFilter.json +0 -89
  1005. package/skills/getting-metadata-api-context/data/metadata_api/NavigationMenu.json +0 -101
  1006. package/skills/getting-metadata-api-context/data/metadata_api/Network.json +0 -606
  1007. package/skills/getting-metadata-api-context/data/metadata_api/NetworkBranding.json +0 -117
  1008. package/skills/getting-metadata-api-context/data/metadata_api/NotificationTypeConfig.json +0 -75
  1009. package/skills/getting-metadata-api-context/data/metadata_api/NotificationsSettings.json +0 -40
  1010. package/skills/getting-metadata-api-context/data/metadata_api/OauthCustomScope.json +0 -56
  1011. package/skills/getting-metadata-api-context/data/metadata_api/OauthOidcSettings.json +0 -52
  1012. package/skills/getting-metadata-api-context/data/metadata_api/OauthTokenExchangeHandler.json +0 -119
  1013. package/skills/getting-metadata-api-context/data/metadata_api/ObjectHierarchyRelationship.json +0 -108
  1014. package/skills/getting-metadata-api-context/data/metadata_api/ObjectLinkingSettings.json +0 -32
  1015. package/skills/getting-metadata-api-context/data/metadata_api/ObjectSourceTargetMap.json +0 -85
  1016. package/skills/getting-metadata-api-context/data/metadata_api/OcrSampleDocument.json +0 -158
  1017. package/skills/getting-metadata-api-context/data/metadata_api/OcrTemplate.json +0 -180
  1018. package/skills/getting-metadata-api-context/data/metadata_api/OmniChannelSettings.json +0 -48
  1019. package/skills/getting-metadata-api-context/data/metadata_api/OmniExtTrackingDef.json +0 -66
  1020. package/skills/getting-metadata-api-context/data/metadata_api/OmniInteractionAccessConfig.json +0 -90
  1021. package/skills/getting-metadata-api-context/data/metadata_api/OmniInteractionConfig.json +0 -37
  1022. package/skills/getting-metadata-api-context/data/metadata_api/OmniScript.json +0 -204
  1023. package/skills/getting-metadata-api-context/data/metadata_api/OmniSupervisorConfig.json +0 -156
  1024. package/skills/getting-metadata-api-context/data/metadata_api/OmniTrackingGroup.json +0 -77
  1025. package/skills/getting-metadata-api-context/data/metadata_api/OnboardingDataObjectGroup.json +0 -131
  1026. package/skills/getting-metadata-api-context/data/metadata_api/OpportunityInsightsSettings.json +0 -30
  1027. package/skills/getting-metadata-api-context/data/metadata_api/OpportunityScoreSettings.json +0 -32
  1028. package/skills/getting-metadata-api-context/data/metadata_api/OpportunitySettings.json +0 -132
  1029. package/skills/getting-metadata-api-context/data/metadata_api/OrchestrationPlanCtxMapping.json +0 -63
  1030. package/skills/getting-metadata-api-context/data/metadata_api/OrderManagementSettings.json +0 -52
  1031. package/skills/getting-metadata-api-context/data/metadata_api/OrderSettings.json +0 -60
  1032. package/skills/getting-metadata-api-context/data/metadata_api/OrgPreferenceSettings.json +0 -43
  1033. package/skills/getting-metadata-api-context/data/metadata_api/OrgSettings.json +0 -40
  1034. package/skills/getting-metadata-api-context/data/metadata_api/OutboundNetworkConnection.json +0 -71
  1035. package/skills/getting-metadata-api-context/data/metadata_api/OwnerSharingRule.json +0 -206
  1036. package/skills/getting-metadata-api-context/data/metadata_api/Package.json +0 -19
  1037. package/skills/getting-metadata-api-context/data/metadata_api/PardotEinsteinSettings.json +0 -36
  1038. package/skills/getting-metadata-api-context/data/metadata_api/PardotSettings.json +0 -72
  1039. package/skills/getting-metadata-api-context/data/metadata_api/ParticipantRole.json +0 -48
  1040. package/skills/getting-metadata-api-context/data/metadata_api/PartyDataModelSettings.json +0 -40
  1041. package/skills/getting-metadata-api-context/data/metadata_api/PathAssistant.json +0 -74
  1042. package/skills/getting-metadata-api-context/data/metadata_api/PathAssistantSettings.json +0 -40
  1043. package/skills/getting-metadata-api-context/data/metadata_api/PaymentGatewayProvider.json +0 -50
  1044. package/skills/getting-metadata-api-context/data/metadata_api/PaymentsSettings.json +0 -32
  1045. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSet.json +0 -372
  1046. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSetGroup.json +0 -57
  1047. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSetLicenseDefinition.json +0 -58
  1048. package/skills/getting-metadata-api-context/data/metadata_api/PersonAccountOwnerPowerUser.json +0 -38
  1049. package/skills/getting-metadata-api-context/data/metadata_api/Picklist.json +0 -43
  1050. package/skills/getting-metadata-api-context/data/metadata_api/PicklistSettings.json +0 -32
  1051. package/skills/getting-metadata-api-context/data/metadata_api/PipelineInspMetricConfig.json +0 -48
  1052. package/skills/getting-metadata-api-context/data/metadata_api/PlatformCachePartition.json +0 -79
  1053. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEncryptionSettings.json +0 -51
  1054. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventChannel.json +0 -56
  1055. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventChannelMember.json +0 -71
  1056. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventMigration.json +0 -39
  1057. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventSettings.json +0 -32
  1058. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventSubscriberConfig.json +0 -58
  1059. package/skills/getting-metadata-api-context/data/metadata_api/Portal.json +0 -137
  1060. package/skills/getting-metadata-api-context/data/metadata_api/PortalDelegablePermissionSet.json +0 -48
  1061. package/skills/getting-metadata-api-context/data/metadata_api/PostTemplate.json +0 -47
  1062. package/skills/getting-metadata-api-context/data/metadata_api/PredictionBuilderSettings.json +0 -36
  1063. package/skills/getting-metadata-api-context/data/metadata_api/PresenceDeclineReason.json +0 -32
  1064. package/skills/getting-metadata-api-context/data/metadata_api/PresenceUserConfig.json +0 -122
  1065. package/skills/getting-metadata-api-context/data/metadata_api/PricingActionParameters.json +0 -64
  1066. package/skills/getting-metadata-api-context/data/metadata_api/PricingRecipe.json +0 -117
  1067. package/skills/getting-metadata-api-context/data/metadata_api/PrivacySettings.json +0 -80
  1068. package/skills/getting-metadata-api-context/data/metadata_api/ProcessFlowMigration.json +0 -58
  1069. package/skills/getting-metadata-api-context/data/metadata_api/ProductAttributeSet.json +0 -33
  1070. package/skills/getting-metadata-api-context/data/metadata_api/ProductSettings.json +0 -44
  1071. package/skills/getting-metadata-api-context/data/metadata_api/Profile.json +0 -492
  1072. package/skills/getting-metadata-api-context/data/metadata_api/ProfileActionOverride.json +0 -48
  1073. package/skills/getting-metadata-api-context/data/metadata_api/ProfilePasswordPolicy.json +0 -80
  1074. package/skills/getting-metadata-api-context/data/metadata_api/ProfileSearchLayouts.json +0 -32
  1075. package/skills/getting-metadata-api-context/data/metadata_api/ProfileSessionSetting.json +0 -55
  1076. package/skills/getting-metadata-api-context/data/metadata_api/Prompt.json +0 -255
  1077. package/skills/getting-metadata-api-context/data/metadata_api/PublicKeyCertificate.json +0 -50
  1078. package/skills/getting-metadata-api-context/data/metadata_api/PublicKeyCertificateSet.json +0 -65
  1079. package/skills/getting-metadata-api-context/data/metadata_api/Queue.json +0 -123
  1080. package/skills/getting-metadata-api-context/data/metadata_api/QueueRoutingConfig.json +0 -96
  1081. package/skills/getting-metadata-api-context/data/metadata_api/QuickAction.json +0 -175
  1082. package/skills/getting-metadata-api-context/data/metadata_api/QuoteSettings.json +0 -36
  1083. package/skills/getting-metadata-api-context/data/metadata_api/ReadResult.json +0 -16
  1084. package/skills/getting-metadata-api-context/data/metadata_api/RealTimeEventSettings.json +0 -45
  1085. package/skills/getting-metadata-api-context/data/metadata_api/RecommendationStrategy.json +0 -327
  1086. package/skills/getting-metadata-api-context/data/metadata_api/RecordActionDeployment.json +0 -184
  1087. package/skills/getting-metadata-api-context/data/metadata_api/RecordAggregationDefinition.json +0 -148
  1088. package/skills/getting-metadata-api-context/data/metadata_api/RecordAlertCategory.json +0 -42
  1089. package/skills/getting-metadata-api-context/data/metadata_api/RecordPageSettings.json +0 -40
  1090. package/skills/getting-metadata-api-context/data/metadata_api/RecordType.json +0 -68
  1091. package/skills/getting-metadata-api-context/data/metadata_api/RedirectWhitelistUrl.json +0 -26
  1092. package/skills/getting-metadata-api-context/data/metadata_api/ReferencedDashboard.json +0 -55
  1093. package/skills/getting-metadata-api-context/data/metadata_api/RegisteredExternalService.json +0 -72
  1094. package/skills/getting-metadata-api-context/data/metadata_api/RelatedRecordAssocCriteria.json +0 -75
  1095. package/skills/getting-metadata-api-context/data/metadata_api/RelationshipGraphDefinition.json +0 -63
  1096. package/skills/getting-metadata-api-context/data/metadata_api/RemoteSiteSetting.json +0 -51
  1097. package/skills/getting-metadata-api-context/data/metadata_api/Report.json +0 -715
  1098. package/skills/getting-metadata-api-context/data/metadata_api/ReportType.json +0 -118
  1099. package/skills/getting-metadata-api-context/data/metadata_api/RestrictionRule.json +0 -71
  1100. package/skills/getting-metadata-api-context/data/metadata_api/RetailExecutionSettings.json +0 -40
  1101. package/skills/getting-metadata-api-context/data/metadata_api/RetrievalSummaryDefinition.json +0 -76
  1102. package/skills/getting-metadata-api-context/data/metadata_api/RetrieveRequest.json +0 -35
  1103. package/skills/getting-metadata-api-context/data/metadata_api/RetrieveResult.json +0 -103
  1104. package/skills/getting-metadata-api-context/data/metadata_api/Role.json +0 -35
  1105. package/skills/getting-metadata-api-context/data/metadata_api/RoleOrTerritory.json +0 -57
  1106. package/skills/getting-metadata-api-context/data/metadata_api/SalesAgreementSettings.json +0 -180
  1107. package/skills/getting-metadata-api-context/data/metadata_api/SalesWorkQueueSettings.json +0 -40
  1108. package/skills/getting-metadata-api-context/data/metadata_api/SamlSsoConfig.json +0 -128
  1109. package/skills/getting-metadata-api-context/data/metadata_api/SandboxSettings.json +0 -32
  1110. package/skills/getting-metadata-api-context/data/metadata_api/SaveResult.json +0 -22
  1111. package/skills/getting-metadata-api-context/data/metadata_api/SchedulingObjective.json +0 -66
  1112. package/skills/getting-metadata-api-context/data/metadata_api/SchedulingRule.json +0 -66
  1113. package/skills/getting-metadata-api-context/data/metadata_api/SchemaSettings.json +0 -44
  1114. package/skills/getting-metadata-api-context/data/metadata_api/Scontrol.json +0 -72
  1115. package/skills/getting-metadata-api-context/data/metadata_api/SearchCustomization.json +0 -120
  1116. package/skills/getting-metadata-api-context/data/metadata_api/SearchLayouts.json +0 -64
  1117. package/skills/getting-metadata-api-context/data/metadata_api/SearchOrgWideObjectConfig.json +0 -61
  1118. package/skills/getting-metadata-api-context/data/metadata_api/SearchSettings.json +0 -155
  1119. package/skills/getting-metadata-api-context/data/metadata_api/SecuritySettings.json +0 -437
  1120. package/skills/getting-metadata-api-context/data/metadata_api/ServiceAISetupDefinition.json +0 -48
  1121. package/skills/getting-metadata-api-context/data/metadata_api/ServiceAISetupField.json +0 -58
  1122. package/skills/getting-metadata-api-context/data/metadata_api/ServiceChannel.json +0 -123
  1123. package/skills/getting-metadata-api-context/data/metadata_api/ServiceCloudVoiceSettings.json +0 -83
  1124. package/skills/getting-metadata-api-context/data/metadata_api/ServicePresenceStatus.json +0 -45
  1125. package/skills/getting-metadata-api-context/data/metadata_api/ServiceProcess.json +0 -141
  1126. package/skills/getting-metadata-api-context/data/metadata_api/ServiceSetupAssistantSettings.json +0 -32
  1127. package/skills/getting-metadata-api-context/data/metadata_api/SessionHeader.json +0 -17
  1128. package/skills/getting-metadata-api-context/data/metadata_api/SharedTo.json +0 -105
  1129. package/skills/getting-metadata-api-context/data/metadata_api/SharingBaseRule.json +0 -60
  1130. package/skills/getting-metadata-api-context/data/metadata_api/SharingReason.json +0 -34
  1131. package/skills/getting-metadata-api-context/data/metadata_api/SharingRecalculation.json +0 -29
  1132. package/skills/getting-metadata-api-context/data/metadata_api/SharingRules.json +0 -186
  1133. package/skills/getting-metadata-api-context/data/metadata_api/SharingSet.json +0 -78
  1134. package/skills/getting-metadata-api-context/data/metadata_api/SharingSettings.json +0 -92
  1135. package/skills/getting-metadata-api-context/data/metadata_api/SiteDotCom.json +0 -37
  1136. package/skills/getting-metadata-api-context/data/metadata_api/SiteSettings.json +0 -60
  1137. package/skills/getting-metadata-api-context/data/metadata_api/Skill.json +0 -69
  1138. package/skills/getting-metadata-api-context/data/metadata_api/SocialCustomerServiceSettings.json +0 -61
  1139. package/skills/getting-metadata-api-context/data/metadata_api/SocialProfileSettings.json +0 -35
  1140. package/skills/getting-metadata-api-context/data/metadata_api/SourceTrackingSettings.json +0 -32
  1141. package/skills/getting-metadata-api-context/data/metadata_api/StageAssignment.json +0 -113
  1142. package/skills/getting-metadata-api-context/data/metadata_api/StageDefinition.json +0 -237
  1143. package/skills/getting-metadata-api-context/data/metadata_api/StandardValueSet.json +0 -41
  1144. package/skills/getting-metadata-api-context/data/metadata_api/StandardValueSetTranslation.json +0 -32
  1145. package/skills/getting-metadata-api-context/data/metadata_api/StaticResource.json +0 -49
  1146. package/skills/getting-metadata-api-context/data/metadata_api/StreamingAppDataConnector.json +0 -51
  1147. package/skills/getting-metadata-api-context/data/metadata_api/SubscriptionManagementSettings.json +0 -56
  1148. package/skills/getting-metadata-api-context/data/metadata_api/SurveySettings.json +0 -44
  1149. package/skills/getting-metadata-api-context/data/metadata_api/SustainabilityUom.json +0 -61
  1150. package/skills/getting-metadata-api-context/data/metadata_api/SustnUomConversion.json +0 -58
  1151. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogCategory.json +0 -54
  1152. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogFulfillmentFlow.json +0 -99
  1153. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogItemDef.json +0 -202
  1154. package/skills/getting-metadata-api-context/data/metadata_api/SynonymDictionary.json +0 -56
  1155. package/skills/getting-metadata-api-context/data/metadata_api/Tag.json +0 -70
  1156. package/skills/getting-metadata-api-context/data/metadata_api/TagSet.json +0 -47
  1157. package/skills/getting-metadata-api-context/data/metadata_api/Territory.json +0 -39
  1158. package/skills/getting-metadata-api-context/data/metadata_api/Territory2.json +0 -112
  1159. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Model.json +0 -41
  1160. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Rule.json +0 -68
  1161. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Settings.json +0 -111
  1162. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Type.json +0 -42
  1163. package/skills/getting-metadata-api-context/data/metadata_api/TimeSheetTemplate.json +0 -75
  1164. package/skills/getting-metadata-api-context/data/metadata_api/TimelineObjectDefinition.json +0 -48
  1165. package/skills/getting-metadata-api-context/data/metadata_api/TopicsForObjects.json +0 -38
  1166. package/skills/getting-metadata-api-context/data/metadata_api/TrailheadSettings.json +0 -40
  1167. package/skills/getting-metadata-api-context/data/metadata_api/TransactionSecurityPolicy.json +0 -127
  1168. package/skills/getting-metadata-api-context/data/metadata_api/Translations.json +0 -976
  1169. package/skills/getting-metadata-api-context/data/metadata_api/TrialOrgSettings.json +0 -32
  1170. package/skills/getting-metadata-api-context/data/metadata_api/UIBundle.json +0 -54
  1171. package/skills/getting-metadata-api-context/data/metadata_api/UIObjectRelationConfig.json +0 -101
  1172. package/skills/getting-metadata-api-context/data/metadata_api/UiFormatSpecificationSet.json +0 -103
  1173. package/skills/getting-metadata-api-context/data/metadata_api/UiPreviewMessageTabDef.json +0 -70
  1174. package/skills/getting-metadata-api-context/data/metadata_api/UpsertResult.json +0 -25
  1175. package/skills/getting-metadata-api-context/data/metadata_api/UserAccessPolicy.json +0 -120
  1176. package/skills/getting-metadata-api-context/data/metadata_api/UserAuthCertificate.json +0 -57
  1177. package/skills/getting-metadata-api-context/data/metadata_api/UserCriteria.json +0 -48
  1178. package/skills/getting-metadata-api-context/data/metadata_api/UserEngagementSettings.json +0 -136
  1179. package/skills/getting-metadata-api-context/data/metadata_api/UserInterfaceSettings.json +0 -96
  1180. package/skills/getting-metadata-api-context/data/metadata_api/UserManagementSettings.json +0 -108
  1181. package/skills/getting-metadata-api-context/data/metadata_api/UserProfileSearchScope.json +0 -8
  1182. package/skills/getting-metadata-api-context/data/metadata_api/UserProvisioningConfig.json +0 -72
  1183. package/skills/getting-metadata-api-context/data/metadata_api/ValidationRule.json +0 -51
  1184. package/skills/getting-metadata-api-context/data/metadata_api/VirtualVisitConfig.json +0 -97
  1185. package/skills/getting-metadata-api-context/data/metadata_api/VoiceSettings.json +0 -68
  1186. package/skills/getting-metadata-api-context/data/metadata_api/WarrantyLifeCycleMgmtSettings.json +0 -32
  1187. package/skills/getting-metadata-api-context/data/metadata_api/WaveAnalyticAssetCollection.json +0 -73
  1188. package/skills/getting-metadata-api-context/data/metadata_api/WaveApplication.json +0 -56
  1189. package/skills/getting-metadata-api-context/data/metadata_api/WaveComponent.json +0 -46
  1190. package/skills/getting-metadata-api-context/data/metadata_api/WaveDashboard.json +0 -50
  1191. package/skills/getting-metadata-api-context/data/metadata_api/WaveDataflow.json +0 -45
  1192. package/skills/getting-metadata-api-context/data/metadata_api/WaveDataset.json +0 -50
  1193. package/skills/getting-metadata-api-context/data/metadata_api/WaveLens.json +0 -59
  1194. package/skills/getting-metadata-api-context/data/metadata_api/WaveRecipe.json +0 -58
  1195. package/skills/getting-metadata-api-context/data/metadata_api/WaveTemplateBundle.json +0 -37
  1196. package/skills/getting-metadata-api-context/data/metadata_api/WaveXmd.json +0 -567
  1197. package/skills/getting-metadata-api-context/data/metadata_api/WebLink.json +0 -117
  1198. package/skills/getting-metadata-api-context/data/metadata_api/WebStoreBundle.json +0 -10
  1199. package/skills/getting-metadata-api-context/data/metadata_api/WebStoreTemplate.json +0 -166
  1200. package/skills/getting-metadata-api-context/data/metadata_api/WorkDotComSettings.json +0 -76
  1201. package/skills/getting-metadata-api-context/data/metadata_api/WorkSkillRouting.json +0 -76
  1202. package/skills/getting-metadata-api-context/data/metadata_api/Workflow.json +0 -415
  1203. package/skills/getting-metadata-api-context/data/metadata_api/WorkforceEngagementSettings.json +0 -56
  1204. package/skills/getting-metadata-api-context/examples/README.md +0 -169
  1205. package/skills/getting-metadata-api-context/examples/bash_section_loading.sh +0 -142
  1206. package/skills/getting-metadata-api-context/examples/javascript_section_loading.js +0 -162
  1207. package/skills/getting-metadata-api-context/examples/python_section_loading.py +0 -112
  1208. package/skills/getting-metadata-api-context/references/metadata_index_table.md +0 -654
  1209. package/skills/getting-metadata-api-context/references/usage_guide.md +0 -420
  1210. package/skills/handling-sf-data/CREDITS.md +0 -5
  1211. package/skills/handling-sf-data/README.md +0 -112
  1212. package/skills/handling-sf-data/SKILL.md +0 -234
  1213. package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +0 -293
  1214. package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +0 -208
  1215. package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +0 -219
  1216. package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +0 -324
  1217. package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +0 -319
  1218. package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +0 -240
  1219. package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +0 -311
  1220. package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +0 -266
  1221. package/skills/handling-sf-data/assets/csv/account-import.csv +0 -11
  1222. package/skills/handling-sf-data/assets/csv/contact-import.csv +0 -11
  1223. package/skills/handling-sf-data/assets/csv/custom-object-import.csv +0 -11
  1224. package/skills/handling-sf-data/assets/csv/opportunity-import.csv +0 -11
  1225. package/skills/handling-sf-data/assets/factories/account-factory.apex +0 -165
  1226. package/skills/handling-sf-data/assets/factories/case-factory.apex +0 -237
  1227. package/skills/handling-sf-data/assets/factories/contact-factory.apex +0 -168
  1228. package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +0 -260
  1229. package/skills/handling-sf-data/assets/factories/event-factory.apex +0 -275
  1230. package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +0 -372
  1231. package/skills/handling-sf-data/assets/factories/lead-factory.apex +0 -190
  1232. package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +0 -206
  1233. package/skills/handling-sf-data/assets/factories/task-factory.apex +0 -246
  1234. package/skills/handling-sf-data/assets/factories/user-factory.apex +0 -278
  1235. package/skills/handling-sf-data/assets/json/account-contact-tree.json +0 -130
  1236. package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +0 -110
  1237. package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +0 -188
  1238. package/skills/handling-sf-data/assets/soql/aggregate.soql +0 -226
  1239. package/skills/handling-sf-data/assets/soql/child-to-parent.soql +0 -162
  1240. package/skills/handling-sf-data/assets/soql/parent-to-child.soql +0 -153
  1241. package/skills/handling-sf-data/assets/soql/polymorphic.soql +0 -198
  1242. package/skills/handling-sf-data/assets/soql/subquery.soql +0 -287
  1243. package/skills/handling-sf-data/references/anonymous-apex-guide.md +0 -98
  1244. package/skills/handling-sf-data/references/bulk-operations-guide.md +0 -94
  1245. package/skills/handling-sf-data/references/bulk-testing-example.md +0 -194
  1246. package/skills/handling-sf-data/references/cleanup-rollback-example.md +0 -322
  1247. package/skills/handling-sf-data/references/cleanup-rollback-guide.md +0 -84
  1248. package/skills/handling-sf-data/references/crud-workflow-example.md +0 -183
  1249. package/skills/handling-sf-data/references/governor-limits-reference.md +0 -74
  1250. package/skills/handling-sf-data/references/orchestration.md +0 -174
  1251. package/skills/handling-sf-data/references/relationship-query-examples.md +0 -249
  1252. package/skills/handling-sf-data/references/sf-cli-data-commands.md +0 -158
  1253. package/skills/handling-sf-data/references/soql-relationship-guide.md +0 -84
  1254. package/skills/handling-sf-data/references/test-data-best-practices.md +0 -104
  1255. package/skills/handling-sf-data/references/test-data-factory-usage.md +0 -290
  1256. package/skills/handling-sf-data/references/test-data-patterns.md +0 -98
  1257. package/skills/handling-sf-data/scripts/soql_validator.py +0 -292
  1258. package/skills/handling-sf-data/scripts/validate_data_operation.py +0 -379
  1259. package/skills/harmonizing-datacloud/CREDITS.md +0 -3
  1260. package/skills/harmonizing-datacloud/README.md +0 -31
  1261. package/skills/harmonizing-datacloud/SKILL.md +0 -116
  1262. package/skills/implementing-ui-bundle-agentforce-conversation-client/SKILL.md +0 -280
  1263. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/agent-id-resolution.md +0 -46
  1264. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/constraints.md +0 -134
  1265. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/examples.md +0 -132
  1266. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/style-tokens.md +0 -260
  1267. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/troubleshooting.md +0 -57
  1268. package/skills/implementing-ui-bundle-file-upload/SKILL.md +0 -398
  1269. package/skills/integrating-b2b-commerce-open-code-components/SKILL.md +0 -165
  1270. package/skills/investigating-agentforce-architecture/README.md +0 -156
  1271. package/skills/investigating-agentforce-architecture/SKILL.md +0 -230
  1272. package/skills/investigating-agentforce-architecture/assets/cli/describe_sobject.yaml +0 -16
  1273. package/skills/investigating-agentforce-architecture/assets/cli/describe_tooling_sobject.yaml +0 -17
  1274. package/skills/investigating-agentforce-architecture/assets/cli/list_metadata_genaiprompttemplate.yaml +0 -17
  1275. package/skills/investigating-agentforce-architecture/assets/cli/org_display.yaml +0 -15
  1276. package/skills/investigating-agentforce-architecture/assets/cli/retrieve_genai_plugin.yaml +0 -18
  1277. package/skills/investigating-agentforce-architecture/assets/cli/show_access_token.yaml +0 -27
  1278. package/skills/investigating-agentforce-architecture/assets/mermaid/action_tree.mmd +0 -20
  1279. package/skills/investigating-agentforce-architecture/assets/mermaid/data_flow.mmd +0 -19
  1280. package/skills/investigating-agentforce-architecture/assets/mermaid/dependency_graph.mmd +0 -19
  1281. package/skills/investigating-agentforce-architecture/assets/mermaid/invocation_sequence.mmd +0 -20
  1282. package/skills/investigating-agentforce-architecture/assets/mermaid/planner_state.mmd +0 -18
  1283. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_ids.soql +0 -3
  1284. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_names.soql +0 -3
  1285. package/skills/investigating-agentforce-architecture/assets/soql/bot_definition_details.soql +0 -3
  1286. package/skills/investigating-agentforce-architecture/assets/soql/bot_version_lookup.soql +0 -4
  1287. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_by_ids.soql +0 -3
  1288. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_ids_by_names.soql +0 -3
  1289. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_view_by_durable_ids.soql +0 -4
  1290. package/skills/investigating-agentforce-architecture/assets/soql/flow_metadata_by_id.soql +0 -3
  1291. package/skills/investigating-agentforce-architecture/assets/soql/functions_by_plugins.soql +0 -5
  1292. package/skills/investigating-agentforce-architecture/assets/soql/planner_attrs_by_parent_ids.soql +0 -3
  1293. package/skills/investigating-agentforce-architecture/assets/soql/planner_bundle_functions.soql +0 -3
  1294. package/skills/investigating-agentforce-architecture/assets/soql/planner_definition_by_agent_chain.soql +0 -3
  1295. package/skills/investigating-agentforce-architecture/assets/soql/plugin_functions_by_plugin_ids.soql +0 -3
  1296. package/skills/investigating-agentforce-architecture/assets/soql/plugin_instructions_by_plugin_ids.soql +0 -3
  1297. package/skills/investigating-agentforce-architecture/assets/soql/plugins_by_planner.soql +0 -4
  1298. package/skills/investigating-agentforce-architecture/references/architecture_sections.md +0 -243
  1299. package/skills/investigating-agentforce-architecture/references/contract.json +0 -244
  1300. package/skills/investigating-agentforce-architecture/references/soql_fields.md +0 -512
  1301. package/skills/investigating-agentforce-architecture/scripts/_shared/__init__.py +0 -1
  1302. package/skills/investigating-agentforce-architecture/scripts/_shared/fs_guard.py +0 -329
  1303. package/skills/investigating-agentforce-architecture/scripts/_shared/paths.py +0 -110
  1304. package/skills/investigating-agentforce-architecture/scripts/_shared/runtime.py +0 -59
  1305. package/skills/investigating-agentforce-architecture/scripts/_shared/sql.py +0 -10
  1306. package/skills/investigating-agentforce-architecture/scripts/cache_check.py +0 -234
  1307. package/skills/investigating-agentforce-architecture/scripts/config.py +0 -131
  1308. package/skills/investigating-agentforce-architecture/scripts/fetch_soql.py +0 -689
  1309. package/skills/investigating-agentforce-architecture/scripts/finalize.py +0 -295
  1310. package/skills/investigating-agentforce-architecture/scripts/main.py +0 -2835
  1311. package/skills/investigating-agentforce-architecture/scripts/metadata_listing.py +0 -265
  1312. package/skills/investigating-agentforce-architecture/scripts/parallel_retrieve.py +0 -69
  1313. package/skills/investigating-agentforce-architecture/scripts/parse_bundle.py +0 -215
  1314. package/skills/investigating-agentforce-architecture/scripts/parse_wave.py +0 -845
  1315. package/skills/investigating-agentforce-architecture/scripts/probe_channels.py +0 -302
  1316. package/skills/investigating-agentforce-architecture/scripts/render_architecture.py +0 -1043
  1317. package/skills/investigating-agentforce-architecture/scripts/resolve_bot.py +0 -255
  1318. package/skills/investigating-agentforce-architecture/scripts/resolve_invocation_target.py +0 -130
  1319. package/skills/investigating-agentforce-architecture/scripts/rest_client.py +0 -763
  1320. package/skills/investigating-agentforce-architecture/scripts/retrieve_planner.py +0 -13
  1321. package/skills/investigating-agentforce-architecture/scripts/sf_cli.py +0 -242
  1322. package/skills/investigating-agentforce-architecture/scripts/soql_loader.py +0 -253
  1323. package/skills/investigating-agentforce-architecture/scripts/summarize_tree.py +0 -143
  1324. package/skills/investigating-agentforce-architecture/scripts/tests/__init__.py +0 -0
  1325. package/skills/investigating-agentforce-architecture/scripts/tests/_bootstrap.py +0 -23
  1326. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/__init__.py +0 -0
  1327. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/genai_payloads.py +0 -400
  1328. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check.py +0 -307
  1329. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check_main.py +0 -283
  1330. package/skills/investigating-agentforce-architecture/scripts/tests/test_config.py +0 -115
  1331. package/skills/investigating-agentforce-architecture/scripts/tests/test_end_to_end_fixture.py +0 -651
  1332. package/skills/investigating-agentforce-architecture/scripts/tests/test_finalize.py +0 -278
  1333. package/skills/investigating-agentforce-architecture/scripts/tests/test_flow_children_inflation.py +0 -582
  1334. package/skills/investigating-agentforce-architecture/scripts/tests/test_fs_guard.py +0 -113
  1335. package/skills/investigating-agentforce-architecture/scripts/tests/test_iterative_wave_b.py +0 -478
  1336. package/skills/investigating-agentforce-architecture/scripts/tests/test_main_pipeline.py +0 -3359
  1337. package/skills/investigating-agentforce-architecture/scripts/tests/test_parallel_retrieve.py +0 -131
  1338. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_bundle.py +0 -400
  1339. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave.py +0 -644
  1340. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_classifiers.py +0 -224
  1341. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_helpers.py +0 -380
  1342. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_main.py +0 -397
  1343. package/skills/investigating-agentforce-architecture/scripts/tests/test_per_branch_visited.py +0 -244
  1344. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_channels.py +0 -359
  1345. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_cli_recipes.py +0 -185
  1346. package/skills/investigating-agentforce-architecture/scripts/tests/test_render_architecture.py +0 -810
  1347. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_bot.py +0 -203
  1348. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_creds.py +0 -157
  1349. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_invocation_target.py +0 -145
  1350. package/skills/investigating-agentforce-architecture/scripts/tests/test_rest_client.py +0 -1253
  1351. package/skills/investigating-agentforce-architecture/scripts/tests/test_runtime_override.py +0 -100
  1352. package/skills/investigating-agentforce-architecture/scripts/tests/test_sf_cli.py +0 -261
  1353. package/skills/investigating-agentforce-architecture/scripts/tests/test_signature_stamping.py +0 -466
  1354. package/skills/investigating-agentforce-architecture/scripts/tests/test_soql_loader.py +0 -501
  1355. package/skills/investigating-agentforce-architecture/scripts/tests/test_summarize_tree.py +0 -241
  1356. package/skills/investigating-agentforce-architecture/scripts/tests/test_write_emit_ctx.py +0 -480
  1357. package/skills/investigating-agentforce-architecture/tools/emit_env.py +0 -157
  1358. package/skills/investigating-agentforce-architecture/tools/emit_result.py +0 -262
  1359. package/skills/investigating-agentforce-architecture/tools/sanitize.py +0 -33
  1360. package/skills/investigating-agentforce-architecture/tools/write_emit_ctx.py +0 -332
  1361. package/skills/investigating-agentforce-d360/README.md +0 -123
  1362. package/skills/investigating-agentforce-d360/SKILL.md +0 -163
  1363. package/skills/investigating-agentforce-d360/assets/dc/app_generation.sql +0 -51
  1364. package/skills/investigating-agentforce-d360/assets/dc/content_category.sql +0 -44
  1365. package/skills/investigating-agentforce-d360/assets/dc/content_quality.sql +0 -41
  1366. package/skills/investigating-agentforce-d360/assets/dc/discover_sessions.sql +0 -36
  1367. package/skills/investigating-agentforce-d360/assets/dc/feedback.sql +0 -47
  1368. package/skills/investigating-agentforce-d360/assets/dc/feedback_details.sql +0 -38
  1369. package/skills/investigating-agentforce-d360/assets/dc/gateway_records.sql +0 -45
  1370. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_llm.sql +0 -50
  1371. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_metadata.sql +0 -44
  1372. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_tags.sql +0 -42
  1373. package/skills/investigating-agentforce-d360/assets/dc/gateway_requests.sql +0 -89
  1374. package/skills/investigating-agentforce-d360/assets/dc/gateway_responses.sql +0 -43
  1375. package/skills/investigating-agentforce-d360/assets/dc/generations.sql +0 -52
  1376. package/skills/investigating-agentforce-d360/assets/dc/interactions.sql +0 -53
  1377. package/skills/investigating-agentforce-d360/assets/dc/messages.sql +0 -53
  1378. package/skills/investigating-agentforce-d360/assets/dc/messaging_session.sql +0 -37
  1379. package/skills/investigating-agentforce-d360/assets/dc/moment_interactions.sql +0 -34
  1380. package/skills/investigating-agentforce-d360/assets/dc/moments.sql +0 -39
  1381. package/skills/investigating-agentforce-d360/assets/dc/participants.sql +0 -48
  1382. package/skills/investigating-agentforce-d360/assets/dc/sessions.sql +0 -78
  1383. package/skills/investigating-agentforce-d360/assets/dc/steps.sql +0 -64
  1384. package/skills/investigating-agentforce-d360/assets/dc/tag_associations.sql +0 -46
  1385. package/skills/investigating-agentforce-d360/assets/dc/tag_definition_associations.sql +0 -37
  1386. package/skills/investigating-agentforce-d360/assets/dc/tag_definitions.sql +0 -50
  1387. package/skills/investigating-agentforce-d360/assets/dc/tags.sql +0 -37
  1388. package/skills/investigating-agentforce-d360/assets/dc/telemetry_spans.sql +0 -55
  1389. package/skills/investigating-agentforce-d360/references/artifacts.md +0 -50
  1390. package/skills/investigating-agentforce-d360/references/dc_dmo_fields.md +0 -823
  1391. package/skills/investigating-agentforce-d360/references/dc_pipeline_contract.md +0 -608
  1392. package/skills/investigating-agentforce-d360/scripts/_shared/__init__.py +0 -2
  1393. package/skills/investigating-agentforce-d360/scripts/_shared/cli_override.py +0 -98
  1394. package/skills/investigating-agentforce-d360/scripts/_shared/fs_guard.py +0 -334
  1395. package/skills/investigating-agentforce-d360/scripts/_shared/paths.py +0 -155
  1396. package/skills/investigating-agentforce-d360/scripts/_shared/runtime.py +0 -59
  1397. package/skills/investigating-agentforce-d360/scripts/_shared/sql.py +0 -14
  1398. package/skills/investigating-agentforce-d360/scripts/assemble_dc.py +0 -1624
  1399. package/skills/investigating-agentforce-d360/scripts/config.py +0 -45
  1400. package/skills/investigating-agentforce-d360/scripts/dc.py +0 -188
  1401. package/skills/investigating-agentforce-d360/scripts/discover_sessions.py +0 -556
  1402. package/skills/investigating-agentforce-d360/scripts/fetch_dc.py +0 -1045
  1403. package/skills/investigating-agentforce-d360/scripts/render_dc.py +0 -1750
  1404. package/skills/investigating-agentforce-d360/scripts/resolve_session.py +0 -264
  1405. package/skills/investigating-agentforce-d360/scripts/storage.py +0 -92
  1406. package/skills/investigating-agentforce-d360/scripts/tests/__init__.py +0 -0
  1407. package/skills/investigating-agentforce-d360/scripts/tests/_bootstrap.py +0 -15
  1408. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/__init__.py +0 -0
  1409. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/synthetic_session.py +0 -424
  1410. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_bootstrap_and_mode.py +0 -115
  1411. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct.py +0 -220
  1412. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct_integration.py +0 -158
  1413. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_helpers.py +0 -287
  1414. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_integration.py +0 -247
  1415. package/skills/investigating-agentforce-d360/scripts/tests/test_dc_and_resolve_session.py +0 -433
  1416. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions.py +0 -458
  1417. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions_grep_ci.py +0 -193
  1418. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_helpers.py +0 -266
  1419. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_identity.py +0 -528
  1420. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_main.py +0 -251
  1421. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall.py +0 -229
  1422. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall_full.py +0 -283
  1423. package/skills/investigating-agentforce-d360/scripts/tests/test_identity_coherence.py +0 -327
  1424. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_branches.py +0 -256
  1425. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_gateway_direct.py +0 -130
  1426. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_helpers.py +0 -291
  1427. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_integration.py +0 -220
  1428. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_planner_llm_calls.py +0 -284
  1429. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_show_prompts_gating.py +0 -215
  1430. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_from_disk.py +0 -100
  1431. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_session_main.py +0 -149
  1432. package/skills/investigating-agentforce-d360/scripts/tests/test_runtime_override.py +0 -104
  1433. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape.py +0 -95
  1434. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape_dropped_by_stdm.py +0 -85
  1435. package/skills/managing-cdc-enablement/SKILL.md +0 -164
  1436. package/skills/managing-cdc-enablement/assets/PlatformEventChannel-template.xml +0 -5
  1437. package/skills/managing-cdc-enablement/assets/PlatformEventChannelMember-template.xml +0 -11
  1438. package/skills/managing-cdc-enablement/references/deploy-troubleshooting.md +0 -73
  1439. package/skills/managing-cdc-enablement/references/filter-expressions.md +0 -93
  1440. package/skills/managing-managed-event-subscription/SKILL.md +0 -152
  1441. package/skills/managing-managed-event-subscription/assets/managed-event-subscription-template.xml +0 -20
  1442. package/skills/managing-managed-event-subscription/references/delete-guide.md +0 -57
  1443. package/skills/managing-managed-event-subscription/references/topic-name-formats.md +0 -26
  1444. package/skills/managing-managed-event-subscription/references/update-constraints.md +0 -30
  1445. package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +0 -14
  1446. package/skills/modeling-omnistudio-epc-catalog/README.md +0 -89
  1447. package/skills/modeling-omnistudio-epc-catalog/SKILL.md +0 -394
  1448. package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +0 -402
  1449. package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +0 -43
  1450. package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +0 -8
  1451. package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +0 -233
  1452. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +0 -514
  1453. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +0 -21
  1454. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +0 -649
  1455. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +0 -200
  1456. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +0 -138
  1457. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +0 -54
  1458. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +0 -266
  1459. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +0 -23
  1460. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +0 -54
  1461. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +0 -35
  1462. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +0 -34
  1463. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +0 -21
  1464. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +0 -410
  1465. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +0 -535
  1466. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +0 -35
  1467. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +0 -138
  1468. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +0 -28
  1469. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +0 -23
  1470. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +0 -220
  1471. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +0 -35
  1472. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +0 -414
  1473. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +0 -382
  1474. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +0 -565
  1475. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +0 -35
  1476. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +0 -104
  1477. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +0 -28
  1478. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +0 -13
  1479. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +0 -106
  1480. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +0 -35
  1481. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +0 -72
  1482. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +0 -142
  1483. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +0 -377
  1484. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +0 -35
  1485. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +0 -36
  1486. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +0 -8
  1487. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +0 -54
  1488. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +0 -35
  1489. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +0 -34
  1490. package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +0 -138
  1491. package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +0 -54
  1492. package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +0 -134
  1493. package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +0 -29
  1494. package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +0 -158
  1495. package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +0 -35
  1496. package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +0 -338
  1497. package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +0 -527
  1498. package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +0 -1
  1499. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +0 -95
  1500. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +0 -1
  1501. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +0 -214
  1502. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +0 -28
  1503. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +0 -98
  1504. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +0 -22
  1505. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +0 -1
  1506. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +0 -13
  1507. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +0 -35
  1508. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +0 -28
  1509. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +0 -110
  1510. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +0 -58
  1511. package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +0 -90
  1512. package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +0 -80
  1513. package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +0 -57
  1514. package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +0 -19
  1515. package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +0 -18
  1516. package/skills/observing-agentforce/SKILL.md +0 -366
  1517. package/skills/observing-agentforce/apex/AgentforceOptimizeService.cls +0 -1262
  1518. package/skills/observing-agentforce/apex/AgentforceOptimizeService.cls-meta.xml +0 -5
  1519. package/skills/observing-agentforce/references/improve-reference.md +0 -359
  1520. package/skills/observing-agentforce/references/issue-classification.md +0 -220
  1521. package/skills/observing-agentforce/references/reproduce-reference.md +0 -131
  1522. package/skills/observing-agentforce/references/stdm-queries.md +0 -373
  1523. package/skills/observing-agentforce/references/stdm-schema.md +0 -189
  1524. package/skills/orchestrating-datacloud/CREDITS.md +0 -15
  1525. package/skills/orchestrating-datacloud/README.md +0 -127
  1526. package/skills/orchestrating-datacloud/SKILL.md +0 -235
  1527. package/skills/orchestrating-datacloud/UPSTREAM.md +0 -45
  1528. package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +0 -5
  1529. package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +0 -7
  1530. package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +0 -7
  1531. package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +0 -5
  1532. package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +0 -5
  1533. package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +0 -21
  1534. package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +0 -55
  1535. package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +0 -17
  1536. package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +0 -30
  1537. package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +0 -14
  1538. package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +0 -12
  1539. package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +0 -9
  1540. package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +0 -16
  1541. package/skills/orchestrating-datacloud/references/feature-readiness.md +0 -157
  1542. package/skills/orchestrating-datacloud/references/plugin-setup.md +0 -138
  1543. package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +0 -53
  1544. package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +0 -511
  1545. package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +0 -68
  1546. package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +0 -58
  1547. package/skills/platform-agentexchange-partner-offers-enable/SKILL.md +0 -111
  1548. package/skills/platform-agentexchange-partner-offers-enable/assets/org-pref-template.md +0 -27
  1549. package/skills/platform-agentexchange-partner-offers-enable/examples/org-preference-settings.xml +0 -4
  1550. package/skills/preparing-datacloud/CREDITS.md +0 -7
  1551. package/skills/preparing-datacloud/README.md +0 -51
  1552. package/skills/preparing-datacloud/SKILL.md +0 -190
  1553. package/skills/preparing-datacloud/examples/ingestion-api/.env.example +0 -8
  1554. package/skills/preparing-datacloud/examples/ingestion-api/README.md +0 -48
  1555. package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +0 -144
  1556. package/skills/querying-soql/CREDITS.md +0 -21
  1557. package/skills/querying-soql/README.md +0 -41
  1558. package/skills/querying-soql/SKILL.md +0 -142
  1559. package/skills/querying-soql/assets/aggregate-queries.soql +0 -242
  1560. package/skills/querying-soql/assets/basic-queries.soql +0 -188
  1561. package/skills/querying-soql/assets/bulkified-query-pattern.cls +0 -280
  1562. package/skills/querying-soql/assets/optimization-patterns.soql +0 -259
  1563. package/skills/querying-soql/assets/relationship-queries.soql +0 -203
  1564. package/skills/querying-soql/assets/selector-class.cls +0 -219
  1565. package/skills/querying-soql/references/anti-patterns.md +0 -348
  1566. package/skills/querying-soql/references/cli-commands.md +0 -358
  1567. package/skills/querying-soql/references/field-coverage-rules.md +0 -514
  1568. package/skills/querying-soql/references/query-optimization.md +0 -142
  1569. package/skills/querying-soql/references/selector-patterns.md +0 -479
  1570. package/skills/querying-soql/references/soql-reference.md +0 -227
  1571. package/skills/querying-soql/references/soql-syntax-reference.md +0 -208
  1572. package/skills/querying-soql/scripts/post-tool-validate.py +0 -322
  1573. package/skills/retrieving-datacloud/CREDITS.md +0 -7
  1574. package/skills/retrieving-datacloud/README.md +0 -44
  1575. package/skills/retrieving-datacloud/SKILL.md +0 -119
  1576. package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +0 -44
  1577. package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +0 -43
  1578. package/skills/reviewing-lwc-mobile-offline/SKILL.md +0 -167
  1579. package/skills/reviewing-lwc-mobile-offline/references/grounding.md +0 -7
  1580. package/skills/reviewing-lwc-mobile-offline/references/inline-graphql.md +0 -43
  1581. package/skills/reviewing-lwc-mobile-offline/references/komaci-eslint.md +0 -125
  1582. package/skills/reviewing-lwc-mobile-offline/references/lwc-if.md +0 -78
  1583. package/skills/reviewing-lwc-mobile-offline/scripts/komaci.config.mjs +0 -18
  1584. package/skills/reviewing-lwc-mobile-offline/scripts/package.json +0 -10
  1585. package/skills/reviewing-lwc-mobile-offline/scripts/run-komaci.sh +0 -69
  1586. package/skills/running-apex-tests/CREDITS.md +0 -22
  1587. package/skills/running-apex-tests/README.md +0 -94
  1588. package/skills/running-apex-tests/SKILL.md +0 -157
  1589. package/skills/running-apex-tests/assets/basic-test.cls +0 -169
  1590. package/skills/running-apex-tests/assets/bulk-test.cls +0 -255
  1591. package/skills/running-apex-tests/assets/dml-mock.cls +0 -339
  1592. package/skills/running-apex-tests/assets/mock-callout-test.cls +0 -353
  1593. package/skills/running-apex-tests/assets/stub-provider-example.cls +0 -364
  1594. package/skills/running-apex-tests/assets/test-data-factory.cls +0 -328
  1595. package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +0 -364
  1596. package/skills/running-apex-tests/references/cli-commands.md +0 -289
  1597. package/skills/running-apex-tests/references/mocking-patterns.md +0 -500
  1598. package/skills/running-apex-tests/references/performance-optimization.md +0 -283
  1599. package/skills/running-apex-tests/references/test-fix-loop.md +0 -49
  1600. package/skills/running-apex-tests/references/test-patterns.md +0 -154
  1601. package/skills/running-apex-tests/references/testing-best-practices.md +0 -509
  1602. package/skills/running-code-analyzer/SKILL.md +0 -495
  1603. package/skills/running-code-analyzer/examples/README.md +0 -38
  1604. package/skills/running-code-analyzer/examples/basic-scan-output.json +0 -92
  1605. package/skills/running-code-analyzer/examples/command-variations.md +0 -333
  1606. package/skills/running-code-analyzer/examples/fix-application-before-after.md +0 -142
  1607. package/skills/running-code-analyzer/examples/large-scan-output.json +0 -67
  1608. package/skills/running-code-analyzer/examples/security-focused-output.json +0 -95
  1609. package/skills/running-code-analyzer/references/command-examples.md +0 -27
  1610. package/skills/running-code-analyzer/references/engine-reference.md +0 -34
  1611. package/skills/running-code-analyzer/references/error-handling.md +0 -29
  1612. package/skills/running-code-analyzer/references/flag-reference.md +0 -96
  1613. package/skills/running-code-analyzer/references/post-scan-workflows.md +0 -286
  1614. package/skills/running-code-analyzer/references/quick-start.md +0 -28
  1615. package/skills/running-code-analyzer/references/special-behaviors.md +0 -83
  1616. package/skills/running-code-analyzer/references/vendor-file-handling.md +0 -239
  1617. package/skills/running-code-analyzer/scripts/apply-fixes.js +0 -86
  1618. package/skills/running-code-analyzer/scripts/describe-rule.js +0 -382
  1619. package/skills/running-code-analyzer/scripts/discover-fixes.js +0 -34
  1620. package/skills/running-code-analyzer/scripts/filter-violations.js +0 -405
  1621. package/skills/running-code-analyzer/scripts/list-rules.js +0 -260
  1622. package/skills/running-code-analyzer/scripts/parse-results.js +0 -59
  1623. package/skills/running-code-analyzer/scripts/query-results.js +0 -230
  1624. package/skills/running-code-analyzer/scripts/summarize-fixes.js +0 -32
  1625. package/skills/running-code-analyzer/scripts/verify-execution.sh +0 -28
  1626. package/skills/searching-media/SKILL.md +0 -348
  1627. package/skills/segmenting-datacloud/CREDITS.md +0 -3
  1628. package/skills/segmenting-datacloud/README.md +0 -36
  1629. package/skills/segmenting-datacloud/SKILL.md +0 -114
  1630. package/skills/switching-org/SKILL.md +0 -28
  1631. package/skills/testing-agentforce/SKILL.md +0 -333
  1632. package/skills/testing-agentforce/assets/basic-test-spec.yaml +0 -63
  1633. package/skills/testing-agentforce/assets/guardrail-test-spec.yaml +0 -105
  1634. package/skills/testing-agentforce/assets/standard-test-spec.yaml +0 -127
  1635. package/skills/testing-agentforce/references/action-execution.md +0 -241
  1636. package/skills/testing-agentforce/references/batch-testing.md +0 -274
  1637. package/skills/testing-agentforce/references/preview-testing.md +0 -353
  1638. package/skills/testing-agentforce/references/test-report-format.md +0 -160
  1639. package/skills/testing-agentforce/references/troubleshooting.md +0 -73
  1640. package/skills/uplifting-components-to-slds2/SKILL.md +0 -239
  1641. package/skills/uplifting-components-to-slds2/references/color-hooks-decision-guide.md +0 -459
  1642. package/skills/uplifting-components-to-slds2/references/common-patterns.md +0 -87
  1643. package/skills/uplifting-components-to-slds2/references/examples.md +0 -461
  1644. package/skills/uplifting-components-to-slds2/references/migration-checklist.md +0 -67
  1645. package/skills/uplifting-components-to-slds2/references/non-color-hooks-decision-guide.md +0 -333
  1646. package/skills/uplifting-components-to-slds2/references/rule-lwc-token-to-slds-hook.md +0 -135
  1647. package/skills/uplifting-components-to-slds2/references/rule-no-deprecated-tokens-slds1.md +0 -211
  1648. package/skills/uplifting-components-to-slds2/references/rule-no-hardcoded-values.md +0 -160
  1649. package/skills/uplifting-components-to-slds2/references/rule-no-slds-class-overrides.md +0 -126
  1650. package/skills/using-mobile-native-capabilities/SKILL.md +0 -181
  1651. package/skills/using-mobile-native-capabilities/references/app-review.md +0 -68
  1652. package/skills/using-mobile-native-capabilities/references/ar-space-capture.md +0 -125
  1653. package/skills/using-mobile-native-capabilities/references/barcode-scanner.md +0 -219
  1654. package/skills/using-mobile-native-capabilities/references/base-capability.md +0 -22
  1655. package/skills/using-mobile-native-capabilities/references/biometrics.md +0 -90
  1656. package/skills/using-mobile-native-capabilities/references/calendar.md +0 -213
  1657. package/skills/using-mobile-native-capabilities/references/contacts.md +0 -232
  1658. package/skills/using-mobile-native-capabilities/references/document-scanner.md +0 -342
  1659. package/skills/using-mobile-native-capabilities/references/geofencing.md +0 -123
  1660. package/skills/using-mobile-native-capabilities/references/location.md +0 -158
  1661. package/skills/using-mobile-native-capabilities/references/mobile-capabilities.md +0 -30
  1662. package/skills/using-mobile-native-capabilities/references/nfc.md +0 -181
  1663. package/skills/using-mobile-native-capabilities/references/payments.md +0 -95
  1664. package/skills/using-salesforce-archive/SKILL.md +0 -121
  1665. package/skills/using-salesforce-archive/examples/monitor-failed-jobs.md +0 -47
  1666. package/skills/using-salesforce-archive/references/archive-activity-entity.md +0 -59
  1667. package/skills/using-salesforce-archive/references/connect-api-operations.md +0 -157
  1668. package/skills/using-ui-bundle-salesforce-data/SKILL.md +0 -638
  1669. package/skills/using-ui-bundle-salesforce-data/scripts/graphql-search.sh +0 -191
  1670. package/skills/validating-slds/SKILL.md +0 -262
  1671. package/skills/validating-slds/references/quality-checks.md +0 -308
  1672. package/skills/validating-slds/references/report-format.md +0 -302
  1673. package/skills/validating-slds/scripts/analyze-quality.cjs +0 -521
  1674. /package/skills/{getting-datacloud-schema → data360-schema-get}/scripts/get_dlo_schema.py +0 -0
  1675. /package/skills/{getting-datacloud-schema → data360-schema-get}/scripts/get_dmo_schema.py +0 -0
@@ -1,1750 +0,0 @@
1
- """Render dc._session_summary.md from dc._session_tree.json + dc._session_manifest.json.
2
-
3
- Given `DATA_ROOT/<sid>/dc._session_tree.json` (produced by `scripts/assemble_dc.py`)
4
- this module emits a human-readable `dc._session_summary.md`. Pure tree reader —
5
- no raw DMO fetches, no joins. The `session.identity` sub-object on the tree
6
- (added by the assembler) supplies all identity fields; everything else
7
- (counts, trees, catalog) comes from the tree itself.
8
-
9
- Output has 8 `##` sections:
10
-
11
- 1. Session identity — org/agent/bot/planner/session-start/end/duration
12
- 2. ID reference — full UUIDs for every ellipsized id in the tree
13
- 3. Transcript — narrative USER/AGENT text per TURN
14
- 4. Complete hierarchical trace — tree with `+start + dur = +end` math
15
- 5. Per-turn summary — one row per interaction
16
- 6. Session counts — engineer-facing totals
17
- 7. Empties diagnostics — DMOs that returned 0 rows + reason
18
- 8. Catalog (session-filtered)
19
-
20
- Contract:
21
- - Pure in-memory compute over already-produced artifacts.
22
- - Reads DATA_ROOT/<sid>/dc._session_tree.json and dc._session_manifest.json.
23
- - UUIDs in the tree are truncated to first 8 chars + `…`; full forms
24
- live in the ID reference block.
25
- - Session-not-found trees render only Session identity + a note.
26
- - Tree schema version check: refuses incompatible versions, warns on
27
- missing version (backward compat).
28
-
29
- Invocation:
30
- python3 scripts/render_dc.py --session <sid>
31
- """
32
- from __future__ import annotations
33
-
34
- import argparse
35
- import html
36
- import json
37
- import sys
38
- from datetime import datetime
39
- from pathlib import Path
40
- from typing import Dict, List, Optional
41
-
42
- sys.path.insert(0, str(Path(__file__).parent))
43
-
44
- from config import DATA_ROOT, paths
45
-
46
-
47
- # ---- schema ---------------------------------------------------------------
48
-
49
- _SUPPORTED_SCHEMA_VERSION = 1
50
-
51
-
52
- # ---- timestamp / string helpers -------------------------------------------
53
-
54
- def _parse_iso(s: Optional[str]) -> Optional[datetime]:
55
- if not s:
56
- return None
57
- try:
58
- return datetime.fromisoformat(s.replace("Z", "+00:00"))
59
- except (ValueError, AttributeError):
60
- return None
61
-
62
-
63
- def _fmt_offset(ts_iso: Optional[str], start_dt: Optional[datetime]) -> str:
64
- """Return '+12.345s' or '—' if timestamp is missing."""
65
- ts = _parse_iso(ts_iso)
66
- if ts is None or start_dt is None:
67
- return "—"
68
- return f"+{(ts - start_dt).total_seconds():.3f}s"
69
-
70
-
71
- def _fmt_duration_ms(start_iso: Optional[str], end_iso: Optional[str]) -> str:
72
- s = _parse_iso(start_iso)
73
- e = _parse_iso(end_iso)
74
- if s is None or e is None:
75
- return "—"
76
- return f"{int((e - s).total_seconds() * 1000)}ms"
77
-
78
-
79
- def _decode(s: Optional[str]) -> str:
80
- if not s:
81
- return ""
82
- return html.unescape(s).replace("\n", " ").strip()
83
-
84
-
85
- def _truncate(s: Optional[str], n: int = 80) -> str:
86
- if not s:
87
- return "—"
88
- s = _decode(s)
89
- return s if len(s) <= n else s[: n - 1] + "…"
90
-
91
-
92
- def _short(uid: Optional[str], keep: int = 8) -> str:
93
- """Truncate a UUID to `keep` chars + ellipsis. Full form lives in ID reference."""
94
- if not uid:
95
- return "—"
96
- return uid[:keep] + "…" if len(uid) > keep else uid
97
-
98
-
99
- def _fmt_total_duration(start_iso: Optional[str], end_iso: Optional[str]) -> Optional[str]:
100
- s = _parse_iso(start_iso)
101
- e = _parse_iso(end_iso)
102
- if s is None or e is None:
103
- return None
104
- total_secs = (e - s).total_seconds()
105
- if total_secs >= 3600:
106
- h = int(total_secs // 3600)
107
- m = int((total_secs % 3600) // 60)
108
- return f"{h}h {m}m {total_secs % 60:.3f}s"
109
- if total_secs >= 60:
110
- m = int(total_secs // 60)
111
- return f"{m}m {total_secs % 60:.3f}s"
112
- return f"{total_secs:.3f}s"
113
-
114
-
115
- # ---- session-end derivation ----------------------------------------------
116
-
117
- def _derive_session_end(sess: dict) -> tuple[Optional[str], Optional[str]]:
118
- """Return (effective_end_iso, source_label).
119
-
120
- Contract §3.5 derivation:
121
- 1. If `session.end_ts` is non-null → return it as-is (caller adds
122
- "✓ materialized" suffix).
123
- 2. Else prefer a SESSION_END interaction's `start_ts`
124
- (label: "from SESSION_END interaction").
125
- 3. Else fall back to the last TURN interaction's `end_ts`
126
- (or `start_ts` if end is null) (label: "session still open (last TURN)").
127
- 4. Else `(None, None)`.
128
- """
129
- end_iso = sess.get("end_ts")
130
- if end_iso:
131
- return end_iso, None # no derivation needed
132
- interactions = sess.get("interactions") or []
133
- # Prefer SESSION_END start_ts.
134
- for iv in interactions:
135
- if iv.get("type") == "SESSION_END" and iv.get("start_ts"):
136
- return iv["start_ts"], "from SESSION_END interaction"
137
- # Fall back to the last TURN (by interaction order; tree is already sorted).
138
- last_turn = None
139
- for iv in interactions:
140
- if iv.get("type") == "TURN":
141
- last_turn = iv
142
- if last_turn is not None:
143
- fallback = last_turn.get("end_ts") or last_turn.get("start_ts")
144
- if fallback:
145
- return fallback, "session still open (last TURN)"
146
- return None, None
147
-
148
-
149
- # ---- section builders -----------------------------------------------------
150
-
151
- # Channel-mode value → human cell. Annotated so the reader can tell at
152
- # a glance why we believe the mode is
153
- # what it is — `ssot__AiAgentChannelType__c` is identical for MIAW
154
- # production and Builder Previewer, which makes it useless without the
155
- # annotation.
156
- _MODE_HINTS: dict[str, str] = {
157
- "production_messaging": "production_messaging ← inferred from RelatedMessagingSessionId",
158
- "builder_previewer": "builder_previewer ← inferred from VariableText__c bootstrap keys",
159
- "voice": "voice ← inferred from RelatedVoiceCallId",
160
- "unknown": "unknown ← no signals (headless API, etc.)",
161
- }
162
-
163
-
164
- def _fmt_mode_cell(mode_value: str) -> str:
165
- """Format the `mode` field with a short why-this-value annotation."""
166
- return _MODE_HINTS.get(mode_value, mode_value)
167
-
168
-
169
- # Channel values that flag a production messaging session. `VariableText__c`
170
- # is expected to be NOT_SET on these — the bootstrap variables ride the
171
- # messaging session record, not the AI session. Any other channel
172
- # (E & O headless API, Builder Previewer, voice, unknown/integration)
173
- # can also legitimately produce NOT_SET, but for a different reason
174
- # (no bootstrap variables were attached at session start) — and we
175
- # must not mislabel those as "production messaging path".
176
- _MESSAGING_CHANNELS = frozenset({
177
- "SCRT2 - EmbeddedMessaging",
178
- "Messaging",
179
- })
180
-
181
-
182
- def _section_session_bootstrap(identity: dict, channel: Optional[str] = None) -> List[str]:
183
- """Render the `bootstrap_variables` block parsed from VariableText__c.
184
-
185
- Three states (all rendered as a small subtable so they don't clutter
186
- the main identity table):
187
- - None / NOT_SET → "no bootstrap variables for this session"
188
- (with a messaging-path addendum only when the
189
- session's `channel` is actually a messaging
190
- channel — see `_MESSAGING_CHANNELS`).
191
- - parse error → "_parse_error" with the raw prefix
192
- - populated → key/value pairs sorted, plus a "Builder Previewer
193
- indicators" tally derived from the same key set
194
- used in `_derive_mode`.
195
-
196
- Empty section returned when bootstrap_variables is missing entirely
197
- (older artifacts predate the bootstrap-variables harvest).
198
- """
199
- if "bootstrap_variables" not in identity:
200
- return [] # older artifact: no bootstrap_variables harvested
201
-
202
- bootstrap = identity.get("bootstrap_variables")
203
- lines: List[str] = ["## Session bootstrap", ""]
204
-
205
- if bootstrap is None:
206
- if channel in _MESSAGING_CHANNELS:
207
- lines.append(
208
- "`ssot__VariableText__c` is `NOT_SET` — no bootstrap variables "
209
- "(production messaging path; messaging sessions don't carry VariableText)."
210
- )
211
- else:
212
- lines.append(
213
- "`ssot__VariableText__c` is `NOT_SET` — no bootstrap variables for this session."
214
- )
215
- lines.append("")
216
- return lines
217
-
218
- if isinstance(bootstrap, dict) and bootstrap.get("_parse_error"):
219
- raw = bootstrap.get("_raw") or ""
220
- lines.append("`ssot__VariableText__c` failed to parse as JSON:")
221
- lines.append("")
222
- lines.append("```")
223
- lines.append(raw)
224
- lines.append("```")
225
- lines.append("")
226
- return lines
227
-
228
- # Populated case.
229
- indicator_keys = {
230
- "__resolved_locale__",
231
- "__locale_instruction__",
232
- "__supports_result_display__",
233
- "__show_tool_results_invoked__",
234
- }
235
- present_indicators = sorted(set(bootstrap) & indicator_keys)
236
- indicator_cell = (
237
- "yes · " + ", ".join(present_indicators)
238
- if present_indicators else "no"
239
- )
240
-
241
- lines.append("| Key | Value |")
242
- lines.append("|---|---|")
243
- for key in sorted(bootstrap):
244
- value = bootstrap[key]
245
- # Render lists / dicts compactly; keep strings/numbers/bools as-is.
246
- if isinstance(value, (list, dict)):
247
- value_repr = json.dumps(value)
248
- else:
249
- value_repr = str(value)
250
- # Pipe character would break the markdown table — escape.
251
- value_repr = value_repr.replace("|", "\\|")
252
- lines.append(f"| {key} | {value_repr} |")
253
- lines.append(f"| **Builder Previewer indicators** | {indicator_cell} |")
254
- lines.append("")
255
- return lines
256
-
257
-
258
- def _compose_agent_cell(identity: dict) -> Optional[str]:
259
- """Build the human Agent cell from identity fields; drop None components."""
260
- parts: List[str] = []
261
- api_name = identity.get("agent_api_name")
262
- version = identity.get("agent_version")
263
- if api_name and version:
264
- parts.append(f"{api_name} {version}")
265
- elif api_name:
266
- parts.append(api_name)
267
- elif version:
268
- parts.append(version)
269
- label = identity.get("agent_label")
270
- if label:
271
- parts.append(f"— {label}" if parts else label)
272
- atype = identity.get("agent_type")
273
- if atype:
274
- parts.append(f"({atype})")
275
- return " ".join(parts) if parts else None
276
-
277
-
278
- def _fmt_session_end_cell(effective_end_iso: Optional[str],
279
- end_source: Optional[str],
280
- raw_end_iso: Optional[str]) -> Optional[str]:
281
- """Compose the identity-table value for `Session end`.
282
-
283
- - Materialized end (`raw_end_iso` truthy) → "<iso> ✓ materialized"
284
- - Derived end (end_source truthy) → "<iso> (<source label>)"
285
- - Neither → None (row is dropped)
286
- """
287
- if effective_end_iso is None:
288
- return None
289
- if raw_end_iso:
290
- return f"{effective_end_iso} ✓ materialized"
291
- if end_source:
292
- return f"{effective_end_iso} ({end_source})"
293
- return effective_end_iso
294
-
295
-
296
- def _section_session_identity(sess: dict, effective_end_iso: Optional[str],
297
- end_source: Optional[str]) -> List[str]:
298
- identity = sess.get("identity") or {}
299
- org = sess.get("org") or {}
300
-
301
- # `mode` is "production_messaging" / "builder_previewer" / "voice" /
302
- # "unknown" — derived in assemble_dc from RelatedMessagingSessionId +
303
- # RelatedVoiceCallId + bootstrap_variables because
304
- # ssot__AiAgentChannelType__c is identical for MIAW production and
305
- # Builder Previewer.
306
- mode_value = identity.get("mode")
307
- mode_cell = _fmt_mode_cell(mode_value) if mode_value else None
308
-
309
- rows_out = [
310
- ("Session id", sess.get("id")),
311
- ("Org id", identity.get("org_id")),
312
- ("Org alias", org.get("alias")),
313
- ("Instance URL", org.get("instance_url")),
314
- ("Channel", sess.get("channel")),
315
- ("Mode", mode_cell),
316
- ("App type", identity.get("app_type")),
317
- ("Agent", _compose_agent_cell(identity)),
318
- ("Bot id", identity.get("bot_id")),
319
- ("Bot name", identity.get("bot_name")),
320
- ("Bot version id", identity.get("bot_version_id")),
321
- ("Planner id", identity.get("planner_id")),
322
- ("Planner name", identity.get("planner_name")),
323
- ("Planner type", identity.get("planner_type")),
324
- ("Configured model", identity.get("configured_model")),
325
- ("Platform user id", identity.get("platform_user_id")),
326
- ("Messaging session id", identity.get("messaging_session_id")),
327
- ("Messaging end-user id", identity.get("messaging_end_user_id")),
328
- ("Voice call id", identity.get("voice_call_id")),
329
- ("Individual id", identity.get("individual_id")),
330
- ("Session start", sess.get("start_ts")),
331
- (
332
- "Session end",
333
- _fmt_session_end_cell(effective_end_iso, end_source, sess.get("end_ts")),
334
- ),
335
- ("End type", sess.get("end_type")),
336
- ("Total duration", _fmt_total_duration(sess.get("start_ts"), effective_end_iso)),
337
- ]
338
- lines: List[str] = ["## Session identity", "", "| Field | Value |", "|---|---|"]
339
- for label, value in rows_out:
340
- if value is None or value == "" or value == "—":
341
- continue
342
- lines.append(f"| {label} | {value} |")
343
- lines.append("")
344
- return lines
345
-
346
-
347
- def _section_id_reference(sess: dict) -> List[str]:
348
- """Full-UUID lookup for every id the tree truncates."""
349
- lines: List[str] = [
350
- "## ID reference",
351
- "",
352
- "The tree truncates UUIDs to the first 8 chars + `…`. Look up the full "
353
- "form here. Ordered by type → first occurrence.",
354
- "",
355
- "```",
356
- f"session = {sess.get('id')}",
357
- "",
358
- ]
359
- # Interactions
360
- lines.append("interactions:")
361
- for iv in sess.get("interactions", []):
362
- lines.append(
363
- f" {iv.get('id')} type={iv.get('type') or '?'} "
364
- f"trace={iv.get('trace_id') or '—'}"
365
- )
366
- lines.append("")
367
- # Participants
368
- lines.append("participants:")
369
- for p in sess.get("participants", []):
370
- lines.append(
371
- f" {p.get('participant_id') or '—'} role={p.get('role') or '—'} "
372
- f"agent={p.get('agent_api_name') or '—'} version={p.get('agent_version') or '—'} "
373
- f"type={p.get('agent_type') or '—'}"
374
- )
375
- lines.append("")
376
-
377
- # Steps, generations, gateway_requests, messages harvested from the tree.
378
- all_steps: List[tuple] = []
379
- all_gens: List[tuple] = []
380
- all_gws: List[tuple] = []
381
- all_msgs: List[tuple] = []
382
- for iv in sess.get("interactions", []):
383
- for m in iv.get("messages", []):
384
- if m.get("message_id"):
385
- all_msgs.append((m["message_id"], m.get("role") or m.get("type") or "?"))
386
- for st in iv.get("steps", []):
387
- if st.get("id"):
388
- all_steps.append((st["id"], st.get("type") or "?", st.get("name") or "—"))
389
- gen = st.get("generation")
390
- if gen and gen.get("generation_id"):
391
- all_gens.append((
392
- gen["generation_id"],
393
- gen.get("response_id") or "—",
394
- gen.get("feature") or "—",
395
- ))
396
- gw = st.get("gateway_request")
397
- if gw and gw.get("gateway_request_id"):
398
- all_gws.append((
399
- gw["gateway_request_id"], "declared",
400
- gw.get("feature") or "—", gw.get("model") or "—",
401
- ))
402
- for tb in iv.get("timestamp_bound_gateway_calls", []):
403
- if tb.get("gateway_request_id"):
404
- all_gws.append((
405
- tb["gateway_request_id"], "timestamp_window",
406
- tb.get("feature") or "—", tb.get("model") or "—",
407
- ))
408
- for g in sess.get("unbound_gateway_calls", []):
409
- if g.get("gateway_request_id"):
410
- all_gws.append((
411
- g["gateway_request_id"], "unbound",
412
- g.get("feature") or "—", g.get("model") or "—",
413
- ))
414
-
415
- if all_steps:
416
- lines.append("steps:")
417
- for sid_, stype, sname in all_steps:
418
- lines.append(f" {sid_} type={stype} name={sname}")
419
- lines.append("")
420
- if all_gens:
421
- lines.append("generations:")
422
- for gid, rid, feat in all_gens:
423
- lines.append(f" {gid} response_id={rid} feature={feat}")
424
- lines.append("")
425
- if all_gws:
426
- lines.append("gateway_requests:")
427
- for gwid, bm, feat, model in all_gws:
428
- lines.append(f" {gwid} binding={bm} feature={feat} model={model}")
429
- lines.append("")
430
- if all_msgs:
431
- lines.append("messages:")
432
- for mid, role in all_msgs:
433
- lines.append(f" {mid} role={role}")
434
- lines.append("```")
435
- lines.append("")
436
- return lines
437
-
438
-
439
- def _section_transcript(sess: dict, start_dt: Optional[datetime]) -> List[str]:
440
- turns = [iv for iv in sess.get("interactions", []) if iv.get("type") == "TURN"]
441
- if not turns:
442
- return []
443
- lines: List[str] = ["## Transcript", ""]
444
- for iv in turns:
445
- start_off = _fmt_offset(iv.get("start_ts"), start_dt)
446
- dur = _fmt_duration_ms(iv.get("start_ts"), iv.get("end_ts"))
447
- lines.append(f"**Interaction {_short(iv.get('id'))}** · {start_off} · {dur}")
448
- for m in iv.get("messages", []):
449
- role = m.get("role") or m.get("type") or "?"
450
- lines.append(f"> **{role}:** {_decode(m.get('text') or '')}")
451
- lines.append("")
452
- return lines
453
-
454
-
455
- def _section_hierarchical_trace(sess: dict, start_dt: Optional[datetime],
456
- effective_end_iso: Optional[str],
457
- end_source: Optional[str]) -> List[str]:
458
- lines: List[str] = [
459
- "## Complete hierarchical trace",
460
- "",
461
- "Notation: `+Xs` = offset in seconds from session start. "
462
- "UUIDs are truncated to 8 chars + `…` for readability; "
463
- "full forms are in the **ID reference** block above.",
464
- "",
465
- "```",
466
- ]
467
-
468
- # Session header
469
- lines.append(f"SESSION {_short(sess.get('id'))}")
470
- start_iso = sess.get("start_ts")
471
- if start_iso:
472
- lines.append(f"│ Start +0.000s ({start_iso})")
473
-
474
- end_iso_raw = sess.get("end_ts")
475
- end_type = sess.get("end_type") or None
476
- outcome_s = end_type or "—"
477
- if not end_type and not end_iso_raw:
478
- outcome_s = "— (session end not yet materialized in STDM)"
479
- display_end = end_iso_raw or effective_end_iso
480
- if display_end:
481
- label_suffix = f" [{end_source}]" if end_source else ""
482
- lines.append(
483
- f"│ End {_fmt_offset(display_end, start_dt)} ({display_end}){label_suffix} "
484
- f"outcome={outcome_s}"
485
- )
486
- else:
487
- lines.append(f"│ End — (session still open) outcome={outcome_s}")
488
- lines.append("│")
489
-
490
- interactions = sess.get("interactions", [])
491
- for iv_idx, iv in enumerate(interactions):
492
- is_last_iv = iv_idx == len(interactions) - 1
493
- iv_branch = "└──" if is_last_iv else "├──"
494
- iv_cont = " " if is_last_iv else "│ "
495
-
496
- iv_start_off = _fmt_offset(iv.get("start_ts"), start_dt)
497
- iv_end_off = _fmt_offset(iv.get("end_ts"), start_dt)
498
- iv_dur = _fmt_duration_ms(iv.get("start_ts"), iv.get("end_ts"))
499
- iv_type = iv.get("type") or "?"
500
- lines.append(
501
- f"{iv_branch} {iv_type} {_short(iv.get('id'))} "
502
- f"{iv_start_off} + {iv_dur} = {iv_end_off}"
503
- )
504
-
505
- topic = iv.get("topic")
506
- if topic:
507
- lines.append(f"{iv_cont}├── TOPIC: {topic}")
508
-
509
- for m in iv.get("messages", []):
510
- role = m.get("role") or m.get("type") or "?"
511
- m_off = _fmt_offset(m.get("ts"), start_dt) if m.get("ts") else "—"
512
- lines.append(f"{iv_cont}├── {role} message {_short(m.get('message_id'))} ts={m_off}")
513
- lines.append(f"{iv_cont}│ └── text: \"{_truncate(m.get('text'), 100)}\"")
514
-
515
- steps = iv.get("steps", [])
516
- tsbound = iv.get("timestamp_bound_gateway_calls", [])
517
- tsb_by_step: Dict[str, List[dict]] = {}
518
- tsb_interaction_level: List[dict] = []
519
- for tb in tsbound:
520
- bsid = tb.get("bound_to_step_id")
521
- if bsid:
522
- tsb_by_step.setdefault(bsid, []).append(tb)
523
- else:
524
- tsb_interaction_level.append(tb)
525
-
526
- remaining_groups: List[str] = []
527
- if steps:
528
- remaining_groups.append("steps")
529
- if tsb_interaction_level:
530
- remaining_groups.append("ts_il")
531
-
532
- for grp_idx, grp in enumerate(remaining_groups):
533
- grp_is_last = grp_idx == len(remaining_groups) - 1
534
- grp_branch = "└──" if grp_is_last else "├──"
535
- grp_cont = " " if grp_is_last else "│ "
536
- if grp == "steps":
537
- lines.append(f"{iv_cont}{grp_branch} STEPS:")
538
- for st_idx, st in enumerate(steps):
539
- lines.extend(_render_step(
540
- st, st_idx, len(steps), iv_cont, grp_cont,
541
- start_dt, tsb_by_step,
542
- ))
543
- else: # grp == "ts_il"
544
- lines.append(f"{iv_cont}{grp_branch} INTERACTION-LEVEL TIMESTAMP-BOUND GATEWAY CALLS:")
545
- for tb_idx, tb in enumerate(tsb_interaction_level):
546
- tb_is_last = tb_idx == len(tsb_interaction_level) - 1
547
- tb_branch = "└──" if tb_is_last else "├──"
548
- lines.append(
549
- f"{iv_cont}{grp_cont}{tb_branch} "
550
- f"gateway_request [timestamp_window, interaction-level] "
551
- f"{_short(tb.get('gateway_request_id'))} "
552
- f"feature={tb.get('feature') or '—'} "
553
- f"model={tb.get('model') or '—'}"
554
- )
555
-
556
- if not is_last_iv:
557
- lines.append("│")
558
-
559
- # Unbound gateway calls (session root level)
560
- ub = sess.get("unbound_gateway_calls", [])
561
- if ub:
562
- lines.append("")
563
- lines.append(
564
- f"UNBOUND GATEWAY CALLS ({len(ub)}) — neither declared chain "
565
- "nor timestamp window matched"
566
- )
567
- for i, g in enumerate(ub):
568
- branch = "└──" if i == len(ub) - 1 else "├──"
569
- lines.append(
570
- f"{branch} {_short(g.get('gateway_request_id'))} "
571
- f"feature={g.get('feature') or '—'} model={g.get('model') or '—'}"
572
- )
573
-
574
- lines.append("```")
575
- lines.append("")
576
- return lines
577
-
578
-
579
- def _render_step(st: dict, st_idx: int, n_steps: int,
580
- iv_cont: str, grp_cont: str,
581
- start_dt: Optional[datetime],
582
- tsb_by_step: Dict[str, List[dict]]) -> List[str]:
583
- """Render one step + its nested generation / gateway_request / ts-bound GWs."""
584
- st_is_last = st_idx == n_steps - 1
585
- st_branch = "└──" if st_is_last else "├──"
586
- st_cont = " " if st_is_last else "│ "
587
- st_start_off = _fmt_offset(st.get("start_ts"), start_dt)
588
- st_end_off = _fmt_offset(st.get("end_ts"), start_dt)
589
- st_dur = _fmt_duration_ms(st.get("start_ts"), st.get("end_ts"))
590
-
591
- # Show the bound LLM model alongside the step name when known.
592
- # `model_name` is mirrored from the bound gateway_request by
593
- # assemble_dc; None when the declared chain didn't reach or when STDM
594
- # dropped writes (the `gateway_requests_dropped_by_stdm` shape).
595
- name_cell = st.get("name") or "—"
596
- model_name = st.get("model_name")
597
- if model_name:
598
- name_cell = f"{name_cell} · {model_name}"
599
-
600
- lines = [
601
- f"{iv_cont}{grp_cont}{st_branch} {st.get('type') or '?'} {_short(st.get('id'))} "
602
- f"name={name_cell} {st_start_off} + {st_dur} = {st_end_off}"
603
- ]
604
-
605
- # Step children: error, generation (+ trust signals), gateway_request, collision, bound GWs.
606
- step_kids: List[tuple] = []
607
- if st.get("error_text"):
608
- step_kids.append(("error", None))
609
- gen = st.get("generation")
610
- if gen:
611
- step_kids.append(("gen", gen))
612
- gw = st.get("gateway_request")
613
- if gw:
614
- step_kids.append(("gw", gw))
615
- if st.get("gateway_request_collision"):
616
- step_kids.append(("collision", None))
617
- for tb in tsb_by_step.get(st.get("id", ""), []):
618
- step_kids.append(("tsb", tb))
619
-
620
- prefix = f"{iv_cont}{grp_cont}{st_cont}"
621
- for k_idx, (ktype, kval) in enumerate(step_kids):
622
- k_is_last = k_idx == len(step_kids) - 1
623
- k_branch = "└──" if k_is_last else "├──"
624
- k_cont = " " if k_is_last else "│ "
625
-
626
- if ktype == "error":
627
- lines.append(f"{prefix}{k_branch} ERROR: {st['error_text']}")
628
- elif ktype == "collision":
629
- lines.append(
630
- f"{prefix}{k_branch} ⚠ gateway_request_collision: "
631
- "earlier step claimed the declared GW"
632
- )
633
- elif ktype == "gen":
634
- lines.extend(_render_generation(kval, prefix, k_branch, k_cont,
635
- step_name=st.get("name")))
636
- elif ktype == "gw":
637
- lines.extend(_render_gw_declared(kval, prefix, k_branch, k_cont))
638
- elif ktype == "tsb":
639
- tb = kval
640
- lines.append(
641
- f"{prefix}{k_branch} gateway_request [timestamp_window] "
642
- f"{_short(tb.get('gateway_request_id'))} "
643
- f"feature={tb.get('feature') or '—'} "
644
- f"model={tb.get('model') or '—'}"
645
- )
646
- return lines
647
-
648
-
649
- _ROLE_LABELS = {
650
- "ReactTopicPrompt": "topic-classification output",
651
- "ReactInitialPrompt": "ReAct planner step",
652
- "ReactValidationPrompt": "ReAct validator",
653
- "ReactFormatSurfaceResponsePrompt": "response formatter",
654
- }
655
-
656
-
657
- def _role_label_for(step_name: Optional[str]) -> Optional[str]:
658
- if not step_name:
659
- return None
660
- for key, label in _ROLE_LABELS.items():
661
- if key in step_name:
662
- return label
663
- return None
664
-
665
-
666
- def _parse_finish_reason(response_parameters: Optional[str]) -> Optional[str]:
667
- """Pull finish_reason out of the HTML-escaped JSON in responseParameters__c.
668
- Shape: `{&quot;finish_reason&quot;:&quot;&#92;&quot;stop&#92;&quot;&quot;,...}`."""
669
- if not response_parameters:
670
- return None
671
- try:
672
- decoded = html.unescape(response_parameters)
673
- parsed = json.loads(decoded)
674
- except (ValueError, TypeError):
675
- return None
676
- raw = parsed.get("finish_reason") if isinstance(parsed, dict) else None
677
- if not isinstance(raw, str):
678
- return None
679
- # value often comes wrapped in escaped quotes: `\"stop\"` → `stop`
680
- return raw.replace("\\", "").strip('"').strip()
681
-
682
-
683
- def _decoded_line(response_text: Optional[str]) -> str:
684
- """Render `decoded:` content. Detect tool-call JSON and summarize.
685
- responseText__c is HTML-escaped (&quot; etc.) in the wire format — unescape
686
- before trying to parse as JSON."""
687
- if not response_text:
688
- return "—"
689
- candidate = html.unescape(response_text).strip()
690
- if candidate.startswith("{") and '"toolInvocations"' in candidate:
691
- try:
692
- obj = json.loads(candidate)
693
- tools = obj.get("toolInvocations") or []
694
- content = (obj.get("content") or "").strip()
695
- if tools:
696
- first = tools[0].get("function") or {}
697
- name = first.get("name") or "?"
698
- args_raw = first.get("arguments") or ""
699
- arg_summary = ""
700
- try:
701
- args_obj = json.loads(args_raw) if isinstance(args_raw, str) else args_raw
702
- if isinstance(args_obj, dict) and args_obj:
703
- k, v = next(iter(args_obj.items()))
704
- v_str = str(v)
705
- if len(v_str) > 60:
706
- v_str = v_str[:57] + "…"
707
- arg_summary = f'{k}="{v_str}"'
708
- except (ValueError, TypeError):
709
- pass
710
- prefix = "no user text" if not content else f'"{_truncate(content, 60)}"'
711
- n = len(tools)
712
- call_word = "tool call" if n == 1 else "tool calls"
713
- return f"{prefix}; {n} {call_word} → {name}({arg_summary})"
714
- except (ValueError, TypeError):
715
- pass
716
- return f'"{_truncate(response_text, 140)}"'
717
-
718
-
719
- def _float_or_none(v) -> Optional[float]:
720
- try:
721
- return float(v)
722
- except (ValueError, TypeError):
723
- return None
724
-
725
-
726
- def _trust_line(g: dict) -> str:
727
- """Summarize trust signals. TOXICITY sub-categories (parented on the
728
- quality row) carry a dedicated `safety_score` category in the 0-1 range
729
- (1.0 = clean). Non-`safety_score` sub-categories are the 8 hazard axes
730
- (profanity, hate, violence, …); report the max of those when a detection
731
- fires so the reader sees which axis tripped.
732
- Non-TOXICITY detectors (InstructionAdherence, etc.) are parented directly
733
- on the generation and render as textual verdicts."""
734
- quality = g.get("quality") or []
735
- cats = g.get("categories") or []
736
- if not quality and not cats:
737
- return "— (no quality/category rows)"
738
- parts: List[str] = []
739
- for q in quality:
740
- subs = q.get("_toxicity_subcategories") or []
741
- detected = str(q.get("isToxicityDetected__c", "")).lower() == "true"
742
- safety: Optional[float] = None
743
- hazard_subs: List[tuple] = []
744
- for s in subs:
745
- if (s.get("detectorType__c") or "").upper() != "TOXICITY":
746
- continue
747
- name = s.get("category__c") or ""
748
- val = _float_or_none(s.get("value__c"))
749
- if val is None:
750
- continue
751
- if name == "safety_score":
752
- safety = val
753
- else:
754
- hazard_subs.append((name, val))
755
- status = "detected" if detected else "clean"
756
- safety_str = f"{safety:.2f}" if safety is not None else "—"
757
- if not detected and hazard_subs and all(v == 0 for _, v in hazard_subs):
758
- detail = f" — all {len(hazard_subs)} sub-categories 0.00"
759
- elif hazard_subs:
760
- top_name, top_val = max(hazard_subs, key=lambda kv: kv[1])
761
- detail = f" — max {top_name}={top_val:.2f}"
762
- else:
763
- detail = ""
764
- parts.append(f"TOXICITY safety_score={safety_str} ({status}{detail})")
765
- # Non-TOXICITY detectors (generation-direct).
766
- for c in cats:
767
- dtype = (c.get("detectorType__c") or "?").strip()
768
- if dtype.upper() == "TOXICITY":
769
- continue
770
- val = c.get("value__c")
771
- parts.append(f"{dtype}: {_truncate(val, 80)}")
772
- return "; ".join(parts) if parts else "—"
773
-
774
-
775
- def _render_generation(g: dict, prefix: str, k_branch: str, k_cont: str,
776
- *, step_name: Optional[str] = None) -> List[str]:
777
- """Generation node: 3 fixed children (decoded / finish_reason+masked / trust).
778
- Header is naked (id only); `response_id` and `feature` live in the ID reference
779
- block / on the sibling gateway_request line."""
780
- lines = [
781
- f"{prefix}{k_branch} generation {_short(g.get('generation_id'))}"
782
- ]
783
- role = _role_label_for(step_name)
784
- decoded = _decoded_line(g.get("response_text"))
785
- if role:
786
- decoded_line = f"decoded: {decoded} ({role})"
787
- else:
788
- decoded_line = f"decoded: {decoded}"
789
- masked = g.get("masked_response_text")
790
- masked_disp = _truncate(masked, 60) if masked else "—"
791
- finish_reason = _parse_finish_reason(g.get("response_parameters")) or "—"
792
- gprefix = f"{prefix}{k_cont}"
793
- lines.append(f"{gprefix}├── {decoded_line}")
794
- lines.append(f"{gprefix}├── finish_reason={finish_reason} masked={masked_disp}")
795
- lines.append(f"{gprefix}└── trust: {_trust_line(g)}")
796
- return lines
797
-
798
-
799
- def _render_gw_declared(g: dict, prefix: str, k_branch: str, k_cont: str) -> List[str]:
800
- tokens = (
801
- f"prompt={int(g.get('prompt_tokens') or 0)} "
802
- f"completion={int(g.get('completion_tokens') or 0)} "
803
- f"total={int(g.get('total_tokens') or 0)}"
804
- )
805
- tags = g.get("tags") or []
806
- md = g.get("metadata") or []
807
- recs = g.get("records") or []
808
- llm = g.get("llm") or []
809
- audit_line = (
810
- f"audit: tags={len(tags)} metadata={len(md)} records={len(recs)} llm={len(llm)}"
811
- if (tags or md or recs or llm)
812
- else "audit: (none)"
813
- )
814
- return [
815
- f"{prefix}{k_branch} gateway_request [declared] "
816
- f"{_short(g.get('gateway_request_id'))} "
817
- f"feature={g.get('feature') or '—'} "
818
- f"model={g.get('model') or '—'} "
819
- f"provider={g.get('provider') or '—'}",
820
- f"{prefix}{k_cont}├── tokens: {tokens}",
821
- f"{prefix}{k_cont}└── {audit_line}",
822
- ]
823
-
824
-
825
- def _section_per_turn_summary(sess: dict, start_dt: Optional[datetime]) -> List[str]:
826
- lines: List[str] = [
827
- "## Per-turn summary",
828
- "",
829
- "| Interaction | Type | Start offset | Duration | Steps | "
830
- "GW declared | GW ts_window | USER → AGENT |",
831
- "|---|---|---|---|---|---|---|---|",
832
- ]
833
- for iv in sess.get("interactions", []):
834
- iv_type = iv.get("type") or "?"
835
- start_off = _fmt_offset(iv.get("start_ts"), start_dt)
836
- dur = _fmt_duration_ms(iv.get("start_ts"), iv.get("end_ts"))
837
- step_count = len(iv.get("steps", []))
838
- declared_gws = sum(
839
- 1 for st in iv.get("steps", [])
840
- if st.get("gateway_request")
841
- and st["gateway_request"].get("binding_method") == "declared"
842
- )
843
- tsw_gws = len(iv.get("timestamp_bound_gateway_calls", []))
844
- user_msg = next((m for m in iv.get("messages", []) if m.get("role") == "USER"), None)
845
- agent_msg = next((m for m in iv.get("messages", []) if m.get("role") == "AGENT"), None)
846
- ut = _truncate(user_msg.get("text") if user_msg else None, 40)
847
- at = _truncate(agent_msg.get("text") if agent_msg else None, 40)
848
- lines.append(
849
- f"| `{_short(iv.get('id'))}` | {iv_type} | {start_off} | {dur} | "
850
- f"{step_count} | {declared_gws} | {tsw_gws} | {ut} → {at} |"
851
- )
852
- lines.append("")
853
- return lines
854
-
855
-
856
- # ---- visual analysis (mermaid) -------------------------------------------
857
-
858
- # Chars that break mermaid label parsing when bare; quote-wrap the string
859
- # when any of these show up. Underscore+digit tokens in topic strings are
860
- # legal inside mermaid node labels — only syntax-significant chars need
861
- # escaping here.
862
- _MERMAID_LABEL_SPECIALS = set(',()<>:"#')
863
-
864
-
865
- def _escape_mermaid_label(s: str) -> str:
866
- if not s:
867
- return '""'
868
- if any(ch in _MERMAID_LABEL_SPECIALS for ch in s):
869
- return '"' + s.replace('"', '\\"') + '"'
870
- return s
871
-
872
-
873
- def _sequence_msg(s: str) -> str:
874
- """Sanitize free-form text for the right-hand side of a sequenceDiagram
875
- arrow. Mermaid parses `A->>B: <text>` up to newline — the text itself is
876
- unquoted, so wrapping in `"..."` (as node-label escape does) renders the
877
- quotes literally. We just strip newlines and escape the one char that
878
- ends the message field (semicolon is the statement terminator)."""
879
- if not s:
880
- return "—"
881
- return s.replace("\n", " ").replace(";", ",").strip()
882
-
883
-
884
- def _flowchart_edge_label(s: str) -> str:
885
- """Sanitize free-form text for a flowchart edge label `A -->|label| B`.
886
- The delimiter is the pipe itself, so a literal `|` in the label shatters
887
- the parser. Square brackets also clash with node-shape syntax. Strip/
888
- substitute these; other specials (commas, colons, parens) are fine
889
- inside quoted labels, which `_escape_mermaid_label` handles."""
890
- if not s:
891
- return ""
892
- cleaned = s.replace("|", "/").replace("[", "(").replace("]", ")")
893
- return _escape_mermaid_label(cleaned)
894
-
895
-
896
- def _step_display_name(st: dict) -> str:
897
- """Short, mermaid-safe row label for a step.
898
-
899
- - Strip `AiCopilot__` prefix on LLM prompts.
900
- - For ACTION_STEP names shaped `Topic_xxx.AGNT_Action_yyy`, keep the
901
- action-name portion after the last `.` so the row reads as the
902
- invoked action, not the topic.
903
- """
904
- name = st.get("name") or st.get("type") or "?"
905
- if name.startswith("AiCopilot__"):
906
- name = name[len("AiCopilot__"):]
907
- if st.get("type") == "ACTION_STEP" and "." in name:
908
- name = name.rsplit(".", 1)[-1]
909
- # Gantt task names cannot contain colons (task syntax is `label : id, start, dur`).
910
- return name.replace(":", "·")
911
-
912
-
913
- def _iter_turns(sess: dict) -> List[dict]:
914
- return [iv for iv in sess.get("interactions", []) if iv.get("type") == "TURN"]
915
-
916
-
917
- def _mermaid_gantt(
918
- sess: dict,
919
- start_dt: Optional[datetime],
920
- llm_calls: Optional[List[dict]] = None,
921
- ) -> List[str]:
922
- """Gantt chart — wall-clock timeline.
923
-
924
- Rows per turn (ACTION steps tagged :crit). When `llm_calls` is
925
- non-empty, a trailing "LLM calls" section renders per-call rows
926
- tagged by region-class (:active = cross_region, :done = same-
927
- region, plain = unknown). Mermaid's built-in 3-class palette is
928
- enough signal for v1; full per-region color would need a classDef
929
- block (deferred — see plan OOS-2.A).
930
-
931
- Kill-criterion: <3 total rows after dropping zero-duration steps
932
- AND no LLM-call rows → return []. If the step set is thin but the
933
- call set is non-empty, we still render (the call rows are the
934
- whole point of the overlay).
935
- """
936
- if start_dt is None:
937
- return []
938
- rows: List[tuple] = [] # (section_label, row_label, start_ms, end_ms, is_action)
939
- turns = _iter_turns(sess)
940
- for iv in sess.get("interactions", []):
941
- if iv.get("type") != "TURN":
942
- continue
943
- topic = iv.get("topic") or "(no topic)"
944
- section = f"Turn {turns.index(iv) + 1} ({topic})"
945
- for st in iv.get("steps", []):
946
- if st.get("type") == "SESSION_END":
947
- continue
948
- s_dt = _parse_iso(st.get("start_ts"))
949
- e_dt = _parse_iso(st.get("end_ts"))
950
- if s_dt is None or e_dt is None:
951
- continue
952
- s_ms = int((s_dt - start_dt).total_seconds() * 1000)
953
- e_ms = int((e_dt - start_dt).total_seconds() * 1000)
954
- if e_ms <= s_ms:
955
- continue # skip zero-duration (e.g. TOPIC_STEP markers)
956
- rows.append((section, _step_display_name(st), s_ms, e_ms,
957
- st.get("type") == "ACTION_STEP"))
958
-
959
- # LLM-call rows — one per gateway call, derived from _llm_calls.json.
960
- # Rendered in a trailing section so they don't interleave with step
961
- # rows (mermaid sections don't sort across boundaries).
962
- call_rows: List[tuple] = [] # (row_label, start_ms, end_ms, class_tag)
963
- for call in (llm_calls or []):
964
- t_iso = call.get("_time")
965
- dur_ms = call.get("duration_ms")
966
- if not t_iso or dur_ms is None:
967
- continue
968
- t_dt = _parse_iso(t_iso)
969
- if t_dt is None:
970
- continue
971
- s_ms = int((t_dt - start_dt).total_seconds() * 1000)
972
- e_ms = s_ms + int(dur_ms)
973
- if e_ms <= s_ms:
974
- continue
975
- # class_tag: cross_region=True → :active (mermaid's yellow),
976
- # cross_region=False → :done (grey), unknown/None → no tag
977
- # (default blue). Operators can scan for the yellow bars as
978
- # the cross-region outliers.
979
- cr = call.get("cross_region")
980
- if cr is True:
981
- class_tag = ":active, "
982
- elif cr is False:
983
- class_tag = ":done, "
984
- else:
985
- class_tag = ":"
986
- model = call.get("model_name") or "call"
987
- region = call.get("routing_decision") or "—"
988
- label = _escape_mermaid_label(f"{model} [{region}]")
989
- call_rows.append((label, s_ms, e_ms, class_tag))
990
-
991
- if len(rows) < 3 and not call_rows:
992
- return []
993
-
994
- # axisFormat: `%M:%S` renders as minutes:seconds via d3. Our offsets
995
- # are ms-from-start passed through `dateFormat x` (unix epoch); d3
996
- # treats them as Jan 1 1970 timestamps, so for any session under
997
- # 1 hour this reads cleanly as m:ss elapsed. `%L` (ms-of-second)
998
- # always rendered 000 because ticks land at second boundaries.
999
- # The leading `section anchor` + 1ms milestone forces the x-axis to
1000
- # start at 00:00 — mermaid derives axis min from the smallest task
1001
- # timestamp, and without the anchor that's the first step's offset
1002
- # (~5s into a typical session), making the axis misleadingly slide.
1003
- lines = [
1004
- "```mermaid",
1005
- "gantt",
1006
- " title Session timeline (m:ss from start)",
1007
- " dateFormat x",
1008
- " axisFormat %M:%S",
1009
- " section Session start",
1010
- " t0 :milestone, 0, 0",
1011
- ]
1012
- current_section: Optional[str] = None
1013
- for section, label, s_ms, e_ms, is_action in rows:
1014
- if section != current_section:
1015
- lines.append(f" section {section}")
1016
- current_section = section
1017
- # Mermaid gantt task: `<name> :[tag,] <start>, <end>` — single colon,
1018
- # tag is the first comma-separated field after it. Two colons (the
1019
- # `:crit:` shape) is a parse error.
1020
- prefix = ":crit, " if is_action else ":"
1021
- lines.append(f" {label} {prefix}{s_ms}, {e_ms}")
1022
- if call_rows:
1023
- lines.append(" section LLM calls")
1024
- for label, s_ms, e_ms, class_tag in call_rows:
1025
- lines.append(f" {label} {class_tag}{s_ms}, {e_ms}")
1026
- lines.append("```")
1027
- lines.append("")
1028
- return lines
1029
-
1030
-
1031
- def _action_short_name(st: dict) -> str:
1032
- name = st.get("name") or ""
1033
- if "." in name:
1034
- name = name.rsplit(".", 1)[-1]
1035
- return name or "action"
1036
-
1037
-
1038
- def _mermaid_sequence_per_turn(iv: dict, start_dt: Optional[datetime],
1039
- turn_no: int) -> List[str]:
1040
- steps = iv.get("steps", [])
1041
- has_error = any(st.get("error_text") for st in steps)
1042
- action_steps = [st for st in steps if st.get("type") == "ACTION_STEP"]
1043
- if not has_error and len(action_steps) < 2:
1044
- return []
1045
-
1046
- topic = iv.get("topic") or "(no topic)"
1047
- heading = f"### Turn {turn_no} ({topic}) — control flow"
1048
- lines: List[str] = [heading, "", "```mermaid", "sequenceDiagram"]
1049
-
1050
- # Participants: U, P, L are always present; actions get A1, A2, …
1051
- lines.append(" participant U as USER")
1052
- lines.append(" participant P as Planner")
1053
- lines.append(" participant L as LLM Gateway")
1054
- action_alias: Dict[str, str] = {} # step id → alias
1055
- for i, st in enumerate(action_steps, start=1):
1056
- alias = f"A{i}"
1057
- action_alias[st.get("id") or f"_a{i}"] = alias
1058
- label = _escape_mermaid_label(_action_short_name(st))
1059
- lines.append(f" participant {alias} as {label}")
1060
-
1061
- # User → Planner (utterance).
1062
- user_msg = next((m for m in iv.get("messages", []) if m.get("role") == "USER"), None)
1063
- user_text = _truncate(user_msg.get("text") if user_msg else None, 40)
1064
- if user_msg:
1065
- lines.append(f" U->>P: {_sequence_msg(user_text)}")
1066
-
1067
- # Walk steps in order. LLM → L, ACTION → A<n>, errors → Note over.
1068
- for st in steps:
1069
- stype = st.get("type")
1070
- if stype == "LLM_STEP":
1071
- label = _step_display_name(st)
1072
- gw = st.get("gateway_request") or {}
1073
- model = gw.get("model")
1074
- suffix = f" ({model})" if model else ""
1075
- lines.append(f" P->>L: {_sequence_msg(label + suffix)}")
1076
- dur = _fmt_duration_ms(st.get("start_ts"), st.get("end_ts"))
1077
- if st.get("error_text"):
1078
- lines.append(f" Note over L: ERROR in {dur}")
1079
- else:
1080
- lines.append(f" L-->>P: ok ({dur})")
1081
- elif stype == "ACTION_STEP":
1082
- alias = action_alias.get(st.get("id") or "", "A?")
1083
- dur = _fmt_duration_ms(st.get("start_ts"), st.get("end_ts"))
1084
- lines.append(f" P->>{alias}: invoke")
1085
- lines.append(f" {alias}-->>P: result ({dur})")
1086
-
1087
- # Agent reply (if any).
1088
- agent_msg = next((m for m in iv.get("messages", []) if m.get("role") == "AGENT"), None)
1089
- if agent_msg:
1090
- agent_text = _truncate(agent_msg.get("text"), 40)
1091
- lines.append(f" P-->>U: {_sequence_msg(agent_text)}")
1092
-
1093
- lines.append("```")
1094
- lines.append("")
1095
- return lines
1096
-
1097
-
1098
- def _mermaid_topic_flowchart(sess: dict) -> List[str]:
1099
- turns = _iter_turns(sess)
1100
- if not turns:
1101
- return []
1102
- # Order-preserving unique topics.
1103
- topic_ids: Dict[str, str] = {}
1104
- for iv in turns:
1105
- t = iv.get("topic") or "(no topic)"
1106
- if t not in topic_ids:
1107
- topic_ids[t] = f"T{len(topic_ids) + 1}"
1108
- if len(topic_ids) == len(turns):
1109
- return [] # linear — no repeats, skip
1110
-
1111
- lines: List[str] = ["```mermaid", "flowchart LR"]
1112
- # Node declarations.
1113
- for topic, node_id in topic_ids.items():
1114
- lines.append(f" {node_id}[{_escape_mermaid_label(topic)}]")
1115
-
1116
- # Edges: one per turn transition, labelled by the user utterance that
1117
- # drove into that turn. The first turn has no predecessor so we just
1118
- # declare the node; edges start from turn 2.
1119
- prev_topic = turns[0].get("topic") or "(no topic)"
1120
- for iv in turns[1:]:
1121
- cur_topic = iv.get("topic") or "(no topic)"
1122
- user_msg = next((m for m in iv.get("messages", []) if m.get("role") == "USER"), None)
1123
- utter = _truncate(user_msg.get("text") if user_msg else None, 30)
1124
- src = topic_ids[prev_topic]
1125
- dst = topic_ids[cur_topic]
1126
- label = _flowchart_edge_label(utter) if utter and utter != "—" else ""
1127
- arrow = f" {src} -->|{label}| {dst}" if label else f" {src} --> {dst}"
1128
- lines.append(arrow)
1129
- prev_topic = cur_topic
1130
-
1131
- # Error class for topics whose turn ended with an error_text.
1132
- errored_topic_ids: List[str] = []
1133
- for iv in turns:
1134
- if any(st.get("error_text") for st in iv.get("steps", [])):
1135
- tid = topic_ids[iv.get("topic") or "(no topic)"]
1136
- if tid not in errored_topic_ids:
1137
- errored_topic_ids.append(tid)
1138
- if errored_topic_ids:
1139
- lines.append(f" classDef err fill:#fee,stroke:#c00")
1140
- for tid in errored_topic_ids:
1141
- lines.append(f" class {tid} err")
1142
-
1143
- lines.append("```")
1144
- lines.append("")
1145
- return lines
1146
-
1147
-
1148
- def _mermaid_token_pie(sess: dict) -> List[str]:
1149
- buckets: Dict[str, int] = {}
1150
- total = 0
1151
- for iv in sess.get("interactions", []):
1152
- for st in iv.get("steps", []):
1153
- gw = st.get("gateway_request") or {}
1154
- p = int(gw.get("prompt_tokens") or 0)
1155
- c = int(gw.get("completion_tokens") or 0)
1156
- tok = p + c
1157
- if tok <= 0:
1158
- continue
1159
- role = _role_label_for(st.get("name")) or "other"
1160
- buckets[role] = buckets.get(role, 0) + tok
1161
- total += tok
1162
- if total < 1000 or not buckets:
1163
- return []
1164
-
1165
- lines = [
1166
- "```mermaid",
1167
- "pie showData",
1168
- f" title Prompt-role token attribution (total = {total:,})",
1169
- ]
1170
- # Largest slice first reads better in most renderers.
1171
- for role, n in sorted(buckets.items(), key=lambda kv: -kv[1]):
1172
- lines.append(f' "{role}" : {n}')
1173
- lines.append("```")
1174
- lines.append("")
1175
- return lines
1176
-
1177
-
1178
- def _section_visual_analysis(
1179
- sess: dict,
1180
- start_dt: Optional[datetime],
1181
- llm_calls: Optional[List[dict]] = None,
1182
- ) -> List[str]:
1183
- blocks: List[List[str]] = []
1184
- gantt = _mermaid_gantt(sess, start_dt, llm_calls=llm_calls)
1185
- if gantt:
1186
- blocks.append(gantt)
1187
- # Per-turn sequence diagrams (at most one per turn; most turns skip).
1188
- turns = _iter_turns(sess)
1189
- for idx, iv in enumerate(turns, start=1):
1190
- seq = _mermaid_sequence_per_turn(iv, start_dt, idx)
1191
- if seq:
1192
- blocks.append(seq)
1193
- flow = _mermaid_topic_flowchart(sess)
1194
- if flow:
1195
- blocks.append(flow)
1196
- pie = _mermaid_token_pie(sess)
1197
- if pie:
1198
- blocks.append(pie)
1199
-
1200
- if not blocks:
1201
- return []
1202
- lines: List[str] = ["## Visual analysis", ""]
1203
- for b in blocks:
1204
- lines.extend(b)
1205
- return lines
1206
-
1207
-
1208
- def _section_session_counts(sess: dict) -> List[str]:
1209
- c = sess.get("counts", {})
1210
- st_by_type = c.get("steps_by_type", {})
1211
- gwb = c.get("gw_binding", {})
1212
- lines: List[str] = [
1213
- "## Session counts",
1214
- "",
1215
- "| metric | value |",
1216
- "|---|---|",
1217
- f"| interactions | {c.get('interactions_total', 0)} |",
1218
- f"| steps | {c.get('steps_total', 0)} |",
1219
- f"| llm_steps | {st_by_type.get('LLM_STEP', 0)} |",
1220
- f"| action_steps | {st_by_type.get('ACTION_STEP', 0)} |",
1221
- f"| gateway_requests | {c.get('gateway_requests', 0)} |",
1222
- f"| gateway_responses | {c.get('gateway_responses', 0)} |",
1223
- f"| 1:1 invariant | {'✓' if c.get('audit_chain_1to1_ok') else '✗'} |",
1224
- f"| gw declared | {gwb.get('declared', 0)} |",
1225
- f"| gw timestamp_window | {gwb.get('timestamp_window', 0)} |",
1226
- f"| gw unbound | {gwb.get('unbound', 0)} |",
1227
- ]
1228
- if gwb.get("declared_collisions"):
1229
- lines.append(f"| ⚠ declared_collisions | {gwb['declared_collisions']} |")
1230
- lines.append("")
1231
- return lines
1232
-
1233
-
1234
- def _section_empties_diagnostics(manifest: dict) -> List[str]:
1235
- """Operator-actionable: lift `_unavailable_reason` verbatim from the manifest."""
1236
- queries = manifest.get("queries", []) if manifest else []
1237
- empties = [
1238
- q for q in queries
1239
- if q.get("rows") == 0 and q.get("_unavailable_reason")
1240
- ]
1241
- if not empties:
1242
- return []
1243
- lines: List[str] = [
1244
- "## Empties diagnostics",
1245
- "",
1246
- "DMOs that returned zero rows, with the reason lifted verbatim from the manifest:",
1247
- "",
1248
- "| DMO | Reason |",
1249
- "|---|---|",
1250
- ]
1251
- for q in empties:
1252
- name = q.get("name") or "?"
1253
- # Pipe characters in reason text would break markdown tables.
1254
- reason = str(q.get("_unavailable_reason") or "").replace("|", "\\|")
1255
- lines.append(f"| {name} | {reason} |")
1256
- lines.append("")
1257
- return lines
1258
-
1259
-
1260
- def _section_catalog(tree: dict) -> List[str]:
1261
- catalog = tree.get("catalog", {}) or {}
1262
- agents = ", ".join(catalog.get("agents_observed", []) or []) or "—"
1263
- return [
1264
- "## Catalog (session-filtered)",
1265
- "",
1266
- f"- TagDefinitions: {len(catalog.get('tag_definitions', []) or [])}",
1267
- f"- TagDefinitionAssociations: "
1268
- f"{len(catalog.get('tag_definition_associations', []) or [])} (agents: {agents})",
1269
- f"- Tags: {len(catalog.get('tags', []) or [])}",
1270
- "",
1271
- ]
1272
-
1273
-
1274
- # ---- top-level render + entry points -------------------------------------
1275
-
1276
- def render(
1277
- tree: dict,
1278
- manifest: Optional[dict] = None,
1279
- session_dir: Optional[Path] = None,
1280
- *,
1281
- show_prompts: bool = False,
1282
- ) -> str:
1283
- """Produce the summary markdown for a single session.
1284
-
1285
- Branches on tree shape:
1286
- - gateway-direct tree (``_source == "gateway_direct"``) → identity +
1287
- lag banner + gateway-chain table + per-call detail; skips the
1288
- Interaction-dependent sections.
1289
- - minimal tree (session-not-found) → short markdown with just identity.
1290
- - full tree → multi-section summary (see SKILL.md for the full list).
1291
-
1292
- ``session_dir`` is reserved for callers that want the renderer to look
1293
- up artifacts beside the tree on disk. The standalone d360 skill produces
1294
- no runtime-telemetry rollups — DC alone doesn't expose per-turn LLM
1295
- latency in a useful form — so when ``None`` (the test-friendly default),
1296
- the gantt simply draws without the LLM-call overlay.
1297
-
1298
- ``show_prompts`` (opt-in): when True, the full-tree branch appends
1299
- a "Planner LLM calls" section with full prompt + response text per
1300
- LLM call. Default False — the section can add hundreds of KB to the
1301
- summary on multi-turn sessions.
1302
-
1303
- Refuses incompatible tree schema versions (see `_assert_schema_version`).
1304
- """
1305
- _assert_schema_version(tree)
1306
-
1307
- # Gateway-direct branch — session resolved but STDM hierarchy hasn't
1308
- # materialized yet. Handled before the has_interactions check because
1309
- # the gateway-direct tree does set `session.interactions = []`.
1310
- if tree.get("_source") == "gateway_direct":
1311
- return _render_gateway_direct(tree, manifest, show_prompts=show_prompts)
1312
-
1313
- sess = tree.get("session") or {}
1314
- sid = sess.get("id") or "<unknown>"
1315
- has_interactions = "interactions" in sess
1316
-
1317
- # Minimal-tree early return.
1318
- if not has_interactions:
1319
- return _render_minimal(sid, sess)
1320
-
1321
- start_iso = sess.get("start_ts")
1322
- start_dt = _parse_iso(start_iso)
1323
- effective_end_iso, end_source = _derive_session_end(sess)
1324
-
1325
- # The d360 skill produces no runtime-telemetry rollups — DC alone
1326
- # doesn't expose per-turn LLM latency in a useful form. Visual
1327
- # analysis falls back to its pre-rollup output.
1328
- llm_calls: List[dict] = []
1329
-
1330
- lines: List[str] = [f"# Session {sid}", ""]
1331
- lines.extend(_section_session_identity(sess, effective_end_iso, end_source))
1332
- # VariableText__c bootstrap (channel-mode diagnostic).
1333
- lines.extend(_section_session_bootstrap(
1334
- sess.get("identity") or {}, channel=sess.get("channel"),
1335
- ))
1336
- lines.extend(_section_id_reference(sess))
1337
- lines.extend(_section_transcript(sess, start_dt))
1338
- lines.extend(_section_hierarchical_trace(sess, start_dt, effective_end_iso, end_source))
1339
- lines.extend(_section_per_turn_summary(sess, start_dt))
1340
- # Opt-in full prompt + response per LLM call. Off by
1341
- # default — multi-turn sessions can produce hundreds of KB here.
1342
- lines.extend(_section_planner_llm_calls(sess, show_prompts=show_prompts))
1343
- lines.extend(_section_visual_analysis(sess, start_dt, llm_calls=llm_calls))
1344
- lines.extend(_section_session_counts(sess))
1345
- lines.extend(_section_empties_diagnostics(manifest or {}))
1346
- lines.extend(_section_catalog(tree))
1347
- return "\n".join(lines) + "\n"
1348
-
1349
-
1350
- def _render_minimal(sid: str, sess: dict) -> str:
1351
- """Short markdown for session-not-found minimal trees."""
1352
- shape = (sess.get("counts") or {}).get("session_shape", "session_not_found")
1353
- lines = [
1354
- f"# Session {sid}",
1355
- "",
1356
- "## Session identity",
1357
- "",
1358
- "| Field | Value |",
1359
- "|---|---|",
1360
- f"| Session id | {sid} |",
1361
- f"| Session shape | {shape} |",
1362
- "",
1363
- "_No interactions resolved in Data Cloud. Check the session id, or wait for "
1364
- "STDM materialization._",
1365
- "",
1366
- ]
1367
- return "\n".join(lines) + "\n"
1368
-
1369
-
1370
- # Display-only cap on `prompt_text` inside per-call detail. The raw JSON on
1371
- # disk (dc.gateway_requests.json) is authoritative and never truncated — the
1372
- # assembler stores the full prompt, and this slice only applies to markdown.
1373
- _PROMPT_DISPLAY_CAP_BYTES = 65536
1374
-
1375
-
1376
- def _fmt_token_count(value) -> str:
1377
- """Tolerate ints, stringified ints, and None/''/NOT_SET."""
1378
- if value in (None, "", "NOT_SET"):
1379
- return "—"
1380
- return str(value)
1381
-
1382
-
1383
- def _render_gateway_direct(tree: dict, manifest: Optional[dict],
1384
- *, show_prompts: bool = False) -> str:
1385
- """Render the STDM-hasn't-materialized-yet view.
1386
-
1387
- Sections:
1388
- 1. Session identity (reused)
1389
- 2. ID reference (reused; gracefully handles the empty
1390
- interactions/participants on this path)
1391
- 3. STDM lag banner (gateway-direct specific)
1392
- 4. Gateway chain table (gateway-direct specific)
1393
- 5. Per-call detail (gateway-direct specific)
1394
- 6. Empties diagnostics (reused; reads manifest, not tree)
1395
- 7. Catalog (reused; catalog may be empty on a
1396
- fresh-session gateway-direct tree)
1397
-
1398
- Skipped: Transcript, Hierarchical trace, Per-turn summary, Session
1399
- counts — all require Interaction rows that don't exist yet.
1400
-
1401
- ``show_prompts`` (default False): forwarded to per-call detail so the
1402
- full prompt block only renders under ``--show-prompts``. The prior
1403
- behavior unconditionally leaked prompts on this branch, contradicting
1404
- the documented contract for ``dc._session_summary.md``.
1405
- """
1406
- sess = tree.get("session") or {}
1407
- sid = sess.get("id") or "<unknown>"
1408
- start_iso = sess.get("start_ts")
1409
- start_dt = _parse_iso(start_iso)
1410
- # No derivation needed — sessions.end_ts is the only source on this path.
1411
- effective_end_iso = sess.get("end_ts")
1412
-
1413
- lines: List[str] = [f"# Session {sid}", ""]
1414
- lines.extend(_section_session_identity(sess, effective_end_iso, None))
1415
- # VariableText__c bootstrap (channel-mode diagnostic).
1416
- lines.extend(_section_session_bootstrap(
1417
- sess.get("identity") or {}, channel=sess.get("channel"),
1418
- ))
1419
- lines.extend(_section_id_reference(sess))
1420
- lines.extend(_section_stdm_lag_banner())
1421
- lines.extend(_section_gateway_chain_table(sess, start_dt))
1422
- lines.extend(_section_gateway_per_call_detail(sess, show_prompts=show_prompts))
1423
- lines.extend(_section_empties_diagnostics(manifest or {}))
1424
- lines.extend(_section_catalog(tree))
1425
- return "\n".join(lines) + "\n"
1426
-
1427
-
1428
- def _section_stdm_lag_banner() -> List[str]:
1429
- return [
1430
- "## STDM materialization lag",
1431
- "",
1432
- "> **Note** STDM Interaction/Step/Message DMOs have not yet "
1433
- "materialized for this session. The view below is the gateway chain "
1434
- "harvested directly from Gateway DMOs (materialize in minutes). "
1435
- "Re-run in 24–72h for the full hierarchical trace.",
1436
- "",
1437
- ]
1438
-
1439
-
1440
- def _section_gateway_chain_table(sess: dict,
1441
- start_dt: Optional[datetime]) -> List[str]:
1442
- chain = sess.get("gateway_chain") or []
1443
- lines: List[str] = [
1444
- "## Gateway chain",
1445
- "",
1446
- "| # | Request ts | Model | Provider | Prompt template | "
1447
- "Prompt tok | Completion tok | Total tok | Response ts |",
1448
- "|---|---|---|---|---|---|---|---|---|",
1449
- ]
1450
- for i, call in enumerate(chain, start=1):
1451
- req_offset = _fmt_offset(call.get("timestamp"), start_dt)
1452
- resp_offset = _fmt_offset(
1453
- (call.get("response") or {}).get("timestamp"), start_dt)
1454
- model = call.get("model") or "—"
1455
- provider = call.get("provider") or "—"
1456
- template = call.get("prompt_template_dev_name") or "—"
1457
- prompt_tok = _fmt_token_count(call.get("prompt_tokens"))
1458
- completion_tok = _fmt_token_count(call.get("completion_tokens"))
1459
- total_tok = _fmt_token_count(call.get("total_tokens"))
1460
- lines.append(
1461
- f"| {i} | {req_offset} | {model} | {provider} | {template} | "
1462
- f"{prompt_tok} | {completion_tok} | {total_tok} | {resp_offset} |"
1463
- )
1464
- lines.append("")
1465
- return lines
1466
-
1467
-
1468
- def _pick_fence(text: str) -> str:
1469
- """Pick a backtick fence long enough to wrap `text` safely.
1470
-
1471
- CommonMark lets a fenced code block use any run of 3+ backticks; the
1472
- closing fence must be at least as long as the opening. LLM prompts
1473
- routinely contain triple-backticks inside tool-use examples, so a
1474
- hardcoded ``` fence closes early and corrupts the rest of the doc.
1475
- """
1476
- if not isinstance(text, str) or not text:
1477
- return "```"
1478
- longest = 0
1479
- run = 0
1480
- for ch in text:
1481
- if ch == "`":
1482
- run += 1
1483
- if run > longest:
1484
- longest = run
1485
- else:
1486
- run = 0
1487
- return "`" * max(3, longest + 1)
1488
-
1489
-
1490
- def _capped_payload(text: Optional[str], note_source: str) -> tuple[str, bool, str]:
1491
- """Cap a payload string at `_PROMPT_DISPLAY_CAP_BYTES` for display.
1492
-
1493
- Returns ``(body, truncated, source_note)``. Byte-length check so
1494
- multi-byte chars don't blow through the limit when the renderer emits
1495
- UTF-8 text. Slicing happens on the encoded form, then decodes with
1496
- ``errors="ignore"`` so we never split a multi-byte char mid-sequence.
1497
- `source_note` names the on-disk file with the authoritative full text.
1498
- """
1499
- if not isinstance(text, str) or not text:
1500
- return ("(empty)", False, note_source)
1501
- encoded = text.encode("utf-8")
1502
- if len(encoded) <= _PROMPT_DISPLAY_CAP_BYTES:
1503
- return (text, False, note_source)
1504
- body = encoded[:_PROMPT_DISPLAY_CAP_BYTES].decode("utf-8", errors="ignore")
1505
- return (body, True, note_source)
1506
-
1507
-
1508
- def _render_call_detail_block(call: dict, idx: int, *,
1509
- show_prompts: bool = False,
1510
- show_response_text: bool = False) -> List[str]:
1511
- """Render one ``#### LLM call N — <short-id>`` block.
1512
-
1513
- Used by both:
1514
- - the gateway-direct branch (``_section_gateway_per_call_detail``)
1515
- - the full-tree opt-in section (``_section_planner_llm_calls``)
1516
-
1517
- ``call`` shape (subset of fields used here):
1518
- gateway_request_id, model, provider, prompt_template_dev_name,
1519
- prompt_tokens, completion_tokens, total_tokens, prompt_text,
1520
- response (-> finish_reason), response_text (only on full-tree path).
1521
-
1522
- The prompt and response blocks are independently gated:
1523
- - ``show_prompts`` controls the **Prompt** block.
1524
- - ``show_response_text`` controls the **Response** block (full-tree
1525
- only — gateway-direct chain entries don't carry response_text).
1526
- Both default off so callers must opt in explicitly. The summary line
1527
- (model/provider/template/tokens/finish_reason) always renders.
1528
- """
1529
- gw_id = call.get("gateway_request_id") or "—"
1530
- short_id = _short(gw_id)
1531
- lines = [f"#### LLM call {idx} — {short_id}", ""]
1532
- finish_reason = (call.get("response") or {}).get("finish_reason") or "—"
1533
- summary = (
1534
- f"- model={call.get('model') or '—'}"
1535
- f" provider={call.get('provider') or '—'}"
1536
- f" template={call.get('prompt_template_dev_name') or '—'}"
1537
- f" prompt_tok={_fmt_token_count(call.get('prompt_tokens'))}"
1538
- f" completion_tok={_fmt_token_count(call.get('completion_tokens'))}"
1539
- f" total_tok={_fmt_token_count(call.get('total_tokens'))}"
1540
- f" finish_reason={finish_reason}"
1541
- )
1542
- lines.append(summary)
1543
- lines.append("")
1544
-
1545
- # Prompt block — gated by show_prompts. Default-off everywhere; the
1546
- # summary file should never leak full prompt text without an explicit
1547
- # --show-prompts opt-in (matches the doc contract in SKILL.md).
1548
- if show_prompts:
1549
- body, truncated, src = _capped_payload(
1550
- call.get("prompt_text"), "dc.gateway_requests.json")
1551
- fence = _pick_fence(body)
1552
- lines.append("**Prompt** (full input sent to the model):")
1553
- lines.append(fence)
1554
- lines.append(body)
1555
- if truncated:
1556
- lines.append(f"…[truncated; full prompt in {src}]")
1557
- lines.append(fence)
1558
- lines.append("")
1559
-
1560
- # Response block — only the full-tree path carries response_text;
1561
- # gateway-direct rows get finish_reason in the header line above and
1562
- # nothing else (the response DMO doesn't carry text on that path).
1563
- if show_response_text:
1564
- body, truncated, src = _capped_payload(
1565
- call.get("response_text"), "dc.generations.json")
1566
- # html.unescape so the rendered block reads as plain JSON instead of
1567
- # &quot;-laden text — matches the existing _decoded_line treatment.
1568
- if body and body != "(empty)":
1569
- body = html.unescape(body)
1570
- fence = _pick_fence(body)
1571
- lines.append("**Response** (model output, including tool invocations):")
1572
- lines.append(fence)
1573
- lines.append(body)
1574
- if truncated:
1575
- lines.append(f"…[truncated; full response in {src}]")
1576
- lines.append(fence)
1577
- lines.append("")
1578
-
1579
- return lines
1580
-
1581
-
1582
- def _section_gateway_per_call_detail(sess: dict, *,
1583
- show_prompts: bool = False) -> List[str]:
1584
- """Per-call detail for the gateway-direct branch.
1585
-
1586
- ``gateway_chain`` does NOT carry `response_text` (the responses DMO
1587
- doesn't include it on that path), so the response block is always
1588
- suppressed. The prompt block is gated by ``show_prompts`` so the
1589
- default summary doesn't leak full prompt text — matches the
1590
- documented contract for ``dc._session_summary.md``.
1591
- """
1592
- chain = sess.get("gateway_chain") or []
1593
- lines: List[str] = ["## Per-call detail", ""]
1594
- for i, call in enumerate(chain, start=1):
1595
- lines.extend(_render_call_detail_block(
1596
- call, i, show_prompts=show_prompts, show_response_text=False))
1597
- return lines
1598
-
1599
-
1600
- def _collect_planner_llm_calls(sess: dict) -> List[dict]:
1601
- """Walk ``interactions[].steps[]`` and collect call-view dicts.
1602
-
1603
- Each step that has a ``gateway_request`` (regardless of binding method)
1604
- contributes one call view. ``response_text`` is sourced from the step's
1605
- sibling ``generation.response_text`` when present; otherwise the call is
1606
- still emitted with the prompt + token summary.
1607
-
1608
- Returned dicts use the same field names as ``gateway_chain`` entries so
1609
- ``_render_call_detail_block`` can consume both shapes uniformly.
1610
- """
1611
- calls: List[dict] = []
1612
- for iv in sess.get("interactions") or []:
1613
- for st in iv.get("steps") or []:
1614
- gw = st.get("gateway_request")
1615
- if not gw:
1616
- continue
1617
- gen = st.get("generation") or {}
1618
- calls.append({
1619
- "gateway_request_id": gw.get("gateway_request_id"),
1620
- "model": gw.get("model"),
1621
- "provider": gw.get("provider"),
1622
- "prompt_template_dev_name": gw.get("prompt_template_dev_name"),
1623
- "prompt_tokens": gw.get("prompt_tokens"),
1624
- "completion_tokens": gw.get("completion_tokens"),
1625
- "total_tokens": gw.get("total_tokens"),
1626
- "prompt_text": gw.get("prompt_text"),
1627
- "response": gw.get("response"),
1628
- "response_text": gen.get("response_text"),
1629
- })
1630
- return calls
1631
-
1632
-
1633
- def _section_planner_llm_calls(sess: dict, *, show_prompts: bool) -> List[str]:
1634
- """Opt-in full-tree section showing the input prompt + response
1635
- for every LLM call in the session's hierarchical trace.
1636
-
1637
- Off by default — prompts can be 30 KB+ each on multi-turn sessions
1638
- and would otherwise dominate the summary. Enable with
1639
- ``render_dc.py --show-prompts``.
1640
- """
1641
- if not show_prompts:
1642
- return []
1643
- calls = _collect_planner_llm_calls(sess)
1644
- if not calls:
1645
- return []
1646
- lines: List[str] = [
1647
- "## Planner LLM calls (full prompts + responses)",
1648
- "",
1649
- f"_Found {len(calls)} LLM call(s) across the session's hierarchical "
1650
- f"trace. Prompts are capped at "
1651
- f"{_PROMPT_DISPLAY_CAP_BYTES // 1024} KB for display; full payloads "
1652
- f"are on disk in `dc.gateway_requests.json` and "
1653
- f"`dc.generations.json`._",
1654
- "",
1655
- ]
1656
- for i, call in enumerate(calls, start=1):
1657
- # show_prompts is True here by section-guard above (early return when
1658
- # show_prompts is False); pass through explicitly so the helper's new
1659
- # prompt-gate stays aligned with the section's intent.
1660
- lines.extend(_render_call_detail_block(
1661
- call, i, show_prompts=True, show_response_text=True))
1662
- return lines
1663
-
1664
-
1665
- def _assert_schema_version(tree: dict) -> None:
1666
- """Refuse unsupported versions; warn on missing version (older assembler)."""
1667
- version = (tree.get("session") or {}).get("_schema_version")
1668
- if version is None:
1669
- print(
1670
- "render_dc: WARN tree has no _schema_version "
1671
- "(produced by an older assembler?); rendering anyway",
1672
- file=sys.stderr,
1673
- )
1674
- return
1675
- if version != _SUPPORTED_SCHEMA_VERSION:
1676
- raise SystemExit(
1677
- f"render_dc: unsupported tree _schema_version={version}; "
1678
- f"expected {_SUPPORTED_SCHEMA_VERSION}"
1679
- )
1680
-
1681
-
1682
- def main_for_session(sid: str, *, show_prompts: bool = False) -> int:
1683
- """Read session tree + manifest from the nested session dir; emit summary.md.
1684
-
1685
- Uses ``assemble_dc._find_session_dir`` to locate the session under
1686
- ``DATA_ROOT/<org>/<agent>__<ver>/<sid>/`` — follows the ``_sessions/*.link``
1687
- breadcrumb when present, globs otherwise. No callers need to know the
1688
- full identity triple upfront.
1689
-
1690
- ``show_prompts``: pass through to ``render`` to include the
1691
- opt-in "Planner LLM calls" section.
1692
- """
1693
- from assemble_dc import _find_session_dir
1694
- session_dir = _find_session_dir(sid)
1695
- tree_path = session_dir / "dc._session_tree.json"
1696
- if not tree_path.is_file():
1697
- raise SystemExit(
1698
- f"render_dc: tree not found at {tree_path}; "
1699
- f"run `python3 scripts/assemble_dc.py --session {sid}` first"
1700
- )
1701
- manifest_path = session_dir / "dc._session_manifest.json"
1702
- manifest: Optional[dict] = None
1703
- if manifest_path.is_file():
1704
- try:
1705
- manifest = json.loads(manifest_path.read_text())
1706
- except (json.JSONDecodeError, OSError) as e:
1707
- print(
1708
- f"render_dc: WARN could not read manifest: {str(e).splitlines()[0]}",
1709
- file=sys.stderr,
1710
- )
1711
-
1712
- tree = json.loads(tree_path.read_text())
1713
- _assert_schema_version(tree)
1714
-
1715
- md_path = session_dir / "dc._session_summary.md"
1716
- md_path.write_text(render(tree, manifest, session_dir=session_dir,
1717
- show_prompts=show_prompts))
1718
- print(f"render_dc: wrote {md_path}", file=sys.stderr)
1719
- return 0
1720
-
1721
-
1722
- def main() -> int:
1723
- ap = argparse.ArgumentParser(
1724
- prog="render_dc.py",
1725
- description="Render dc._session_summary.md from dc._session_tree.json for one session.",
1726
- )
1727
- ap.add_argument("--session", required=True,
1728
- help="AI-agent session UUID or MessagingSession id (0Mw...). "
1729
- "Messaging ids are resolved from disk "
1730
- "(DATA_ROOT/*/dc.sessions.json); run fetch_dc.py first "
1731
- "if the session hasn't been fetched yet.")
1732
- ap.add_argument("--show-prompts", action="store_true",
1733
- help="Include the opt-in 'Planner LLM calls' section "
1734
- "with the full input prompt + response per LLM call. "
1735
- "Off by default — multi-turn sessions can produce "
1736
- "hundreds of KB here. Per-prompt display is capped "
1737
- "at 64 KB; full payloads remain on disk in "
1738
- "dc.gateway_requests.json + dc.generations.json.")
1739
- # Runtime-agnostic path overrides; default to ~/.vibe/...
1740
- from _shared.cli_override import add_cli_flags, apply_overrides
1741
- add_cli_flags(ap)
1742
- args = ap.parse_args()
1743
- apply_overrides(args, caller_globals=globals())
1744
- from resolve_session import resolve_disk_or_live
1745
- sid = resolve_disk_or_live(args.session)
1746
- return main_for_session(sid, show_prompts=args.show_prompts)
1747
-
1748
-
1749
- if __name__ == "__main__":
1750
- sys.exit(main())