paperlint 3.0.0 → 3.1.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.
Files changed (73) hide show
  1. package/README.md +179 -180
  2. package/dist/build-engine.d.ts.map +1 -1
  3. package/dist/build-engine.js +6 -2
  4. package/dist/build-engine.js.map +1 -1
  5. package/dist/build.d.ts.map +1 -1
  6. package/dist/build.js +22 -3
  7. package/dist/build.js.map +1 -1
  8. package/dist/cli.d.ts +66 -5
  9. package/dist/cli.d.ts.map +1 -1
  10. package/dist/cli.js +230 -30
  11. package/dist/cli.js.map +1 -1
  12. package/dist/engine.d.ts +9 -0
  13. package/dist/engine.d.ts.map +1 -1
  14. package/dist/engine.js +27 -0
  15. package/dist/engine.js.map +1 -1
  16. package/dist/init.js +1 -1
  17. package/dist/init.js.map +1 -1
  18. package/dist/new-paper.d.ts +8 -1
  19. package/dist/new-paper.d.ts.map +1 -1
  20. package/dist/new-paper.js +50 -15
  21. package/dist/new-paper.js.map +1 -1
  22. package/dist/paper-files.d.ts +30 -8
  23. package/dist/paper-files.d.ts.map +1 -1
  24. package/dist/paper-files.js +56 -29
  25. package/dist/paper-files.js.map +1 -1
  26. package/dist/structure.js +1 -1
  27. package/dist/structure.js.map +1 -1
  28. package/dist/toolchain.d.ts +5 -1
  29. package/dist/toolchain.d.ts.map +1 -1
  30. package/dist/toolchain.js +22 -5
  31. package/dist/toolchain.js.map +1 -1
  32. package/dist/types.d.ts +6 -0
  33. package/dist/types.d.ts.map +1 -1
  34. package/dist/venue-rules.js +1 -1
  35. package/dist/venue-rules.js.map +1 -1
  36. package/docs/configuration.md +48 -4
  37. package/docs/rules.md +29 -25
  38. package/docs/skills.md +80 -0
  39. package/eslint-rules/paper-typography.mjs +47 -7
  40. package/eslint-rules/paper-typography.test.mjs +40 -0
  41. package/eslint-rules/review-frontmatter.schema.json +1 -1
  42. package/fixtures/toolchain-mirror/catalog.txt +1 -0
  43. package/fixtures/toolchain-mirror/install-tl +4 -1
  44. package/fixtures/toolchain-mirror/stub-fmtutil-sys +4 -0
  45. package/fixtures/toolchain-mirror/stub-tlmgr +15 -0
  46. package/package.json +1 -1
  47. package/scripts/mutation-batteries.frozen.json +1 -1
  48. package/src/build-engine.ts +6 -1
  49. package/src/build.harness.mjs +46 -2
  50. package/src/build.ts +27 -5
  51. package/src/cli.harness.mjs +2 -2
  52. package/src/cli.ts +301 -32
  53. package/src/engine.harness.mjs +50 -0
  54. package/src/engine.ts +35 -0
  55. package/src/init.ts +1 -1
  56. package/src/linted-set.test.ts +118 -0
  57. package/src/new-paper.harness.mjs +2 -0
  58. package/src/new-paper.mutations.mjs +0 -14
  59. package/src/new-paper.test.ts +172 -1
  60. package/src/new-paper.ts +84 -17
  61. package/src/paper-files.test.ts +110 -5
  62. package/src/paper-files.ts +93 -37
  63. package/src/paper-settings-commands.test.ts +41 -5
  64. package/src/parse-args.test.ts +48 -0
  65. package/src/rules-off.test.ts +111 -0
  66. package/src/structure.harness.mjs +2 -2
  67. package/src/structure.ts +1 -1
  68. package/src/toolchain.harness.mjs +41 -6
  69. package/src/toolchain.ts +29 -5
  70. package/src/types.ts +6 -0
  71. package/src/venue-rules.test.ts +3 -0
  72. package/src/venue-rules.ts +1 -1
  73. package/templates/paper/paperlint.json +1 -1
