Skip to content

(6/9) Exercise conflict, review, rate-limit and partial-outage states - #90

Draft
AntonNiklasson wants to merge 1 commit into
an/feedback-loops/5/sync-healthfrom
an/feedback-loops/6/scenario-coverage
Draft

AntonNiklasson wants to merge 1 commit into
an/feedback-loops/5/sync-healthfrom
an/feedback-loops/6/scenario-coverage

Conversation

@AntonNiklasson

@AntonNiklasson AntonNiklasson commented Nov 13, 2026 •

Copy link
Copy Markdown
Owner

Summary

Expand the simulator and real-engine/browser checks for conflicts, approval changes, empty lists, rate-limit reset, review membership and one failing host among two. Keep assignment-only fixtures separate from review requests; the product inbox query remains unchanged. Scope React row keys to each instance to avoid collisions across hosts.

Validation

Local stack head 1d1d925 passed:

  • pnpm typecheck, pnpm test (171 unit/integration tests)
  • pnpm lint (including four boundary checks), pnpm fmt:check
  • pnpm test:e2e (five Chromium scenarios)
  • pnpm test:desktop (packaged macOS arm64 launch, restart, SQLite and shutdown)

These are local results; GitHub checks are reported separately.

How to review

Read states.e2e.ts and github.test.ts as acceptance scenarios, then github.ts. Runtime controls refresh all list kinds so recovery is deterministic.

Visuals

Named scenario screenshots are attached by layer 8.

Related

Part of #84. Prerequisite: #83.

This PR is part of a stack; review and merge from the bottom upward. Each PR targets the preceding branch.

  1. #85: Use the sync package for all desktop GitHub access
  2. #86: Add a deterministic GitHub simulator
  3. #87: Run an isolated interactive status board
  4. #88: Verify renderer polling through the real sync engine
  5. #89: Show persisted sync health and stale-data warnings
  6. #90: Exercise conflict, review, rate-limit and partial-outage states ← This PR
  7. #91: Guard clients against bypassing the public sync API
  8. #92: Attach named visual states to browser reports
  9. #93: Launch and restart the packaged Electron app in isolation

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