Skip to content

Add aggregator clone subcommand for shallow candidate clones - #21

Merged
justincasher merged 1 commit into
mainfrom
justin/clone-candidates
May 9, 2026
Merged

justincasher merged 1 commit into
mainfrom
justin/clone-candidates

Conversation

@justincasher

@justincasher justincasher commented May 9, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Adds python -m lean_pool.aggregator clone, which shallow-blobless-clones every Reservoir + manual candidate repo into aggregator/candidates/raw_data/clones/<owner>/<name>/, deduped by canonical GitHub key and parallelised with a thread pool.
  • Existing clone dirs are skipped, so reruns only retry timeouts/new entries.
  • Sets up the cache that downstream classification (mathlib/cslib/physlean candidate vs. tooling) will read source files from when building per-repo gists for an LLM.

Verified locally on the full candidate set: 1481 cloned, 0 cached, 8 failed (7 deleted/renamed/private repos + 1 timeout). Disk: ~19 GB — bigger than expected because --filter=blob:none only avoids fetching blobs until checkout, and git clone checks out the working tree by default. We can shrink this later by switching to --no-checkout + sparse-checkout once the gist file set is settled.

Shallow-blobless clones every Reservoir + manual candidate repo into
aggregator/candidates/raw_data/clones/<owner>/<name>/, deduped by
canonical GitHub key, parallelised with a thread pool. Downstream
classification (mathlib/cslib/physlean candidate vs. tooling) needs
local source files to build a per-repo gist for an LLM.
@justincasher
justincasher merged commit 198ae6d into main May 9, 2026
2 checks passed
@Vilin97
Vilin97 deleted the justin/clone-candidates branch May 11, 2026 02:58
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