feat: add narrations for all 16 challenge types, eliminate generic fallback
Add dedicated narrations for: magic_duel, sports_showdown, vehicle_mayhem, nature_clash, animal_kingdom, hack_battle (6 per type, 36 new narrations). All 16 challenge types now have themed narrations — no generic fallback needed. Add narration variety test verifying >1 unique narration per type. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
493983ccc0
commit
8d0eb4b5f9
@@ -409,3 +409,32 @@ describe('creative scoring spam detection', () => {
|
||||
expect(result.botBScore).toBeGreaterThan(2)
|
||||
})
|
||||
})
|
||||
|
||||
describe('narrations', () => {
|
||||
const allTypes = [
|
||||
'speed_blitz', 'math_blitz', 'riddle', 'hallucination_check', 'trap_card',
|
||||
'magic_duel', 'sports_showdown', 'vehicle_mayhem', 'nature_clash', 'animal_kingdom',
|
||||
'hack_battle', 'roast_battle', 'creative_writing', 'meme_war', 'code_golf', 'wrestling_match',
|
||||
]
|
||||
|
||||
it('all 16 challenge types produce varied narrations', () => {
|
||||
const botA = { id: 'a1', name: 'AlphaBot' }
|
||||
const botB = { id: 'b1', name: 'BetaBot' }
|
||||
|
||||
for (const type of allTypes) {
|
||||
const challenge = makeChallenge({ type, scoring: 'factual' })
|
||||
const narrations = new Set<string>()
|
||||
for (let i = 0; i < 20; i++) {
|
||||
const result = scoreRound(
|
||||
challenge, botA, botB,
|
||||
makeResponse('4', 500),
|
||||
makeResponse('banana', 500),
|
||||
null, 0, 0,
|
||||
)
|
||||
narrations.add(result.narration)
|
||||
}
|
||||
// Should have variety (>1 unique narration across 20 rounds)
|
||||
expect(narrations.size).toBeGreaterThan(1)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user