Skip to content

Bibliography ingestion (BibTeX/DOI) + verify CLI#2

Merged
juniperbevensee merged 1 commit into
mainfrom
dev/juniperbevensee/matilde-bibtex-cli
Jun 16, 2026
Merged

Bibliography ingestion (BibTeX/DOI) + verify CLI#2
juniperbevensee merged 1 commit into
mainfrom
dev/juniperbevensee/matilde-bibtex-cli

Conversation

@juniperbevensee

Copy link
Copy Markdown
Collaborator

Builds on the v1 engine: make Matilde usable on a real bibliography, standalone.

What's new

  • engine/parsing.py — stdlib-only BibTeX parser (brace-balanced; handles {value}/"value"/bareword fields and A and B and C authors) + a DOI-list parser → References.
  • engine/cli.pypython3 -m engine.cli refs.bib | dois.txt | --doi X. Per-reference verdict table + summary + needs-attention list; --json for machine output. Exit code 1 on any not_found/retracted → drop-in CI / pre-commit gate on a manuscript's .bib.

Proven working (live)

Verified 3 reference(s):
  [OK ] verified      0.9  Molecular structure of nucleic acids
  [RET] retracted     0.1  Ileal-lymphoid-nodular hyperplasia
  [XX ] not_found     0.1  A Totally Fabricated Paper

Tests

13 new offline tests (parser + CLI via injected verifier). 64 offline total, green. Sanitization gate clean.

🤖 Generated with Claude Code

- engine/parsing.py: stdlib-only, brace-balanced BibTeX parser + DOI-list parser
  -> Reference objects (title, authors via 'A and B', year, doi, url, venue).
- engine/cli.py: `python3 -m engine.cli refs.bib | dois.txt | --doi X` prints a
  per-reference verdict table + summary + needs-attention list; --json for
  machine output. Exit code 1 on any not_found/retracted -> usable as a CI /
  pre-commit gate on a manuscript's .bib.
- 13 new offline tests (parser + CLI with injected verifier). Live-smoked against
  real APIs: verified / retracted (Wakefield) / not_found (fabricated DOI).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@juniperbevensee
juniperbevensee merged commit 2896a19 into main Jun 16, 2026
1 check failed
@juniperbevensee
juniperbevensee deleted the dev/juniperbevensee/matilde-bibtex-cli branch June 16, 2026 02:25
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