feat(growth): 자기 지식 자동화 + 회귀 경보 + 충돌 스캔 + Critic 게이트 확장 (v2.2.225)
[근본 수정 — 자가검증 구식 정보 버그] ASTRA 자기 지식이 사람이 쓴 스냅샷(selfIdentity 블록·아키텍처 위키 문서)에 의존해 릴리스마다 구식이 됐고, 자기 개선 제안에서 이미 있는 기능을 신규 제안하는 오류가 반복됨. 수정: - featureInventory.ts: 활성화 시 package.json(contributes.commands/configuration) + POST_ANSWER_HOOKS 레지스트리에서 "ASTRA 기능 인벤토리" 문서를 두뇌에 기계 생성 (버전 변경 시 자동 재생성 — 사람이 갱신을 잊을 수 없는 구조). - selfIdentity: "자기 기능 평가·제안 전 인벤토리와 대조, 기억 의존 서술 금지" 규칙. [검증-피드백-재설계 파이프라인 보강 — 의견 검토 후 역제안 3건] - A-1 골든셋 회귀 경보: 주간 사이클이 metrics-history.jsonl 적립 + 직전 대비 recall@1 -10%p 또는 MRR -0.08 하락 시 ⚠️ + 그 기간 추가된 문서를 용의자로 제시(regression-alert.md). 자동 롤백 없음 — 판단은 사람. - A-2 신규 지식 충돌 스캔(conflictScan.ts): 일일(사전 소화와 같은 슬롯) 신규/변경 문서를 기존 유사 top-2와 LLM 모순 비교 → 충돌 시 conflict-report.md + "기존 A vs 신규 B" 알림. 쓰기 주체(Datacollect/수동/Research) 무관 포착. 런당 비교 ≤5건·최초 실행 24h 한정 (폭주 방지). - A-3 criticLoop 게이트 확장: 업무 turn 외에도 "근거 약함(top<0.25) + 단정 표현(수치·날짜·확언)" 트리거 추가. 전 답변 강제 2-pass 는 기각 — intrinsic self-correction 은 외부 신호 없이 효과 없음(arXiv 2310.01798). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -42,6 +42,7 @@ import { startStocksWatcher } from './features/stocks';
|
||||
import { startDailyBriefingWatcher } from './features/briefing/dailyBriefing';
|
||||
import { ensureDefaultBrainConfigured } from './extension/brainBootstrap';
|
||||
import { ensureEmbeddingConfigured } from './extension/embeddingBootstrap';
|
||||
import { ensureFeatureInventory } from './extension/featureInventory';
|
||||
import { startGrowthCycleWatcher, runGrowthCycleOnce } from './features/growth/growthCycleWatcher';
|
||||
import { startSleepDigestWatcher, runSleepDigestOnce } from './features/growth/sleepDigest';
|
||||
import { registerProviderCommands } from './extension/providerCommands';
|
||||
@@ -78,6 +79,10 @@ export async function activate(context: vscode.ExtensionContext) {
|
||||
// 비차단 (TF-IDF 검색은 이미 동작 중 — 결과를 기다릴 필요 없음).
|
||||
void ensureEmbeddingConfigured(context);
|
||||
|
||||
// 기능 인벤토리 — 버전 변경 시 package.json 에서 자기 기능 문서를 기계 생성해
|
||||
// 두뇌에 기록. 자기 평가가 구식 스냅샷 대신 항상 현행 소스를 근거로 하게 한다.
|
||||
void ensureFeatureInventory(context);
|
||||
|
||||
// Initialize Astra Path Resolver (.astra → ConnectAI/.astra/)
|
||||
initAstraPathResolver(context);
|
||||
|
||||
@@ -341,6 +346,12 @@ export async function activate(context: vscode.ExtensionContext) {
|
||||
const summary = await runSleepDigestOnce();
|
||||
vscode.window.showInformationMessage(`사전 소화 완료 — ${summary}`);
|
||||
}));
|
||||
context.subscriptions.push(vscode.commands.registerCommand('g1nation.conflictScan.runNow', async () => {
|
||||
const { runConflictScanOnce } = await import('./features/growth/conflictScan');
|
||||
vscode.window.showInformationMessage('지식 충돌 스캔 실행 중…');
|
||||
const summary = await runConflictScanOnce();
|
||||
vscode.window.showInformationMessage(`충돌 스캔 완료 — ${summary}`);
|
||||
}));
|
||||
|
||||
// 7. Auto-open all three Astra webviews as tabs in editor column 3.
|
||||
// The sidebar/activity-bar entry point was removed in 2.81 — all three views
|
||||
|
||||
Reference in New Issue
Block a user