Skip to content

Comments

fix/incomplete-add-url-3#197

Merged
bwalsh merged 25 commits intomainfrom
fix/incomplete-add-url-3
Feb 10, 2026
Merged

fix/incomplete-add-url-3#197
bwalsh merged 25 commits intomainfrom
fix/incomplete-add-url-3

Conversation

@bwalsh
Copy link
Contributor

@bwalsh bwalsh commented Feb 5, 2026

Continuation of discussion from #185

Copilot AI review requested due to automatic review settings February 5, 2026 02:23
@bwalsh bwalsh mentioned this pull request Feb 5, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements a fix for incomplete add-url functionality (related to PR #185 and issue #141). The changes include significant refactoring and new features:

Changes:

  • Adds pre-commit cache system for tracking LFS file metadata locally
  • Reorganizes cloud/S3 utilities from s3_utils to cloud package
  • Updates import paths for data-client package structure changes
  • Implements new LFS tracking using git check-attr instead of go-git library
  • Adds extensive test coverage for new features

Reviewed changes

Copilot reviewed 80 out of 85 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
go.mod Adds local replace directive for data-client dependency
cmd/precommit/ New pre-commit hook implementation for cache updates
cmd/prepush/ Refactored to use pre-commit cache for performance
cmd/addurl/ Major refactor with new service pattern and cache integration
precommit_cache/ New package for read-only cache access
cloud/ Renamed from s3_utils with new S3 inspection and download helpers
lfs/ Refactored LFS tracking to use git check-attr
utils/ Added helper functions and moved LFS tracking utilities
tests/ Updated integration tests and added new test cases

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@bwalsh
Copy link
Contributor Author

bwalsh commented Feb 5, 2026

Implemented fix for #198

$ git config --list | grep drs
lfs.standalonetransferagent=drs
lfs.customtransfer.drs.path=git-drs
lfs.customtransfer.drs.args=transfer
lfs.customtransfer.drs.concurrent=true
lfs.customtransfer.drs.upsert=true
lfs.customtransfer.drs.multipart-threshold=10
lfs.customtransfer.drs.enable-data-client-logs=false
lfs.customtransfer.drs.default-remote=calypr-dev
lfs.customtransfer.drs.remote.calypr-dev.type=gen3
lfs.customtransfer.drs.remote.calypr-dev.endpoint=https://calypr-dev.ohsu.edu
lfs.customtransfer.drs.remote.calypr-dev.project=cbds-monorepos
lfs.customtransfer.drs.remote.calypr-dev.bucket=calypr

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 83 out of 89 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

@matthewpeterkort matthewpeterkort left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alot of duplicated / cleanup needed. I can do this myself since you're off today.

)

// downloads a file to a specified path using a signed URL
func DownloadSignedUrl(signedURL string, dstPath string) error {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This function is used in a lot of places I would have expected there to be a utility function for this in data-client.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

data client was focused on gen3 and has a lot of legacy code. This is pure s3, I'd like to enhance it with https://pkg.go.dev/gocloud.dev/blob  when we get a chance. Plus, this use case is focused on foreign urls.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Plus with #180 this will probably be deferred until we get dynamic buckets on the server

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll look into it today

bwalsh and others added 4 commits February 9, 2026 14:04
* clean up repo to address my PR feedbacks
* remove unused commands
* fix:git-parsing #201
* filter out integration tests
* filter out integration test
* merge url-3-pr-issues
* nil logger check

---------

Co-authored-by: Brian Walsh <brian@bwalsh.com>
@matthewpeterkort matthewpeterkort self-requested a review February 10, 2026 15:43
@bwalsh bwalsh merged commit b50144b into main Feb 10, 2026
8 checks passed
@bwalsh bwalsh deleted the fix/incomplete-add-url-3 branch February 10, 2026 17:20
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.

2 participants