Skip to content

Feat/coord client#82

Draft
unkcpz wants to merge 19 commits intomainfrom
feat/coord-client
Draft

Feat/coord client#82
unkcpz wants to merge 19 commits intomainfrom
feat/coord-client

Conversation

@unkcpz
Copy link
Copy Markdown

@unkcpz unkcpz commented Mar 26, 2026

draft, simply for discussion with @ritwikshanker (UI and data flow) and @recap (on information requirement from tool registry)

The major goal of this PR is to bring the boundary on developers responsibility to fit the expertise on us. My goal is that by looking at same interface contract (the protobuf) shared by coordinator backend and the UI server. Ritwik can works on UI frontend by just understand what can be call and what need to call from server.ts. On the other hand Jason is works on the the backend behavior that coordinating different services and expose the function in grpcClient.ts to be called from server.rs.

  • a demo list file view page that support download files.
  • a demo view page, that list file metadata using datahugger-ng as backend file metadata fetcher.
  • move dispatcher call to the backend and under coordinator api.
  • use SSE for the dispather call instead of polling logic directly on the server implementation.
  • tool service and dispatcher logic all moved to coordinator, no mocking exist in matchmaker anymore. (4c9c8d3)
  • a full flow of launching a real galaxy tool with real data (depend on tool input slots in the first level of response json tool-registry#7 and add /rawmeta endpoint for galaxy workflow tool-registry#8)
  • The message type stay in the channel boundary, and have all logic type for grpc client and server.
  • should able to go back to the search results list.
  • where should the url not support error goes? It is caught in the coordinator server side. But should this exposed to user?
  • streaming the files to the frontend. The backend is already get streamed data from datahugger.
  • how to deal with zip?
  • how to caching?
  • need basic caching to avoid duplicate data fetching (in search, and at file fetching phase). usememo, hand write simple caching mechanism.
  • in the player part, instead of select slots for file, do select files for slots.

@unkcpz unkcpz marked this pull request as draft March 26, 2026 09:13
@unkcpz unkcpz force-pushed the feat/coord-client branch 2 times, most recently from 5d6a34f to 7663f8a Compare March 27, 2026 13:59
@unkcpz unkcpz force-pushed the feat/coord-client branch from 7663f8a to d1dc974 Compare March 27, 2026 17:08
@unkcpz unkcpz force-pushed the feat/coord-client branch from 4b18983 to 5a29fd5 Compare March 27, 2026 17:42
@unkcpz unkcpz force-pushed the feat/coord-client branch 3 times, most recently from 61fbcf1 to 67f3a4c Compare March 30, 2026 10:12
@unkcpz unkcpz force-pushed the feat/coord-client branch from 67f3a4c to 728c177 Compare March 30, 2026 10:50
@unkcpz unkcpz force-pushed the feat/coord-client branch 2 times, most recently from f2da2fa to 2224445 Compare March 31, 2026 20:41
@unkcpz unkcpz force-pushed the feat/coord-client branch from 2224445 to b26854d Compare March 31, 2026 20:52
@unkcpz unkcpz force-pushed the feat/coord-client branch from 145df05 to ccf9eaf Compare March 31, 2026 21:14
@unkcpz unkcpz force-pushed the feat/coord-client branch from 4c9c8d3 to d05c17c Compare April 1, 2026 20:13
All mocking moved to coordinator.
Tool service and dispatcher service works together there.
@unkcpz unkcpz force-pushed the feat/coord-client branch from d05c17c to b8de360 Compare April 2, 2026 09:53
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