/**
* Extrai o contexto relevante de um código-fonte para uso nos MCP tools.
* Agora com logs e exemplos práticos para apresentação.
*
* Exemplos de uso:
* buildContext('function soma(a, b) { return a + b; }');
* // => 'function soma(a, b) { return a + b; }'
*/
export function buildContext(code: string): string {
console.log('[contextBuilder] Extraindo contexto do código...');
if (!code || typeof code !== 'string') {
console.warn('[contextBuilder] Código inválido recebido.');
return '';
}
// Exemplo simples: retorna apenas as primeiras 1000 linhas ou 10.000 caracteres
const maxLines = 1000;
const maxChars = 10000;
const lines = code.split('\n').slice(0, maxLines);
let context = lines.join('\n');
if (context.length > maxChars) {
context = context.slice(0, maxChars);
console.log('[contextBuilder] Contexto truncado para', maxChars, 'caracteres.');
}
console.log('[contextBuilder] Contexto extraído (primeiros 200 chars):', context.slice(0, 200));
return context;
}