Files
orca/src/preload
Brennan BensonandYash Kakade 0ce6c7b61f feat(gitlab): filter Tasks merge requests to ones you wrote or review (#38766)
* feat(gitlab): filter Tasks merge requests to ones you wrote or review

Tasks > GitLab > MRs could only filter by state, so on busy projects you
had to scan every open MR to find yours. A second set of chips (Everyone,
Mine, Needs review) now combines with the state chips, so "my merged MRs"
works too.

The filter runs on the host that owns the repo's GitLab sign-in, looks up
the signed-in user fresh on the project's own host, and filters by
author_id or reviewer_id in one request per project. A failed lookup
shows an error instead of everyone's MRs, and older paired servers that
would drop the filter ask to be updated.

Co-authored-by: Yash Kakade <yashkakade2015@gmail.com>

* fix(gitlab): keep filtered MR lists honest while loading and on old servers

- The reviewer chip reads "Reviewing": GitLab lists MRs you were asked to
  review even after you reviewed them, so "Needs review" overpromised.
- Rows belong to the query that loaded them: after a chip change the list
  shows loading, never the previous filter's rows with Start enabled.
- A refresh checks each paired server's filter support once, not once per
  project; failed checks show the real error instead of "update the server",
  and the web client sends the filtered list to the runtime it checked.
- Signed-out GitLab gets a sign-in message, and an unresolved SSH project
  under a filter shows an error instead of an empty list.

Co-authored-by: Yash Kakade <yashkakade2015@gmail.com>

* fix(gitlab): pin filtered MR lists to the server that confirmed support

A refresh now shares one support check per paired server and pairing, and
the filtered list is sent to the exact runtime and pairing that answered,
so a server replaced mid-refresh can't serve "Mine" unchecked. The web
client scopes its shared check to the current pairing and reuses the
existing result unwrapping. The capability test now counts real status
probes: one per server per refresh for 12 or 120 projects.

Co-authored-by: Yash Kakade <yashkakade2015@gmail.com>

* fix(gitlab): discard filter-support answers from a replaced pairing

A paired server re-paired while Orca was asking whether it supports the
MR filter no longer leaves "update the server" from the old pairing's
answer; the check fails with the usual pairing-changed error instead.
Signed-out detection no longer matches a 401 inside a host or port.

Co-authored-by: Yash Kakade <yashkakade2015@gmail.com>

* test(gitlab): type the filter-change test's props without a cast

---------

Co-authored-by: Yash Kakade <yashkakade2015@gmail.com>
2026-11-05 23:33:39 -08:00
..