• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

grobidOrg / grobid / 29460061878
43%

Build:
DEFAULT BRANCH: master
Ran 16 Jul 2026 12:11AM UTC
Jobs 1
Files 334
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

15 Jul 2026 11:57PM UTC coverage: 40.04% (+0.6%) from 39.444%
29460061878

push

github

web-flow
Improvement on affiliation and authors extraction - algorithm/reconciliation (#1467)

Extract the author-to-affiliation linking logic out of HeaderParser into a
dedicated, unit-tested AuthorAffiliationAssigner, and make the assignment
marker-driven with well-defined fallbacks.
Main changes:
* New AuthorAffiliationAssigner implementing a priority-based strategy:
  1. Distribution for trivial single-author / single-affiliation cases
  2. Direct marker matching (Person.getMarkers vs Affiliation.getMarker)
  3. String-search marker matching against the raw author string, as a
     fallback when the name model misses markers
  4. Proximity matching via layout-token coordinate distance
  5. Sequential assignment as a last resort when no coordinates are available
  Markerless authors are left unassigned when explicit markers are present
  on their peers, instead of being blanket-assigned. Content-duplicate
  affiliations are collapsed (substring containment above an 0.8 length ratio).
* HeaderParser slimmed down to delegate linking to the new class; author
  and affiliation handling reworked accordingly.
* AuthorParser and AffiliationAddressParser: improved marker extraction and
  author de-duplication ahead of affiliation assignment.
* Person: helpers for markers and de-duplication.
* Add a linking-aware "affiliation_linked" metric to the end-to-end
  evaluation, pairing each author with its gold counterpart and comparing
  attached affiliations. Single-affiliation gold papers are completed by
  linking every author to the sole affiliation.
* Extensive test coverage: AuthorAffiliationAssignerTest,
  PersonDeduplicationTest, HeaderParserTest, AuthorParserTest,
  AffiliationAddressParserTest, plus new evaluation fixtures.
Validated on a 6000-PDF bioRxiv set (CRF, no consolidation): no crashes or
regressions attributable to the linking logic; markerless authors correctly
left unassigned, matching gold. Known follow-ups left for separate PRs:
cross-listing auth... (continued)

9228 of 25664 branches covered (35.96%)

Branch coverage included in aggregate %.

19677 of 46526 relevant lines covered (42.29%)

1.71 hits per line

Coverage Regressions

Lines Coverage ∆ File
567
60.44
0.15% org/grobid/core/data/BiblioItem.java
257
28.42
2.4% org/grobid/core/engines/AffiliationAddressParser.java
223
54.12
-1.0% org/grobid/core/engines/HeaderParser.java
130
34.7
1.83% org/grobid/core/engines/AuthorParser.java
14
66.37
1.79% org/grobid/core/data/Person.java
Jobs
ID Job ID Ran Files Coverage
1 29460061878.1 16 Jul 2026 12:11AM UTC 334
40.04
GitHub Action Run
Source Files on build 29460061878
  • Tree
  • List 334
  • Changed 6
  • Source Changed 0
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29460061878
  • 9f06c8c8 on github
  • Prev Build on master (#29457501339)
  • Next Build on master (#29520594567)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc