Assess a software repository by asking whether it preserves a task, the code change made in response, the review and test evidence, and the resulting state in a way that can be reproduced and lawfully used. A large code snapshot alone may not show how an engineer or agent should move from a problem to a verified change.
The right assessment depends on the training or evaluation task. An agent expected to fix issues may need issue descriptions, repository state, patch, tests and a clear success criterion. An agent expected to review code may need the proposed change, surrounding context, review comments and disposition. Do not assume every repository has these relationships or that more history automatically means better evidence.
Can you reconstruct a task from issue to tested change?
For a sample task, locate the issue or request, the relevant starting commit, changes made, pull request discussion, review outcome, test results and final commit. Confirm whether identifiers link the records and whether the chronology makes sense. A title or link can be misleading if it points to a later rewrite, another branch or a different problem.
GitHub's pull request documentation describes proposal discussion, commits, checks and changed files; its review guidance describes comments, suggestions, approvals and requests for changes. These product features explain what may be recorded in a repository workflow; they do not establish that a particular archive is complete, technically correct, or representative.
What do issues, commits, reviews and CI results each show?
An issue describes a requested change or problem. It may be vague, stale or inconsistent with the eventual work. A commit records a change to repository history, but its message may not explain why it was made. A pull request can connect a proposal to discussion, review and checks, but not every repository uses the same process. CI output shows a test run in a particular environment; it does not prove the tests cover the intended behavior.
Treat each component as a separate evidence source. Ask what is absent: task context, base revision, dependency versions, environment, tests, review resolution or post-merge behavior. When a reviewer says a patch is safe but the approval status or later changes disagree, preserve that distinction instead of flattening everything into a single label.
Can the task be rerun without revealing its answer?
Select a controlled set of tasks and try to reconstruct the starting state and execute the relevant checks. Record toolchain, dependencies, configuration, network assumptions and any unavailable services. If a test cannot be rerun, explain whether the limitation is environmental, caused by missing files, or due to an incomplete record.
For evaluation, ensure the answer is not exposed in the prompt, test name, later discussion or linked artifact. Keep revisions and related tasks grouped where appropriate so near-duplicates do not appear across training and test splits. SWE-bench, for example, describes benchmark tasks based on real GitHub issues and pull requests and evaluates whether generated patches address tests. It demonstrates one benchmark design, not a universal evaluation method or a claim that any company archive meets its criteria.
Which export history and rights need review?
Record repository identity, source system, date range, branch or commit range, extraction method, exclusions and transformations. Identify who performed each export and who verified its scope. W3C PROV provides a conceptual model for describing entities, activities and responsible agents; it does not certify a source or establish legal rights.
Before requesting repository content, identify ownership and third-party contributions. Review licenses, contributor terms, employer policies, customer confidentiality, secrets, credentials and personal information. Public visibility does not by itself answer whether a proposed commercial reuse is authorized. Redaction can reduce exposure but does not resolve rights or make every remaining record safe.
A practical assessment matrix
| Dimension | Evidence to inspect | Question |
|---|---|---|
| Task context | Issue or request and linked source revision | Can a reviewer understand the starting problem? |
| Change | Commit and pull request diff | Is the patch traceable to the task? |
| Review | Comments, requested changes and final decision | Is the resolution visible and correctly ordered? |
| Verification | Test definitions, results and environment | Can checks be interpreted or rerun? |
| Provenance | Source, export time, range and transformation record | Can the supplied version be traced? |
| Permissions | Licenses, contracts, contributor and secret review | Is the intended use authorized? |
| Evaluation design | Held-out tasks, grouping and answer visibility | Does the test avoid leakage and duplication? |
How should a buyer start assessing the repository?
Start with metadata and a small authorized sample. Ask for a manifest showing repositories, dates, branches, linked issues and available review/test records. Inspect whether identifiers connect the artifacts, then choose a few cases based on pre-agreed criteria. Do not request a full clone or expose secrets merely to establish basic structure.
For each sample, label findings as reported, confirmed from metadata, demonstrated by inspection, or accepted against written criteria. These are useful evidence labels, not an industry standard. Record the limitation: an inspected sample does not prove every repository has the same structure.
The assessment should end with a concrete gap list: missing links, unreliable chronology, unrepeatable tests, unresolved rights, sensitive content, and improvements needed for the target task. That is more useful than a broad quality score without traceable evidence.
The buyer sourcing brief can specify the starting revision, linked task evidence, required test environment and the criterion for progressing a repository sample. Leave unavailable dependencies explicit so source conversations concern a testable requirement.