import { getSystemPrompt } from '../src/utils'; describe('base system prompt', () => { it('requires local project paths to be inspected immediately', () => { const prompt = getSystemPrompt(); expect(prompt).toContain('[LOCAL PATH RULE]'); expect(prompt).toContain('use or immediately'); expect(prompt).toContain('Never say "upload the source code"'); }); it('gives Astra a stance instead of only response structure', () => { const prompt = getSystemPrompt(); expect(prompt).toContain('[CORE BEHAVIOR]'); expect(prompt).toContain('[ENGINEERING STANCE]'); expect(prompt).toContain('Technical precision over polite filler'); expect(prompt).toContain('Collapse checklists into: verdict → reason → risk → next move'); }); it('defines clear interaction and formatting rules', () => { const prompt = getSystemPrompt(); expect(prompt).toContain('[STRICT GLOBAL RULES]'); // v2.2.68: [OUTPUT FORMAT] header now annotated with "— 7 hard rules"; // [FOLLOW-UP QUESTION RULES] is absorbed into R6 of the 7-rule block. expect(prompt).toContain('[OUTPUT FORMAT — 7 hard rules]'); expect(prompt).toContain('R1. CONCLUSION FIRST'); expect(prompt).toContain('R6. ASK ONE QUESTION ONLY WHEN'); expect(prompt).toContain('R7. GUESS-AND-ACT WITH STATED ASSUMPTION'); }); });