paperlint 9.0.1 → 10.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 (196) hide show
  1. package/CONTRIBUTING.md +16 -4
  2. package/README.md +68 -128
  3. package/dist/build.d.ts +1 -1
  4. package/dist/build.js +1 -1
  5. package/dist/cli.d.ts +5 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +52 -6
  8. package/dist/cli.js.map +1 -1
  9. package/dist/domain/layout-tree.d.ts +19 -0
  10. package/dist/domain/layout-tree.d.ts.map +1 -0
  11. package/dist/domain/layout-tree.js +32 -0
  12. package/dist/domain/layout-tree.js.map +1 -0
  13. package/dist/domain/lookup-cache.d.ts +2 -2
  14. package/dist/domain/lookup-cache.js +2 -2
  15. package/dist/domain/paper-layout.d.ts +81 -0
  16. package/dist/domain/paper-layout.d.ts.map +1 -0
  17. package/dist/domain/paper-layout.js +259 -0
  18. package/dist/domain/paper-layout.js.map +1 -0
  19. package/dist/domain/repro-layout.d.ts +80 -0
  20. package/dist/domain/repro-layout.d.ts.map +1 -0
  21. package/dist/domain/repro-layout.js +247 -0
  22. package/dist/domain/repro-layout.js.map +1 -0
  23. package/dist/domain/scaffold-layout.d.ts +28 -0
  24. package/dist/domain/scaffold-layout.d.ts.map +1 -0
  25. package/dist/domain/scaffold-layout.js +81 -0
  26. package/dist/domain/scaffold-layout.js.map +1 -0
  27. package/dist/eslint-rules/js-needs-reason.d.ts +55 -0
  28. package/dist/eslint-rules/js-needs-reason.d.ts.map +1 -0
  29. package/dist/eslint-rules/js-needs-reason.js +35 -0
  30. package/dist/eslint-rules/js-needs-reason.js.map +1 -0
  31. package/dist/eslint-rules/prereg-coverage.d.ts +98 -0
  32. package/dist/eslint-rules/prereg-coverage.d.ts.map +1 -0
  33. package/dist/eslint-rules/prereg-coverage.js +274 -0
  34. package/dist/eslint-rules/prereg-coverage.js.map +1 -0
  35. package/dist/folder-layout-hook.d.ts +21 -0
  36. package/dist/folder-layout-hook.d.ts.map +1 -0
  37. package/dist/folder-layout-hook.js +117 -0
  38. package/dist/folder-layout-hook.js.map +1 -0
  39. package/dist/folder-layout-rule.d.ts +22 -0
  40. package/dist/folder-layout-rule.d.ts.map +1 -0
  41. package/dist/folder-layout-rule.js +107 -0
  42. package/dist/folder-layout-rule.js.map +1 -0
  43. package/dist/init.js +1 -1
  44. package/dist/init.js.map +1 -1
  45. package/dist/new-paper.d.ts +4 -1
  46. package/dist/new-paper.d.ts.map +1 -1
  47. package/dist/new-paper.js +40 -6
  48. package/dist/new-paper.js.map +1 -1
  49. package/dist/package-dirs.d.ts +6 -0
  50. package/dist/package-dirs.d.ts.map +1 -1
  51. package/dist/package-dirs.js +6 -0
  52. package/dist/package-dirs.js.map +1 -1
  53. package/dist/references.d.ts +1 -1
  54. package/dist/references.d.ts.map +1 -1
  55. package/dist/references.js +2 -2
  56. package/dist/references.js.map +1 -1
  57. package/dist/repro-layout-rule.d.ts +16 -0
  58. package/dist/repro-layout-rule.d.ts.map +1 -0
  59. package/dist/repro-layout-rule.js +81 -0
  60. package/dist/repro-layout-rule.js.map +1 -0
  61. package/dist/skills/label-agent-runs/scripts/labels-commands.d.ts +13 -0
  62. package/dist/skills/label-agent-runs/scripts/labels.d.ts +2 -0
  63. package/dist/skills/run-agent-grid/scripts/grid-guard-commands.d.ts +20 -0
  64. package/dist/skills/run-agent-grid/scripts/grid-guard.d.ts +2 -0
  65. package/docs/ci.md +60 -0
  66. package/docs/configuration.md +2 -0
  67. package/docs/e2e.md +2 -2
  68. package/docs/install.md +20 -16
  69. package/docs/layout.md +154 -0
  70. package/docs/optional-rules.md +5 -4
  71. package/docs/references.md +5 -2
  72. package/docs/rules/paper/allowed-files-only.md +192 -0
  73. package/docs/rules/repro/allowed-files-only.md +128 -0
  74. package/docs/rules/study/declare-sample.md +146 -0
  75. package/docs/rules.md +53 -50
  76. package/docs/skills.md +8 -3
  77. package/docs/testing.md +13 -0
  78. package/docs/venues.md +94 -0
  79. package/eslint-rules/js-needs-reason.test.ts +141 -0
  80. package/eslint-rules/js-needs-reason.ts +77 -0
  81. package/eslint-rules/prereg-coverage.test.ts +448 -0
  82. package/eslint-rules/prereg-coverage.ts +419 -0
  83. package/eslint.config.mjs +22 -2
  84. package/lib/skill-trigger-cases.harness.mjs +51 -5
  85. package/lib/skill-trigger-cases.mjs +53 -15
  86. package/lib/skill-trigger-cases.test.ts +211 -0
  87. package/package.json +8 -4
  88. package/plugin/hooks/hooks.json +9 -0
  89. package/scripts/coverage-config.test.ts +5 -3
  90. package/skills/analyze-sibling-paper/SKILL.md +2 -2
  91. package/skills/analyze-sibling-paper/SKILL.md.spec.ts +1 -1
  92. package/skills/build-benchmark/SKILL.md +17 -1
  93. package/skills/build-benchmark/SKILL.md.spec.ts +16 -0
  94. package/skills/build-label-page/SKILL.md +120 -0
  95. package/skills/build-label-page/SKILL.md.spec.ts +131 -0
  96. package/skills/build-label-page/build-label-page.eval.mjs +15 -0
  97. package/skills/build-label-page/build-label-page.test.ts +959 -0
  98. package/skills/build-label-page/references/checklist.md +148 -0
  99. package/skills/build-label-page/references/example-generator.py +803 -0
  100. package/skills/find-venue/SKILL.md +5 -3
  101. package/skills/find-venue/SKILL.md.spec.ts +4 -2
  102. package/skills/grade-paper-writing/SKILL.md +7 -7
  103. package/skills/grade-paper-writing/SKILL.md.spec.ts +6 -6
  104. package/skills/label-agent-runs/SKILL.md +103 -0
  105. package/skills/label-agent-runs/SKILL.md.spec.ts +106 -0
  106. package/skills/label-agent-runs/label-agent-runs.eval.ts +55 -0
  107. package/skills/label-agent-runs/label-agent-runs.harness.ts +123 -0
  108. package/skills/label-agent-runs/references/formats.md +64 -0
  109. package/skills/label-agent-runs/scripts/labels-commands.js +13 -0
  110. package/skills/label-agent-runs/scripts/labels-commands.ts +13 -0
  111. package/skills/label-agent-runs/scripts/labels.js +396 -0
  112. package/skills/label-agent-runs/scripts/labels.test.ts +538 -0
  113. package/skills/label-agent-runs/scripts/labels.ts +501 -0
  114. package/skills/map-prior-work/SKILL.md +2 -2
  115. package/skills/map-prior-work/SKILL.md.spec.ts +1 -1
  116. package/skills/paper-pipeline/SKILL.md +15 -6
  117. package/skills/paper-pipeline/SKILL.md.spec.ts +14 -5
  118. package/skills/paper-pipeline/grade-paper-writing-ablation.eval.mjs +19 -9
  119. package/skills/paper-pipeline/references/acceptance-gate.md +19 -19
  120. package/skills/paper-pipeline/references/artifact-checklist.md +5 -0
  121. package/skills/paper-pipeline/references/pipeline-status-template.md +30 -1
  122. package/skills/paper-pipeline/repro/2026-08-07-fork-check.log +1 -1
  123. package/skills/paper-pipeline/repro/2026-08-07-fork-check2.log +1 -1
  124. package/skills/paper-pipeline/repro/2026-08-07-language-eval-pilot.log +1 -1
  125. package/skills/paper-pipeline/repro/2026-08-07-language-eval-raw.log +1 -1
  126. package/skills/paper-pipeline/repro/2026-08-08-framing-vs-vocabulary-oracle.log +48 -48
  127. package/skills/paper-pipeline/repro/2026-08-08-grade-paper-writing-ablation-A6-oracle.log +8 -8
  128. package/skills/paper-pipeline/repro/2026-08-08-grade-paper-writing-ablation-oracle.log +48 -48
  129. package/skills/paper-pipeline/repro/2026-08-08-parent-replication-gpw.log +2 -2
  130. package/skills/paper-pipeline/repro/2026-08-08-parent-replication.mjs +3 -3
  131. package/skills/paper-pipeline/repro/2026-10-13-grade-paper-writing-ablation-preflight-after.log +81 -0
  132. package/skills/paper-pipeline/repro/2026-10-13-grade-paper-writing-ablation-preflight-before.log +81 -0
  133. package/skills/paper-pipeline/repro/2026-10-13-grade-paper-writing-ablation-setupdiff.log +59 -0
  134. package/skills/paper-pipeline/repro/2026-10-13-grade-paper-writing-trigger.jsonl +1 -0
  135. package/skills/paper-pipeline/repro/2026-10-13-grade-paper-writing-trigger.log +22 -0
  136. package/skills/paper-pipeline/repro/README.md +4 -0
  137. package/skills/paper-pipeline/scripts/extract-ref-facts.harness.mjs +2 -2
  138. package/skills/paper-pipeline/scripts/extract-ref-facts.mjs +2 -2
  139. package/skills/paper-pipeline/scripts/extract-ref-facts.test.mjs +4 -2
  140. package/skills/paper-pipeline/scripts/generated-code.harness.mjs +7 -2
  141. package/skills/paper-pipeline/scripts/generated-code.mjs +8 -4
  142. package/skills/paper-pipeline/scripts/generated-code.test.ts +15 -1
  143. package/skills/paper-status/SKILL.md +2 -2
  144. package/skills/paper-status/SKILL.md.spec.ts +1 -1
  145. package/skills/run-agent-grid/SKILL.md +181 -0
  146. package/skills/run-agent-grid/SKILL.md.spec.ts +184 -0
  147. package/skills/run-agent-grid/references/failure-catalog.md +36 -0
  148. package/skills/run-agent-grid/references/registry-and-ledger.md +142 -0
  149. package/skills/run-agent-grid/run-agent-grid.eval.ts +59 -0
  150. package/skills/run-agent-grid/run-agent-grid.harness.ts +115 -0
  151. package/skills/run-agent-grid/scripts/grid-guard-commands.js +18 -0
  152. package/skills/run-agent-grid/scripts/grid-guard-commands.ts +21 -0
  153. package/skills/run-agent-grid/scripts/grid-guard.js +700 -0
  154. package/skills/run-agent-grid/scripts/grid-guard.test.ts +1090 -0
  155. package/skills/run-agent-grid/scripts/grid-guard.ts +869 -0
  156. package/skills/study-accepted-papers/SKILL.md +163 -161
  157. package/skills/study-accepted-papers/SKILL.md.spec.ts +167 -165
  158. package/skills/study-accepted-papers/references/base-rates.md +69 -0
  159. package/skills/study-accepted-papers/references/mechanisms.md +181 -0
  160. package/skills/verify-citations/SKILL.md +2 -2
  161. package/skills/verify-citations/SKILL.md.spec.ts +1 -1
  162. package/src/build.ts +1 -1
  163. package/src/cli.harness.mjs +42 -0
  164. package/src/cli.test.ts +90 -6
  165. package/src/cli.ts +78 -5
  166. package/src/domain/layout-tree.test.ts +32 -0
  167. package/src/domain/layout-tree.ts +47 -0
  168. package/src/domain/lookup-cache.ts +2 -2
  169. package/src/domain/paper-layout.test.ts +264 -0
  170. package/src/domain/paper-layout.ts +336 -0
  171. package/src/domain/repro-layout.test.ts +222 -0
  172. package/src/domain/repro-layout.ts +311 -0
  173. package/src/domain/scaffold-layout.ts +104 -0
  174. package/src/folder-layout-hook.test.ts +214 -0
  175. package/src/folder-layout-hook.ts +141 -0
  176. package/src/folder-layout-rule.test.ts +235 -0
  177. package/src/folder-layout-rule.ts +151 -0
  178. package/src/hooks-settings.harness.ts +9 -8
  179. package/src/init.ts +1 -1
  180. package/src/layout-docs.test.ts +52 -0
  181. package/src/new-paper.harness.mjs +23 -1
  182. package/src/new-paper.test.ts +299 -6
  183. package/src/new-paper.ts +51 -5
  184. package/src/package-dirs.ts +8 -0
  185. package/src/paper-files.test.ts +9 -6
  186. package/src/references.test.ts +5 -5
  187. package/src/references.ts +2 -2
  188. package/src/repro-layout-rule.test.ts +114 -0
  189. package/src/repro-layout-rule.ts +121 -0
  190. package/src/rule-cases.test.ts +98 -0
  191. package/templates/paper/PIPELINE-STATUS.md +41 -7
  192. package/tsconfig.base.json +22 -0
  193. package/tsconfig.json +6 -24
  194. package/tsconfig.pkg.json +3 -1
  195. package/tsconfig.skills.json +14 -0
  196. package/tsconfig.src.json +12 -0
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2023",
4
+ "module": "NodeNext",
5
+ "moduleResolution": "NodeNext",
6
+ "lib": ["ES2023"],
7
+ "declaration": true,
8
+ "declarationMap": true,
9
+ "sourceMap": true,
10
+ "strict": true,
11
+ "noUncheckedIndexedAccess": true,
12
+ "exactOptionalPropertyTypes": true,
13
+ "skipLibCheck": true,
14
+ "verbatimModuleSyntax": false,
15
+ "types": ["node"],
16
+ "allowImportingTsExtensions": true,
17
+ "rewriteRelativeImportExtensions": true,
18
+ "noImplicitOverride": true,
19
+ "noImplicitReturns": true,
20
+ "noFallthroughCasesInSwitch": true
21
+ }
22
+ }
package/tsconfig.json CHANGED
@@ -1,26 +1,8 @@
1
1
  {
2
- "compilerOptions": {
3
- "target": "ES2023",
4
- "module": "NodeNext",
5
- "moduleResolution": "NodeNext",
6
- "lib": ["ES2023"],
7
- "outDir": "dist",
8
- "rootDir": "src",
9
- "declaration": true,
10
- "declarationMap": true,
11
- "sourceMap": true,
12
- "strict": true,
13
- "noUncheckedIndexedAccess": true,
14
- "exactOptionalPropertyTypes": true,
15
- "skipLibCheck": true,
16
- "verbatimModuleSyntax": false,
17
- "types": ["node"],
18
- "allowImportingTsExtensions": true,
19
- "rewriteRelativeImportExtensions": true,
20
- "noImplicitOverride": true,
21
- "noImplicitReturns": true,
22
- "noFallthroughCasesInSwitch": true
23
- },
24
- "include": ["src/**/*.ts"],
25
- "exclude": ["src/**/*.test.ts", "src/**/*.harness.ts"]
2
+ "files": [],
3
+ "references": [
4
+ { "path": "./tsconfig.pkg.json" },
5
+ { "path": "./tsconfig.src.json" },
6
+ { "path": "./tsconfig.skills.json" }
7
+ ]
26
8
  }
