Skip to content

Commit 214962b

Browse files
authored
Merge pull request #202 from salesforcecli/wr/packagingUpdates
Wr/packaging updates @W-19337177@ @W-19443706@ @W-19366681@
2 parents 064eb66 + f0d305e commit 214962b

File tree

5 files changed

+43
-32
lines changed

5 files changed

+43
-32
lines changed

README.md

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -59,18 +59,24 @@ sf plugins
5959

6060
<!-- commands -->
6161

62-
- [`sf agent activate`](#sf-agent-activate)
63-
- [`sf agent create`](#sf-agent-create)
64-
- [`sf agent deactivate`](#sf-agent-deactivate)
65-
- [`sf agent generate agent-spec`](#sf-agent-generate-agent-spec)
66-
- [`sf agent generate template`](#sf-agent-generate-template)
67-
- [`sf agent generate test-spec`](#sf-agent-generate-test-spec)
68-
- [`sf agent preview`](#sf-agent-preview)
69-
- [`sf agent test create`](#sf-agent-test-create)
70-
- [`sf agent test list`](#sf-agent-test-list)
71-
- [`sf agent test results`](#sf-agent-test-results)
72-
- [`sf agent test resume`](#sf-agent-test-resume)
73-
- [`sf agent test run`](#sf-agent-test-run)
62+
- [plugin-agent](#plugin-agent)
63+
- [Install](#install)
64+
- [Contributing](#contributing)
65+
- [CLA](#cla)
66+
- [Build](#build)
67+
- [Commands](#commands)
68+
- [`sf agent activate`](#sf-agent-activate)
69+
- [`sf agent create`](#sf-agent-create)
70+
- [`sf agent deactivate`](#sf-agent-deactivate)
71+
- [`sf agent generate agent-spec`](#sf-agent-generate-agent-spec)
72+
- [`sf agent generate template`](#sf-agent-generate-template)
73+
- [`sf agent generate test-spec`](#sf-agent-generate-test-spec)
74+
- [`sf agent preview`](#sf-agent-preview)
75+
- [`sf agent test create`](#sf-agent-test-create)
76+
- [`sf agent test list`](#sf-agent-test-list)
77+
- [`sf agent test results`](#sf-agent-test-results)
78+
- [`sf agent test resume`](#sf-agent-test-resume)
79+
- [`sf agent test run`](#sf-agent-test-run)
7480

7581
## `sf agent activate`
7682

src/commands/agent/generate/template.ts

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,11 @@ export type BotTemplateExt = {
3535
};
3636

3737
type BotExt = {
38-
Bot: Bot;
38+
Bot: Bot & {
39+
agentDSLEnabled?: boolean;
40+
botSource?: string;
41+
agentTemplate?: string;
42+
};
3943
};
4044

4145
type BotVersionExt = {
@@ -155,23 +159,16 @@ const convertBotToBotTemplate = (
155159
delete bot.Bot.botUser;
156160
delete bot.Bot.logPrivateConversationData;
157161
delete bot.Bot.sessionTimeout;
162+
delete bot.Bot.agentDSLEnabled;
163+
delete bot.Bot.botSource;
164+
delete bot.Bot.agentTemplate;
158165

159166
const botTemplate: BotTemplateExt = {
160167
'?xml': { '@_version': '1.0', '@_encoding': 'UTF-8' },
161168
BotTemplate: {
162169
masterLabel,
163170
conversationLanguages: 'en_US',
164-
mainMenuDialog: 'Main_Menu',
165-
botDialogs: [
166-
{
167-
developerName: 'Main_Menu',
168-
isPlaceholderDialog: false,
169-
label: 'Main_Menu',
170-
showInFooterMenu: false,
171-
botSteps: [],
172-
},
173-
entryDialogJson,
174-
],
171+
botDialogs: [entryDialogJson],
175172
conversationSystemDialogs,
176173
conversationVariables,
177174
entryDialog,

test/commands/agent/generate/template.nut.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,10 @@ describe('agent generate template NUTs', () => {
9393
genAiPlannerBundleFilePath
9494
);
9595

96-
const parser = new XMLParser({ ignoreAttributes: false });
96+
const parser = new XMLParser({
97+
ignoreAttributes: false,
98+
isArray: (name) => ['botDialogs', 'contextVariables', 'contextVariableMappings', 'botSteps'].includes(name),
99+
});
97100

98101
// read both files and compare them
99102
const generatedBotTemplateFile = parser.parse(
@@ -102,6 +105,15 @@ describe('agent generate template NUTs', () => {
102105
const mockBotTemplateFile = parser.parse(readFileSync(mockBotTemplateFilePath, 'utf-8')) as BotTemplateExt;
103106
expect(generatedBotTemplateFile).to.deep.equal(mockBotTemplateFile);
104107

108+
// Verify that mainMenuDialog and Main_Menu dialog are not present in the generated template
109+
expect(generatedBotTemplateFile.BotTemplate).to.not.have.property('mainMenuDialog');
110+
expect(generatedBotTemplateFile.BotTemplate.botDialogs).to.be.an('array').with.lengthOf(1);
111+
expect(generatedBotTemplateFile.BotTemplate.botDialogs[0].developerName).to.not.equal('Main_Menu');
112+
expect(generatedBotTemplateFile.BotTemplate).to.not.have.property('agentTemplate');
113+
expect(generatedBotTemplateFile.BotTemplate).to.not.have.property('agentDSLEnabled');
114+
expect(generatedBotTemplateFile.BotTemplate).to.not.have.property('Main_Menu_Dialog');
115+
expect(generatedBotTemplateFile.BotTemplate).to.not.have.property('botSource');
116+
105117
const generatedGenAiPlannerBundleFile = parser.parse(
106118
readFileSync(generatedGenAiPlannerBundleFilePath, 'utf-8')
107119
) as GenAiPlannerBundleExt;

test/mock-projects/agent-generate-template/MOCK-XML/force-app/main/default/botTemplates/Guest_Experience_Agent_v1_Template.botTemplate-meta.xml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,6 @@
22
<BotTemplate xmlns="http://soap.sforce.com/2006/04/metadata">
33
<masterLabel>Guest Experience Agent</masterLabel>
44
<conversationLanguages>en_US</conversationLanguages>
5-
<mainMenuDialog>Main_Menu</mainMenuDialog>
6-
<botDialogs>
7-
<developerName>Main_Menu</developerName>
8-
<isPlaceholderDialog>false</isPlaceholderDialog>
9-
<label>Main_Menu</label>
10-
<showInFooterMenu>false</showInFooterMenu>
11-
</botDialogs>
125
<botDialogs>
136
<botSteps>
147
<botMessages>

test/mock-projects/agent-generate-template/force-app/main/default/bots/Guest_Experience_Agent/Guest_Experience_Agent.bot-meta.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Bot xmlns="http://soap.sforce.com/2006/04/metadata">
33
<agentType>EinsteinServiceAgent</agentType>
4+
<agentTemplate>myTemplate</agentTemplate>
5+
<agentDSLEnabled>true</agentDSLEnabled>
6+
<botSource>123</botSource>
47
<botMlDomain>
58
<label>Guest Experience Agent</label>
69
<name>Guest_Experience_Agent</name>

0 commit comments

Comments
 (0)