Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

Commit a26ec07

Browse files
committed
more handling for new superclass story
1 parent a3466c7 commit a26ec07

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

lib/personas/persona.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,8 @@ def all_available_tools
128128
end
129129

130130
def id
131-
@ai_persona&.id || self.class.system_personas[self.class]
131+
@ai_persona&.id || self.class.system_personas[self.class.superclass] ||
132+
self.class.system_personas[self.class]
132133
end
133134

134135
def tools

spec/lib/personas/persona_spec.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ def system_prompt
212212
SiteSetting.ai_google_custom_search_cx = "abc123"
213213

214214
# should be ordered by priority and then alpha
215-
expect(DiscourseAi::Personas::Persona.all(user: user)).to eq(
215+
expect(DiscourseAi::Personas::Persona.all(user: user).map(&:superclass)).to eq(
216216
[
217217
DiscourseAi::Personas::General,
218218
DiscourseAi::Personas::Artist,
@@ -226,7 +226,7 @@ def system_prompt
226226
)
227227

228228
# it should allow staff access to WebArtifactCreator
229-
expect(DiscourseAi::Personas::Persona.all(user: admin)).to eq(
229+
expect(DiscourseAi::Personas::Persona.all(user: admin).map(&:superclass)).to eq(
230230
[
231231
DiscourseAi::Personas::General,
232232
DiscourseAi::Personas::Artist,
@@ -245,7 +245,7 @@ def system_prompt
245245
SiteSetting.ai_google_custom_search_api_key = ""
246246
SiteSetting.ai_artifact_security = "disabled"
247247

248-
expect(DiscourseAi::Personas::Persona.all(user: admin)).to contain_exactly(
248+
expect(DiscourseAi::Personas::Persona.all(user: admin).map(&:superclass)).to contain_exactly(
249249
DiscourseAi::Personas::General,
250250
DiscourseAi::Personas::SqlHelper,
251251
DiscourseAi::Personas::SettingsExplorer,
@@ -258,7 +258,7 @@ def system_prompt
258258
DiscourseAi::Personas::Persona.system_personas[DiscourseAi::Personas::General],
259259
).update!(enabled: false)
260260

261-
expect(DiscourseAi::Personas::Persona.all(user: user)).to contain_exactly(
261+
expect(DiscourseAi::Personas::Persona.all(user: user).map(&:superclass)).to contain_exactly(
262262
DiscourseAi::Personas::SqlHelper,
263263
DiscourseAi::Personas::SettingsExplorer,
264264
DiscourseAi::Personas::Creative,

0 commit comments

Comments
 (0)