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
Commit af3b1d9
Browse filesBrowse the repository at this point in the historyBrowse files
feat(feed-directory): last_result demotion and fail-closed catalog v2 (#1250)
* feat(feed-directory): last_result demotion and chrome
Support catalog_version 2 only with required last_result; demote empty/error in sort, show ambient indicators, and warn before subscribe on failing rows.
* docs: describe catalog last_result
Clarify that Feed Directory scrape hints are instance last-known signals; cold instances show no badge and this is not /health.
* fix(feed-directory): warn on failing OPML and honest count copy
Align bulk export with subscribe warnings and drop "ready-to-use" when the catalog can include empty/error last scrapes.
Copy file name to clipboardExpand all lines: AGENTS.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,7 +43,7 @@ If a cross-repo behavior changed but upstream is not updated yet, document the g
43
43
44
44
- The browse UI is a **thin client**: fetch catalog JSON from the active instance, render rows client-side, build RSS links from each entry's `path`.
45
45
- Do not reintroduce `bin/data-update`, `src/data/configs.json`, or a `html2rss-configs` gem dependency in this repo.
46
-
- Wire shape v1 is defined in `html2rss-web` request specs and OpenAPI (`catalog_version`, `parameters.schema`, `parameters.defaults`).
46
+
- Wire shape v2 is defined in `html2rss-web` request specs and OpenAPI (`catalog_version: 2`, required `last_result`, `meta.starters`). The browse client supports **`[2]` only** and fails closed on v1.
47
47
- When the instance is unreachable or returns `404` with `catalog_disabled`, show an error state — no static fallback list.
48
48
-**Wire parsing only in**`src/components/feed-directory/adapters/catalog-api.ts`. Domain modules must not parse API envelopes or wire rows.
49
49
- See `CONTEXT.md` for glossary (`FeedDirectoryEntry`, catalog seam, instance persistence contract).
|`lastResult`| Instance last-known scrape outcome (see below) |
22
+
23
+
## LastResult
24
+
25
+
Required ambient signal from catalog_version **2**. Closed set of `state` values only — do not invent green/yellow/red domain enums; map state to UI chrome in `ui/`.
-**Domain:**`FeedDirectoryEntry[]` consumed by filters, OPML build, and render
29
43
30
-
Wire parsing must stay in `adapters/catalog-api.ts` only.
44
+
Wire parsing must stay in `adapters/catalog-api.ts` only.`meta.starters` is parsed for forward compatibility; browse does not render a featured strip today.
0 commit comments