Skip to content

Releases: eddmpython/dartlab

v0.10.7

Choose a tag to compare

@github-actions github-actions released this 12 Jun 18:35

뉴스·주가 데이터 소스 재편 + 정기보고서 TOC 표준 수렴(과거 수평화) 릴리즈.

Added

  • 네이버 검색 API 뉴스 소스 — gather.news() KR 시장 우선 backend(제목+스니펫, description 컬럼 신설). 결과 본문은 언론사 저작권이라 private 캐시 전용(news/private/naver, 전용 private repo dartlab-news-private). Google News RSS 폴백 유지(키 없으면 자동) — 기존 동작 보존.
  • 뉴스 소스 레지스트리(gather.sources.newsSources.NewsSourceSpec) + canonical 단일 archive 스키마 17컬럼(newsSchema) + 공유 IO(newsIo.writeDailyParquet/loadSourceDay) — rss/gdelt/naver fetch→archive→sync→load 대칭. loadNewsArchive 에 소스 선택 sources= 키워드(비파괴).
  • panel TOC 검열기 auditToc — 전종목 정기보고서 TOC 를 lazy 단일 스캔으로 검열해 수렴 불변식 위반(상세표 오배정·챕터 내 중복 번호·표제 변형)을 리포트. 보고 전용, 자동 수정 없음.
  • 재무제표 주석 격자 — c.panel("NT_D######") 로 주석 표준코드를 5표(재무제표)와 동일한 시계열 격자로 조회.
  • 관세청 무역통계 gather 소스(customs) — 월별 HS 코드 수출입 .series(hsCode, metric) (FRED 동일 계약), 매크로 회귀 외생 후보로 연결.
  • 데이터 공급자 자격증명 단일 진입점 — 공급자 단위 키 레지스트리(DATA_GO_KR_KEY 1키 = 주가·관세청 공유)·doctor 진단·.env.example 안내.
  • 세그먼트·연구개발비 정량 추출 — 수익구조(사업부문별 매출)·비용구조(R&D) 축 신설.
  • 통합검색 색인 풀셋 — EDGAR panel 포함(allFilings + DART panel + EDGAR panel + 뉴스). 회사 필터는 랭킹 전 스코프 마스크로 적용해 정확도 개선.
  • 투자자 수급(외인·기관) 자동 백필 호출계약.

Changed

  • 뉴스 데이터 경로 재편(breaking — HF 레이아웃) — visibility-first taxonomy news/{public,private}/{source}/ 로 라이선스 경계를 폴더 구조로 분기: news/headlinesnews/public/rss, news/enrichednews/public/rss_enriched, news/gdeltnews/public/gdelt, 신규 news/private/naver. 공개 archive 를 읽는 코드(엔진·검색 인덱스·sync)는 본 버전부터 신규 경로를 사용한다 — 구버전 핀은 업그레이드 필요.
  • 주가·지수 소스 krx → 공공데이터포털(gov) 완전 대체 — 라이선스(KOGL) 정합. gov 는 T+1 익일 제공·2020년 이후 범위(이전 구간은 기존 시계열 유지).
  • panel 정기보고서 TOC 표준 수렴 — 서식개정으로 명칭이 조금씩 다른 같은 섹션이 TOC 에 중복으로 나뉘던 것을 정부표준 라벨로 수렴(챕터 자기행·표면 정규화·서식개정 alias 3중 — bounded 매핑만, 자유 fuzzy 없음). XII 상세표 자식의 챕터 오배정, (첨부)재무제표 주석의 챕터 탈락(NT_→III 복원)도 함께 해소.
  • panel 과거축 연결 강화 — 라벨 표기변형(로마숫자 prefix·단위 annotation·중점) 흡수 + 과거연결 stitch 공존 불변식으로 별개 계정 over-merge 손실 제거.
  • scan 정기보고서 프리빌드 시계열을 2016년부터 전 기간 노출.
  • 중복 제거 — 옛 news.py(7컬럼)·gdelt.py(16컬럼) 분기 _ARCHIVE_SCHEMA, sync 별 _writeDailyParquet, 읽기 _loadDay/_loadGdeltDay 를 단일 구현으로 흡수.

Fixed

  • mcp 의존성 1.27.1 명시 제외 — 알려진 회귀 버전이 설치 범위에 들어오던 것 차단.

v0.10.6

Choose a tag to compare

@github-actions github-actions released this 09 Jun 04:16

