paperlint 7.2.0 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +9 -25
- package/CONTRIBUTING.md +5 -4
- package/README.md +4 -3
- package/dist/adapters/bibtex/index.d.ts +3 -0
- package/dist/adapters/bibtex/index.d.ts.map +1 -0
- package/dist/adapters/bibtex/index.js +103 -0
- package/dist/adapters/bibtex/index.js.map +1 -0
- package/dist/adapters/latex/filecontents.d.ts +33 -0
- package/dist/adapters/latex/filecontents.d.ts.map +1 -0
- package/dist/adapters/latex/filecontents.js +65 -0
- package/dist/adapters/latex/filecontents.js.map +1 -0
- package/dist/adapters/latex/includes.d.ts +3 -3
- package/dist/adapters/latex/includes.d.ts.map +1 -1
- package/dist/adapters/latex/includes.js +18 -10
- package/dist/adapters/latex/includes.js.map +1 -1
- package/dist/adapters/latex/index.d.ts.map +1 -1
- package/dist/adapters/latex/index.js +2 -0
- package/dist/adapters/latex/index.js.map +1 -1
- package/dist/adapters/latex/nodes.d.ts +12 -0
- package/dist/adapters/latex/nodes.d.ts.map +1 -1
- package/dist/adapters/latex/nodes.js +39 -0
- package/dist/adapters/latex/nodes.js.map +1 -1
- package/dist/adapters/latex/parse.d.ts +7 -1
- package/dist/adapters/latex/parse.d.ts.map +1 -1
- package/dist/adapters/latex/parse.js +55 -6
- package/dist/adapters/latex/parse.js.map +1 -1
- package/dist/adapters/memory/index.d.ts +3 -0
- package/dist/adapters/memory/index.d.ts.map +1 -1
- package/dist/adapters/memory/index.js +9 -0
- package/dist/adapters/memory/index.js.map +1 -1
- package/dist/adapters/references/index.d.ts.map +1 -1
- package/dist/adapters/references/index.js +27 -24
- package/dist/adapters/references/index.js.map +1 -1
- package/dist/adapters/sources-record/index.d.ts +9 -0
- package/dist/adapters/sources-record/index.d.ts.map +1 -0
- package/dist/adapters/sources-record/index.js +68 -0
- package/dist/adapters/sources-record/index.js.map +1 -0
- package/dist/adapters/tex-output/blg.d.ts +9 -0
- package/dist/adapters/tex-output/blg.d.ts.map +1 -0
- package/dist/adapters/tex-output/blg.js +20 -0
- package/dist/adapters/tex-output/blg.js.map +1 -0
- package/dist/adapters/tex-output/fls.d.ts +8 -0
- package/dist/adapters/tex-output/fls.d.ts.map +1 -0
- package/dist/adapters/tex-output/fls.js +16 -0
- package/dist/adapters/tex-output/fls.js.map +1 -0
- package/dist/adapters/tex-output/index.d.ts +7 -0
- package/dist/adapters/tex-output/index.d.ts.map +1 -0
- package/dist/adapters/tex-output/index.js +7 -0
- package/dist/adapters/tex-output/index.js.map +1 -0
- package/dist/bib-rules.d.ts +47 -0
- package/dist/bib-rules.d.ts.map +1 -0
- package/dist/bib-rules.js +127 -0
- package/dist/bib-rules.js.map +1 -0
- package/dist/build.d.ts +29 -1
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +41 -30
- package/dist/build.js.map +1 -1
- package/dist/claim-provenance.d.ts +2 -2
- package/dist/cli.d.ts +9 -5
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +43 -68
- package/dist/cli.js.map +1 -1
- package/dist/domain/paper-source.d.ts +1 -10
- package/dist/domain/paper-source.d.ts.map +1 -1
- package/dist/domain/paper-source.js +34 -24
- package/dist/domain/paper-source.js.map +1 -1
- package/dist/domain/paper-sources.d.ts +72 -0
- package/dist/domain/paper-sources.d.ts.map +1 -0
- package/dist/domain/paper-sources.js +18 -0
- package/dist/domain/paper-sources.js.map +1 -0
- package/dist/domain/sources-record.d.ts +102 -0
- package/dist/domain/sources-record.d.ts.map +1 -0
- package/dist/domain/sources-record.js +38 -0
- package/dist/domain/sources-record.js.map +1 -0
- package/dist/domain/tex-run.d.ts +25 -0
- package/dist/domain/tex-run.d.ts.map +1 -0
- package/dist/domain/tex-run.js +79 -0
- package/dist/domain/tex-run.js.map +1 -0
- package/dist/eslint-rules/latex-language.d.ts.map +1 -1
- package/dist/eslint-rules/latex-language.js +10 -13
- package/dist/eslint-rules/latex-language.js.map +1 -1
- package/dist/eslint-rules/paper-context.d.ts.map +1 -1
- package/dist/eslint-rules/paper-context.js +6 -5
- package/dist/eslint-rules/paper-context.js.map +1 -1
- package/dist/eslint-rules/paper-typography.d.ts +0 -9
- package/dist/eslint-rules/paper-typography.d.ts.map +1 -1
- package/dist/eslint-rules/paper-typography.js +34 -96
- package/dist/eslint-rules/paper-typography.js.map +1 -1
- package/dist/eslint-rules/papers.d.ts +1 -3
- package/dist/eslint-rules/papers.d.ts.map +1 -1
- package/dist/eslint-rules/papers.js +2 -4
- package/dist/eslint-rules/papers.js.map +1 -1
- package/dist/eslint-rules/tex-build.d.ts.map +1 -1
- package/dist/eslint-rules/tex-build.js +8 -25
- package/dist/eslint-rules/tex-build.js.map +1 -1
- package/dist/init.d.ts +1 -4
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +3 -9
- package/dist/init.js.map +1 -1
- package/dist/latex-log.d.ts +10 -0
- package/dist/latex-log.d.ts.map +1 -1
- package/dist/latex-log.js +10 -0
- package/dist/latex-log.js.map +1 -1
- package/dist/latex-loop.d.ts +2 -0
- package/dist/latex-loop.d.ts.map +1 -1
- package/dist/latex-loop.js.map +1 -1
- package/dist/lib/markdown.d.ts +5 -81
- package/dist/lib/markdown.d.ts.map +1 -1
- package/dist/lib/markdown.js +5 -116
- package/dist/lib/markdown.js.map +1 -1
- package/dist/lib/paper-config.d.ts.map +1 -1
- package/dist/lib/paper-config.js +0 -2
- package/dist/lib/paper-config.js.map +1 -1
- package/dist/lib/skill-eval-fixture.d.ts +6 -4
- package/dist/lib/skill-eval-fixture.d.ts.map +1 -1
- package/dist/lib/skill-eval-fixture.js +25 -18
- package/dist/lib/skill-eval-fixture.js.map +1 -1
- package/dist/new-paper.d.ts +5 -11
- package/dist/new-paper.d.ts.map +1 -1
- package/dist/new-paper.js +12 -23
- package/dist/new-paper.js.map +1 -1
- package/dist/package-dirs.d.ts.map +1 -1
- package/dist/package-dirs.js +3 -2
- package/dist/package-dirs.js.map +1 -1
- package/dist/paper-files.d.ts +4 -4
- package/dist/paper-includes.d.ts +4 -7
- package/dist/paper-includes.d.ts.map +1 -1
- package/dist/paper-includes.js +29 -21
- package/dist/paper-includes.js.map +1 -1
- package/dist/paper-prose.d.ts +17 -0
- package/dist/paper-prose.d.ts.map +1 -0
- package/dist/paper-prose.js +46 -0
- package/dist/paper-prose.js.map +1 -0
- package/dist/paper-record.d.ts +25 -0
- package/dist/paper-record.d.ts.map +1 -0
- package/dist/paper-record.js +39 -0
- package/dist/paper-record.js.map +1 -0
- package/dist/paper-sources.d.ts +66 -0
- package/dist/paper-sources.d.ts.map +1 -0
- package/dist/paper-sources.js +92 -0
- package/dist/paper-sources.js.map +1 -0
- package/dist/ports/bib-reader.d.ts +18 -0
- package/dist/ports/bib-reader.d.ts.map +1 -0
- package/dist/ports/bib-reader.js +2 -0
- package/dist/ports/bib-reader.js.map +1 -0
- package/dist/ports/check-references.d.ts +9 -4
- package/dist/ports/check-references.d.ts.map +1 -1
- package/dist/ports/latex.d.ts +15 -0
- package/dist/ports/latex.d.ts.map +1 -1
- package/dist/ports/sources-codec.d.ts +11 -0
- package/dist/ports/sources-codec.d.ts.map +1 -0
- package/dist/ports/sources-codec.js +2 -0
- package/dist/ports/sources-codec.js.map +1 -0
- package/dist/ports/tex-output.d.ts +17 -0
- package/dist/ports/tex-output.d.ts.map +1 -0
- package/dist/ports/tex-output.js +2 -0
- package/dist/ports/tex-output.js.map +1 -0
- package/dist/recorded-bibliography.d.ts +89 -0
- package/dist/recorded-bibliography.d.ts.map +1 -0
- package/dist/recorded-bibliography.js +136 -0
- package/dist/recorded-bibliography.js.map +1 -0
- package/dist/reference-rules.d.ts +5 -5
- package/dist/reference-rules.d.ts.map +1 -1
- package/dist/reference-rules.js +150 -77
- package/dist/reference-rules.js.map +1 -1
- package/dist/references.d.ts +71 -16
- package/dist/references.d.ts.map +1 -1
- package/dist/references.js +110 -26
- package/dist/references.js.map +1 -1
- package/dist/register-bands.d.ts +3 -3
- package/dist/register-bands.d.ts.map +1 -1
- package/dist/register-bands.js.map +1 -1
- package/dist/register.d.ts +2 -2
- package/dist/sources-record.d.ts +38 -0
- package/dist/sources-record.d.ts.map +1 -0
- package/dist/sources-record.js +123 -0
- package/dist/sources-record.js.map +1 -0
- package/dist/sources-rules.d.ts +44 -0
- package/dist/sources-rules.d.ts.map +1 -0
- package/dist/sources-rules.js +76 -0
- package/dist/sources-rules.js.map +1 -0
- package/dist/structure.d.ts.map +1 -1
- package/dist/structure.js +4 -3
- package/dist/structure.js.map +1 -1
- package/dist/tex-paper.d.ts +10 -15
- package/dist/tex-paper.d.ts.map +1 -1
- package/dist/tex-paper.js +24 -40
- package/dist/tex-paper.js.map +1 -1
- package/dist/tex-venue-rules.d.ts +3 -3
- package/dist/tex-venue-rules.d.ts.map +1 -1
- package/dist/tex-venue-rules.js.map +1 -1
- package/dist/types.d.ts +0 -2
- package/dist/types.d.ts.map +1 -1
- package/docs/configuration.md +18 -12
- package/docs/design/paper-sources.md +197 -0
- package/docs/e2e.md +4 -6
- package/docs/package-shape-options.md +1 -1
- package/docs/prior-art/paper-folder-scaffolding.md +24 -29
- package/docs/references.md +34 -8
- package/docs/rules/bib/reachable-entry.md +64 -0
- package/docs/rules/paper/sources-fresh.md +81 -0
- package/docs/rules/tex/claim-provenance.md +0 -1
- package/docs/rules.md +62 -61
- package/eslint-rules/latex-language.harness.mjs +3 -3
- package/eslint-rules/latex-language.ts +10 -13
- package/eslint-rules/paper-context.ts +6 -5
- package/eslint-rules/paper-typography.test.mjs +29 -157
- package/eslint-rules/paper-typography.ts +35 -104
- package/eslint-rules/papers.harness.mjs +1 -1
- package/eslint-rules/papers.ts +2 -4
- package/eslint-rules/tex-build.harness.mjs +2 -2
- package/eslint-rules/tex-build.ts +8 -25
- package/eslint.config.mjs +22 -1
- package/fixtures/build-e2e/aidc/paper.tex +1 -1
- package/fixtures/build-e2e/anon-ack/paper.tex +1 -1
- package/fixtures/build-e2e/anon-author/paper.tex +1 -1
- package/fixtures/build-e2e/anon-bib/paper.tex +1 -1
- package/fixtures/build-e2e/anon-href/paper.tex +1 -1
- package/fixtures/build-e2e/anon-macro/paper.tex +1 -1
- package/fixtures/build-e2e/anon-pdfauthor/paper.tex +1 -1
- package/fixtures/paper-sources/p1/paper.tex +30 -0
- package/fixtures/paper-sources/p1/refs.bib +6 -0
- package/fixtures/paper-sources/p1/sections/dead.tex +6 -0
- package/fixtures/paper-sources/p1/sections/intro.tex +7 -0
- package/fixtures/paper-sources/p1/sections/parked.tex +6 -0
- package/fixtures/paper-sources/p1/tex-truth.json +37 -0
- package/fixtures/paper-sources/p1/versions/2026-01-01-review.tex +4 -0
- package/fixtures/paper-sources/v1-stale/paper.tex +14 -0
- package/fixtures/paper-sources/v1-stale/refs.bib +6 -0
- package/fixtures/paper-sources/v1-stale/tex-truth.json +32 -0
- package/fixtures/paper-sources/v10-ifthenelse/anon.bib +1 -0
- package/fixtures/paper-sources/v10-ifthenelse/paper.tex +9 -0
- package/fixtures/paper-sources/v10-ifthenelse/real.bib +1 -0
- package/fixtures/paper-sources/v10-ifthenelse/tex-truth.json +28 -0
- package/fixtures/paper-sources/v11-two-blocks/paper.tex +12 -0
- package/fixtures/paper-sources/v11-two-blocks/tex-truth.json +30 -0
- package/fixtures/paper-sources/v13-percent-text/paper.tex +6 -0
- package/fixtures/paper-sources/v13-percent-text/refs.bib +3 -0
- package/fixtures/paper-sources/v13-percent-text/tex-truth.json +30 -0
- package/fixtures/paper-sources/v15-after-end/paper.tex +6 -0
- package/fixtures/paper-sources/v15-after-end/refs.bib +1 -0
- package/fixtures/paper-sources/v15-after-end/tex-truth.json +17 -0
- package/fixtures/paper-sources/v16-included-block/bibblock.tex +3 -0
- package/fixtures/paper-sources/v16-included-block/paper.tex +7 -0
- package/fixtures/paper-sources/v16-included-block/refs.bib +1 -0
- package/fixtures/paper-sources/v16-included-block/tex-truth.json +35 -0
- package/fixtures/paper-sources/v17-include-order/bibsetup.tex +1 -0
- package/fixtures/paper-sources/v17-include-order/first.bib +1 -0
- package/fixtures/paper-sources/v17-include-order/later.bib +1 -0
- package/fixtures/paper-sources/v17-include-order/paper.tex +7 -0
- package/fixtures/paper-sources/v17-include-order/tex-truth.json +40 -0
- package/fixtures/paper-sources/v2-overwrite/paper.tex +14 -0
- package/fixtures/paper-sources/v2-overwrite/refs.bib +6 -0
- package/fixtures/paper-sources/v2-overwrite/tex-truth.json +30 -0
- package/fixtures/paper-sources/v22-parked-thebibliography/paper.tex +7 -0
- package/fixtures/paper-sources/v22-parked-thebibliography/tex-truth.json +17 -0
- package/fixtures/paper-sources/v23-parked-include/old.bib +1 -0
- package/fixtures/paper-sources/v23-parked-include/paper.tex +7 -0
- package/fixtures/paper-sources/v23-parked-include/parked.tex +1 -0
- package/fixtures/paper-sources/v23-parked-include/refs.bib +1 -0
- package/fixtures/paper-sources/v23-parked-include/tex-truth.json +28 -0
- package/fixtures/paper-sources/v24-quoted-fields/paper.tex +6 -0
- package/fixtures/paper-sources/v24-quoted-fields/refs.bib +5 -0
- package/fixtures/paper-sources/v24-quoted-fields/tex-truth.json +32 -0
- package/fixtures/paper-sources/v25-string-differs/paper.tex +10 -0
- package/fixtures/paper-sources/v25-string-differs/refs.bib +2 -0
- package/fixtures/paper-sources/v25-string-differs/tex-truth.json +32 -0
- package/fixtures/paper-sources/v26-comment-in-names/one.bib +1 -0
- package/fixtures/paper-sources/v26-comment-in-names/paper.tex +7 -0
- package/fixtures/paper-sources/v26-comment-in-names/tex-truth.json +32 -0
- package/fixtures/paper-sources/v26-comment-in-names/two.bib +1 -0
- package/fixtures/paper-sources/v27-shared-string/abbreviations.bib +2 -0
- package/fixtures/paper-sources/v27-shared-string/paper.tex +6 -0
- package/fixtures/paper-sources/v27-shared-string/references.bib +6 -0
- package/fixtures/paper-sources/v27-shared-string/tex-truth.json +31 -0
- package/fixtures/paper-sources/v28-shared-string-block/abbreviations.bib +2 -0
- package/fixtures/paper-sources/v28-shared-string-block/paper.tex +14 -0
- package/fixtures/paper-sources/v28-shared-string-block/tex-truth.json +33 -0
- package/fixtures/paper-sources/v29-generated-input/paper.tex +9 -0
- package/fixtures/paper-sources/v29-generated-input/tex-truth.json +24 -0
- package/fixtures/paper-sources/v3-declared/paper.bib +6 -0
- package/fixtures/paper-sources/v3-declared/paper.tex +6 -0
- package/fixtures/paper-sources/v3-declared/tex-truth.json +28 -0
- package/fixtures/paper-sources/v30-name-next-line/paper.tex +14 -0
- package/fixtures/paper-sources/v30-name-next-line/tex-truth.json +30 -0
- package/fixtures/paper-sources/v4-commented/paper.tex +14 -0
- package/fixtures/paper-sources/v4-commented/refs.bib +6 -0
- package/fixtures/paper-sources/v4-commented/tex-truth.json +28 -0
- package/fixtures/paper-sources/v5-percent-entry/paper.tex +20 -0
- package/fixtures/paper-sources/v5-percent-entry/tex-truth.json +37 -0
- package/fixtures/paper-sources/v6-unclosed/paper.tex +6 -0
- package/fixtures/paper-sources/v6-unclosed/refs.bib +5 -0
- package/fixtures/paper-sources/v6-unclosed/tex-truth.json +37 -0
- package/fixtures/paper-sources/v8-jobname/paper.tex +9 -0
- package/fixtures/paper-sources/v8-jobname/tex-truth.json +30 -0
- package/fixtures/paper-sources/v9-two-bibliographies/one.bib +1 -0
- package/fixtures/paper-sources/v9-two-bibliographies/paper.tex +7 -0
- package/fixtures/paper-sources/v9-two-bibliographies/tex-truth.json +35 -0
- package/fixtures/paper-sources/v9-two-bibliographies/two.bib +1 -0
- package/fixtures/paper-typography/clean-paper/paper.tex +1 -1
- package/fixtures/paper-typography/messy-paper/paper.tex +1 -1
- package/hooks/hooks.harness.ts +15 -15
- package/hooks/paper-edit-guard.hook.mjs +5 -8
- package/hooks/paper-edit-guard.test.ts +12 -3
- package/hooks/paper-skills-nudge.hook.mjs +2 -3
- package/hooks/paper-skills-nudge.test.ts +13 -3
- package/hooks/paper-status-gates.hook.mjs +2 -2
- package/hooks/paper-status-gates.test.ts +14 -2
- package/lib/markdown.test.mjs +5 -60
- package/lib/markdown.ts +9 -136
- package/lib/paper-config.ts +0 -2
- package/lib/skill-checks.test.mjs +4 -1
- package/lib/skill-eval-fixture.ts +25 -18
- package/package.json +2 -12
- package/presets/realm.jsonc +1 -1
- package/scripts/check.test.ts +23 -1
- package/scripts/check.ts +7 -3
- package/scripts/coverage-config.test.ts +19 -10
- package/scripts/harness-api.frozen.json +0 -5
- package/scripts/layer-legacy-frozen.test.ts +41 -2
- package/scripts/layer-legacy-frozen.ts +31 -2
- package/skills/cold-read-diff/SKILL.md +3 -3
- package/skills/cold-read-diff/SKILL.md.spec.ts +2 -2
- package/skills/grade-paper-writing/SKILL.md +15 -22
- package/skills/grade-paper-writing/SKILL.md.spec.ts +14 -21
- package/skills/grade-paper-writing/__snapshots__/prose-lint.test.ts.snap +40 -26
- package/skills/grade-paper-writing/prose-lint.mjs +117 -278
- package/skills/grade-paper-writing/prose-lint.test.ts +230 -79
- package/skills/paper-adversarial-review/SKILL.md +2 -2
- package/skills/paper-adversarial-review/SKILL.md.spec.ts +1 -1
- package/skills/paper-pipeline/SKILL.md +9 -12
- package/skills/paper-pipeline/SKILL.md.spec.ts +8 -11
- package/skills/paper-pipeline/description-language.eval.mjs +25 -15
- package/skills/paper-pipeline/framing-vs-vocabulary.eval.mjs +25 -15
- package/skills/paper-pipeline/grade-paper-writing-ablation.eval.mjs +25 -15
- package/skills/paper-pipeline/pipeline-firing.eval.mjs +27 -16
- package/skills/paper-pipeline/pipeline-language.eval.mjs +25 -15
- package/skills/paper-pipeline/references/acceptance-gate.md +16 -20
- package/skills/paper-pipeline/references/artifact-checklist.md +4 -5
- package/skills/paper-pipeline/references/pipeline-status-template.md +1 -1
- package/skills/paper-pipeline/scripts/README.md +0 -4
- package/skills/paper-pipeline/scripts/extract-ref-facts.harness.mjs +91 -105
- package/skills/paper-pipeline/scripts/extract-ref-facts.mjs +85 -241
- package/skills/paper-pipeline/scripts/extract-ref-facts.test.mjs +166 -153
- package/skills/paper-pipeline/scripts/generated-code.harness.mjs +3 -3
- package/skills/paper-status/SKILL.md +2 -2
- package/skills/paper-status/SKILL.md.spec.ts +1 -1
- package/skills/render-paper/SKILL.md +2 -2
- package/skills/render-paper/SKILL.md.spec.ts +1 -1
- package/skills/render-paper/extract-pdf-facts.mjs +2 -2
- package/skills/tighten-paper/SKILL.md +29 -42
- package/skills/tighten-paper/SKILL.md.spec.ts +28 -41
- package/skills/verify-citations/SKILL.md +7 -4
- package/skills/verify-citations/SKILL.md.spec.ts +6 -3
- package/skills/verify-citations/scripts/bib-authors.check.test.mjs +17 -32
- package/skills/verify-citations/scripts/bib-authors.cli.test.ts +138 -43
- package/skills/verify-citations/scripts/bib-authors.d.mts +22 -2
- package/skills/verify-citations/scripts/bib-authors.mjs +54 -193
- package/skills/verify-citations/scripts/bib-authors.test.mjs +1 -44
- package/skills/verify-citations/scripts/verify-cites.cli.test.ts +16 -0
- package/skills/verify-citations/scripts/verify-cites.d.mts +19 -3
- package/skills/verify-citations/scripts/verify-cites.mjs +42 -108
- package/skills/verify-citations/scripts/verify-cites.test.mjs +23 -36
- package/src/adapters/bibtex/index.test.ts +163 -0
- package/src/adapters/bibtex/index.ts +155 -0
- package/src/adapters/latex/filecontents.ts +114 -0
- package/src/adapters/latex/includes.ts +18 -10
- package/src/adapters/latex/index.test.ts +73 -0
- package/src/adapters/latex/index.ts +2 -0
- package/src/adapters/latex/nodes.ts +64 -0
- package/src/adapters/latex/parse.test.ts +38 -0
- package/src/adapters/latex/parse.ts +67 -6
- package/src/adapters/memory/index.ts +17 -0
- package/src/adapters/references/index.test.ts +75 -21
- package/src/adapters/references/index.ts +37 -32
- package/src/adapters/sources-record/index.test.ts +87 -0
- package/src/adapters/sources-record/index.ts +82 -0
- package/src/adapters/tex-output/blg.ts +27 -0
- package/src/adapters/tex-output/fls.ts +24 -0
- package/src/adapters/tex-output/index.test.ts +171 -0
- package/src/adapters/tex-output/index.ts +12 -0
- package/src/bib-rules.test.ts +356 -0
- package/src/bib-rules.ts +228 -0
- package/src/bibliography-at.test.ts +286 -0
- package/src/build.harness.mjs +2 -2
- package/src/build.test.ts +211 -1
- package/src/build.ts +101 -41
- package/src/claim-provenance.test.ts +33 -7
- package/src/claim-provenance.ts +2 -2
- package/src/cli.harness.mjs +46 -56
- package/src/cli.test.ts +44 -48
- package/src/cli.ts +51 -82
- package/src/domain/paper-source.test.ts +58 -20
- package/src/domain/paper-source.ts +38 -42
- package/src/domain/paper-sources.ts +94 -0
- package/src/domain/sources-record.test.ts +71 -0
- package/src/domain/sources-record.ts +136 -0
- package/src/domain/tex-run.test.ts +228 -0
- package/src/domain/tex-run.ts +139 -0
- package/src/folder-venue-rule.test.ts +1 -1
- package/src/heading-case.test.ts +24 -10
- package/src/init.test.ts +6 -7
- package/src/init.ts +3 -22
- package/src/latex-log.ts +20 -0
- package/src/latex-loop.harness.ts +1 -0
- package/src/latex-loop.ts +2 -0
- package/src/lint-fix.test.ts +10 -4
- package/src/linted-set.test.ts +9 -1
- package/src/new-paper.harness.mjs +12 -30
- package/src/new-paper.test.ts +15 -11
- package/src/new-paper.ts +11 -30
- package/src/package-dirs.ts +3 -2
- package/src/paper-files.test.ts +5 -4
- package/src/paper-files.ts +4 -4
- package/src/paper-includes.test.ts +157 -38
- package/src/paper-includes.ts +39 -35
- package/src/paper-prose.test.ts +78 -0
- package/src/paper-prose.ts +67 -0
- package/src/paper-record.test.ts +173 -0
- package/src/paper-record.ts +66 -0
- package/src/paper-settings-commands.test.ts +5 -2
- package/src/paper-sources.ts +151 -0
- package/src/parse-args.test.ts +0 -1
- package/src/ports/bib-reader.ts +27 -0
- package/src/ports/check-references.ts +7 -3
- package/src/ports/latex.ts +19 -0
- package/src/ports/sources-codec.ts +11 -0
- package/src/ports/tex-output.ts +17 -0
- package/src/recorded-bibliography.ts +297 -0
- package/src/reference-rules.ts +217 -104
- package/src/references.test.ts +520 -177
- package/src/references.ts +185 -37
- package/src/register-bands.test.ts +5 -1
- package/src/register-bands.ts +3 -5
- package/src/register.test.ts +6 -1
- package/src/register.ts +2 -2
- package/src/rule-cases.test.ts +68 -12
- package/src/rule-docs.test.ts +0 -1
- package/src/sources-record.test.ts +308 -0
- package/src/sources-record.ts +231 -0
- package/src/sources-rules.test.ts +152 -0
- package/src/sources-rules.ts +117 -0
- package/src/structure.harness.ts +5 -11
- package/src/structure.ts +4 -3
- package/src/tex-paper.test.ts +148 -78
- package/src/tex-paper.ts +31 -61
- package/src/tex-venue-rules.test.ts +36 -8
- package/src/tex-venue-rules.ts +3 -5
- package/src/types.ts +0 -2
- package/dist/eslint-rules/bib-reachable-entry.d.ts +0 -22
- package/dist/eslint-rules/bib-reachable-entry.d.ts.map +0 -1
- package/dist/eslint-rules/bib-reachable-entry.js +0 -75
- package/dist/eslint-rules/bib-reachable-entry.js.map +0 -1
- package/eslint-rules/bib-reachable-entry.ts +0 -76
- package/fixtures/real-markdown-paper/baseline.json +0 -22
- package/fixtures/real-markdown-paper/baseline.ts +0 -70
- package/skills/paper-pipeline/PIPELINE-MAP.md +0 -381
- package/skills/paper-pipeline/pipeline-firing.baseline.json +0 -270
- package/skills/paper-pipeline/references/sweep-2026-08-09-ideal-pipeline.md +0 -585
- package/skills/paper-pipeline/scripts/artifact-coverage.harness.mjs +0 -492
- package/skills/paper-pipeline/scripts/artifact-coverage.mjs +0 -397
- package/skills/paper-pipeline/scripts/artifact-coverage.test.ts +0 -86
- package/skills/paper-pipeline/scripts/check-provenance.mjs +0 -184
- package/skills/paper-pipeline/scripts/population-map.harness.mjs +0 -135
- package/skills/paper-pipeline/scripts/population-map.mjs +0 -188
- package/skills/paper-pipeline/scripts/population-map.test.mjs +0 -154
- package/skills/paper-pipeline/scripts/provenance.harness.mjs +0 -266
- package/skills/paper-pipeline/scripts/round-diff.harness.ts +0 -907
- package/skills/paper-pipeline/scripts/round-diff.mjs +0 -583
- package/skills/paper-pipeline/scripts/round-diff.test.mjs +0 -159
- package/skills/tighten-paper/__snapshots__/structure.test.ts.snap +0 -133
- package/skills/tighten-paper/structure.mjs +0 -364
- package/skills/tighten-paper/structure.test.ts +0 -117
- package/templates/paper/paper.md +0 -4
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
\documentclass{article}
|
|
2
|
+
\begin{filecontents*}{refs.bib}
|
|
3
|
+
@string{venue = "Block Venue"}
|
|
4
|
+
@misc{k1, howpublished = venue, title = {T}, author = {A, B}, year = {2020}}
|
|
5
|
+
\end{filecontents*}
|
|
6
|
+
\begin{document}
|
|
7
|
+
\nocite{*}
|
|
8
|
+
\bibliographystyle{plain}
|
|
9
|
+
\bibliography{refs}
|
|
10
|
+
\end{document}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"path": "refs.bib",
|
|
10
|
+
"role": "preamble"
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"written": [],
|
|
14
|
+
"bibdata": [
|
|
15
|
+
"refs"
|
|
16
|
+
],
|
|
17
|
+
"bibtex": {
|
|
18
|
+
"ran": true,
|
|
19
|
+
"databases": [
|
|
20
|
+
"refs.bib"
|
|
21
|
+
],
|
|
22
|
+
"keys": [
|
|
23
|
+
"k1"
|
|
24
|
+
],
|
|
25
|
+
"exit": 0,
|
|
26
|
+
"errors": []
|
|
27
|
+
},
|
|
28
|
+
"sha256": {
|
|
29
|
+
"paper.tex": "98021312aca10dcc347305e9de1abdd5549db5af26481af53fd5ca7c91c41635",
|
|
30
|
+
"refs.bib": "92432cd43420f561b25535a756ffe77a6c9270706e47ce1ea69950861878537f"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@misc{onekey, title={One}, author={A, B}, year={2020}}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [],
|
|
10
|
+
"bibdata": [
|
|
11
|
+
"one",
|
|
12
|
+
"two"
|
|
13
|
+
],
|
|
14
|
+
"bibtex": {
|
|
15
|
+
"ran": true,
|
|
16
|
+
"databases": [
|
|
17
|
+
"one.bib",
|
|
18
|
+
"two.bib"
|
|
19
|
+
],
|
|
20
|
+
"keys": [
|
|
21
|
+
"onekey",
|
|
22
|
+
"twokey"
|
|
23
|
+
],
|
|
24
|
+
"exit": 0,
|
|
25
|
+
"errors": []
|
|
26
|
+
},
|
|
27
|
+
"sha256": {
|
|
28
|
+
"paper.tex": "3b8fd4a4505559b5c59a59cdec628b49fb89a6eb597cca9c2a2fe72d5911e4c0",
|
|
29
|
+
"one.bib": "61cca311ca7d77570ed410fc536c655ba76d36168fc3e56068235a2c4b16f7bf",
|
|
30
|
+
"two.bib": "bcceb63d26bb7fce0425b896cbceb533060dd7dd5616e8e0ff00a2e8749f4335"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@misc{twokey, title={Two}, author={A, B}, year={2020}}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [],
|
|
10
|
+
"bibdata": [
|
|
11
|
+
"abbreviations",
|
|
12
|
+
"references"
|
|
13
|
+
],
|
|
14
|
+
"bibtex": {
|
|
15
|
+
"ran": true,
|
|
16
|
+
"databases": [
|
|
17
|
+
"abbreviations.bib",
|
|
18
|
+
"references.bib"
|
|
19
|
+
],
|
|
20
|
+
"keys": [
|
|
21
|
+
"late"
|
|
22
|
+
],
|
|
23
|
+
"exit": 0,
|
|
24
|
+
"errors": []
|
|
25
|
+
},
|
|
26
|
+
"sha256": {
|
|
27
|
+
"paper.tex": "f6ba2a563017e122deabc252bc7b36f4d2ffc79ffcf1b4fca349465987aabbeb",
|
|
28
|
+
"abbreviations.bib": "73084cf971a07ab999e668a8ad68734052fb0bb113226082a16b8badf0570f65",
|
|
29
|
+
"references.bib": "e37a1b173ecba38d5b748338276f48b4d014c9975e919bdfd1c8bfe755d76ca2"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
\documentclass{article}
|
|
2
|
+
\begin{filecontents*}[overwrite]{refs.bib}
|
|
3
|
+
@inproceedings{late,
|
|
4
|
+
author = who,
|
|
5
|
+
title = {A Title},
|
|
6
|
+
booktitle = venue,
|
|
7
|
+
year = 2020,
|
|
8
|
+
}
|
|
9
|
+
\end{filecontents*}
|
|
10
|
+
\begin{document}
|
|
11
|
+
Text that cites~\cite{late}.
|
|
12
|
+
\bibliographystyle{plain}
|
|
13
|
+
\bibliography{abbreviations,refs}
|
|
14
|
+
\end{document}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [
|
|
10
|
+
"refs.bib"
|
|
11
|
+
],
|
|
12
|
+
"bibdata": [
|
|
13
|
+
"abbreviations",
|
|
14
|
+
"refs"
|
|
15
|
+
],
|
|
16
|
+
"bibtex": {
|
|
17
|
+
"ran": true,
|
|
18
|
+
"databases": [
|
|
19
|
+
"abbreviations.bib",
|
|
20
|
+
"refs.bib"
|
|
21
|
+
],
|
|
22
|
+
"keys": [
|
|
23
|
+
"late"
|
|
24
|
+
],
|
|
25
|
+
"exit": 0,
|
|
26
|
+
"errors": []
|
|
27
|
+
},
|
|
28
|
+
"sha256": {
|
|
29
|
+
"paper.tex": "4a5f26663b1e9625a8e9b78dbcf5c5c2bc11aa019bbe63a7abbca25a8d97df9b",
|
|
30
|
+
"abbreviations.bib": "73084cf971a07ab999e668a8ad68734052fb0bb113226082a16b8badf0570f65",
|
|
31
|
+
"refs.bib": "e37a1b173ecba38d5b748338276f48b4d014c9975e919bdfd1c8bfe755d76ca2"
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"path": "body.tex",
|
|
10
|
+
"role": "body"
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"written": [
|
|
14
|
+
"body.tex"
|
|
15
|
+
],
|
|
16
|
+
"bibdata": [],
|
|
17
|
+
"bibtex": {
|
|
18
|
+
"ran": false
|
|
19
|
+
},
|
|
20
|
+
"sha256": {
|
|
21
|
+
"paper.tex": "4f7503a4dc744d30800a8dabe648769f174dcbdf5391e85e3cda1a02e742ea44",
|
|
22
|
+
"body.tex": "db9b3a64e25a0b579cb16e3b189d50d562fcdff6c38b33b0f76c6c0d567d965c"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [],
|
|
10
|
+
"bibdata": [
|
|
11
|
+
"paper"
|
|
12
|
+
],
|
|
13
|
+
"bibtex": {
|
|
14
|
+
"ran": true,
|
|
15
|
+
"databases": [
|
|
16
|
+
"paper.bib"
|
|
17
|
+
],
|
|
18
|
+
"keys": [
|
|
19
|
+
"declared2023"
|
|
20
|
+
],
|
|
21
|
+
"exit": 0,
|
|
22
|
+
"errors": []
|
|
23
|
+
},
|
|
24
|
+
"sha256": {
|
|
25
|
+
"paper.tex": "365c348f503b060973c7b1d5db0348659dffa91d7b149d10181204ae27e31dfb",
|
|
26
|
+
"paper.bib": "efe5f0577c8173e99be73ed728679904dcac9c90b1ec56350cf64d0771f8305e"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
\documentclass{article}
|
|
2
|
+
\begin{filecontents*}
|
|
3
|
+
{refs.bib}
|
|
4
|
+
@misc{nl2024,
|
|
5
|
+
title = {The Name on the Next Line},
|
|
6
|
+
author = {Doe, Jane},
|
|
7
|
+
year = {2024}
|
|
8
|
+
}
|
|
9
|
+
\end{filecontents*}
|
|
10
|
+
\begin{document}
|
|
11
|
+
Text that cites~\cite{nl2024}.
|
|
12
|
+
\bibliographystyle{plain}
|
|
13
|
+
\bibliography{refs}
|
|
14
|
+
\end{document}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [
|
|
10
|
+
"refs.bib"
|
|
11
|
+
],
|
|
12
|
+
"bibdata": [
|
|
13
|
+
"refs"
|
|
14
|
+
],
|
|
15
|
+
"bibtex": {
|
|
16
|
+
"ran": true,
|
|
17
|
+
"databases": [
|
|
18
|
+
"refs.bib"
|
|
19
|
+
],
|
|
20
|
+
"keys": [
|
|
21
|
+
"nl2024"
|
|
22
|
+
],
|
|
23
|
+
"exit": 0,
|
|
24
|
+
"errors": []
|
|
25
|
+
},
|
|
26
|
+
"sha256": {
|
|
27
|
+
"paper.tex": "143d03485e70ffefc525e6f783601c6f71e6650ccf779c77a4d7a8f12ba6075b",
|
|
28
|
+
"refs.bib": "b4c47cdd91aff598589dae3f0f068495af3680e5cdf0bce4747332750812ee1d"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
\documentclass{article}
|
|
2
|
+
% \begin{filecontents*}{refs.bib}
|
|
3
|
+
% @misc{commented2024,
|
|
4
|
+
% title = {The Inline Entry},
|
|
5
|
+
% author = {Doe, Jane},
|
|
6
|
+
% year = {2024},
|
|
7
|
+
% url = {https://example.org/inline}
|
|
8
|
+
% }
|
|
9
|
+
% \end{filecontents*}
|
|
10
|
+
\begin{document}
|
|
11
|
+
Text that cites~\cite{commented2024} and~\cite{stale2020}.
|
|
12
|
+
\bibliographystyle{plain}
|
|
13
|
+
\bibliography{refs}
|
|
14
|
+
\end{document}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [],
|
|
10
|
+
"bibdata": [
|
|
11
|
+
"refs"
|
|
12
|
+
],
|
|
13
|
+
"bibtex": {
|
|
14
|
+
"ran": true,
|
|
15
|
+
"databases": [
|
|
16
|
+
"refs.bib"
|
|
17
|
+
],
|
|
18
|
+
"keys": [
|
|
19
|
+
"stale2020"
|
|
20
|
+
],
|
|
21
|
+
"exit": 0,
|
|
22
|
+
"errors": []
|
|
23
|
+
},
|
|
24
|
+
"sha256": {
|
|
25
|
+
"paper.tex": "a0a0349afca7a2de8b41bdbdf777de14d8e07df5993a351492ca11c858f8c34e",
|
|
26
|
+
"refs.bib": "7a720777755f3dd727c2428f66f06d5f818f367e41fe4c47543aa9f55adfebb4"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
\documentclass{article}
|
|
2
|
+
\begin{filecontents*}[overwrite]{refs.bib}
|
|
3
|
+
@misc{inline2024,
|
|
4
|
+
title = {The Inline Entry},
|
|
5
|
+
author = {Doe, Jane},
|
|
6
|
+
year = {2024},
|
|
7
|
+
url = {https://example.org/inline}
|
|
8
|
+
}
|
|
9
|
+
% @misc{dead2020,
|
|
10
|
+
% title = {The Entry Behind a Percent Sign},
|
|
11
|
+
% author = {Moe, Max},
|
|
12
|
+
% year = {2020},
|
|
13
|
+
% url = {https://example.org/dead}
|
|
14
|
+
% }
|
|
15
|
+
\end{filecontents*}
|
|
16
|
+
\begin{document}
|
|
17
|
+
Text that cites~\cite{inline2024} and~\cite{dead2020}.
|
|
18
|
+
\bibliographystyle{plain}
|
|
19
|
+
\bibliography{refs}
|
|
20
|
+
\end{document}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [
|
|
10
|
+
"refs.bib"
|
|
11
|
+
],
|
|
12
|
+
"bibdata": [
|
|
13
|
+
"refs"
|
|
14
|
+
],
|
|
15
|
+
"bibtex": {
|
|
16
|
+
"ran": true,
|
|
17
|
+
"databases": [
|
|
18
|
+
"refs.bib"
|
|
19
|
+
],
|
|
20
|
+
"keys": [
|
|
21
|
+
"dead2020",
|
|
22
|
+
"inline2024"
|
|
23
|
+
],
|
|
24
|
+
"exit": 2,
|
|
25
|
+
"errors": [
|
|
26
|
+
{
|
|
27
|
+
"message": "You're missing a field name",
|
|
28
|
+
"file": "refs.bib",
|
|
29
|
+
"line": 8
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
"sha256": {
|
|
34
|
+
"paper.tex": "f520de6b9f34e249851913d2e9fc23532603378787b034e08e0b43e2bc111994",
|
|
35
|
+
"refs.bib": "247d564a35129b3fa087ae2541cd51130c1e6875fafe5dad36d694f6a4d1b7fc"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [],
|
|
10
|
+
"bibdata": [
|
|
11
|
+
"refs"
|
|
12
|
+
],
|
|
13
|
+
"bibtex": {
|
|
14
|
+
"ran": true,
|
|
15
|
+
"databases": [
|
|
16
|
+
"refs.bib"
|
|
17
|
+
],
|
|
18
|
+
"keys": [
|
|
19
|
+
"a1",
|
|
20
|
+
"a4",
|
|
21
|
+
"a3",
|
|
22
|
+
"a2unclosed"
|
|
23
|
+
],
|
|
24
|
+
"exit": 2,
|
|
25
|
+
"errors": [
|
|
26
|
+
{
|
|
27
|
+
"message": "I was expecting a `,' or a `}'",
|
|
28
|
+
"file": "refs.bib",
|
|
29
|
+
"line": 4
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
"sha256": {
|
|
34
|
+
"paper.tex": "9ad22f9c50070c2620c5bf8885ed53cee4b0901e7bfdc83c61f70902686ac5e0",
|
|
35
|
+
"refs.bib": "1d33d35cf2e384fc54acf45654493881315c98a4b494b952464668d33924aeec"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
\documentclass{article}
|
|
2
|
+
\begin{filecontents*}[overwrite]{\jobname.bib}
|
|
3
|
+
@misc{jkey, title={J}, author={Doe, J}, year={2024}}
|
|
4
|
+
% @misc{jdead, title={D}, author={Doe, J}, year={2020}}
|
|
5
|
+
\end{filecontents*}
|
|
6
|
+
\begin{document}
|
|
7
|
+
Text~\cite{jkey}.
|
|
8
|
+
\bibliographystyle{plain}\bibliography{\jobname}
|
|
9
|
+
\end{document}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [
|
|
10
|
+
"paper.bib"
|
|
11
|
+
],
|
|
12
|
+
"bibdata": [
|
|
13
|
+
"paper"
|
|
14
|
+
],
|
|
15
|
+
"bibtex": {
|
|
16
|
+
"ran": true,
|
|
17
|
+
"databases": [
|
|
18
|
+
"paper.bib"
|
|
19
|
+
],
|
|
20
|
+
"keys": [
|
|
21
|
+
"jkey"
|
|
22
|
+
],
|
|
23
|
+
"exit": 0,
|
|
24
|
+
"errors": []
|
|
25
|
+
},
|
|
26
|
+
"sha256": {
|
|
27
|
+
"paper.tex": "d68bcaabe9be4cbc07f5a1e672e8cd448e96bc9b5134be350d2906ee48834482",
|
|
28
|
+
"paper.bib": "bc5a9faf4bbdcdf22705c4c8b69d656382ab9d1d03f57388c00631c3aa6ebf70"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@misc{onekey, title={One}, author={A, B}, year={2020}}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": 1,
|
|
3
|
+
"inputs": [
|
|
4
|
+
{
|
|
5
|
+
"path": "paper.tex",
|
|
6
|
+
"role": "body"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"written": [],
|
|
10
|
+
"bibdata": [
|
|
11
|
+
"one",
|
|
12
|
+
"two"
|
|
13
|
+
],
|
|
14
|
+
"bibtex": {
|
|
15
|
+
"ran": true,
|
|
16
|
+
"databases": [
|
|
17
|
+
"one.bib"
|
|
18
|
+
],
|
|
19
|
+
"keys": [
|
|
20
|
+
"onekey"
|
|
21
|
+
],
|
|
22
|
+
"exit": 2,
|
|
23
|
+
"errors": [
|
|
24
|
+
{
|
|
25
|
+
"message": "Illegal, another \\bibdata command",
|
|
26
|
+
"file": "paper.aux",
|
|
27
|
+
"line": 5
|
|
28
|
+
}
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
"sha256": {
|
|
32
|
+
"paper.tex": "f45db61354f01066eb49ab48d240033bea99ed172f04a2c4558daca8640ce796",
|
|
33
|
+
"one.bib": "61cca311ca7d77570ed410fc536c655ba76d36168fc3e56068235a2c4b16f7bf"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@misc{twokey, title={Two}, author={A, B}, year={2020}}
|