Feature/add prov to aics fms#869
Conversation
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
| return createFileNode(file); | ||
| } | ||
| } catch { | ||
| // Backup while moving between provenance versions: Try looking by "File ID", this should be removed in the future |
There was a problem hiding this comment.
@aswallace lmk if you think we should still have a fallback
There was a problem hiding this comment.
I think this is fine with me! I don't think we have enough people using this right now for it to be an issue. I only sent the old template to Chantelle, so we can check in with her directly
| lastCenteredRefreshKeyRef.current = refreshKey; | ||
| const centerX = originNode.position.x + (originNode.width ?? 0) / 2; | ||
| const centerY = originNode.position.y + (originNode.height ?? 0) / 2; | ||
| setCenter(centerX, centerY, { zoom: getZoom(), duration: 800 }); |
There was a problem hiding this comment.
Whats duration here? 800?
There was a problem hiding this comment.
Time to pan, its in milliseconds. Just makes it animate a little rather than jump suddenly.
There was a problem hiding this comment.
Overall lgtm! A couple bugs(?) that I wasn't sure where to comment about:
I'm still seeing some floating files, e.g., if you scroll to the right for this query
I'm also running into an annotationName.split is not a function error for opening queries related to certain edge connection types, I think because it's expecting "is derived from" to have a "pointer" type
Screen.Recording.2026-07-09.at.9.43.35.AM.mov
| lastCenteredRefreshKeyRef.current = refreshKey; | ||
| const centerX = originNode.position.x + (originNode.width ?? 0) / 2; | ||
| const centerY = originNode.position.y + (originNode.height ?? 0) / 2; | ||
| setCenter(centerX, centerY, { zoom: getZoom(), duration: 800 }); |
There was a problem hiding this comment.
This is really nice on initial node and when resetting the view! but it's slightly inconvenient when working elsewhere in the graph, e.g., if changing the organization structure
Screen.Recording.2026-07-09.at.8.52.19.AM.mov
There was a problem hiding this comment.
Oh good point! I'll make sure it just functions on the initial load (maybe the reset too?).
| return createFileNode(file); | ||
| } | ||
| } catch { | ||
| // Backup while moving between provenance versions: Try looking by "File ID", this should be removed in the future |
There was a problem hiding this comment.
I think this is fine with me! I don't think we have enough people using this right now for it to be an issue. I only sent the old template to Chantelle, so we can check in with her directly
| private static readonly CSV_ENDPOINT_VERSION = "2.0"; | ||
| public static readonly BASE_CSV_DOWNLOAD_URL = `file-explorer-service/${HttpFileService.CSV_ENDPOINT_VERSION}/files/selection/manifest`; | ||
| private readonly downloadService: FileDownloadService; | ||
| public readonly provenanceIdColumn = "file_id"; |
There was a problem hiding this comment.
Making sure I'm on the same page-- For "Input File Path", we just render an entity instead of looking up the file path?
There was a problem hiding this comment.
Yes, we're talking in Slack about this causing issues for Brian's work potentially & it does seem like we could add a way for each edge to define how to look up their file's ID column
There was a problem hiding this comment.
Rolling with this for now (7c52510) but it does feel increasingly like the edges should define their lookup column - lmk if anyone has thoughts or ideas
Context
Provenance is available for use in the application, however for internal users their query defaults to AICS FMS which won't include provenance at the moment.
Changes
This adds a provenance source to the default AICS FMS query. While doing so I encountered 3 other things:
NetworkGraph/index.tsxgraph.node(<node id>)to bubble up an error (Graph/index.ts)Testing
Tested using this provenance source file
Example