Repository navigation
Conversation
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
I think better to update before pr |
open PR for this #5724 |
| with: | ||
| name: preprints | ||
|
|
||
| - name: Open or update the issue |
There was a problem hiding this comment.
instead of making an issue should we instead make a PR?
There was a problem hiding this comment.
I kept issue because there is some part which can be automated and some which cant:
- What it automates: for findings with a DOI or ACL Anthology id, it would fetch the BibTeX, keep each key, run the formatter and the citation check, and open a PR.
- What it can't automate: findings with only a venue (ICLR, NeurIPS). OpenReview and DBLP now block automated requests, so those would be listed in the PR description and we have to fix them again
So, I was leaning towards more on keeping issue, but will change to PR if you want
|
Hi @ayush1298, would offline tests for |
I dont think mock is required here, I have added some basic tests, but no HTTP call and use of API Key |
| "tabulate>=0.9.0", | ||
| "bibtexparser>=2.0.0,<3.0.0", # used for tests/test_citation_formatting.py | ||
| "refaudit>=0.4.9", # used for tests/test_validate_metadata/check_citations.py | ||
| "refaudit>=0.4.9", # used for scripts/tools/check_citations.py and scripts/tools/check_preprints.py |
There was a problem hiding this comment.
Small note. Overall I think this is a good library, but I'm a bit afraid that it won't work after some time, because it have only one maintainer and not have any stars on github
There was a problem hiding this comment.
check_citations.py uses most part of this library, maybe we can refactor it then if possible
| from scripts.tools.check_preprints import ( | ||
| Version, | ||
| confirm, | ||
| parse_openalex_work, | ||
| parse_semantic_scholar_paper, | ||
| preprint_arxiv_id, | ||
| ) |
There was a problem hiding this comment.
I don't think that tests should import from scripts
There was a problem hiding this comment.
where we should add it then?
There was a problem hiding this comment.
I guess not necessary, mostly those are sanity checks kind of tests
There was a problem hiding this comment.
I have remove the test file
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
closes #5703
Adds a monthly check that lists works we cite as arXiv preprints that have since been published, and opens or updates an issue listing them.
scripts/tools/check_preprints.py: finds the citations that only cite arXiv (387 on main today) and looks them all up in one Semantic Scholar batch request. Preprints Semantic Scholar knows no published version of are also looked up in OpenAlex, since neither index links every preprint to its published version.citations()fromcheck_citations.pyand refaudit's Crossref and OpenAlex clients.check_citations.py,citation_cache.jsonandcitation_allowlist.jsonmove fromtests/test_validate_metadata/toscripts/tools/, since they are scripts rather than pytest tests. The JSON files are moved unchanged. Both checks run as modules (python -m scripts.tools.check_citations).citation_check.yml: newpreprint-checkandreport-preprintsjobs instead of a separate workflow. They run monthly and on manual trigger, never on PRs, and use theSEMANTIC_SCHOLAR_API_KEYsecret. A separate job withissues: writeopens or updates the issue.scripts/tools/preprint_allowlist.json: citations that should stay on the preprint. It lists MS MARCO and Jina Embeddings 2.pyproject.toml:refauditmoves from thetestgroup to a newcitationsgroup (part ofdevand the default groups), used bymake citation-check,make preprint-checkand the citation workflow.make preprint-checkruns the check locally.A local run found about 210 published preprints. Their citations are updated in #5724.