"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MemoryCuratorAgent = void 0;
class MemoryCuratorAgent {
    brain;
    constructor(brain) {
        this.brain = brain;
    }
    async curate(state) {
        const prompt = `
Você é o Memory Curator do OpenLife.

Missão:
${state.goal}

Plano:
${state.plan.join('\n- ')}

Agentes usados:
${state.chosenAgents.map(a => `${a.id} (${a.role})`).join('\n')}

Review findings:
${state.reviewFindings.map(r => `${r.score} - ${r.critique}`).join('\n')}

Resposta final:
${state.finalAnswer || ''}

Responda em JSON com um array "memoryCandidates" contendo até 5 aprendizados operacionais curtos e reutilizáveis.
`;
        const raw = await this.brain.think('Extraia aprendizados operacionais reutilizáveis.', prompt);
        try {
            const jsonStart = raw.indexOf('{');
            const parsed = JSON.parse(jsonStart >= 0 ? raw.slice(jsonStart) : raw);
            return Array.isArray(parsed.memoryCandidates) ? parsed.memoryCandidates.slice(0, 5) : [];
        }
        catch {
            return [];
        }
    }
}
exports.MemoryCuratorAgent = MemoryCuratorAgent;
