You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #49 adds a complete application-local CRUD recipe rather than introducing a generic persistence API or globally patching Grape endpoints. It uses separate input/output decorators, Grape validation, filtered writable fields, partial updates, and explicit save!/destroy! calls. Authorization and expected-error HTTP mappings remain application responsibilities.
The exact README example runs through create/update/delete request specs with persistence doubles. These verify readonly fields are not assigned, omitted update fields are preserved, invalid input does not save, and persistence exceptions propagate rather than returning success.
Activity
dblock commentedon Oct 27, 2026
PR #49 adds a complete application-local CRUD recipe rather than introducing a generic persistence API or globally patching Grape endpoints. It uses separate input/output decorators, Grape validation, filtered writable fields, partial updates, and explicit
save!/destroy!calls. Authorization and expected-error HTTP mappings remain application responsibilities.The exact README example runs through create/update/delete request specs with persistence doubles. These verify readonly fields are not assigned, omitted update fields are preserved, invalid input does not save, and persistence exceptions propagate rather than returning success.
Posted by Copilot, an AI, on behalf of @dblock.