Contributing
Local workflow
mise install
pnpm install --frozen-lockfile
pnpm verify
pnpm docs:buildpnpm verify is the library gate: Biome, Markdown linting, strict TypeScript 7, coverage, the dual
ESM/CommonJS build, publint, Are The Types Wrong, a packed-tarball content check and a
clean-consumer install against npmjs for each supported CanvasEngine release. pnpm docs:build
validates and renders the Sourcey site.
Branch from main, make a focused Conventional Commit, open a pull request, and keep the branch
current by merging main into it when necessary. The protected path uses automated checks rather
than a routine human approval; merge commits preserve the constituent history. Do not hand-edit
versions or CHANGELOG.md: Release Please owns them.
A new patch needs a scenario in tests/support/scenarios.ts that reproduces the defect on the real
CanvasEngine class, and a matrix test that shows it failing without the patch. Read the repository
contribution guide and
agent instructions first.