No description
Find a file
Joey Yakimowich-Payne bfb29f0ba9
fix(repo): stop gitignoring bun.lock \u2014 unblocks docker compose on fresh clones
User reported docker compose dev stack failing on a fresh clone with:

  COPY package.json bun.lock ./
  target server: failed to compute cache key: '/bun.lock': not found

Root cause: bun.lock was listed in .gitignore (line 12), so the lockfile
existed only on machines where bun install had been run locally. On a
fresh clone, the file is missing entirely, and Dockerfile.dev's
'COPY package.json bun.lock ./' fails because the build context has no
lockfile.

Fix: remove the gitignore entry and commit the existing 987-line lockfile.

This matches the standard practice for every JS package manager (bun,
npm, yarn, pnpm) \u2014 commit the lockfile so installs are reproducible
across machines. The Dockerfile already uses 'bun install --frozen-lockfile'
which depends on this file being present.

Note: the 'pull access denied for paratype/dev' line in the user's error
output is benign cosmetic noise from compose's pull-then-build fallback
flow when image: paratype/dev:local is set (compose tries the registry
first, gets a 403 since the image name is local-only, then falls back
to the local build context). Not an error \u2014 ignore.

After this commit, on a fresh clone:
  git clone <repo>
  docker compose -f docker-compose.dev.yml up
should work without any prior bun install on the host.
2026-04-27 18:11:36 -06:00
.github/workflows chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
.sisyphus fix(chess/ui): narrate.ts \u2014 V3 resolver shapes + 9 missing narrators 2026-04-27 18:04:19 -06:00
docs feat(ui): AttrCombobox declare vs. consume semantics 2026-04-21 13:07:27 -06:00
packages fix(chess/ui): narrate.ts \u2014 V3 resolver shapes + 9 missing narrators 2026-04-27 18:04:19 -06:00
scripts feat(rete): add replay engine + state-hash determinism verifier (P3.3) 2026-04-16 15:25:13 -06:00
.dockerignore infra: docker compose dev + production Dockerfiles 2026-04-27 13:44:17 -06:00
.gitignore fix(repo): stop gitignoring bun.lock \u2014 unblocks docker compose on fresh clones 2026-04-27 18:11:36 -06:00
bun.lock fix(repo): stop gitignoring bun.lock \u2014 unblocks docker compose on fresh clones 2026-04-27 18:11:36 -06:00
docker-compose.dev.yml infra: docker compose dev + production Dockerfiles 2026-04-27 13:44:17 -06:00
docker-compose.yml infra: docker compose dev + production Dockerfiles 2026-04-27 13:44:17 -06:00
Dockerfile.dev infra: docker compose dev + production Dockerfiles 2026-04-27 13:44:17 -06:00
eslint.config.js feat(engine): damage-resistance modifier descriptor 2026-04-18 22:22:31 -06:00
lefthook.yml chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
LICENSE chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
package.json feat(rete): add replay engine + state-hash determinism verifier (P3.3) 2026-04-16 15:25:13 -06:00
playwright.config.ts fix(rete): inject clock into EventLog; use tsc for DTS; fix cycle.test.ts private access; add Playwright worker limit 2026-04-16 18:25:49 -06:00
README.md chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
tsconfig.base.json chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
tsconfig.json chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00
vitest.workspace.ts chore(root): scaffold monorepo — Phase 0 complete 2026-04-16 13:32:21 -06:00

@paratype

A Doorenbos-style Rete II rules engine for TypeScript games, with an authoritative WebSocket chess demo.

Packages

Docs

Getting Started

bun install && bun run check