Commit Graph

77 Commits

Author SHA1 Message Date
koriweb d39eb27c90 feat(retrieval): 청킹/평가 하니스 + 검색 인덱스 개선
- src/retrieval/chunker.ts: 문서 청킹 로직 추가
- src/retrieval/evalHarness.ts + src/extension/evalCommands.ts: 검색 품질 평가 하니스
- brainIndex.ts / retrieval/index.ts / memoryContext.ts: 인덱싱·컨텍스트 빌더 개선
- config.ts / extension.ts / sidebarProvider.ts / package.json 갱신
- ADR-0030~0032 및 개발 기록, .astra 런타임 상태 동기화

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 19:27:10 +09:00
koriweb c27cd823a9 fix: v2.2.202 — 기업모드 Intent Alignment 가 일반 채팅 컨텍스트 무시하던 버그
증상: 일반 채팅에서 프로젝트·요구사항을 충분히 논의한 뒤 기업모드 전환 후
후속 작업을 요청하면 "추가 정보 필요 — 맥락/목표/기준/형식" 화면이 떠
사용자에게 *방금 말한 내용을 다시 묻는* 느낌을 줌.

원인:
- Intent Classifier 는 prior chat 컨텍스트(previousBrief/Tail) 받음 → follow-up
  분기 정확
- Intent Alignment (clarification 화면 만드는 분석기) 는 IntentAnalysisInput
  인터페이스에 chat history 필드가 없음 → 오직 현재 사용자 메시지만 봄
- 결과: 모드 전환 직후 첫 라운드 분석기는 사용자가 이전에 일반 채팅에서 한
  모든 설명을 못 봄 → context 빈칸 → openQuestions 에 "맥락은?" 추가

Fix:
- IntentAnalysisInput 에 priorChatSummary?: string 필드 추가
- 시스템 프롬프트에 *모드 전환 시 context 우선 추출* 규칙 추가 — 일반 채팅에서
  명시된 항목은 추측이 아니라 명시된 사실로 취급
- _buildUserMessage() 가 [모드 전환 직전 일반 채팅 요약] 블록을 user message
  상단에 주입
- sidebarProvider.ts 호출 지점에서 this._agent.getHistory() → 최근 10 turn
  (!internal) 추출 → "role: content" 한 줄씩, content 200자 cap
- 후속 라운드 (previousContract 있음) 면 history 중복 첨부 안 함 — 이미 contract
  에 흡수됨

효과: 일반 채팅 → 기업모드 전환 시 분석기가 prior chat 의 context/goal/criteria
를 직접 추출. redundant "맥락/목표/기준/형식 다시 말해 주세요" 질문 사라짐.
첫 라운드부터 confidence=high 가능 → 바로 본 작업 진행.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 11:24:34 +09:00
g1nation 0a97324f1b feat: v2.2.92 → v2.2.158 — god-file 분해 + Stocks feature + 대화 연속성
R56–R59: agent.ts 2731→1529줄 god-file 분해 (25 modules)
  · attrParsers + LLM 메서드 8개 (callNonStreaming, streamChatOnce 등)
  · executeActions 415줄 → 8 handler 그룹 (file/run/list/brain/calendar/sheets/tasks)
  · handlePrompt 1100줄 → 7 phase 모듈 (system prompt + budget + autoContinue 등)

R50–R55: extension.ts 1145→349줄 (telegram/settings/provider commands 분리)

Stocks feature 신규: /stocks slash command (v2.2.152~158)
  · .astra/stocks.json 저장소 + Yahoo Finance 현재가 갱신
  · 8 키워드 필터 (ROE/성장성/유동성/수익성/영업효율/기술력/안정성/PBR)
  · Naver 시가총액 페이지 JSON API (m.stock.naver.com) 발굴
  · LLM Top 5 매력도 분석 + Telegram 자동 보고서
  · KST 09:00/15:00 watcher 자동 모니터링

대화 연속성 (v2.2.150~157):
  · [PRIOR TURN CONCLUSION] block 으로 직전 결론 anchor
  · thin follow-up 분류 → boilerplate 헤더 suppression
  · slash 명령 결과 chatHistory mirror (capture wrapper)
  · echo/parrot 금지 system prompt rule

