Pantry now runs on the v1 API like Inventory/Animals: service layer in
src/lib/services/pantry.ts, pure logic + tests in src/lib/pantry/core.ts,
thin routes at /api/v1/pantry/* riding the items:* scopes. Pulls write
ItemLog type USED with a structured amount (queryable consumption).
Bulk-use runs its reads inside the transaction, accumulates repeated
pulls, and reports skipped items instead of silently dropping them —
the Pull dialog now surfaces those by name. Old /api/pantry routes
deleted.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- README/CLAUDE.md: Inventory depth (warranty/value/maintenance/sold/custom fields,
HomeBox CSV import), Locations page, the two-world data-model rule, API-first +
service-layer conventions, and the HTTPS-gated future work (MCP/PWA/camera)
- New docs/git-deploy-guide.md: self-contained git + deploy walkthrough for a
Claude instance working without this repo's CLAUDE.md (NAS is a git checkout,
push + pull/rebuild, never rsync, secrets in host .env, prisma-at-runtime gotcha)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>