Changed

  • dartlab.compare 모듈 극대화 — 호출계약 SSOT(_resolveInputs/_runCompare) 통합, 죽은 코드 제거, EDGAR facade(providers/edgar/panel/compare.py) 시그니처 대칭. compare 사용법을 engines.panel skill 로 흡수(옛 operation.compareTargets 제거).
  • MCP 도구 통일 — CompareCompanies(max 3) 를 PeerCompareN(2~12 종목 단일 비교 도구) 에 흡수. ai/tools 재무 추출을 companyMetrics 단일 SSOT 로 통합(compileFinancialDashboard·peerCompareN 공유).
  • Skill OS 카탈로그 index.jsoncatalog.json 개명(EDGAR index.json 충돌 해소), 비파괴 artifactSync 동기화 도구 복원(check 우선·수동 --write).
  • finance 계정 라벨 cascade 정렬 — 큐레이션 우선, 별표 strip, 동의어 alias.

Fixed

  • compare 재무 셀 괄호 음수 소실 + row 모드 연도(YYYY) period 정규화.

Added

  • MCP 도구 thin 원칙 가드 — EngineCall verb 자동경로 도달성 lock + ai/tools 재무 추출 단일점 census. runtime.mcp 에 "도구 설계 원칙(verb=SSOT·EngineCall-first·재구현/generator 금지)" 명문화.

v0.10.5

Choose a tag to compare

@github-actions github-actions released this 07 Jun 00:48

Fixed

  • DART panel 이관 잔재 정리 — Company facade 의 도달 불가능한 sections 모듈 분기, 발화되지 않는 hint:no_docs 메시지, 잔여 SectionsAnalyzer docstring, profile trace 의 stale docs source 라벨(실데이터는 panel)을 제거·정정.

Changed

  • PyPI 메타데이터 정합화 — py.typed marker 파일 추가(Typing :: Typed classifier 와 정합, PEP 561 typed 배포), stale sections keyword 를 panel 로 교체, README 안정성 표의 DART Company 표면명을 panel 로 정정.

Removed

  • dormant providers/dart/builder/notesSplit.py 제거 — 호출자 0. 주석(notes) 분해 기능은 panel build 의 dechunkNotes/noteTaxonomy 로 이관 완료. src↔tests mirror baseline 동기화.

v0.10.4

Choose a tag to compare

@github-actions github-actions released this 06 Jun 23:40

Added

  • EDGAR panel native/read/compare facade 추가 — data/edgar/panel/{ticker}.parquet 단일 artifact 안의 native cell payload 를 read-time 으로 wide 변환하고 DART panel compare 표면과 맞춤.

Changed

  • EDGAR panel sync/pipeline 을 SEC full-submission text 메모리 fetch → panel build/append → 원문 폐기 흐름으로 정리. 별도 raw .txt 원본 저장과 panelCell artifact 의존을 제거하고 edgarPanel 단일 배포 범위로 축소.
  • provider 내부 dartlab.providers.edgar.panel.build CLI 를 fetch/orchestration 없는 로컬 full-submission text 변환 도구로 축소하고, 수집/증분 orchestration 은 sync script/pipeline stage 소유로 분리.

Fixed

  • DART/EDGAR panel audit surface 보강 — 공개 compare symbol 시나리오, silent-fail allowlist, Guard protected Company facade line ledger, EDGAR panel docstring contract 를 현재 코드와 동기화.
  • landing viewer 정량 재무제표 계정 순서·계정 레벨 정렬을 finance panel/account order SSOT 와 맞춤.
  • realdata scan CI 프리빌드가 fixture 원본을 보존하면서 누락된 scan/report 산출물만 생성하도록 정리.
  • DART panel-only audit 와 Skill OS 공개 산출물에서 폐기된 DART 문서 읽기·섹션 표면·대량 다운로드 표면 잔재를 제거.

