Open SgtPooki opened 2 years ago
@lidel @BigLep what do you think about prompting current IPFS desktop & webui users to respond on this and the metrics (#1220) view issue?
@lidel do we have any current methods to prompt users for one-time feedback? i.e. surveys, etc..?
@SgtPooki we have no methods like that for GUIs, but in the past we used surveys with tools like https://www.typeform.com (PL has account iirc) for sourcing feedback from community.
Perhaps create a survey with questions you want answered, and then post it in community venues:
This way you will get feedback from active community members passionate about IPFS enough to respond, and you won't have to deal with frustrated users who got interrupted with some unprompted popup :)
In case it helps, the most useful diagnostics I'd like to see is a streamlined version of 4 tests at https://pl-diagnose.on.fleek.co/#/diagnose/access-content where UI is a box for CID and "Find providers" button:
Every step is either error or pass, and UI should indicate progress, so if somehting goes wrong, user knows which stage of content/peer routing is at fault.
MVP could use the same backed as existing diagnostic websites.
In the future we could create a new protocol/service similar to AutoNAT, allowing peers to use long-running, publicly diallable nodes instead of a hardcoded diagnostic endpoint, but this should be out of the scope for ipfs-webui work discussed here.
Thanks for the great insight! I think adding pl-diagnose into the webui is a great idea. If pl-diagnose's components were abstracted, we could both benefit from the work already done on pl-diagnose.
@laurentsenta are you still actively working on that project? How hard do you think it would be to pull out some components from pl-diagnose so we could re-use them in ipfs-webui?
@lidel @laurentsenta would it make sense to fully consume pl-diagnose (the https://pl-diagnose.on.fleek.co/#/diagnose/access-content page) as a screen in the webui and ipfs-desktop? If there are still plans to expand pl-diagnose, maybe it doesn't make sense, but hosting pl-diagnose within the webui, desktop app, and at ipns://webui.ipfs.io/#/diagnose seems like a great idea to me.
I feel like it would be a natural progression for the webui and desktop diagnostics screen to expand beyond simply troubleshooting content accessibility, but I would love to hear what the future for pl-diagnose is.
Cc @aschmahmann since would ideally like to see convergence around one main IPFS diagnostics tool in EngRes. I believe https://github.com/ipfs-shipyard/ipfs-check has been the one to get the most investment.
Agreed, from a practical perspective I'd rather only have to maintain one tool.
Happy to take PRs to ipfs-check. Will also allow some feedback from the other folks who have contributed to ipfs-check
Thanks for bringing up pl-diagnose, sorry I missed the notification on this ticket,
+1 to gather everything into ipfs-check, we already have a plan to merge the API (related ticket). We still have to figure out a plan for the frontend part. So we will be able to use ipfs-check's backend until we have the protocol @lidel described.
Regarding the feature in https://github.com/ipfs/ipfs-webui/issues/1925#issuecomment-1167930487 :
I guess you'd need a routing
parameter with the /find
endpoint, and we'd need to change the /bitswap
endpoint to NOT download the data (a good thing anyway). The frontend is 4 (rushed) react components and some state management feel free to ping me @SgtPooki if you want to port it into ipfs-webui.
I'm curious about the idea of embedding the frontend from another project (ideally ipfs-check) into the webui, Can we do this? What would you need?
@laurentsenta it would be great if we could simply import pl-diagnose as a full-page view. This is probably the quickest and easiest option.
Moving forward, having that view be separated into different imported components would allow us to control the flow better as our diagnostic needs change .
It sounds like you've already got four react components, so releasing those as a library to npm should probably be our first step.
We chatted at dinner last night about our shared goals for diagnostic/tooling for ipfs.
Dropping a document for the ipfs-toolbox web extension https://hackmd.io/sJZib5iiShGxmQ2x-OD8SQ
re: user research around webui/desktop diagnostics view
I'm still hoping to get more survey responses as well as source additional participants for addt'l user testing but will deliver some research findings next week, fyi
Cc @aschmahmann since would ideally like to see convergence around one main IPFS diagnostics tool in EngRes. I believe https://github.com/ipfs-shipyard/ipfs-check has been the one to get the most investment.
Agreed, from a practical perspective I'd rather only have to maintain one tool.
Happy to take PRs to ipfs-check. Will also allow some feedback from the other folks who have contributed to ipfs-check
@BigLep @tinytb @lidel
I agree that maintaining a single tool is ideal. The problem is where that tool exists in the stack and what diagnostics tooling is needed specifically within IPFS desktop and webui because they may not make sense elsewhere:
To get our "one tool" we need to consolidate ipfs-check, pl-diagnose, and the needs of webui+desktop. If ipfs-check is the best place for that, great. I don't see that being our(webui & ipfs in general) path to success, but I'm open to being convinced.
If we need to separate the discussion of general ipfs diagnostics tooling, and this issue -- which I intended to be specific to the tooling that would be useful in IPFS Desktop&webui -- then let's do that. If we've reached the end of the discussion because there aren't any diagnostics tooling that makes the most sense inside of IPFS desktop and webui, then I'm good with closing this issue and pushing on consolidation of diagnostics tooling inside of ipfs-check.
Related: @juliaxbow survey and user research:
The users we heard back from seem to want diagnostics inside desktop/webui. So are the following next steps valid?
Or should we skip the second item altogether?
Consolidate diagnostics in ipfs-check
Yes! I think we all agree on this one.
Render ipfs-check inside webui&desktop
I think it would be useful to have something inside the webui. The challenge is that ipfs-check relies on its own backend so if you render it do you use the centralised backend? Because technically if you have access to the webui, you probably have access to Kubo's RPC API which you can use to debug too.
FYI to all following this thread that this "diagnostics view" may well turn more into an effort of building some consolidated diagnostics tooling rather than a specific "diagnostics view" within webui. I feel like both efforts have merit, but from discussions during roadmap planning that seems like where we're going
p.s. discovered a tool that I hadn't seen before, https://dag.ipfs.tech/, which has source at https://github.com/ipfs-shipyard/ipfs-dag-builder-vis, that would make sense in either effort
Is your feature request related to a problem? Please describe. Creating a diagnostic view in the webui and desktop app
Describe the solution you'd like Additional metrics desired can be found in https://github.com/ipfs/ipfs-webui/issues/1220, but this issue covers the diagnostics view we wish to have in the webui and ipfs-desktop.
This view would not be focused on metrics, instead, view #1220 for that. This view would be focused on process/tooling on top of those metrics and/or other data.
Describe alternatives you've considered
Additional context
Ideas for supported functionality:
Looking for community and IPFS Implementers' feedback on this issue.
Here are some questions to help get the ideas flowing.
What kind of diagnostics should we focus on
What/Why/How
Ideas for supported functionality
list above?