기타: /stocks 슬래시 자동완성 dropdown UI, Naver JSON API 전환 (cheerio 제거)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 09:59:32 +09:00
g1nation ded3eea7ce feat: v2.2.74 → v2.2.82 — chunked writer + 코드 리뷰 패치 + /youtube 확장
주요 변경:

[chunked writer 아키텍처 (v2.2.74~v2.2.75)]
- 5-stage 다중 에이전트(planner/researcher/reflector/writer/synthesizer)
  파이프라인 제거 → 단일 ChunkedWriter 의 outline → section[N] → polish
  3-step 으로 교체. 본문 분석에서 추상화 손실 / 토큰 폭증 문제 해소
- 답변 길이 자동 분기: 짧은 prompt 는 fast-path direct 1회 호출,
  본문 분석은 chunked. outline 빈 배열도 direct 폴백

[코드 리뷰 9개 항목 일괄 패치 (v2.2.76)]
- /research polling hang 방어 (heartbeat + status 정규화 + 연속 실패 abort)
- 회사 모드 dispatcher abort 신호를 AIService.chat 까지 전달
- bridgeFetch 에 onHeartbeat 콜백 도입 (slow endpoint 사용자 친화적)
- dead code 정리: reflectionPersister.ts 제거 + enableReflection 등 좀비 config 키
- parseOutline 의 empty vs fallback reason 명시적 분리
- chatHandlers 의 회사 모드 케이스 ~325줄을 src/sidebar/companyHandlers.ts 로 분리
- Intent Alignment 라운드 한도 도달 시 smart 모드 자동 진행
- LM Studio doSwitch unload 실패 시 currentModel 정리 + load 강행
- retrieval informationDensity → queryCoverage 정합화

[/youtube 채널 지원 (v2.2.77~v2.2.82)]
- 채널/플레이리스트 URL 자동 감지 + n:N 으로 영상 개수 지정 (최대 50)
- 채널 루트 URL 에 /videos 탭 자동 append (yt-dlp enumeration 정상화)
- 영상별 순차 처리 (queue 패턴) + i/N 진행 표시 + 마지막 통계 요약
- mode:info / mode:benchmark / mode:both 분석 모드 분기
  - info: 영상 내용을 지식 카드로 추출 (튜토리얼·강의·뉴스용)
  - benchmark: 4-렌즈 대본 역기획서 (콘텐츠 제작 벤치마크용)
  - both: 둘 다 (기본)
  - bare keyword 도 허용: /youtube <url> n:1 info
- bridge 에러 메시지 [object Object] 깨짐 수정 (구조화 에러 추출)
- "패키지 없음" 등 환경 의존성 에러에 자동 가이드 첨부

[Astra: Setup Datacollect Dependencies 명령 추가 (v2.2.80)]
- Python 자동 감지 + yt-dlp / youtube-transcript-api 자동 설치
- macOS PEP 668 환경 자동 폴백 (--user --break-system-packages)
- /youtube 등에서 패키지 미설치 감지 시 "Install Now" 버튼 notification

[테스트]
- tests/agentEngine.test.ts 를 chunked flow 에 맞춰 전체 재작성
- tests/resilience_stress.test.ts Scenario B/D 를 role-aware mock 으로 갱신
- 399/399 통과

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 23:13:21 +09:00
g1nation 0712014fcb chore: v2.2.73 — ASTRA-DEBUG 로그 레벨 + webview CSP font-src 보강
- ASTRA-DEBUG 정상 흐름 로그를 console.error → logInfo/console.log 로 강등
  (chatHandlers, extension, slashRouter): DevTools에 ERR로 찍히던 오탐 제거
- sidebar webview에 명시적 CSP meta 추가 + font-src에 data: 허용
  (sidebar.html, sidebarProvider._getHtml): VS Code outer iframe이 codicon.ttf를
  data:font/ttf 로 inject하면서 기본 CSP에 막혀 매 prompt 마다 violation
  경고가 찍히던 문제 해소
- 누적된 LM Studio / agent / 컨텍스트 매니저 / 테스트 갱신 동반

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 15:52:19 +09:00
g1nation 36db170844 feat: v2.2.64 — LM Studio 모델 발견/에러 표시 + macOS 셸 호환성
- LM Studio 모델 dropdown을 SDK system.listDownloadedModels('llm') 으로
  조회하도록 변경. REST /v1/models 는 JIT 옵션이 꺼져 있으면 로드된 모델만
  반환하여 macOS 환경에서 dropdown 이 비거나 fallback 한 줄만 남던 문제 해결.
  SDK 실패 시 REST 로 자동 fallback.
