Repository navigation
Epic: Lists depth — views, folders, hierarchy, contributors, connections #60
Copy link
Copy link
Open
2 / 102 of 10 issues completedOpen
2 / 102 of 10 issues completed
Copy link
Labels
P1Table stakesTable stakesarea:listsArea: listsArea: listsepicFeature-area parent issue with sub-issuesFeature-area parent issue with sub-issuesparityWeb/API feature-parity workWeb/API feature-parity work
Description
Summary
/api/lists* is the largest domain in the API (42 operations). After the schema and materialize epics, these are the remaining list features the app does not have.
Unimplemented endpoints
| Method | Path | Feature |
|---|---|---|
GET/POST |
/api/lists/{id}/views |
saved views |
POST/PUT/DELETE |
/api/lists/{id}/views/{viewId} |
fork / update / delete a view |
GET/POST/PUT/DELETE |
/api/folders |
list folders (distinct from document folders) |
GET |
/api/lists/{id}/contributors |
ranked contributors |
GET/POST/DELETE |
/api/lists/connections |
list connections |
POST |
/api/lists/{id}/data/versions |
freshness poll + presence heartbeat |
GET |
/api/lists/{id}/watchers/me |
am I watching this list |
POST |
/api/lists/{id}/refresh |
manual refresh for GitHub-backed lists |
GET |
/api/users/{username}/lists |
a user's public lists |
GET |
/api/users/{username}/lists/{id} |
public list metadata + ancestor chain |
GET |
/api/users/{username}/lists/{id}/data |
public list rows, paged/filtered/sorted |
Live verification (2026-09-15) — all bearer-reachable
GET /api/lists/{id}/views -> 200 {"views":[]}
GET /api/lists/{id}/contributors -> 200 {"contributors":[],"totalContributors":0}
GET /api/lists/{id}/watchers/me -> 200 {"watching":false,"role":null}
GET /api/lists/connections -> 200 {"connections":[]}
GET /api/folders -> 200 {"folders":[]}
GET /api/users/adron/lists -> 200 (includes source/githubRepo/githubRepoPrivate/parentId/folderId)
Model gap
Models/ListSummary.cs has only Id, Title, Description, IsPublic, CreatedAt, UpdatedAt. The live payload also carries userId, messageId, parentId, folderId, metadata, source, githubRepo, githubRepoPrivate — every one of which backs a feature below.
Repo conventions to follow
- Service: one
partial class InterlinedApiClientfile per domain inInterlinedList/Services/. - Wire types in
InterlinedList/Models/matching real API JSON. - ViewModel per view in
InterlinedList/ViewModels/(CommunityToolkit.MvvmObservableObject+[RelayCommand]). - View is a self-contained
UserControlinInterlinedList/Views/that news up its own VM fromAppServices.Session. - Strata tokens only — no colors/fonts/radii outside
Resources/Palette.xaml+Theme.*.xaml. - Read-after-write for any mutating endpoint whose response envelope has not been live-verified.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P1Table stakesTable stakesarea:listsArea: listsArea: listsepicFeature-area parent issue with sub-issuesFeature-area parent issue with sub-issuesparityWeb/API feature-parity workWeb/API feature-parity work
Activity
ListSummaryto the full live wire type #61/api/folders) — a separate domain from document folders #63