-
9d0e9aa8aa
Merge pull request 'feat/post-migration-cleanup' (#6) from feat/post-migration-cleanup into main
main
gahusb
2026-05-17 14:27:37 +09:00
-
-
d9c39a0206
docs(readme,status): CLAUDE.md 기준으로 동기화 (CODE_REVIEW F7)
feat/post-migration-cleanup
gahusb
2026-05-17 14:23:07 +09:00
-
0f73b6b07d
chore(cleanup): post-migration tidying (CODE_REVIEW F8 + 정리 대상)
gahusb
2026-05-17 14:19:13 +09:00
-
-
dc9a49586e
docs(env): align PACK_HOST_DIR with CLAUDE.md (F5)
feat/bugfix-and-spec-sync
gahusb
2026-05-17 14:12:04 +09:00
-
5da7a0040b
fix(stock,docs): portfolio total_buy 수량 곱산 + insta-trends spec 변경 이력 (F4 + F6)
gahusb
2026-05-17 14:06:19 +09:00
-
-
faffca0967
Merge pull request 'feat/security-hardening' (#5) from feat/security-hardening into main
gahusb
2026-05-17 14:00:03 +09:00
-
-
49c5c57be5
docs(env): add ALLOW_UNAUTHENTICATED_ADMIN guidance for F2
feat/security-hardening
gahusb
2026-05-17 13:58:24 +09:00
-
6053e69afc
fix(stock): admin API auth hardening — ADMIN_API_KEY 빈 값 시 503 거부 (CODE_REVIEW F2)
gahusb
2026-05-17 13:53:50 +09:00
-
1e5e1bcdff
fix(packs-lab): sign-link path traversal — startswith → relative_to (CODE_REVIEW F1)
gahusb
2026-05-17 13:50:22 +09:00
-
-
64fbbb7958
fix(insta-lab): replace Google Trends with YouTube Data API (Google API 폐기 대응)
gahusb
2026-05-17 11:54:31 +09:00
-
cfbb72051f
fix(insta-lab): Google Trends — RSS endpoint도 404 폐기, dailytrends JSON API로 교체
gahusb
2026-05-17 09:30:40 +09:00
-
bf5897fc85
fix(insta-lab): trend_collector — Google Trends RSS + seed placeholder filter
gahusb
2026-05-17 09:21:38 +09:00
-
ad6c744f2c
fix(deploy): increase docker/buildkit/pip timeouts for NAS slow build
gahusb
2026-05-17 09:03:20 +09:00
-
aad9bfbe8b
Merge pull request 'feat/insta-trends' (#4) from feat/insta-trends into main
gahusb
2026-05-17 08:52:49 +09:00
-
-
42bd53ee7b
feat(insta): _bg_extract uses preferences + 09:00 trends_collect cron
feat/insta-trends
gahusb
2026-05-16 17:58:52 +09:00
-
86694ae4fe
feat(agent-office): InstaAgent collect_trends action + preferences-aware on_schedule
gahusb
2026-05-16 17:57:44 +09:00
-
41225b3337
feat(insta-lab): main.py — trends + preferences endpoints
gahusb
2026-05-16 17:54:09 +09:00
-
6bb5c2fb40
feat(insta-lab): keyword_extractor.extract_with_weights for category proportions
gahusb
2026-05-16 17:51:16 +09:00
-
bd1773e29e
feat(insta-lab): trend_collector adds Google Trends + LLM category classification
gahusb
2026-05-16 17:48:26 +09:00
-
685320f3cf
feat(insta-lab): trend_collector with NAVER popular fetcher
gahusb
2026-05-16 17:47:17 +09:00
-
b3982c8f72
feat(insta-lab): db migration — trending_keywords.source + account_preferences + CRUD
gahusb
2026-05-16 17:44:01 +09:00
-
002c0893f8
chore(insta-lab): add pytrends>=4.9 dependency
gahusb
2026-05-16 17:41:30 +09:00
-
-
d6081ba2d3
docs(insta-trends): implementation plan (10 TDD-grouped tasks)
gahusb
2026-05-16 17:39:19 +09:00
-
10cb3ae1df
docs(insta-trends): 셀프 리뷰 보강 — LLM 분류 캐시 위치, days 쿼리 의미 명시
gahusb
2026-05-16 17:31:22 +09:00
-
e3348da642
docs(insta-trends): 외부 트렌드 + 카테고리 가중치 설계
gahusb
2026-05-16 17:30:45 +09:00
-
088bbaa097
fix(deploy): use docker inspect for healthcheck (호스트/컨테이너 둘 다 동작)
gahusb
2026-05-16 02:11:38 +09:00
-
be322557ee
fix(insta-lab): pin to bookworm + manual Chromium deps (drop --with-deps)
gahusb
2026-05-16 01:58:53 +09:00
-
70438caa1f
fix(scripts): blog-lab → insta-lab in deploy/healthcheck service lists
gahusb
2026-05-16 01:51:45 +09:00
-
e16029ebdb
Merge pull request 'feat/insta-agent' (#3) from feat/insta-agent into main
gahusb
2026-05-16 01:43:21 +09:00
-
-
cefc3119c0
docs(claude-md): replace blog-lab references with insta-lab
feat/insta-agent
gahusb
2026-05-16 00:53:58 +09:00
-
5485d4858a
chore: remove blog-lab service and BlogAgent (replaced by insta-lab)
gahusb
2026-05-16 00:52:05 +09:00
-
fbd963db86
feat(agent-office): telegram render_<id> callback dispatches to InstaAgent
gahusb
2026-05-16 00:49:30 +09:00
-
9095423026
feat(agent-office): register InstaAgent + 09:30 cron job
gahusb
2026-05-16 00:47:28 +09:00
-
6eb24090ed
feat(agent-office): InstaAgent — daily extract + keyword push + media group render
gahusb
2026-05-16 00:47:24 +09:00
-
8cb5a01431
feat(agent-office): replace blog_* proxy with insta_* helpers
gahusb
2026-05-16 00:47:16 +09:00
-
8a4a8790ca
chore(agent-office): swap BLOG_LAB_URL for INSTA_LAB_URL
gahusb
2026-05-16 00:47:12 +09:00
-
2200748122
chore(nginx): replace /api/blog-marketing with /api/insta
gahusb
2026-05-16 00:40:41 +09:00
-
7bc0a7cd77
chore(compose): replace blog-lab service with insta-lab
gahusb
2026-05-16 00:40:26 +09:00
-
b84efd730b
feat(insta-lab): main.py FastAPI endpoints + BackgroundTasks
gahusb
2026-05-16 00:38:34 +09:00
-
11bd223612
feat(insta-lab): card_renderer with Jinja + Playwright (1080x1350)
gahusb
2026-05-16 00:35:55 +09:00
-
c3a5d7210f
feat(insta-lab): card_writer with Claude 10-page JSON generator
gahusb
2026-05-16 00:31:34 +09:00
-
07c4459085
feat(insta-lab): keyword_extractor with frequency + Claude refinement
gahusb
2026-05-16 00:30:38 +09:00
-
c057304981
feat(insta-lab): news_collector with NAVER news.json + dedupe
gahusb
2026-05-16 00:27:13 +09:00
-
d1245d040c
feat(insta-lab): db.py with 6 tables + CRUD
gahusb
2026-05-16 00:26:28 +09:00
-
34ca407ca2
feat(insta-lab): anchor templates/default/ directory with .gitkeep
gahusb
2026-05-16 00:22:42 +09:00
-
b1ef778fc5
feat(insta-lab): project scaffold (Dockerfile, requirements, config)
gahusb
2026-05-16 00:20:49 +09:00
-
-
30706e2eb6
docs(insta-agent): add implementation plan (18 TDD tasks)
gahusb
2026-05-15 08:58:15 +09:00
-
6062445c12
fix(stock-webai): final review notes — env default + 1-time auth error log
gahusb
2026-05-15 08:56:03 +09:00
-
13da2226c3
feat(nginx-webai): /api/webai/ location with rate limit + X-WebAI-Key forward
gahusb
2026-05-15 08:48:14 +09:00
-
1e377e1559
chore(stock-webai): pass WEBAI_API_KEY env to stock container
gahusb
2026-05-15 08:46:52 +09:00
-
eb75d692f5
test(stock-webai): edge cases — 401 no leak, 503 env missing, unknown date
gahusb
2026-05-15 08:44:17 +09:00
-
6c25866487
docs(insta-agent): 셀프 리뷰 수정 — 6테이블 표기 일치, auto_select 설정 위치 명확화
gahusb
2026-05-15 08:42:38 +09:00
-
6ac7469f26
docs(insta-agent): blog-lab 폐기 및 insta-lab 설계 (1080x1350 카드 피드)
gahusb
2026-05-15 08:42:03 +09:00
-
d1b2b6a4ba
feat(stock-webai): /api/webai/news-sentiment daily dump
gahusb
2026-05-15 08:40:49 +09:00
-
2abfa5cb23
feat(stock-webai): /api/webai/portfolio + pnl_pct augment
gahusb
2026-05-15 08:36:27 +09:00
-
227e294bd3
feat(stock-webai): add X-WebAI-Key auth dependency + tests
gahusb
2026-05-15 08:33:07 +09:00
-
ace0339d33
refactor: rename stock-lab → stock (graduation)
gahusb
2026-05-15 01:45:22 +09:00
-
8812bd870a
docs(ai_news): mark scraper.py deprecated (Phase 1 transition)
gahusb
2026-05-14 02:13:30 +09:00
-
b3fac4f442
feat(ai_news): router forwards mapping stats to telegram
gahusb
2026-05-14 02:13:06 +09:00
-
19aed304cb
feat(ai_news): telegram includes article mapping stats line
gahusb
2026-05-14 02:12:17 +09:00
-
bbe5221e57
feat(ai_news): pipeline uses articles_source (replaces Naver scraper)
gahusb
2026-05-14 02:09:41 +09:00
-
ec0ccf649e
feat(ai_news): include summary + pub_date in LLM prompt
gahusb
2026-05-14 02:07:01 +09:00
-
84d90f6e1c
feat(ai_news): articles_source module (substring ticker matching)
gahusb
2026-05-14 02:04:32 +09:00
-
ddfe0ca3eb
feat(ai_news): add news_sentiment.source column with migration
gahusb
2026-05-14 02:00:38 +09:00
-
943f676414
fix(ai_news): set weight=0 and add Spearman IC validation harness
gahusb
2026-05-14 01:06:02 +09:00
-
06162b1e6e
feat(ai_news): show stock name (ticker) in telegram top 5/5
gahusb
2026-05-14 00:36:10 +09:00
-
c3659eb6c5
fix(ai_news): assistant prefill + temperature=0 + system prompt to force JSON
gahusb
2026-05-14 00:26:48 +09:00
-
16941d76e8
fix(ai_news): escape MarkdownV2 reserved chars in score (+, -, .)
gahusb
2026-05-14 00:17:53 +09:00
-
9f91dae1a4
feat(agent-office): add run_ai_news command for manual trigger
gahusb
2026-05-13 23:59:30 +09:00
-
2a552d3cc8
test(screener): update node count test to 8 (ai_news added)
gahusb
2026-05-13 23:52:54 +09:00
-
f37b21a408
fix(agent-office): on_ai_news_schedule — graceful fail on missing telegram_text
gahusb
2026-05-13 23:48:59 +09:00
-
df7a8d985e
feat(agent-office): cron mon-fri 08:00 ai_news sentiment job
gahusb
2026-05-13 23:46:37 +09:00
-
c5d0c84183
feat(agent-office): on_ai_news_schedule (cron handler + telegram dispatch)
gahusb
2026-05-13 23:46:17 +09:00
-
53a78a1062
feat(agent-office): refresh_ai_news_sentiment service helper
gahusb
2026-05-13 23:45:51 +09:00
-
ca8bcb3fed
feat(screener): POST /snapshot/refresh-news-sentiment with telegram_text
gahusb
2026-05-13 23:44:38 +09:00
-
4b4f91c052
feat(screener): register ai_news in NODE_REGISTRY
gahusb
2026-05-13 23:41:21 +09:00
-
6c3a84b8ec
feat(screener): ScreenContext.news_sentiment field + load query
gahusb
2026-05-13 23:41:01 +09:00
-
2ff2645240
feat(screener): AiNewsSentiment ScoreNode (percentile_rank + min_news_count)
gahusb
2026-05-13 23:39:42 +09:00
-
f2143b3889
feat(screener): ai_news telegram message builder (MarkdownV2 + cost line)
gahusb
2026-05-13 23:38:07 +09:00
-
810cc76d40
feat(screener): ai_news pipeline (top-100 parallel, fail-soft, upsert)
gahusb
2026-05-13 23:36:03 +09:00
-
0a91f43c46
feat(screener): ai_news Claude Haiku analyzer (-10~+10 + clamp + JSON-fail soft)
gahusb
2026-05-13 23:33:20 +09:00
-
3d321f2b4b
chore(stock-lab): add pytest + pytest-asyncio to requirements
gahusb
2026-05-13 23:30:47 +09:00
-
6ba29599aa
feat(screener): ai_news scraper (naver finance ticker news)
gahusb
2026-05-13 23:29:52 +09:00
-
658ed13571
feat(screener): add news_sentiment table + ai_news defaults + migration
gahusb
2026-05-13 23:26:38 +09:00
-
15ee3c3301
fix(compose): frontend.depends_on 누락된 6개 lab 추가
gahusb
2026-05-13 22:12:07 +09:00
-
2b5009f864
fix(sqlite): WAL + busy_timeout 120s standardized across all labs
gahusb
2026-05-13 22:12:01 +09:00
-
d9b612253a
fix(stock-lab): snapshot flow 범위 100종목 + busy_timeout 2분 (writer 충돌 완화)
gahusb
2026-05-13 19:56:30 +09:00
-
db4322006d
fix(stock-lab): screener DB connection WAL 모드 + busy_timeout 30s
gahusb
2026-05-13 16:50:25 +09:00
-
a05e6ba8ca
feat(stock-lab): 텔레그램 노드 풀 라벨 + 원 단위 표기
gahusb
2026-05-13 07:52:17 +09:00
-
4a333434ac
Merge feature/stock-screener-board: Stock Screener Board MVP (backend + agent-office)
gahusb
2026-05-13 07:23:43 +09:00
-
-
119ac88e1e
feat(agent-office): stock screener 평일 16:30 KST 자동 잡 + 텔레그램 전송
feature/stock-screener-board
gahusb
2026-05-12 14:54:24 +09:00
-
c4cb18a25c
feat(stock-lab): /run mode=auto 공휴일·주말 skipped_holiday 처리
gahusb
2026-05-12 13:49:45 +09:00
-
50e811c5dd
feat(stock-lab): /snapshot/refresh + /runs 리스트·상세 라우터
gahusb
2026-05-12 13:47:16 +09:00
-
5ec7c2461b
feat(stock-lab): /run 엔드포인트 — preview/manual_save/auto 모드 매트릭스
gahusb
2026-05-12 13:44:21 +09:00
-
5f0fed7f13
feat(stock-lab): /nodes + /settings 라우터 + main.py include
gahusb
2026-05-12 13:41:24 +09:00
-
070f2de3f1
feat(stock-lab): screener Pydantic 스키마
gahusb
2026-05-12 13:37:23 +09:00
-
01ebd2e7d9
feat(stock-lab): telegram.py 메시지 빌더 (Top10 + 아이콘 + 페이지 링크)
gahusb
2026-05-12 09:32:34 +09:00
-
7db9869722
feat(stock-lab): Screener 엔진 + combine + ScreenerResult + 노드 레지스트리
gahusb
2026-05-12 09:29:10 +09:00
-
97cb38ca7f
feat(stock-lab): position_sizer — ATR Wilder + entry/stop/target
gahusb
2026-05-12 09:25:49 +09:00
-
90c408aa77
feat(stock-lab): VcpLite 노드 — 변동성 수축률 백분위
gahusb
2026-05-12 09:07:59 +09:00