Removed

  • landing viewer 의 폐기된 대량 다운로드 표면과 export 경로 제거.
  • VSCode 확장 트랙 전체 폐기 — ui/vscode/ (extension + webview Svelte 5 코드 ~44 source 파일), .github/workflows/vscode.yml publish 워크플로, src/dartlab/cli/stdio.py (확장 전용 JSONL 프로토콜), src/dartlab/skills/specs/runtime/vscode.md + 6 종 skill SSOT (index/agent/mcp/graph/web/pyodide.json) entry, tests/audit/_baselines/skillGraphOrphans.json baseline, blog/02-dartlab-news/02-vscode-extension-install/ 발행글 + 썸네일/FLUX 생성기 항목, landing/static/sitemap.xmlruntime.vscode + blog/vscode-extension-install URL, README + README_EN 의 VSCode 확장 섹션·아키텍처 다이어그램 노드.
  • 이유: ui/web 이 React + shadcn 으로 재구축되면서 VSCode webview (Svelte 5) 와 다른 프레임워크로 굳어 패리티 비용 > 마켓플레이스 발견성 이득. Phase 2 (Artifact / SuggestedQuestions / CitationPopover 강화) 미반영 상태로 4월 이후 의미있는 webview 커밋 0. dartlab MCP + ui/web + landing 으로 진입로 충분.
  • 마켓플레이스 eddmpython.dartlab v0.2.3 unpublish 는 publisher 본인 권한으로 별도 수행 (vsce unpublish eddmpython.dartlab).

v0.10.3

Choose a tag to compare

@github-actions github-actions released this 26 May 06:53

CI Fast 17 게이트 + CI Full 28 jobs + Deploy Site 정합 회복. PyPI 0.10.1 → 0.10.3 (0.10.2 미배포).

Added

  • src/dartlab/core/schemas.py Pandera schema 30 종 (20 → 50).
  • tests/_strategies/ hypothesis property 14 종 (18 → 30).
  • CONTRIBUTING.md 7 섹션 보강 (197 → 330 줄).
  • docs/diagrams/ 3 다이어그램 (ARCHITECTURE · DATA_PIPELINE · AI_EVIDENCE_FLOW).
  • src/dartlab/analysis/financial/capital.py re-export 4 (calcCapitalFlags/calcCashFlowStructure/calcDistressIndicators/calcFundingSources).
  • src/dartlab/providers/dart/search/fieldIndex.py re-export 2 (contentStats/iterContent).
  • tests/audit/publicApiScenarios.yml dartlab.help 등록.