package/dist/toolchain.js CHANGED
@@ -32,7 +32,7 @@ import { existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, realpath
32
32
  // eslint-disable-next-line boundaries/dependencies -- legacy I/O, moves behind a port in #76
33
33
  import { homedir, tmpdir } from "node:os";
34
34
  import { join } from "node:path";
35
- import { isExecutable, missingTools, probeTree, supportedPlatform, } from "./engine.js";
35
+ import { isExecutable, missingTools, missingDependencies, probeTree, supportedPlatform, } from "./engine.js";
36
36
  import { declaredUnion, packageNames, } from "./tex-requirements.js";
37
37
  export const CACHE_ENV = "PAPERLINT_TEXLIVE_DIR";
38
38
  export const MIRROR_ENV = "PAPERLINT_CTAN_MIRROR";
@@ -169,13 +169,16 @@ function yearAfter(lines, label) {
169
169
  ? (/^(\d{4})\b/.exec(line.slice(label.length).trim())?.[1] ?? null)
170
170
  : null;
171
171
  }
172
- export const noGaps = (g) => g.packages.length === 0 && g.tools.length === 0;
172
+ export const noGaps = (g) => g.packages.length === 0 &&
173
+ g.tools.length === 0 &&
174
+ g.dependencies.length === 0;
173
175
  /** `acmart (acmart.cls), texcount (texcount)` — a gap named with the file that proves it. */
174
176
  export function describeGaps(g, tex) {
175
177
  const named = (names, proofs) => names.map((n) => `${n} (${(proofs[n] ?? []).join(", ")})`);
176
178
  return [
177
179
  ...named(g.packages, tex.packages),
178
180
  ...named(g.tools, tex.tools),
181
+ ...g.dependencies.map((d) => `${d} (a TeX Live dependency the install left out)`),
179
182
  ].join(", ");
180
183
  }
181
184
  export function formatDuration(ms) {
@@ -205,6 +208,7 @@ export function gapsOf(tree, tex, run) {
205
208
  return {
206
209
  packages: probeTree(tree.bin, tex.packages, run),
207
210
  tools: missingTools(tex.tools, tree.bin),
211
+ dependencies: missingDependencies(tree.bin, run),
208
212
  };
209
213
  }
210
214
  /**
@@ -312,7 +316,8 @@ export function installPackages(io, tree, tex, mirrors) {
312
316
  for (const mirror of mirrors) {
313
317
  if (noGaps(gaps))
314
318
  break;
315
- const want = [...gaps.packages, ...gaps.tools];
319
+ const want = [...gaps.packages, ...gaps.tools, ...gaps.dependencies];
320
+ const repairsBase = gaps.dependencies.length > 0;
316
321
  io.log(` tlmgr: installing ${want.length} package(s) from ${mirror}…`);
317
322
  const r = io.run(join(tree.bin, "tlmgr"), ["--repository", mirror, "install", ...want], quiet(io, TLMGR_MS));
318
323
  const output = `${String(r.stdout ?? "")}\n${String(r.stderr ?? "")}`;
@@ -330,6 +335,10 @@ export function installPackages(io, tree, tex, mirrors) {
330
335
  ],
331
336
  };
332
337
  last = tail(r);
338
+ // A dependency of the base was missing, so the formats it feeds were never built (pdflatex dies
339
+ // before writing a log without them). Build the missing ones now that the package is in.
340
+ if (repairsBase)
341
+ io.run(join(tree.bin, "fmtutil-sys"), ["--missing"], quiet(io, TLMGR_MS));
333
342
  gaps = gapsOf(tree, tex, io.run);
334
343
  }
335
344
  return { ok: true, value: { gaps, tail: last } };
@@ -476,8 +485,16 @@ function report(o, tree) {
476
485
  o.log(binLine(tree));
477
486
  return 0;
478
487
  }
479
- const count = gaps.packages.length + gaps.tools.length;
480
- o.log(`✗ TeX Live ${tree.year} in ${tree.dir} lacks ${count} of ${n} declared packages: ${describeGaps(gaps, o.tex)}`);
488
+ const declared = gaps.packages.length + gaps.tools.length;
489
+ // A dependency the install left out is not one of the venue's declared packages: counted apart,
490
+ // so the line never reads "lacks 0 of 51" followed by a name.
491
+ const what = [
492
+ ...(declared ? [`${declared} of ${n} declared packages`] : []),
493
+ ...(gaps.dependencies.length
494
+ ? [`${gaps.dependencies.length} TeX Live base package(s)`]
495
+ : []),
496
+ ].join(" and ");
497
+ o.log(`✗ TeX Live ${tree.year} in ${tree.dir} lacks ${what}: ${describeGaps(gaps, o.tex)}`);
481
498
  o.log(` run \`npx paperlint toolchain\` to install them`);
482
499
  return 1;
483
500
  }
@@ -1 +1 @@
1
- {"version":3,"file":"toolchain.js","sourceRoot":"","sources":["../src/toolchain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolchain.js","sourceRoot":"","sources":["../src/toolchain.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -56,11 +56,17 @@ export interface Args {
56
56
  paper: string | null;
57
57
  /** `--format tex|md` for `new` and `init --paper`. Validated by the command, not here. */
58
58
  format: string | null;
59
+ /** `--venue <preset>` for `new`: a shipped preset name, or a path to the project's own. */
60
+ venue: string | null;
61
+ /** `--kind <kind>` for `new`: one of the venue preset's kinds. */
62
+ kind: string | null;
59
63
  /** `--hooks=<mode>` — parsed only so it can be REFUSED by name rather than read as a path. */
60
64
  hooksMode: string | null;
61
65
  help?: boolean;
62
66
  /** A flag that turned out to have no value. A non-empty field is a REFUSAL, not a default. */
63
67
  missingValue?: string;
68
+ /** The first flag the parser does not know. Refused, never read as a path. */
69
+ unknownFlag?: string;
64
70
  }
65
71
  /** A finding about the PRESENCE of a file — what an ESLint rule cannot express. */
66
72
  export interface StructureFinding {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -279,7 +279,7 @@ const META = {
279
279
  description: "the venue checks ran: the paper names a venue preset, and it was built and measured",
280
280
  },
281
281
  messages: {
282
- unbuilt: "this paper names the venue `{{venue}}`, but {{file}} does not exist, so its page limit, fonts and format were NOT checked — run `paperlint build` before `paperlint lint`",
282
+ unbuilt: "not built yet, so `{{venue}}`'s page limit, fonts and format are not checked — run `paperlint build`",
283
283
  noPreset: 'this paper names no venue preset yet, so its page limit, fonts and format are not checked — set "extends" in {{file}} (e.g. "paperlint:agenticdev"; see docs/rules.md)',
284
284
  noGeometry: "the build measured no page geometry (banal was not found or failed), so page size, columns, page limits and font sizes were NOT checked — run `paperlint toolchain`, then `paperlint build`",
285
285
  },
@@ -1 +1 @@
1
- {"version":3,"file":"venue-rules.js","sourceRoot":"","sources":["../src/venue-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"venue-rules.js","sourceRoot":"","sources":["../src/venue-rules.ts"],"names":[],"mappings":"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"}
@@ -91,10 +91,25 @@ skills' keys), which are refused here by name. **It merges over the root file:**
91
91
  | `$comment` | a note for humans; ignored |
92
92
 
93
93
  `paperlint new` writes this file from the template (`templates/paper/paperlint.json`, or your
94
- `<papers>/.template/paperlint.json` if you keep one), with `"extends": null` — no venue chosen yet —
95
- and a `$comment` saying what goes there. Until `extends` names a preset (here or in the root file),
96
- `paperlint lint` gives that paper one warning, `pdf/measured`: "this paper names no venue preset
97
- yet … set "extends" in papers/my-paper/paperlint.json".
94
+ `<papers>/.template/paperlint.json` if you keep one). With `--venue` it writes the venue into it:
95
+
96
+ ```sh
97
+ npx paperlint new my-paper --venue agenticdev --kind short # "extends": "paperlint:agenticdev"
98
+ npx paperlint new my-paper --venue ./venues/my-workshop.jsonc # "extends": "../../venues/my-workshop.jsonc"
99
+ ```
100
+
101
+ - A shipped name becomes `paperlint:<name>`; an unknown one exits 2 and lists the shipped presets.
102
+ - A path starts with `./` or `../` and is relative to where you run the command. It is written
103
+ relative to the paper's `paperlint.json`, which is what `extends` is relative to.
104
+ - `--kind` must be one of the preset's kinds, and needs `--venue`. A preset with kinds and no
105
+ `--kind` is written anyway; `new` then says that lint reports `pdf/profile` until `kind` is set.
106
+ - On a terminal without `--venue`, `new` asks for the venue (default: none) and then its kind.
107
+ - An existing `paperlint.json` is never overwritten, so `--venue` for it is refused.
108
+
109
+ Without a venue the file has `"extends": null` and a `$comment` saying what goes there. Until
110
+ `extends` names a preset (here or in the root file), `paperlint lint` gives that paper one warning,
111
+ `pdf/measured`: "this paper names no venue preset yet … set "extends" in
112
+ papers/my-paper/paperlint.json".
98
113
 
99
114
  **Any other key is an error**, in either file, named in the message: `paperlint.json: unknown key
100
115
  "papersdir"`. A misspelt key would otherwise read as "not set", and the setting you meant would
@@ -304,3 +319,32 @@ export default buildConfig({}, texLanguage);
304
319
  That config is the whole config for your papers: it starts with a global ignore of every file its
305
320
  rules are not written for, so `eslint .` with it lints only the paper files. Do not spread it into a
306
321
  config that also lints your JavaScript — that code would be ignored.
322
+
323
+ ### Your own ESLint run over paper files: register paperlint's rules, off
324
+
325
+ If your `eslint.config.mjs` also lints the paper files — for rules of your own, with paperlint's LaTeX
326
+ language — a `% eslint-disable-next-line paper/leading-zero -- why` in a paper fails that run with
327
+ `Definition for rule 'paper/leading-zero' was not found`: your config does not know paperlint's rule
328
+ names. Spread `rulesOff` first:
329
+
330
+ ```js
331
+ // eslint.config.mjs
332
+ import { rulesOff } from "paperlint/bin/paperlint.mjs";
333
+ import { texLanguage } from "paperlint/eslint-rules/latex-language.mjs";
334
+
335
+ export default [
336
+ ...rulesOff(texLanguage),
337
+ { files: ["**/paper.tex"], language: "tex/latex", rules: {/* your rules */} },
338
+ ];
339
+ ```
340
+
341
+ It registers every rule paperlint ships, each turned off (`paperlint lint` is where they run), and
342
+ the LaTeX language as `tex/latex` — use that instead of registering a `tex` plugin of your own, or
343
+ ESLint refuses the config with `Cannot redefine plugin "tex"`, with or without the language. Without
344
+ `texLanguage` it registers the rules only, for a config that lints markdown papers alone.
345
+
346
+ On the files paperlint lints it also turns off ESLint's report of unused disable directives: a
347
+ directive naming a rule that is off suppresses nothing, and would be reported as unused in every such
348
+ run. `paperlint lint` still reports a directive that silences nothing.
349
+
350
+ `rulePlugins(texLanguage)` gives the same plugins without the rule levels, one object per plugin name.
package/docs/rules.md CHANGED
@@ -3,30 +3,30 @@
3
3
  The README lists what each check catches in one line. This page says exactly which file each one
4
4
  reads and when it fails. Errors fail `paperlint lint`; warnings print and do not.
5
5
 
6
- | Rule | Level | Reads | Fails when |
7
- | ------------------------------ | ----- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
8
- | `paper/stages` | error | `PIPELINE-STATUS.md` | a declared stage's PDF is missing, or the `bytes:` it names does not match the file's real size, or a frozen PDF exists that no stage declares |
9
- | `paper/source` | error | `PIPELINE-STATUS.md` | a declared stage has no frozen `.tex` beside its PDF (a commit hash does not count — squash and gc destroy it) |
10
- | `paper/author-list` | error | `paper.tex` → `_build/references.json` | an entry's authors are not those of the version it cites — typically the arXiv preprint's list under a published venue. Checked online by `paperlint build` (DBLP), reported on the entry's own line |
11
- | `paper/research-question` | warn | `paper.tex`, `paper.md`, `PIPELINE-STATUS.md` | a stage is declared and either the scorecard has no `researchQuestion` field, or it has one the paper does not contain. The declared sentence is compared against the source with whitespace collapsed — your words, not a pattern. Advisory, because nothing here can judge whether what you declared _is_ a research question |
12
- | `paper/section-word` | warn | `paper.tex`, `paper.md` | `§` or `\S\ref` instead of the word Section. **Fixable:** `--fix` writes `Section~\ref{…}` / `Section 5` |
13
- | `paper/leading-zero` | warn | `paper.tex`, `paper.md` | a decimal below 1 without its leading zero (`.05` instead of `0.05`, IEEE / ISO 80000-1 style), counted only where the reader sees it — prose, math and table cells, not macro options, column specs, comments, code or tikz. **Fixable** |
14
- | `paper/figure-ref-style` | warn | `paper.tex` | `Fig.~\ref` and `Figure~\ref` mixed in one document; each minority occurrence is reported. **Fixable:** `--fix` writes the majority form |
15
- | `bib/reachable-entry` | warn | `paper.tex` (its `filecontents` bibliography) | an entry has no doi, url or arXiv id — a reader has nothing to follow. Reported on the entry; no fix, the link has to be looked up |
16
- | `paper/cite-exists` | error | `paper.tex` → `_build/references.json` | an entry's doi or arXiv id resolves to nothing, or to a different work. Checked online by `paperlint build`; a work that was merely not found is not a finding |
17
- | `paper/refs-fresh` | error | `paper.tex` → `_build/references.json` | the bibliography changed since the build checked it (its SHA-256 differs) — run `npx paperlint build` |
18
- | `paper/refs-checked` | warn | `paper.tex` → `_build/references.json` | the paper has a bibliography and no build has checked it, or the last build could not (no network) — so the two rules above did not run |
19
- | `tex/future-promise` | warn | `paper.tex` | a camera-ready build still says "will be released" about something already handed over |
20
- | `tex/acm-frontmatter-override` | error | `paper.tex` | an `acmart` build overrides ACM's front-matter commands and drops template elements from page 1 |
21
- | `review/frontmatter` | error | `reviews/*.md` | the review's frontmatter fails paperlint's JSON Schema — a `findings` record without `id`/`status`, an unknown field, or an **open** finding with no `cause` (`skill-defect` · `missing-skill` · `hook` · `rule`). A review with no `findings` key is not checked for findings |
22
- | `sibling/frontmatter` | warn | `siblings/*.md` (not `README.md`) | a sibling card's frontmatter has no `read:` saying how much of the competing paper was read (`full` · `abstract` · `none`) |
23
- | `pdf/fresh` | error | `paper.tex` → `_build/paper.facts.json` | the paper names a venue and the facts cannot be judged: not JSON, a schema other than 2, or they describe a PDF that is gone or differs from the one on disk (its SHA-256) |
24
- | `pdf/profile` | error | `paper.tex` → `paperlint.json` | `paperlint.json` is not JSON or has an unknown key, its `extends` does not resolve (not found, a cycle, a chain longer than four, a preset that fails the schema, an npm name), it names no `kind` while the preset has kinds, or names a kind the preset does not have |
25
- | `pdf/fonts` | error | `paper.tex` → `_build/paper.facts.json` | a font the pages draw is Type 3 or not embedded, or no font starts with the family the venue preset names for body text (`fonts_text`) or headings (`fonts_title`) |
26
- | `pdf/geometry` | error | `paper.tex` → `_build/paper.facts.json` | the page width or height is more than `dimTol` (default 0.05 in) off the preset's, or the column count differs |
27
- | `pdf/limits` | error | `paper.tex` → `_build/paper.facts.json` | body or reference pages exceed the limit of the paper's kind, or the reference font size is outside the preset's range widened by `body_pt_tol` |
28
- | `pdf/body-size` | warn | `paper.tex` → `_build/paper.facts.json` | the body font size is more than `body_pt_tol` off the preset's. A warning: banal measures the mode of the rendered text, not the declared size (9.30 pt measured at a declared 9) |
29
- | `pdf/measured` | warn | `paper.tex` → `_build/paper.facts.json` | the paper's `paperlint.json` names no venue preset yet; or it names one and there are no facts (it was not built), or the facts carry no page geometry (banal was not found) — so the checks above did not run |
6
+ | Rule | Level | Reads | Fails when |
7
+ | ------------------------------ | ----- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
8
+ | `paper/stages` | error | `PIPELINE-STATUS.md` | a declared stage's PDF is missing, or the `bytes:` it names does not match the file's real size, or a frozen PDF exists that no stage declares |
9
+ | `paper/source` | error | `PIPELINE-STATUS.md` | a declared stage has no frozen `.tex` beside its PDF (a commit hash does not count — squash and gc destroy it) |
10
+ | `paper/author-list` | error | `paper.tex` → `_build/references.json` | an entry's authors are not those of the version it cites — typically the arXiv preprint's list under a published venue. Checked online by `paperlint build` (DBLP), reported on the entry's own line |
11
+ | `paper/research-question` | warn | `paper.tex`, `paper.md`, `PIPELINE-STATUS.md` | a stage is declared and either the scorecard has no `researchQuestion` field, or it has one the paper does not contain. The declared sentence is compared against the source with whitespace collapsed — your words, not a pattern. Advisory, because nothing here can judge whether what you declared _is_ a research question |
12
+ | `paper/section-word` | warn | `paper.tex`, `paper.md` | `§` or `\S\ref` instead of the word Section. **Fixable:** `--fix` writes `Section~\ref{…}` / `Section 5` |
13
+ | `paper/leading-zero` | warn | `paper.tex`, `paper.md` | a decimal below 1 without its leading zero (`.05` instead of `0.05`, IEEE / ISO 80000-1 style), counted only where the reader sees it — prose, math and table cells, not macro options, column specs, comments, code or tikz. A number right after `¶` or `§` (`¶¶.42`) is a paragraph designator and is not reported; in a paragraph that cites numbers that way, another bare decimal is reported without a fix, with the zero as a suggestion. **Fixable** |
14
+ | `paper/figure-ref-style` | warn | `paper.tex` | `Fig.~\ref` and `Figure~\ref` mixed in one document; each minority occurrence is reported. **Fixable:** `--fix` writes the majority form |
15
+ | `bib/reachable-entry` | warn | `paper.tex` (its `filecontents` bibliography) | an entry has no doi, url or arXiv id — a reader has nothing to follow. Reported on the entry; no fix, the link has to be looked up |
16
+ | `paper/cite-exists` | error | `paper.tex` → `_build/references.json` | an entry's doi or arXiv id resolves to nothing, or to a different work. Checked online by `paperlint build`; a work that was merely not found is not a finding |
17
+ | `paper/refs-fresh` | error | `paper.tex` → `_build/references.json` | the bibliography changed since the build checked it (its SHA-256 differs) — run `npx paperlint build` |
18
+ | `paper/refs-checked` | warn | `paper.tex` → `_build/references.json` | the paper has a bibliography and no build has checked it, or the last build could not (no network) — so the two rules above did not run |
19
+ | `tex/future-promise` | warn | `paper.tex` | a camera-ready build still says "will be released" about something already handed over |
20
+ | `tex/acm-frontmatter-override` | error | `paper.tex` | an `acmart` build overrides ACM's front-matter commands and drops template elements from page 1 |
21
+ | `review/frontmatter` | error | `reviews/*.md` | the review's frontmatter fails paperlint's JSON Schema — a `findings` record without `id`/`status`, an unknown field, or an **open** finding with no `cause` (`skill-defect` · `missing-skill` · `hook` · `rule`). A review with no `findings` key is not checked for findings |
22
+ | `sibling/frontmatter` | warn | `siblings/*.md` (not `README.md`) | a sibling card's frontmatter has no `read:` saying how much of the competing paper was read (`full` · `abstract` · `none`) |
23
+ | `pdf/fresh` | error | `paper.tex` → `_build/paper.facts.json` | the paper names a venue and the facts cannot be judged: not JSON, a schema other than 2, or they describe a PDF that is gone or differs from the one on disk (its SHA-256) |
24
+ | `pdf/profile` | error | `paper.tex` → `paperlint.json` | `paperlint.json` is not JSON or has an unknown key, its `extends` does not resolve (not found, a cycle, a chain longer than four, a preset that fails the schema, an npm name), it names no `kind` while the preset has kinds, or names a kind the preset does not have |
25
+ | `pdf/fonts` | error | `paper.tex` → `_build/paper.facts.json` | a font the pages draw is Type 3 or not embedded, or no font starts with the family the venue preset names for body text (`fonts_text`) or headings (`fonts_title`) |
26
+ | `pdf/geometry` | error | `paper.tex` → `_build/paper.facts.json` | the page width or height is more than `dimTol` (default 0.05 in) off the preset's, or the column count differs |
27
+ | `pdf/limits` | error | `paper.tex` → `_build/paper.facts.json` | body or reference pages exceed the limit of the paper's kind, or the reference font size is outside the preset's range widened by `body_pt_tol` |
28
+ | `pdf/body-size` | warn | `paper.tex` → `_build/paper.facts.json` | the body font size is more than `body_pt_tol` off the preset's. A warning: banal measures the mode of the rendered text, not the declared size (9.30 pt measured at a declared 9) |
29
+ | `pdf/measured` | warn | `paper.tex` → `_build/paper.facts.json` | the paper's `paperlint.json` names no venue preset yet; or it names one and there are no facts (it was not built), or the facts carry no page geometry (banal was not found) — so the checks above did not run |
30
30
 
31
31
  Optional rules — off unless you turn them on in the `rules` setting, because only some venues need
32
32
  them — are on their own page: [`optional-rules.md`](optional-rules.md). Today there is one,
@@ -200,7 +200,11 @@ rules, which is why they list it above. Markdown papers are deprecated and being
200
200
 
201
201
  ## The scorecard's `bytes:` and `sourceBytes:`
202
202
 
203
- A stage in `PIPELINE-STATUS.md` looks like this:
203
+ **When you submit,** copy the PDF and `paper.tex` you sent into the paper's `versions/` folder and
204
+ record the stage in the front matter of `PIPELINE-STATUS.md` (the paper's scorecard). From then on
205
+ `paper/stages` fails if that PDF goes missing or changes size, and `paper/source` if its source was
206
+ not kept. Today you record it by hand; a command for it is planned
207
+ ([#100](https://github.com/zernie/paperlint/issues/100)). A stage looks like this:
204
208
 
205
209
  ```yaml
206
210
  ---
package/docs/skills.md ADDED
@@ -0,0 +1,80 @@
1
+ # Skills
2
+
3
+ Every skill paperlint ships, by the stages of [the pipeline](../README.md#-the-pipeline). Each line
4
+ says what you get; the skill's name is the second column.
5
+
6
+ You do not call them by name: you ask Claude Code for the thing ("is this idea worth a paper?"), and
7
+ the skill whose description matches starts. `paperlint init` installs them into
8
+ `.claude/skills/` ([`install.md`](install.md)). Each one's full instructions are its
9
+ `skills/<name>/SKILL.md`.
10
+
11
+ `test/skills-catalog.test.ts` fails when this list and the shipped `skills/` directory disagree.
12
+
13
+ ## Across every stage
14
+
15
+ | you get | skill |
16
+ | ----------------------------------------------------------------------------------------- | ---------------- |
17
+ | a guided path through the stages: what to do now, and which skill does it | `paper-pipeline` |
18
+ | where the paper stands, measured: pages from the real build, what is checked, what blocks | `paper-status` |
19
+
20
+ ## 1 · Idea
21
+
22
+ | you get | skill |
23
+ | --------------------------------------------------------------------------------------- | ----------------------- |
24
+ | a go / no-go on the idea, with the reason and the smallest result that makes a paper | `research-ideate` |
25
+ | who already works on it, dated against your deadline, and what you can still claim | `map-prior-work` |
26
+ | one close competitor read in full: is yours "just X?", and the sentence that answers it | `analyze-sibling-paper` |
27
+ | candidate mechanisms from other fields, when the work needs a design, not a measurement | `sweep-design-space` |
28
+
29
+ ## 2 · Venue
30
+
31
+ | you get | skill |
32
+ | ------------------------------------------------------------------------------ | ----------------------- |
33
+ | a ranked list of venues that fit: deadline, page limit, indexing, remote talks | `find-venue` |
34
+ | what papers accepted at that venue do well, and what would make yours stronger | `study-accepted-papers` |
35
+ | the deadlines worked backwards, as events in your calendar | `plan-paper-timeline` |
36
+
37
+ ## 3 · Study
38
+
39
+ | you get | skill |
40
+ | ------------------------------------------------------------------------------------------ | ----------------- |
41
+ | a study design with honest statistics, and a reproduction artifact that checks its numbers | `build-benchmark` |
42
+
43
+ ## 4 · Draft
44
+
45
+ | you get | skill |
46
+ | ---------------------------------------------------------------------------------- | ---------------- |
47
+ | a first draft from your results: claims sized, threats to validity written | `draft-paper` |
48
+ | an outline where each section follows from the one before | `argument-arc` |
49
+ | a cut plan: what to cut, merge or move to the appendix | `tighten-paper` |
50
+ | what a reader with no context understood from your last edit, sentence by sentence | `cold-read-diff` |
51
+ | the compiled pages as images, to read on a screen or a phone | `render-paper` |
52
+
53
+ ## 5 · Review
54
+
55
+ | you get | skill |
56
+ | ----------------------------------------------------------------------------- | -------------------------- |
57
+ | a writing grade, with the sentence to fix for each point | `grade-paper-writing` |
58
+ | every cited work confirmed to exist, with the right authors, title and year | `verify-citations` |
59
+ | one hostile review: overclaims, missing baselines, holes in the method | `paper-adversarial-review` |
60
+ | a simulated program committee: several reviews, a decision and the must-fixes | `pc-panel-review` |
61
+ | ready or not ready to submit, worst problem first | `harden-paper` |
62
+
63
+ ## 6 · Submit
64
+
65
+ | you get | skill |
66
+ | ------------------------------------------------------------------- | --------------------- |
67
+ | the submission, step by step: anonymization, the form, the artifact | `submit-paper` |
68
+ | the reproduction artifact uploaded to OSF for anonymous review | `osf-artifact-upload` |
69
+
70
+ ## 7 · Camera-ready
71
+
72
+ | you get | skill |
73
+ | ------------------------------------------------------------------------------------------ | -------------- |
74
+ | the final version: authors back, the artifact public with a DOI, any disclosure done first | `camera-ready` |
75
+
76
+ ## 8 · Extend
77
+
78
+ | you get | skill |
79
+ | ------------------------------------------------------------- | -------------- |
80
+ | a plan for the next, stronger paper built on the accepted one | `extend-paper` |