Evaluate the technical merit of a chip design project repository — covering design specification, replicability, organization, readability, IPs/licenses, testing, and completeness. Use when asked to review or evaluate a hardware/chip design repo.
Evaluate the repository at $ARGUMENTS (relative to the current working directory) against the rubric below. If no argument is provided, evaluate the current working directory.
Output your report to the pre-existing file design-review-<repo>.md in the current working directory (NOT inside the repo), where <repo> is the basename of the repository directory (e.g., for slugtpu/, the file is ./design-review-slugtpu.md). The file already exists — use the Edit tool to write the content, do NOT use the Write tool. Do NOT convert the markdown to PDF — that step is handled separately by the Makefile.
Before starting the review, update the repository and all submodules. Use git -C <dir> instead of cd <dir> && git ... to avoid compound command permission issues:
git -C <target-dir> checkout main (or master if main does not exist)git -C <target-dir> pullgit -C <target-dir> submodule update --init --recursiveThe primary analysis should focus on the main branch. Also examine other branches using git -C <dir> branch -a — for each non-main branch, note whether it is stale (no recent commits), active (recent commits), and whether it appears ready to merge or contains work that should be integrated. All git commands during the review should use git -C <target-dir> rather than cd-ing into the directory.
If any of these commands fail, note the failure in the report but continue with the review.
Check groups.yaml in the current working directory for a group whose name matches the repo directory basename. If that group has an extra_repos list, each extra repo is cloned at <repo-dir>/<basename-of-extra-repo-url> (stripping any trailing .git suffix from the URL to get the basename).
For each extra repo that exists on disk:
Search the repository for all documentation that describes the design: README files, markdown documents, wiki pages, comments in top-level modules, and any other descriptive files. Assess:
.gitmodules), or was the source code copied directly into the repo? Using submodules is preferred as it preserves provenance and allows updates; copying IP source files is poor practice.Use the following markdown structure for the report:
# Chip Design Review: [Project Name]
**Repositories:** [list the repo URL(s) from groups.yaml — main repo and any extra_repos]
## 0. Design Documentation — [Rating]
[What documentation exists and where]
[Sufficiency assessment — does it adequately describe the project?]
[Gaps — what is missing or inaccurate?]
## 1. Replicability — [Rating]
[Analysis]
## 2. Organization — [Rating]
[Analysis]
[Project structure tree]
## 3. Readability — [Rating]
[Analysis]
## 4. IPs and Licenses — [Rating]
[Analysis]
[List of IPs]
## 5. Testing and Verification — [Rating]
[Analysis]
## 6. Summary
[Project summary]
### Complete Parts
[List]
### Incomplete Parts
[List]
### Suggestions
[List]