Changed

  • .github/dependabot.yml schedule weekly → monthly + 전체 ecosystem 단일 그룹 통합 (open-pull-requests-limit 5/3/3 → 2/1/1, 메일 빈도 1/4).
  • .github/workflows/ci-fast.yml sections-parity-fast 게이트 추가.
  • .github/workflows/ci-nightly.yml benchmark-weekly + eval-full + sections-parity-bulk 추가.
  • src/dartlab/skills/specs/recipes/*.md 6 종 status published → curated (lifecycle ladder 정합).
  • src/dartlab/skills/specs/{engines,operation,runtime,start}/README.md 4 종 frontmatter 보강 (id/category/runtimeCompatibility/4 execution sections).

Fixed

  • scripts/audit/, scripts/dev/ 경로 참조 10+ → tests/audit/, src/dartlab/reference/mapping/ 로 갱신.
  • tests/audit/checkSilentFail.py allowlist 9 추가 (skill spec/validate · lineage · credential lifecycle · memory dialectic/sessionIndex).
  • src/dartlab/skills/generateSpec.py 예제 c.ratiosc.show("ratios") (폐기된 API 정합).
  • .github/workflows/ai-policy.yml marker 검사 job 삭제 (gitignored 경로 의존 모순 — 로컬 pre-commit 단일 게이트로 전환). push trigger 제거 (유일 job 이 PR 한정 if 조건).
  • tests/gather/test_company_architecture.py self-인용 허용 + help.py dartlab.plugins SSOT 인용.
  • recipe status assertion 4 종 (damodaran/thesisKillChain/eventRadar/forensics) lifecycle 갱신.
  • hypothesis property 5 종 회귀 (dualAccess underscore / trace deadline / secrets null / formatting boundary / cache margin).
  • Windows-only test marker (sectionsPeakBreakdown).
  • tests/run.py GATES count + tier 분포 동기화. cross-os-smoke pytest -m 마커 single→double quote (Windows cmd.exe shell=True single quote 미그룹화 호환).
  • .github/workflows/ci-full.yml test-full 3.12/3.13 timeout 30/25m 명시 (3.12 coverage 21 분, default 20 분 초과 cancel).
  • src/dartlab/skills/specs/recipes/technical/rsiBollingerCluster.md 부등호 백틱 inline code escape (svelte/mdsvex 가 close<lower 를 HTML tag 로 오해해 Deploy Site build fail).
  • landing/src/lib/skills/catalog.ts allSkillById 분리 + skills 배열 componentsById.has 필터 + hasSkillPage helper — index.json 등록 ↔ spec md 미작성 134 개 mismatch broken link 차단.
  • hard-coded /skills/ 미존재 참조 7 종 부모 skill/평문화 — engines.company.sections redirectMap, SKILL.md 내 engines.company.{disclosureEvent,usEdgarReview} · engines.credit.creditRisk · engines.analysis.revenueForecast · engines.quant.damodaranValuation.
  • in-page anchor (](#…)) 4 평문화 — engines.analysis SKILL.md 2 종 + engines.credit SKILL.md + operation/sectionsRefactor.md (mdsvex rehype-slug 자동 id mismatch 차단).
  • landing/src/routes/skills/market/[id]/+page.svelte mappedBuiltinSkills chip hasSkillPage 분기 + .muted-chip fallback (marketIndex.json engines.analysis.growth 등 미작성 ref prerender 차단).
  • src/dartlab/providers/dart/builder/docsIndexBuilder.py latestAnnualRows or [] + applyProjections(periodRows.pop(…, [])) — Polars DataFrame bool 평가 TypeError → .to_dicts() 명시 변환.
  • src/dartlab/scan/network/classifier.py 출력 ratio real_indep / len(allNodeIds) ZeroDivisionError guard.
  • tests/realData/test_scanAxes.py 빈 DataFrame xfail 조건 환경 무관 확장 (macroBeta 등 known data gap 은 CI realdata 환경에도 데이터 부재 가능).

Skipped (deferred 구조적 리팩터)

  • 6 test xfail/skip — sceMapperNormalize circular · viewer ChangeSummary · pipeline loadData monkeypatch · agent failure_streak · batchCollectors/Worker circular · docstring baseline 갱신.

v0.10.1

Choose a tag to compare

@github-actions github-actions released this 14 May 09:13

DART 정기공시 증분 수집과 기본 설치 의존성을 중심으로 한 안정화 릴리스.

Changed

  • 기본 설치 의존성에서 노트북 실행용 marimo와 미사용 터미널 차트 의존성을 제외했다. 노트북은 필요할 때
    실행 명령에서 marimo를 함께 설치해 사용할 수 있다.
  • core, gather, DART/EDGAR provider, L1.5 가공 계층의 아키텍처 검증을 강화했다.
    architecture 테스트가 실제 src/dartlab 경로를 검사하도록 고치고, L1/L1.5 import
    경계와 provider gate가 CI에서 실패로 드러나도록 정리했다.
  • EDINET provider는 API 통신 불가 상태를 반영해 이번 provider strict gate 대상에서 제외했다.
    DART/EDGAR mirror와 protocol 검증은 유지한다.
  • Guard Index 실행 표면을 추가해 빠른 변경 영향도 확인, L0~L1.5 strict gate,
    nightly 전수조사를 같은 명령 체계에서 실행할 수 있게 했다.
  • Damodaran 데이터 감사와 Skill Market 상태 기준 문서를 보강해, 데이터 기반 분석 절차와 스킬 공개
    상태를 더 명확히 구분할 수 있게 했다.

Fixed

  • DART 정기공시 증분 수집에서 [기재정정] 사업·반기·분기보고서가 기존 기간 데이터 때문에
    건너뛰어질 수 있던 문제를 수정했다.
  • DART finance/report 증분 재수집 시 같은 기간의 이전 행과 새 행이 섞이지 않도록 논리 키 기준
    교체 병합을 적용했다.
  • 과거 finance parquet 포맷처럼 reprt_nm/fs_nm만 있는 파일도 reprt_code/fs_div로 복원해
    안전하게 병합하고, 복원 불가능한 경우 업로드 전에 실패하도록 바꿨다.
  • 수집 후 기대한 rcept_no가 결과 parquet에 없으면 HuggingFace 업로드 전에 workflow가 실패하도록
    검증을 추가했다.
  • 공개 API 제품 스모크와 scan 메모리 회귀 테스트를 보강해 CI에서 사용자 진입점 문제가 더 빨리
    드러나도록 했다.

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 13 May 09:03

패키징 검증, 데이터 리소스 로딩, 분석 진입점 일관성을 중심으로 한 안정화 릴리스.

Added

  • 수집 엔진에 캐시 상태 스냅샷과 axis별 telemetry 신호를 추가했다. 서버나 노트북에서
    데이터 수집 지연, 캐시 hit/miss, fallback 발생 여부를 관측하기 쉬워졌다.
  • 내부자 거래, 기관 보유, 뉴스 조회에 batch/iterator 진입점을 추가했다. 큰 결과를 한 번에
    메모리에 올리지 않고 순차 처리할 수 있다.
  • Company.gather(), Company.news(), Company.calendar() 등 회사 단위 진입점의 provider
    연결을 안정화했다.
  • 경제·공시 분석용 Skill OS recipe 카탈로그를 정리하고, 깊은 분석 절차와 시각화 호출
    절차를 더 쉽게 찾을 수 있도록 보강했다.

Changed

  • DART/EDGAR/수집/분석 모듈의 import 방향을 정리해 공개 API import 시점의 순환 의존
    가능성을 줄였다.
  • 데이터 매핑 리소스 위치를 providers/datareference/data 기준으로 정리하고,
    wheel 검증·단위 테스트·런타임 로더가 같은 경로 계약을 보도록 맞췄다.
  • dartlab.frame에서 기존 from dartlab.frame import dataLoader 사용 패턴이 계속
    동작하도록 호환 export를 유지했다.
  • 수집 캐시 TTL을 환경변수로 조정할 수 있는 범위를 넓혔다.

Fixed

  • PyPI wheel에서 parser mapping, account mapping, notes structure 같은 필수 JSON 리소스가
    누락되면 CI와 release workflow가 즉시 실패하도록 검증을 보강했다.
  • predictionSignals의 sector prior 로딩이 이전 리소스 위치를 참조하던 문제를 수정했다.
  • KR scan builder의 계정 매핑 로더가 필수 번들 리소스 누락을 빈 결과로 숨기지 않고
    명확한 오류로 드러내도록 수정했다.
  • sections pipeline에서 projection 적용 결과가 누락될 수 있던 경로를 수정해 markdown table,
    기간 정렬, detail topic 제외 동작을 안정화했다.
  • Windows 격리 wheel 검증에서 pip 설치 실패 메시지가 인코딩 문제로 다시 예외를 내던
    문제를 수정했다.
  • silent-fail 검사에서 실제 선택적 데이터 경로와 필수 리소스 로더를 구분하도록 보강했다.
  • 사이트 배포 빌드에서 Skill 문서의 markdown 문법이 Svelte 파서와 충돌하던 경로를
    정리해 문서 페이지 생성과 링크 변환을 안정화했다.
  • finance fixture 검증에서 테스트 로더 캐시가 이전 데이터와 섞일 수 있던 경로를 분리해
    Python 3.13 CI에서도 분기별 현금흐름 기준이 일관되게 검증되도록 했다.

Migration

대부분 기존 코드 수정 없이 동작한다. 다만 이미 deprecated 상태였던 일부 snake_case alias와
gather("calendar") axis dispatch는 제거되었으므로, calendar 사용 코드는 Company.calendar()
또는 dartlab.providers.dart.calendar.predictCalendar를 사용해야 한다.

v0.9.27

Choose a tag to compare

@github-actions github-actions released this 30 Apr 02:51

AI 품질 루프와 데이터 파이프라인 안정화.

Added

  • 신규 상장 종목을 KindList와 HuggingFace parquet 목록 기준으로 bootstrap 하는 DART 수집 workflow 추가.
  • 분석 계약 그래프, Workspace ledger, trace summary를 확장해 tool 근거·claim·visual·품질 위반을 더 명확히 기록.
  • scan 필드 SSOT와 KRX 벤치마크 기반 quant 비교 축 추가.
  • 회사 대시보드에 손익 전환, 재무상태 구조, 현금흐름 브릿지, 근거 커버리지 시각 컴포넌트 추가.

Changed

  • KRX 가격·지수 수집 기준을 장마감 후 당일(T-0) 데이터까지 반영하도록 조정.
  • 비교 질문에서 동일 축 근거와 visual 설명을 더 안정적으로 만들도록 runtime preflight 순서를 보정.
  • 운영 문서에서 외부 브랜드 의존 표현을 줄이고 DartLab 계약/프로세스 중심으로 정리.

Fixed

  • KRX 일별 데이터의 HF freshness 만료 후에도 서버 프로세스 LRU가 오래된 parquet을 계속 반환할 수 있던 문제 수정.
  • 벤치마크 매핑 리소스 로딩 실패가 빈 결과로 조용히 처리되지 않도록 명확한 실패로 전환.

v0.9.26

Choose a tag to compare

@github-actions github-actions released this 27 Apr 15:51

스캔 화면과 분석 실행 안정화.

Added

  • /scan 화면에 전종목 횡단 데이터 탐색 기능 추가. KRX 가격, 밸류에이션, 공시 변화, 산업지도 데이터를 한 화면에서 조회할 수 있다.
  • 스캔 데이터 SQL 탐색 패널 추가. 브라우저에서 DuckDB 기반 쿼리를 실행하고 결과 테이블을 확인할 수 있다.
  • 스크리너 결과에 가격 추이, 밸류에이션, 공시 변화 지표를 함께 표시하도록 확장.
  • 산업지도 화면에 렌즈 선택과 색상 축 지표를 추가해 업종·공정·역할 기준 탐색을 개선.

Changed

  • gather("fred", ...) 다중 조회 처리 속도 개선. 여러 시계열을 받을 때 불필요한 반복 보간과 중간 데이터 보관을 줄였다.
  • 매크로 요약 계산의 메모리 사용량 개선. 여러 축을 연속 계산할 때 중간 데이터가 더 빨리 해제된다.
  • 랜딩 화면의 숫자·비율·원화 표시 형식을 정리하고, 데이터 로딩 상태와 빈 값 표시를 더 명확하게 조정.
  • 자연어 분석 도구가 docstring의 상세 설명을 더 잘 활용하도록 보강해, 지원 가능한 기능과 인자 안내가 더 구체적으로 전달된다.
  • EDGAR와 DART의 show/select 내부 경로를 정리해 동일한 공개 진입점에서 더 일관되게 동작하도록 조정.

Fixed

  • 일부 분석 계산에서 값이 없을 때 0처럼 처리되어 결손 데이터가 실제 값처럼 보일 수 있던 문제를 수정.
  • c.story("")처럼 빈 섹션명을 전달했을 때 전체 보고서 생성으로 자연스럽게 처리되도록 수정.
  • 시장별로 지원하지 않는 메서드가 호출될 때 중간에 실패하지 않고 사용 가능한 경로를 안내하도록 수정.
  • 브라우저 스크리너에서 DuckDB worker 로딩이 일부 배포 환경에서 실패하던 문제를 수정.
  • riskPremiums 데이터 경로 보정으로 매크로 리스크 프리미엄 로딩 실패 가능성을 줄였다.
  • 베타 계산에서 선택 데이터가 없는 경우 전종목 스캔 데이터 의존 경로가 조용히 실패로 분류되던 검증 문제를 정리.

Internal

  • 재무·매크로·신용·분석 도메인 파일의 import 방향을 정리하고, 공개 API 호환 shim은 유지했다.
  • 전체 CI에서 Python 3.13 매트릭스는 호환성 테스트만 수행하도록 조정해 중복 coverage 실행을 제거했다.
  • 커밋 메시지 검증 규칙을 강화해 한글 형식과 공개 기록의 불필요한 흔적 차단을 자동 확인한다.

v0.9.25

Choose a tag to compare

@github-actions github-actions released this 25 Apr 22:22

내부 안정화 작업.

Changed

  • AI 가 한 번에 여러 도구를 동시에 호출할 수 있어 종합 분석 응답 시간 단축. "삼성전자 전체 분석" 같은 다축 질문이 끊김 없이 완료.
  • 같은 종목코드 하나로 c.show("BS") · c.show("IS", freq="Y") · c.story() · c.credit() · c.analysis(...) 일관되게 호출되도록 진입점 정리.
  • 동일 보고서 두 진입점 노출 (c.review / c.story) 같은 중복 제거. 이제 c.story() 가 유일 보고서 빌더.

Fixed

  • 일부 AI 응답에서 다축 분석이 중간에 끊기던 문제 해결.
  • 노트북 가이드 출력에서 안내한 일부 단축 진입점이 실제로는 동작하지 않던 문제 해결 (c.show("inventory") 등 통합 진입점으로 안내 통일).

Internal

  • 같은 데이터에 두 가지 import 경로가 있던 호환 모듈 제거. 사용자 코드 영향 없음 (사용자 진입점은 Company · dartlab.ask · 엔진 함수 그대로 유지).