#!/bin/sh # Neuron Technologies pre-push guard. # Warns on bun version drift and blocks pushes that break the build. set -e BUN_EXPECTED=$(bun -e 'const pkg = await Bun.file("package.json").json(); console.log(pkg.packageManager?.split("@")[1] ?? "")') if [ -n "$BUN_EXPECTED" ]; then if ! bun -e "import { semver } from 'bun'; if (!semver.satisfies(process.versions.bun, '^$BUN_EXPECTED')) process.exit(1)" 2>/dev/null; then echo "WARNING: bun $(bun --version) does not satisfy ^$BUN_EXPECTED — continuing, but consider aligning your toolchain." fi fi echo "Running typecheck before push..." bun typecheck