package/tsconfig.pkg.json CHANGED
@@ -1,8 +1,10 @@
1
1
  {
2
- "extends": "./tsconfig.json",
2
+ "extends": "./tsconfig.base.json",
3
3
  "compilerOptions": {
4
+ "composite": true,
4
5
  "rootDir": ".",
5
6
  "outDir": "dist",
7
+ "tsBuildInfoFile": "dist/.tsbuildinfo/pkg.tsbuildinfo",
6
8
  "resolveJsonModule": true
7
9
  },
8
10
  "include": ["lib/*.ts", "eslint-rules/*.ts", "eslint-rules/*.json"],
@@ -0,0 +1,14 @@
1
+ {
2
+ "extends": "./tsconfig.base.json",
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "rootDir": "skills",
6
+ "outDir": "skills",
7
+ "declarationDir": "dist/skills",
8
+ "declarationMap": false,
9
+ "sourceMap": false,
10
+ "tsBuildInfoFile": "dist/.tsbuildinfo/skills.tsbuildinfo"
11
+ },
12
+ "include": ["skills/*/scripts/*.ts"],
13
+ "exclude": ["**/*.test.ts", "**/*.harness.ts", "**/*.d.ts"]
14
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "extends": "./tsconfig.base.json",
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "rootDir": "src",
6
+ "outDir": "dist",
7
+ "tsBuildInfoFile": "dist/.tsbuildinfo/src.tsbuildinfo"
8
+ },
9
+ "include": ["src/**/*.ts"],
10
+ "exclude": ["src/**/*.test.ts", "src/**/*.harness.ts"],
11
+ "references": [{ "path": "./tsconfig.pkg.json" }]
12
+ }