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
{{ message }}
Repository navigation
Lists: saved views (shared and personal, default, fork-to-personal) #51
Part of #49 — Lists parity gaps: GitHub-backed lists, saved views, view modes and collaborative editing
Unused API: GET /api/lists/{id}/views — "Every shared view on the list, plus this user's
own personal views" — with POST to create (name, scope, config, isDefault), PUT to
update, DELETE to remove, and POST /api/lists/{id}/views/{viewId} to fork a shared view into
a personal copy ("the escape hatch" when someone else's shared view does not suit).
Android has no concept of views at all, so a list always renders one way.
View switcher on the list detail screen listing shared and personal views.
Confirm the config shape against the live API before modelling it — the spec types it loosely.
Tests: view list parse; create/update/delete round-trips; fork produces a personal copy.
Filed from the parity review of feature/parity-wip @ 14d7795 against interlinedlist.com (OpenAPI /api/openapi.json, 233 paths) and the public help centre.
Implemented in #107 (branch issue/51-list-saved-views). Closing here — review and any follow-up happens on the PR.
This issue asked to "confirm the config shape against the live API before modelling it". Done — saved views are documented nowhere (absent from the help centre, a bare object in the spec), so I created a view on the test account, probed it, forked it, and deleted both, verifying the account back to {"views":[]}. The full contract is in the PR.
The important discovery: unknown config values are silently dropped rather than rejected, so the implementation treats the server's returned view as authoritative after every write and preserves unmodelled keys through a round-trip.
That same discovery blocks #52 as currently written — see the comment I have left there.
Activity
Adron commentedon Sep 16, 2026
Implemented in #107 (branch
issue/51-list-saved-views). Closing here — review and any follow-up happens on the PR.This issue asked to "confirm the
configshape against the live API before modelling it". Done — saved views are documented nowhere (absent from the help centre, a bareobjectin the spec), so I created a view on the test account, probed it, forked it, and deleted both, verifying the account back to{"views":[]}. The full contract is in the PR.The important discovery: unknown
configvalues are silently dropped rather than rejected, so the implementation treats the server's returned view as authoritative after every write and preserves unmodelled keys through a round-trip.That same discovery blocks #52 as currently written — see the comment I have left there.
merge: #51 list saved views (PR #107)