## Summary
- Full CRUD for publications (title, author, osdb_pub_id, cover image stored as BYTEA)
- Link/unlink fruits to publications; upload per-fruit PDF descriptions (1 per pub+fruit, dup→409)
- Upload publication fruit images; fruit detail page gains descriptions and images sections
- ImageOverlayDrawer component for full-size cover image overlay
## Test plan
- [ ] `make test` passes (24 handler unit + 7 integration + 10 frontend API tests)
- [ ] Cover image upload/serve/delete works
- [ ] Link fruit, PDF description, and fruit image via publication detail page
- [ ] Fruit detail shows descriptions and publication images
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Full CRUD for publications; link fruits to publications; upload per-fruit
PDF descriptions and fruit images stored as BYTEA; fruit detail page shows
publication descriptions and images. ImageOverlayDrawer for cover thumbnail
full-size view.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
julia
merged commit dfa3d91ab9 into main2026-06-18 09:27:59 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Test plan
make testpasses (24 handler unit + 7 integration + 10 frontend API tests)🤖 Generated with Claude Code