Skip to content

review-only: mirror of upstream sidinsearch/superbrain#7 for CodeRabbit - #9

Closed
djbclark wants to merge 2 commits into
review-base-upstream-mainfrom
draft/android-category-sync
Closed

review-only: mirror of upstream sidinsearch/superbrain#7 for CodeRabbit#9
djbclark wants to merge 2 commits into
review-base-upstream-mainfrom
draft/android-category-sync

Conversation

@djbclark

@djbclark djbclark commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Review-only vehicle — CodeRabbit isn't installed on the upstream repo (sidinsearch/superbrain), so this mirrors the exact same diff (base pinned to the real upstream/main commit) in the fork where CodeRabbit is active. Not intended to merge; will be closed once CodeRabbit's review lands. Real PR: sidinsearch#7

Defensive client support for config-driven categories. Without /taxonomy
(upstream today), behavior matches mainline chips and sync. With /taxonomy,
honor use_default_categories, taxonomy_version full-resync, and custom chips.

Co-authored-by: Cursor <cursoragent@cursor.com>
@coderabbitai

coderabbitai Bot commented Aug 1, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c461f3b2-cac2-4e5d-b8a5-29436aecc042

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@djbclark

djbclark commented Aug 1, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 1, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

- syncService.ts: the delta-sync pagination loop could spin forever if the
  server doesn't implement `offset` (this PR adds client-side pagination
  with no matching backend change). Add a hard page cap plus non-advancing-
  cursor detection so it terminates safely either way, warning rather than
  silently duplicating posts.

- HomeScreen.tsx: loadCategories() and loadPosts() fired independent,
  redundant /taxonomy fetches when run in parallel at bootstrap (the
  existing taxonomyRef caching only deduped within loadPosts's own steps,
  not across the two functions) -- a real HTTP call doubling plus a narrow
  race if one fetch succeeded while the other timed out under flaky
  network. Fetch /taxonomy once in initializeAndLoad and share the single
  in-flight promise with both, each still resolving it lazily at the point
  they actually need it (keeps the fast local-data paint path unblocked).

- api.ts: getTaxonomy()'s raw response type declared precedence/guidance as
  required while TaxonomyPayload declares them optional. Align them.

TypeScript passes.
@djbclark

djbclark commented Aug 1, 2026

Copy link
Copy Markdown
Owner Author

Superseded — this PR's base branch (a temp branch pinned to upstream's commit) is blocked by CodeRabbit's 'reviews disabled for this base branch' policy. Replaced by a review-only PR based on main instead (main's version of these 3 files is byte-identical to the pre-fix state, so the diff is clean — just the fix, no fork-vs-upstream noise).

@djbclark djbclark closed this Aug 1, 2026
@djbclark
djbclark deleted the draft/android-category-sync branch August 1, 2026 14:27
@djbclark
djbclark restored the draft/android-category-sync branch August 1, 2026 14:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant