Skip to content

chore: bump fig-extract to v2.13.1#31

Merged
onetwothr1 merged 1 commit into
devfrom
chore/bump-fig-extract-2.13.0
Jul 24, 2026
Merged

chore: bump fig-extract to v2.13.1#31
onetwothr1 merged 1 commit into
devfrom
chore/bump-fig-extract-2.13.0

Conversation

@onetwothr1

@onetwothr1 onetwothr1 commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

엔진 fig-extract v2.12.0 → v2.13.1 벤더링 (byte-identical 복사, md5 eecff2eaac53486b7f6902a545b2f249).

엔진 변경 (계약 무변경)

  • v2.13.0 — hugePenalty 전면 figure 오발 근본 해결. v2.12.0 프록시 (farClosed‖!raster)의 사각(신규 Nature 2026 전폭 clip은 !farClosed && raster라 미면제)을 수평 잉크 커버리지(up 영역 잉크 90% 질량 최소폭 ÷ 영역 폭 ≥ 0.54, 프록시에 OR 보강)로 해소. clip 11건 해소.
  • v2.13.1 — CodeRabbit 지적 수용. coverage가 후보 자기폭 기준이라 좁고 긴 후보(heightRatio>0.82 단독 hugeCond)의 면제 사각을 widthRatio ≥ 0.60 폭 바닥으로 차단. 전수 diff v2.13.0↔v2.13.1 = 0(순수 하드닝).

엔진 repo 게이트 (통과)

  • gate sCritical 0.9077 → 0.9222, criticalPapers 36→32, criticalFlow resolved 11·regressed 0, 앵커 8건 무변화, 전수 diff REGRESS 0.

소비자 영향

[계약 무변경] — extract() 시그니처·출력 필드 불변. fig-engine.ts·fig-extract.d.ts·integration.md 갱신 불요.

  • typecheck ✅ (exit 0) · build ✅ (exit 0)
  • [사람] Margin 스모크 통과 (그림·표 탭 Nature ED 전폭 figure 정상)

Ready for merge.

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

fig-extract.js 버전이 2.13.0으로 갱신되었습니다. up 방향 후보에 잉크 커버리지 지표를 추가하고, 이를 huge penalty 면제 판정과 디버그 출력에 반영했습니다.

Changes

Coverage scoring update

Layer / File(s) Summary
커버리지 지표 계산
src/core/fig-extract.js
up 방향의 huge 조건 후보에 대해 90% 잉크 질량을 포함하는 최소 연속 컬럼 폭을 계산하고, coveragecovOcc를 측정 결과에 추가합니다.
벌점 면제 및 진단 출력
src/core/fig-extract.js
huge penalty 면제 조건에 coverage >= 0.54를 추가하고, 버전 이력과 scoreTextcov/occ 출력을 갱신합니다.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • enu3379/PDFViewer#25: 동일한 후보 점수 계산 및 up/down 선택 경로를 리팩터링합니다.
  • enu3379/PDFViewer#30: up 방향 huge penalty 면제 조건과 measureCandidate 지표를 변경합니다.

Suggested reviewers: enu3379

Poem

당근을 문 토끼가 뛰어요
잉크의 폭을 재어 보아요
커버리지가 충분하면
거대한 벌점은 살짝 면제
새 버전 로그도 반짝여요 🐇

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning 제목은 fig-extract 버전 업그레이드를 가리키지만 실제 변경은 v2.13.0으로, v2.13.1 표기가 부정확합니다. 버전을 실제 변경 내용에 맞게 v2.13.0으로 수정하고, 주요 변경점(hugePenalty 판정 개선)을 반영하세요.
✅ Passed checks (4 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/bump-fig-extract-2.13.0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@onetwothr1
onetwothr1 marked this pull request as ready for review July 24, 2026 02:39
@onetwothr1
onetwothr1 requested a review from enu3379 as a code owner July 24, 2026 02:39

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/core/fig-extract.js`:
- Around line 34-41: Update the version comment in src/core/fig-extract.js to
use the vendor copy’s MD5 hash c663649dee427e515ea0ef37909d4338, ensuring the
byte-identical claim is consistent with the file’s actual hash.
- Around line 193-195: Update the HUGE_COVERAGE_MIN exemption logic so
candidate-local coverage cannot alone bypass hugePenalty for narrow, vertically
over-expanded raster candidates. In the hugePenalty condition around
heightRatio, require a page-width-aware metric such as coverage multiplied by
widthRatio, or enforce a minimum widthRatio guard, while preserving legitimate
full-width figure exemptions. Ensure the behavior remains covered by the Nature
Extended Data and tall-column over-grab smoke tests.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 53f9e55a-b7b7-4bf4-8401-5158f03a8f6f

📥 Commits

Reviewing files that changed from the base of the PR and between 111f389 and 66881e9.

📒 Files selected for processing (1)
  • src/core/fig-extract.js

Comment thread src/core/fig-extract.js Outdated
Comment on lines +34 to +41
const VERSION = "2.13.0";
// 2.13.0: [계약 무변경] hugePenalty 전면 figure 오발 근본 해결 — 수평 잉크 커버리지 판별자 신설. v2.12.0
// 프록시 (farClosed‖!raster)의 사각(신규 Nature 2026 전폭 clip은 `!farClosed && raster`라 미면제)을
// 해소. measureCandidate가 up+huge 영역에서 잉크 90% 질량을 담는 최소 연속 컬럼 폭/영역 폭 =
// coverage를 산출(내부 패널 갭에 강건, over-grab은 한쪽이 비어 낮음). hugeExempt에 `coverage ≥
// HUGE_COVERAGE_MIN(0.54)` OR 조건으로 보강 — 프록시 면제분은 커버리지 무관하게 유지(회귀 0 보장).
// 전수 실측 분리: clip 표적 11건 coverage min 0.58 vs Simões4 over-grab 0.50, 임계 0.54. clip 해소
// 11건(Tsyporin 4·Vaquero 1/2/4/ED.3/ED.8/ED.11·Yue 4·Pan ED.1/ED.2/ED.11) + Simões4/Pandey3 가드 유지.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

expected='b34be217d7576c76763a0a1c4965a464'
actual="$(md5sum src/core/fig-extract.js | awk '{print $1}')"
test "$actual" = "$expected"
printf 'verified MD5: %s\n' "$actual"

Repository: enu3379/PDFViewer

Length of output: 155


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

echo "file existence and size:"
ls -l src/core/fig-extract.js || true
wc -l src/core/fig-extract.js || true

echo
echo "MD5 checksums:"
md5sum src/core/fig-extract.js | awk '{print $1}'
sha256sum src/core/fig-extract.js | awk '{print $1}'

echo
echo "top of file:"
sed -n '1,80p' src/core/fig-extract.js

Repository: enu3379/PDFViewer

Length of output: 381


벤더 복사본의 해시를 버전 주석과 맞추세요.

src/core/fig-extract.js의 MD5는 c663649dee427e515ea0ef37909d4338인데, 버전 주석에서 byte-identical 복사라고 주장하면 해시 기대값과 일치해야 검증할 수 있습니다.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/core/fig-extract.js` around lines 34 - 41, Update the version comment in
src/core/fig-extract.js to use the vendor copy’s MD5 hash
c663649dee427e515ea0ef37909d4338, ensuring the byte-identical claim is
consistent with the file’s actual hash.

Comment thread src/core/fig-extract.js
@onetwothr1
onetwothr1 force-pushed the chore/bump-fig-extract-2.13.0 branch from 66881e9 to 45019be Compare July 24, 2026 03:15
@onetwothr1 onetwothr1 changed the title chore: bump fig-extract to v2.13.0 chore: bump fig-extract to v2.13.1 Jul 24, 2026
@onetwothr1
onetwothr1 merged commit fdce661 into dev Jul 24, 2026
3 checks passed
@onetwothr1
onetwothr1 deleted the chore/bump-fig-extract-2.13.0 branch July 24, 2026 03:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant