test(classifier): regression guards for 8-pattern PAMYATKA (Phase 3 close)
Three regression tests: 1. Header count reflects 8 patterns 2. All 8 patterns present in strict ascending order (1-8) 3. Original 4 patterns (brainstorming/discovery/plans/debugging) preserved verbatim — protects existing accuracy baseline from drift on future pamyatka edits. Closes Phase 3 brain-retro #9 candidates 7/1/8/10.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Brain Status (auto-generated)
|
||||
|
||||
Last updated: 2026-05-28T09:10:54.147Z
|
||||
Last updated: 2026-05-28T09:12:46.162Z
|
||||
|
||||
| Контролёр | Состояние | Детали |
|
||||
|---|---|---|
|
||||
|
||||
@@ -557,4 +557,26 @@ describe('PAMYATKA extensions (Phase 3 brain-retro #9)', () => {
|
||||
expect(system).toMatch(/coder-agent|#19|Task tool|субагент/);
|
||||
expect(system).toMatch(/однотипн|механич|N одинаковых|перенеси все/);
|
||||
});
|
||||
|
||||
it('PAMYATKA header reflects 8 patterns total', () => {
|
||||
const { system } = buildClassifierPromptStructured('тест', registry, { enrichment: true });
|
||||
expect(system).toMatch(/=== ПАМЯТКА \(8 паттернов\) ===/);
|
||||
});
|
||||
|
||||
it('all 8 patterns present in correct order', () => {
|
||||
const { system } = buildClassifierPromptStructured('тест', registry, { enrichment: true });
|
||||
const indices = [1, 2, 3, 4, 5, 6, 7, 8].map(n => system.indexOf(`ПАТТЕРН ${n}`));
|
||||
indices.forEach((idx, i) => expect(idx, `ПАТТЕРН ${i + 1} missing`).toBeGreaterThan(-1));
|
||||
for (let i = 1; i < indices.length; i++) {
|
||||
expect(indices[i]).toBeGreaterThan(indices[i - 1]);
|
||||
}
|
||||
});
|
||||
|
||||
it('original 4 patterns (brainstorming, discovery, plans, debugging) preserved verbatim', () => {
|
||||
const { system } = buildClassifierPromptStructured('тест', registry, { enrichment: true });
|
||||
expect(system).toContain('минимум 3 alternative_considered');
|
||||
expect(system).toContain('discovery-interview');
|
||||
expect(system).toMatch(/single-step.*multi-step|multi-step.*single-step/);
|
||||
expect(system).toContain('system/expected/actual');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user