What to build
CONTRIBUTING.md describes the build and CI in two ways that the repository does not match. Both
are in the same paragraph (lines 18-34) and both are checkable in one command each.
1. It names a build tool this project does not use. Line 23 reads:
bun run build # esbuild / tsc emit
There is no esbuild here. package.json's build script is tsc -p tsconfig.build.json, esbuild is
absent from both dependencies and devDependencies, and grep -c esbuild bun.lock returns 0.
tsconfig.build.json is a plain tsc emit config (noEmit: false, outDir: "dist", rootDir: "src",
declaration: true, sourceMap: true, excluding src/**/*.test.ts). The comment should say what the
build actually is.
2. It claims CI runs the same four steps. It does not run the fourth. Line 33 reads:
The CI workflow (.github/workflows/ci.yml) runs the same four steps on every push and PR.
.github/workflows/ci.yml's job is named bun (lint + typecheck + test) and its steps are
bun install, bun run lint, bun run typecheck, then the test legs. The only bun run build in
that workflow is at the build dummy/web fixture step, which builds the fixture, not this
package. So bun run build is a local-only gate, and a contributor reading this paragraph would
believe a broken build is caught by CI when it is not.
Fix the prose to describe what is actually there. Do not add esbuild, and do not add a build step to
CI to make the sentence true — either would be a much larger change than this issue asks for. If the
missing CI build step is worth having, that is a separate issue worth filing on its own merits.
Acceptance criteria
AFK / HITL
AFK — documentation only, no runtime behaviour, no human precondition.
Affected paths
CONTRIBUTING.md
Blocked by
None, can start immediately.
Verified against
a277712
What to build
CONTRIBUTING.mddescribes the build and CI in two ways that the repository does not match. Bothare in the same paragraph (lines 18-34) and both are checkable in one command each.
1. It names a build tool this project does not use. Line 23 reads:
There is no esbuild here.
package.json's build script istsc -p tsconfig.build.json, esbuild isabsent from both
dependenciesanddevDependencies, andgrep -c esbuild bun.lockreturns 0.tsconfig.build.jsonis a plain tsc emit config (noEmit: false,outDir: "dist",rootDir: "src",declaration: true,sourceMap: true, excludingsrc/**/*.test.ts). The comment should say what thebuild actually is.
2. It claims CI runs the same four steps. It does not run the fourth. Line 33 reads:
.github/workflows/ci.yml's job is namedbun (lint + typecheck + test)and its steps arebun install,bun run lint,bun run typecheck, then the test legs. The onlybun run buildinthat workflow is at the
build dummy/web fixturestep, which builds the fixture, not thispackage. So
bun run buildis a local-only gate, and a contributor reading this paragraph wouldbelieve a broken build is caught by CI when it is not.
Fix the prose to describe what is actually there. Do not add esbuild, and do not add a build step to
CI to make the sentence true — either would be a much larger change than this issue asks for. If the
missing CI build step is worth having, that is a separate issue worth filing on its own merits.
Acceptance criteria
grep -n esbuild CONTRIBUTING.mdreturns nothingbun run buildline's comment names tsc, matchingpackage.json'sbuildscriptbun run buildfor this package; it reflectsthat
ci.ymlruns lint, typecheck and the test legs, and that the workflow's ownbun run buildtargets thedummy/webfixturepackage.json,tsconfig.build.json, or.github/workflows/ci.ymlbun run lint,bun run typecheck,bun testAFK / HITL
AFK — documentation only, no runtime behaviour, no human precondition.
Affected paths
CONTRIBUTING.md
Blocked by
None, can start immediately.
Verified against
a277712