docs: Update the project-structure dev doc to cover all current components; Add missing README for the Rust components. - #2441
Conversation
WalkthroughAdded README documentation for several CLP components and updated the project structure documentation with component descriptions and repository links. ChangesDocumentation alignment
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@components/api-server/README.md`:
- Line 8: Update the Markdown link to the static API specification so its
visible text describes the target instead of using “here,” while preserving the
existing static-api-reference destination.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 5e9a87a6-d8b5-4272-8f00-55280717ebbb
📒 Files selected for processing (6)
components/api-server/README.mdcomponents/clp-rust-utils/README.mdcomponents/clp-tdl-package/README.mdcomponents/compression-coordinator/README.mdcomponents/log-ingestor/README.mddocs/src/dev-docs/design-project-structure.md
💤 Files with no reviewable changes (1)
- components/log-ingestor/README.md
| ## API reference | ||
|
|
||
| All available API endpoints are defined in the [OpenAPI][openapi] Specification. The generated | ||
| specification can be found [here][static-api-reference]. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Use descriptive link text for the generated specification.
Replace here with a label that identifies the target. This improves accessibility and link navigation.
Proposed change
- specification can be found [here][static-api-reference].
+ specification can be found in the [generated API specification][static-api-reference].📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| specification can be found [here][static-api-reference]. | |
| specification can be found in the [generated API specification][static-api-reference]. |
🧰 Tools
🪛 markdownlint-cli2 (0.23.1)
[warning] 8-8: Link text should be descriptive
(MD059, descriptive-link-text)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@components/api-server/README.md` at line 8, Update the Markdown link to the
static API specification so its visible text describes the target instead of
using “here,” while preserving the existing static-api-reference destination.
Source: Linters/SAST tools
Description
CLP's [components] directory has accumulated a number of Rust components, but most of them ship no README, and
design-project-structure.mdstill lists only the original set. As a result, someone browsing the repository has no way to tell whatclp-rust-utils,clp-tdl-package, orcompression-coordinatorare for, and the dev docs give an incomplete picture of how the project is laid out.This PR fills in both gaps:
api-server: describes the server and links to the pre-generated [OpenAPI] specification for the full endpoint reference.clp-rust-utils: identifies the crate as the shared utilities used by CLP's other Rust components.clp-tdl-package: describes the crate as CLP's Spider TDL package, and lists the tasks it currently bundles (compression::clp_s_s3_compressandcompression::commit).compression-coordinator: describes its role in fetching compression jobs, submitting them to Spider, and monitoring their progress.docs/src/dev-docs/design-project-structure.mdto list the components that were missing (api-server,clp-rust-utils,clp-tdl-package,compression-coordinator, andlog-ingestor), and clarifies a few of the existing entries (e.g.clp-py-utilsholds utilities shared by the Python components, andjob-orchestrationschedules both compression and search jobs).log-ingestorREADME.The new READMEs are intentionally brief: each states what the component is and what it's responsible for, without enumerating implementation details to follow the convention of the existing READMEs.
Checklist
breaking change.
Validation performed
Summary by CodeRabbit