* fix(community-dapp): skip foundryup attestation check on vercel
foundryup parses the release attestation manifest through bash process
substitution. Vercel's build container has no /dev/fd, so the redirection
fails and `set -e` aborts the build:
/vercel/.foundry/bin/foundryup: line 58: /dev/fd/63: No such file or directory
foundryup is fetched unpinned, so this started failing with no repo change.
* chore(community-dapp): pin foundry to v1.5.1 for vercel builds
Vercel installed the latest release (v1.7.1) while ci.yml and release.yml
pin v1.5.1, so contract ABIs were built with a different compiler there.
* chore(community-dapp): add .env.example
Document webpack build-time env vars for local dev and deployments.
* chore(community-contracts): update .env.example
Add ETH_FROM, API_KEY_OPTIMISM, and usage comments for forge deploys.
* fix(community-dapp): correct build paths relative to vercel root dir
buildCommand ran 'cd apps/community-dapp' and outputDirectory used
'apps/community-dapp/dist', but the build cwd is already the app dir
(vercel root directory), so the cd failed. Use paths relative to the
root dir.
* fix(community-dapp): build contracts during vercel build
abi/index.ts imports forge-generated ABIs from community-contracts/out,
which is gitignored and absent on vercel. The custom buildCommand calls
webpack directly, bypassing the prebuild hook that runs forge build.
Init the contracts submodules, install foundry, and run forge build
before webpack so the ABIs exist.
* fix(community-dapp): move vercel build into a script
The inline buildCommand exceeded vercel's 256-char limit. Move the
contract-build + webpack steps into scripts/vercel-build.sh and call it.
* chore: add changeset
* chore(community-dapp): trigger build