Files
TheRock/rocm-systems/projects/cuid/.claude/skills/populate-project-map/SKILL.md
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

2.6 KiB

name, description
name description
populate-project-map Creates or updates a human-readable project map for the cuid workspace. Use when onboarding, when workspace layout changes, or when agents need up-to-date layout info.

Populate Project Map

Creates or updates .claude/project-map.md — a single source of truth for the cuid project layout. All review agents and skills reference this instead of embedding layout info.

Steps

  1. If .claude/project-map.md exists, update it. Otherwise, create it.
  2. Explore the actual workspace to discover paths. Double-check that every listed path exists.
  3. Identify:
    • Source directories by language (C/C++, Python, Go, Rust, CMake)
    • Build artifacts and packaging scripts
    • Test directories
    • Documentation directories
    • Configuration files (pre-commit, formatters, build configs)
    • Generated files and their generators
    • Critical high-churn files
  4. Write the map in the format below.
  5. Open for user inspection.

Format

# Cuid Project Map

> Auto-generated by populate-project-map skill. Single source of truth for project layout.
> Referenced by review agents — update when directory structure changes.

## Source Directories

| Language | Directory | Purpose |
|----------|-----------|---------|
| C/C++ | `lib/src/` | Core library implementation |
| C/C++ headers | `lib/include/` | Public API headers |

## Build & Packaging

| Path | Purpose |
|------|---------|
| `CMakeLists.txt` | Root build configuration |

## Tests

| Path | Purpose |
|------|---------|
| `tests/functional/` | more involved tests |
| `tests/unit/` | unit tests |

## Documentation

| Path | Purpose |
|------|---------|
| `docs/` | Sphinx documentation source |
| `docs/doxygen/` | Doxygen config for C API |
| `docs/how-to/` | How-to guides |

## Critical Files (high churn — review carefully)

| File | Risk |
|------|------|
| `cli/amdcuid_tool.cc` | CLI behavior regressions, output format |
| `daemon/amdcuid_daemon.cc` | Daemon stability, API surface |
| `lib/src/cuid.cc` | Core C library — correctness |
| `lib/include/amd_cuid.h` | Public API — cascades everywhere |
| `CMakeLists.txt` | Build system, packaging, install targets |

## API Cascade Path

Changes to the public C API must propagate through all layers:

`lib/include/amd_cuid.h` → `lib/src/cuid.cc` → `cli/amdcuid_tool.cc` → `daemon/amdcuid_daemon.cc` → `docs/`


## When to Regenerate

- New top-level directories added
- Major restructuring (files moved between directories)
- New language bindings added
- Build system changes (new packaging targets, new CMakeLists.txt files)