mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-07-20 21:14:30 -05:00
Read-one now returns a projectReadBody embedding models.Project with max_permission always populated from CanRead, matching the labels/views value-embed pattern instead of gating it behind expand=permissions. CanRead yields a real permission for every readable project (Favorites pseudo-project and saved-filter-backed ones included), so the field is always meaningful on a read. Project remains the no-ETag exception: the response carries user-scoped favorite/subscription state that changes without bumping Updated, so it is served fresh. Update routes its body through the read shape so AutoPatch's GET→PUT echo of the read-only max_permission validates. Create/Update return null for max_permission (not computed there) rather than a misleading 0 (=read).