feat(growth): 주간 성장 사이클 자동화 + 텔레그램 양방향 HITL (v2.2.220)
P4 — Self-Evolving OS 폐루프 자동화: - growthCycleWatcher: 매주(기본 일 20:00 KST, 설정 가능) 자동으로 ① 골든셋 검색 평가(recall/MRR 주간 추이) ② 학습 큐 갱신(Need Engine) ③ 지식 노후 점검 ④ 성장 리포트 ⑤ 승인(approved)된 학습 큐 항목을 Research Agent 로 자동 실행(사이클당 최대 3건) ⑥ 요약 알림+텔레그램. 승인 자체는 여전히 사람 — Permission Based Learning 유지, 자동화되는 것은 '승인된 것의 실행'뿐. 결과물은 기존 수동 명령과 동일 위치 (.astra/eval/, .astra/growth/) — 완전 호환. 수동 트리거 명령 (growthCycle.runNow) 제공. 단계별 독립 try/catch. P5 — 텔레그램 양방향 HITL: - /meet confirm 코어를 출력 중립 processConfirmDecisions 로 추출 (웹뷰·텔레그램 공용) — 핸들러는 위임 호출로 슬림화. - 텔레그램 인바운드에 confirm/pending(보류) 분기 — 회사 밖에서 "confirm 1=ok 2=6/20 3=skip" 회신으로 보류 액션 등록 완결. - 데일리 브리핑에 보류 목록 + 회신 안내 포함 — 아침 브리핑에서 바로 확정하는 흐름 완성. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -59,6 +59,27 @@ export function createTelegramBot(
|
||||
preview: text.length > 80 ? text.slice(0, 80) + '…' : text,
|
||||
});
|
||||
|
||||
// ── /meet 보류 항목 원격 처리 (P5 HITL) ────────────────────────
|
||||
// "confirm 1=ok 2=6/20" / "pending" 으로 회의 액션 보류를 텔레그램에서
|
||||
// 직접 확정 — 데일리 브리핑이 보류를 알려주면 그 자리에서 회신해 등록 완결.
|
||||
const meetCmd = text.match(/^\/?(?:meet\s+)?(confirm|pending|보류)\b\s*(.*)$/i);
|
||||
if (meetCmd) {
|
||||
try {
|
||||
const { loadPending, renderPendingQuestion, processConfirmDecisions } =
|
||||
await import('../../features/datacollect/scheduling/meetRegistration');
|
||||
const sub = meetCmd[1].toLowerCase();
|
||||
if (sub === 'pending' || sub === '보류') {
|
||||
const p = loadPending();
|
||||
return p && p.items.length ? renderPendingQuestion(p) : 'ℹ️ 등록 보류 중인 액션 아이템이 없습니다.';
|
||||
}
|
||||
const { lines } = await processConfirmDecisions(context, meetCmd[2] || '');
|
||||
return lines.join('\n').slice(0, 4000);
|
||||
} catch (e: any) {
|
||||
logError('Telegram meet-confirm failed.', { chatId, error: e?.message ?? String(e) });
|
||||
return `⚠️ 보류 처리 중 오류: ${e?.message ?? e}`;
|
||||
}
|
||||
}
|
||||
|
||||
// ── 1인 기업 모드 라우팅 ────────────────────────────────────────
|
||||
// 회사 모드 ON + 메시지가 work *order* 처럼 보이면 (만들어줘/해줘 또는
|
||||
// "CEO한테 …" 접두) RAG-chat 대신 dispatcher 로. dispatcher 가 끝에
|
||||
|
||||
Reference in New Issue
Block a user