Files
brain/tools/enforce-self-debrief-detector.test.mjs
T

26 lines
1001 B
JavaScript

import { describe, it, expect } from 'vitest';
import { decide } from './enforce-self-debrief-detector.mjs';
describe('enforce-self-debrief-detector decide()', () => {
it('allows neutral controller text', () => {
expect(decide({ controllerText: 'Implementing feature X.', transcript: [] }).block).toBe(false);
});
it('blocks retrospect-style text without self-retrospect skill call', () => {
const r = decide({
controllerText: 'Я заметил паттерн в своих ответах — generalisable lesson: ...',
transcript: [],
});
expect(r.block).toBe(true);
expect(r.reason).toMatch(/self-debrief hard-block/);
});
it('allows retrospect-style text when self-retrospect was invoked recently', () => {
const r = decide({
controllerText: 'я обобщаю опыт',
transcript: [
{ type: 'tool_use', name: 'Skill', input: { skill: 'self-retrospect' }, turn: 1 },
],
});
expect(r.block).toBe(false);
});
});