feat(desktop): add Honey and Bumble starter agents (#1925)

Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co>
This commit is contained in:
Wes
2026-07-15 16:27:20 -07:00
committed by GitHub
co-authored by Pinky
parent 470458d325
commit 335413461b
4 changed files with 49 additions and 23 deletions
File diff suppressed because one or more lines are too long
@@ -50,6 +50,8 @@ fn merge_personas_adds_missing_built_ins() {
display_names,
vec![
"Fizz",
"Honey",
"Bumble",
"Product Strategist",
"Implementation Partner",
"QA Reviewer",
@@ -63,7 +65,10 @@ fn merge_personas_adds_missing_built_ins() {
.filter(|record| record.is_active)
.map(|record| record.id.as_str())
.collect();
assert_eq!(active_ids, vec!["builtin:fizz"]);
assert_eq!(
active_ids,
vec!["builtin:fizz", "builtin:honey", "builtin:bumble"]
);
}
#[test]
@@ -32,6 +32,20 @@ test("pickQuickBotPersonas prefers recents before defaults", () => {
);
});
test("pickQuickBotPersonas seeds the three starter agents", () => {
const personas = [
createPersona("builtin:bumble", "Bumble"),
createPersona("builtin:honey", "Honey"),
createPersona("builtin:fizz", "Fizz"),
createPersona("builtin:reviewer", "Reviewer"),
];
assert.deepEqual(
pickQuickBotPersonas(personas, []).map((persona) => persona.id),
["builtin:fizz", "builtin:honey", "builtin:bumble"],
);
});
test("pickQuickBotPersonas falls back to any active personas when defaults are missing", () => {
const personas = [
createPersona("builtin:reviewer", "Reviewer"),
@@ -7,7 +7,7 @@ const MAX_RECENTS = 8;
// Default persona display names to seed the list when empty.
// These are resolved to IDs by the consumer.
export const DEFAULT_PERSONA_NAMES = ["Fizz"] as const;
export const DEFAULT_PERSONA_NAMES = ["Fizz", "Honey", "Bumble"] as const;
export function pickQuickBotPersonas(
personas: readonly AgentPersona[],