- LM Studio 로드/언로드 실패를 readyBar 의 영속 segment 로 표시. 모델을
  다시 선택하면 clearLmStudioError() 로 해제.
- src/security.ts: PowerShell '&&' rewrite 를 win32 에서만 수행. macOS/Linux
  에서는 'if (\$?) { ... }' 가 zsh/bash 문법 오류라 명령 자체가 깨졌음.
- src/utils.ts: system prompt 에 OS 별 [ENVIRONMENT] 블록 동적 주입
  (셸/경로 스타일/체이닝 연산자). 'cd E:\\... ; ...' 같은 Windows 전용
  예시를 macOS 에서 그대로 따라하던 회귀 차단.
- 테스트 mock 에 listDownloaded() 추가.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-23 09:37:29 +09:00
koriweb 8016ef18fa Update project files 2026-05-22 15:00:14 +09:00
g1nation dea5953f59 Astra v2.2.52
- 채팅 기록 목록 누락 수정: 후처리 예외로 _saveCurrentSession 이 건너뛰던 회귀를
  try/finally 로 보장, _saveCurrentSession 자체도 throw 방지. 1인 기업 모드 업무
  턴(_runCompanyTurn)도 요청/보고서 쌍으로 기록 (_saveCompanyTurnSession).
- Self-Reflector 실행 검증 크로스플랫폼화: .py 는 python3 자동 탐지, .ts 는 로컬
  node_modules/typescript/bin/tsc 직접 호출.
- 버전 2.2.52 상향 + package-lock 동기화 + 재패키징.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:48:39 +09:00
koriweb 3fb05e7b13 Auto sync connectai update 2026-05-19 19:20:24 +09:00
koriweb 0834608f7e Bump version to 2.2.27 and update package 2026-05-18 16:36:41 +09:00
g1nation 88664c7c6e v2.2.19: Cloud Model Providers Support (OpenRouter, Anthropic, Gemini) 2026-05-16 23:34:35 +09:00
g1nation 961e2cb4ea v2.2.16: Astra Office UI Overhaul & Operations Floor 2026-05-16 22:21:09 +09:00
g1nation 9ca95ab997 v2.2.15: Astra Office Refactor & Multi-Service Integration 2026-05-16 22:07:06 +09:00
g1nation 9dcc98ad33 v2.2.14: Advanced Pixel Office Customization & Face Directions 2026-05-16 20:11:57 +09:00
g1nation c4f01fd6af v2.2.13: Pixel Office Interactive Editor & Core Refinement 2026-05-16 13:18:49 +09:00
koriweb 6f098e0ecc chore(release): v2.2.11 - Cross-Project Build Optimization & Stability Enforcement 2026-05-15 20:50:21 +09:00
koriweb 72412450c3 feat: v2.2.3 - Stability, Self-Reflector & Intent Alignment
- 버전 2.2.3 상향 및 PATCHNOTES.md 업데이트

- [신규] src/features/selfReflector/ - 성찰 실행/검증/프롬프트 모듈 추가

- [신규] intentAlignment.ts, intentClassifier.ts - 의도 정렬 시스템 추가

- [신규] pixelOfficeState.ts - 픽셀 오피스 상태 관리 추가

- sidebarProvider, dispatcher, chatHandlers 핵심 로직 최적화

