5d7035875c
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
34 lines
1.6 KiB
JavaScript
34 lines
1.6 KiB
JavaScript
#!/usr/bin/env node
|
|
/** round-memory-render — чистый рендер блока «ПАМЯТЬ КРУГОВ» для промптов судьи/наставника (SP2b).
|
|
* Пустой вход → пустая строка (круг 1 слеп). Свои замечания и доводы контроллера — дословно.
|
|
* Что класть (свои J/M-замечания, J/M-доводы, какой diff, замечание судьи при возврате) — решает
|
|
* вызыватель (оркестрация, SP2c); этот модуль лишь рендерит то, что дали. */
|
|
|
|
export function renderRoundMemory(mem = {}) {
|
|
const {
|
|
versionDiff = '',
|
|
objections = [],
|
|
args = [],
|
|
judgeObjectionOnReturn = '',
|
|
} = mem || {};
|
|
const parts = [];
|
|
if (Array.isArray(objections) && objections.length) {
|
|
parts.push('--- ТВОИ ПРОШЛЫЕ ЗАМЕЧАНИЯ (дословно) ---');
|
|
objections.forEach((o, i) => parts.push(`${i + 1}. ${o}`));
|
|
}
|
|
if (Array.isArray(args) && args.length) {
|
|
parts.push('--- ДОВОДЫ КОНТРОЛЛЕРА (дословно) ---');
|
|
args.forEach((a, i) => parts.push(`${i + 1}. ${a}`));
|
|
}
|
|
if (versionDiff) {
|
|
parts.push('--- ИЗМЕНЕНИЯ С ПРОШЛОЙ ВЕРСИИ (diff) ---');
|
|
parts.push(versionDiff);
|
|
}
|
|
if (judgeObjectionOnReturn) {
|
|
parts.push('--- ЗАМЕЧАНИЕ СУДЬИ (учесть при доработке) ---');
|
|
parts.push(judgeObjectionOnReturn);
|
|
}
|
|
if (parts.length === 0) return '';
|
|
return ['=== ПАМЯТЬ КРУГОВ ===', ...parts].join('\n');
|
|
}
|