Path revert (reduces churn / preserves existing imports):
- wagmi.config.ts: out -> src/blockchain/abi.ts (was src/generated.ts)
- Restore the 4 import sites (sellerMethods, events, provider,
BuyerSearchComponent) to import from './abi' / '@/blockchain/abi'
- .gitignore: ignore src/blockchain/abi.ts (was src/generated.ts)
The file keeps its original location and is no longer committed — it is
regenerated from the smart-contracts submodule artifacts on every
prestart via `bun run wagmi:gen`.
Infra polish:
- package.json: contracts:compile uses pushd/popd (instead of cd) so the
shell returns to the project root after the submodule build, even when
the script is the leaf of a longer chain
- .gitmodules: zkPix submodule pinned to `dev`
- wagmi.config.ts: read ABIs from p2pix-smart-contracts/artifacts/contracts
(P2Pix, Reputation, MockToken) and emit src/generated.ts with the
@wagmi/cli actions plugin
- package.json: add scripts
* contracts:compile — installs submodule deps + runs `hardhat compile`
* wagmi:gen — runs @wagmi/cli to (re)generate src/generated.ts
* prewagmi:gen — chains contracts:compile before wagmi:gen
* prestart — runs wagmi:gen, so `bun start` always has fresh ABIs
- .gitignore: ignore src/generated.ts (regenerated on every prestart)
Note: GraphQL/subgraph codegen is intentionally out of scope here — it
will land in its own branch.