- astra-2.2.3.vsix 패키지 생성 완료 (298 tests PASS)
2026-05-15 14:16:14 +09:00
g1nation cd22da8735 Release v2.2.1: Autonomous Task Resumption & Engine Resilience 2026-05-14 23:27:51 +09:00
g1nation 6b10d002fa Release v2.1.8: Company Agent roster overhaul and UI polish 2026-05-14 22:25:48 +09:00
koriweb d84e02c696 refactor: Fine-tune sidebar interaction and refine company suite configuration 2026-05-14 18:04:25 +09:00
koriweb 75d7e6b83a feat: Implement Pipeline Templates for Company Suite and refine orchestration logic 2026-05-14 17:36:15 +09:00
koriweb 618b8d5b34 feat: Stabilize Company Suite & Self-Reflection logic, integrate new ADRs and bug records 2026-05-14 16:05:28 +09:00
g1nation f521c3f557 Release v2.1.2: Chronicle Repair & Context Stability improvements 2026-05-14 02:37:49 +09:00
g1nation 398703466f feat(architecture): add multi-subproject awareness and automatic context resync
- Implemented subproject root resolution based on active editor hint
- Added debounced event listener for active editor changes to trigger chip status updates
- Updated sidebar provider to re-resolve active subproject root on every chip build
- This ensures correct architecture context is injected when working in a monorepo or multi-root-style parent folder
2026-05-14 02:19:33 +09:00
g1nation c4abd3994c fix(sidebar): force architectureAutoAttach to true on explicit re-activation
Fixed a bug where architectureAutoAttach would stay false even after an explicit attach action due to incorrect nullish coalescing logic.
2026-05-14 01:50:19 +09:00
g1nation 147536fb13 release: v2.0.8 - UX Persistence & Per-Agent Knowledge Mix (2026-05-14) 2026-05-14 00:56:20 +09:00
g1nation f1d5dbf031 release: v2.0.6 - Intelligence & UX Optimization (2026-05-14) 2026-05-14 00:13:54 +09:00
g1nation 39386f90b5 release: v2.0.5 - Telegram Business Reporting & Core Resilience 2026-05-13 23:54:34 +09:00
g1nation 6784e85b7e release: v2.0.4 - Advanced Business Orchestration & UI Polishing 2026-05-13 23:32:29 +09:00
g1nation b6899851c3 release: v2.0.3 - AI 1-Person Company Engine & Business Intelligence 2026-05-13 23:22:00 +09:00
g1nation c40571b7ef release: v2.0.2 - Structural Integrity & Automated Context Management 2026-05-13 22:34:44 +09:00
g1nation e85e11aac6 release: v2.0.1 - Advanced Knowledge Mix & Architectural Intelligence 2026-05-13 22:05:39 +09:00
koriweb 089abf22db refactor: optimize core engine and retrieval logic for v2.80.43 2026-05-13 19:23:57 +09:00
g1nation eb36cec050 chore: version up to 2.80.38 and package with refined recovery 2026-05-13 00:15:45 +09:00
g1nation 065e598cca chore: version up to 2.80.34 and package 2026-05-12 22:54:21 +09:00
g1nation 3c2b62c018 chore: version up to v2.80.30 and package vsix 2026-05-11 12:44:38 +09:00
g1nation ec71014481 Build: Release v2.80.28 2026-05-10 22:41:35 +09:00
g1nation 3220a126fd chore: bump version to 2.80.27 and update core features 2026-05-09 01:16:12 +09:00
g1nation 5ffb472d22 Update Astra: v2.80.19 - Refactoring Sidebar, LM Studio integration, and new tests 2026-05-08 23:14:47 +09:00
g1nation d451a082dd feat: refactor AI engine logic, remove cross-engine fallback, add retry with backoff, and bump version to 2.80.18 2026-05-08 01:24:12 +09:00
koriweb 16640209fd fix(ui): fix regex bug in agent creation name sanitization replacing Korean chars v2.80.5 2026-05-06 14:36:33 +09:00
koriweb 8ece47f961 PDFVisionFallback 2026-05-06 11:55:45 +09:00
koriweb 00f62bdc34 Updates 2026-05-06 11:46:38 +09:00
g1nation 68f2e02340 release: v2.37.0 2026-05-03 20:50:09 +09:00
g1nation a5f3e383d4 Version 2.55.0 Release: Rebranding to Astra 2026-05-03 20:40:40 +09:00
g1nation 9c242a5b8d Version 2.53.0 Release: Thinking Partner Protocol and Context-Aware Chronicle 2026-05-03 20:25:37 +09:00
g1nation 5e3750a93e Version 2.50.0 Release: Autonomous Turn-Based Recording and UI Streamlining 2026-05-03 10:07:34 +09:00
g1nation d875ba7bc3 Version 2.38.0 Release: Sync logic and knowledge categorization 2026-05-03 00:23:47 +09:00
g1nation da4ebe3942 Feat: Enhance query intent search and answer format readability 2026-05-02 18:20:22 +09:00
g1nation 8bb8c065d7 Bump version to 2.35.0: Knowledge Resilience & Standardization Milestone. 2026-05-02 13:18:07 +09:00