Skip to content

Add JOSS paper draft - #224

Draft
SkyeAv wants to merge 25 commits into
mainfrom
joss-paper
Draft

SkyeAv wants to merge 25 commits into
mainfrom
joss-paper

Conversation

@SkyeAv

@SkyeAv SkyeAv commented Oct 19, 2026

Copy link
Copy Markdown
Owner

What

Scaffolds the JOSS paper in paper/ (tracked, not ignored) and wires it into the repo's gates:

  • paper/paper.md: Whedon-format draft, seeded from the README statement of need
  • paper/paper.bib: six seed entries
  • paper/INSTRUCTIONS.md: collaborator guidance (word budgets, figures, submission flow)
  • tests/test_paper.py: front matter / citation resolution / word-budget gate (runs in CI python-test, as the paper-checks pre-commit hook, and via make paper-check)
  • .github/workflows/paper.yml: path-filtered compile of paper.pdf from the JOSS paperdraft resources, uploaded as a PR artifact
  • Makefile: paper-check / paper-image / paper-pdf / paper

Verified locally: make paper compiles a valid PDF with resolved citations; make paper-pdf is idempotent (stamp + Docker layer cache); the Paper workflow will run on this PR since paper/** changed.

Checklist before submission to review-joss

  • Expand every TODO(collaborators) section in paper/paper.md (Statement of need, State of the field, Acknowledgements)
  • Verify every % TODO: verify entry in paper/paper.bib (title, authors, year, DOI)
  • Add a figure under paper/figures/ and uncomment the Figures placeholder
  • Finalize the title and author order (currently mirrors CITATION.cff)
  • make paper passes locally
  • Submit via https://joss.theoj.org referencing this branch

Notes

  • The JOSS Docker Hub image is gone; paper-image builds the paperdraft image from the archived (frozen 2024-04-16) openjournals/whedon sources with three patches (registry-qualified base, frozen TeXLive 2021 repo, vestigial biblatex strip). Makefile and workflow copies must stay in sync.
  • paper/*.pdf and .paperdraft/ are git-ignored.

Adds paper/paper.md (Whedon-format draft seeded from the README statement of need),
paper/paper.bib (six seed entries flagged for DOI verification), and
paper/INSTRUCTIONS.md for collaborators. Gates:

- tests/test_paper.py: front matter, citation resolution, and JOSS word budgets,
  running in CI (python-test), as the paper-checks pre-commit hook, and via
  make paper-check
- .github/workflows/paper.yml: path-filtered compile of paper.pdf from the JOSS
  paperdraft resources, uploaded as an artifact
- Makefile: paper-check / paper-image / paper-pdf / paper targets

The paperdraft build patches the archived whedon sources (registry-qualified base
image, frozen TeXLive 2021 repo, vestigial biblatex strip); the Makefile and
workflow versions must stay in sync.
@coderabbitai

coderabbitai Bot commented Oct 19, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

test_docs_source_of_truth requires every .PHONY Makefile target in the
CONTRIBUTING.md Task runner table and every workflow described once in the
llms.txt GitHub Workflows entry with matching purpose terms; paper.yml's
compile step now names itself a test build so the entry reads naturally.
@SkyeAv

SkyeAv commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

@jaredroach and @gglusman this is where we're supposed to work on and edit the JOSS paper for Tablassert. I still need to scaffold out the paper but I'd imagine us here commenting. Making edits as commits to this branch, etc... I'll update y'all here when I do anything

SkyeAv added 21 commits October 20, 2026 13:23
Replaces the scaffold's TODO seed text with a complete draft across all
JOSS-required sections (Summary, Statement of need, State of the field,
Software design, Research impact statement, AI usage disclosure stub,
Acknowledgements stub, References). Research impact states lineage facts
with status caveats: MicrobiomeKG precursor use, current MOKG builds,
DAKP releases, pending translator-ingests integration, KRAKEN graph
consumption, rare-disease graph in preparation.

paper.bib: every published entry re-verified against Crossref/arXiv/
bioRxiv or upstream CITATION.cff/release metadata; replaces four wrong
scaffold DOIs (biolink-model, translator, babel, kgx) and fixes the
MicrobiomeKG author order; adds koza, redb, kraken, dakp,
drug-approvals, ingests entries.

Gates: paper-check now enforces the JOSS-required section list and the
official 750-1750 word body budget (scaffold capped at a self-imposed
1000); markdownlint overrides MD025 for paper/paper.md because the JOSS
template puts every section at heading level 1.

Verified: pytest full suite 1229 passed, pyright clean, ruff clean,
markdownlint clean, html-validate clean, paper.pdf compiles to 3 pages
with resolved citations.
… field

Front matter now uses the JOSS affiliation-index convention with an
affiliations list; the previous full-string affiliations made authblk
collapse the rendered author block to the last author (verified in the
compiled PDF). KGX is cited with title only since it has no CITATION.cff
or registry-verified author list. CITATION.cff author order updated to
match.
- AI usage disclosure: pi agent, model inventory, validation methods, funding
- paper/benchmarks: fullmap vs hosted SRI name resolution; Tablassert vs Koza
- State of the field: LinkML, NameRes service distinct from BABEL
- Software design: column context, filtering, tie-breakers, taxon allowlist
  trade-off, exact-match resolution rationale, SapBERT BABEL checkpoint,
  output validation passes, DAKP audit scale
- Bibliography: fix koza version, add kgx authors, add NameRes, LinkML, MOKG
  dataset, graph monorepo, ingests PR 550 references
- Research impact: deployed MOKG graphs use Tablassert
…ap sizes

- Move benchmark numbers into a Benchmarks section
- validate-kgx vs KGX schema-driven validate; --prune repair mode
- Fullmap sizes: 44.5 GB prebuilt (BABEL 22.2.0), 24.7 GB local store
- Trim to stay inside the JOSS body budget
The 24.7 GB figure was only the primary redb file; the store is one primary
plus 16 shard files, 92,881,358,848 bytes uncompressed. Benchmark README now
carries the per-component breakdown.
…pher, OntoWeaver, Monarch

JOSS's official template lists only Summary, Statement of need, State of the
field, Software design, Research impact, AI usage disclosure, Acknowledgements,
and References, so the standalone Benchmarks section is folded into Software
design where the numbers support design claims. New citations replace the
LinkML repo entry with the GigaScience paper and add BioCypher (Nat Biotechnol
2023), OntoWeaver/BioCypher tabular-to-KG mapping (FUSION 2024), and Monarch
2024 (NAR) to State of the field. Trim AI disclosure redundancy to stay
inside the 1750-word budget.
Adds Caufield et al., Bioinformatics 40:btae104 (2024), contrasted as
free-text zero-shot extraction against Tablassert's structured-table sources.
Compensating trims keep the body inside the JOSS word budget.
@SkyeAv

SkyeAv commented Oct 30, 2026

Copy link
Copy Markdown
Owner Author

@jaredroach the paper is at a stage where I want you to take a look at it. This links to the JOSS requirements. This links to a render of the draft.

Let me know if you're satisfied with the contributions section. Please flag any typos or unclear wording. Feedback on the narrative, and especially the statement of need and research sections, would be amazing too.

@gglusman is busy until Wednesday, so you have my full attention for comments you make here or on Slack until then. Also, feel free to make updates and commit them to the branch.

Corrected capitalization in acknowledgements section.

This branch has not been deployed

No deployments
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.

3 participants