Skip to content

refactor!: Rename .yml files to .yaml for consistency.#1617

Merged
junhaoliao merged 1 commit intoy-scope:mainfrom
junhaoliao:yml-to-yaml
Nov 18, 2025
Merged

refactor!: Rename .yml files to .yaml for consistency.#1617
junhaoliao merged 1 commit intoy-scope:mainfrom
junhaoliao:yml-to-yaml

Conversation

@junhaoliao
Copy link
Member

@junhaoliao junhaoliao commented Nov 18, 2025

Description

Renames all .yml YAML files to .yaml extensions. Updates all code and documentation references to match the renaming. This ensures consistency across the codebase.

BREAKING changes

  1. etc/clp-config.yml → etc/clp-config.yaml
    • Main CLP configuration file that users modify
  2. etc/credentials.template.yml → etc/credentials.template.yaml
    • Template file users copy to create credentials

Migration required

Existing users upgrading to this version will need to:

# Rename config files
mv etc/clp-config.yml etc/clp-config.yaml
mv etc/credentials.yml etc/credentials.yaml

Background

https://datatracker.ietf.org/doc/html/rfc9512.html#name-filename-extension

The "yaml" filename extension is the preferred one

Checklist

  • The PR satisfies the contribution guidelines.
  • This is a breaking change and that has been indicated in the PR title, OR this isn't a
    breaking change.
  • Necessary docs have been updated, OR no docs need to be updated.

Validation performed

  • Verified all .yml references have been updated using grep searches
  • Confirmed no remaining .yml references exist in code or documentation

Summary by CodeRabbit

  • Documentation

    • Updated all configuration and template file references to use .yaml extension instead of .yml throughout guides, setup instructions, and deployment configurations.
  • Configuration

    • Default configuration file paths now reference .yaml extension for consistency across all components and tools.

@junhaoliao junhaoliao requested a review from a team as a code owner November 18, 2025 00:48
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 18, 2025

Walkthrough

The pull request systematically updates file path references from .yml to .yaml extensions across the codebase. Changes affect configuration constants, application configuration paths, documentation links, deployment configurations, and build scripts to consistently use YAML extension naming.

Changes

Cohort / File(s) Change Summary
Configuration Constants
components/clp-py-utils/clp_py_utils/clp_config.py, components/clp-rust-utils/src/clp_config/package.rs
Updated public constants referencing default config and credentials file paths from .yml to .yaml extension
Application Configuration
components/clp-mcp-server/clp_mcp_server/clp_mcp_server.py, components/clp-package-utils/clp_package_utils/general.py, components/clp-package-utils/clp_package_utils/scripts/compress_from_s3.py
Updated default configuration file path references and error messages from .yml to .yaml
Issue Template Links
README.md, docs/src/index.md, docs/src/dev-docs/contributing-getting-started.md, docs/src/dev-docs/contributing-linting.md, docs/src/dev-docs/components-core/index.md
Updated bug report and feature request template links from .yml to .yaml in documentation
User Documentation Guides
docs/src/user-docs/guides-external-database.md, docs/src/user-docs/guides-mcp-server/index.md, docs/src/user-docs/guides-multi-host.md, docs/src/user-docs/guides-retention.md, docs/src/user-docs/guides-using-object-storage/clp-config.md, docs/src/user-docs/guides-using-presto.md, docs/src/user-docs/quick-start/*.md, docs/src/user-docs/quick-start/index.md
Updated configuration file references and code examples from .yml to .yaml across multiple guides
Deployment Configuration
docs/src/dev-docs/design-deployment-orchestration.md, tools/deployment/package/docker-compose-all.yaml, tools/deployment/presto-clp/scripts/init.py
Updated configuration file references in deployment documentation and container orchestration from .yml to .yaml
Build & Task Configuration
taskfile.yaml, taskfiles/lint.yaml
Updated task file references and lint configuration from .yml to .yaml
Package Configuration
components/package-template/src/etc/clp-config.yaml
Updated credentials file path reference in package template configuration

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

  • Large set of homogeneous, repetitive changes (systematic file extension updates)
  • Each individual change is trivial string replacement with no logic modifications
  • Primary review focus should be verification of consistency across files rather than logic analysis
  • Consider spot-checking a sample of files across different categories (constants, deployment, documentation) to ensure no references were missed

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: renaming .yml files to .yaml for consistency across the entire codebase.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f0fa3ee and c54cedc.

📒 Files selected for processing (25)
  • README.md (2 hunks)
  • components/clp-mcp-server/clp_mcp_server/clp_mcp_server.py (1 hunks)
  • components/clp-package-utils/clp_package_utils/general.py (1 hunks)
  • components/clp-package-utils/clp_package_utils/scripts/compress_from_s3.py (1 hunks)
  • components/clp-py-utils/clp_py_utils/clp_config.py (2 hunks)
  • components/clp-rust-utils/src/clp_config/package.rs (1 hunks)
  • components/package-template/src/etc/clp-config.yaml (1 hunks)
  • docs/src/dev-docs/components-core/index.md (1 hunks)
  • docs/src/dev-docs/contributing-getting-started.md (1 hunks)
  • docs/src/dev-docs/contributing-linting.md (1 hunks)
  • docs/src/dev-docs/design-deployment-orchestration.md (1 hunks)
  • docs/src/index.md (1 hunks)
  • docs/src/user-docs/guides-external-database.md (1 hunks)
  • docs/src/user-docs/guides-mcp-server/index.md (1 hunks)
  • docs/src/user-docs/guides-multi-host.md (3 hunks)
  • docs/src/user-docs/guides-retention.md (3 hunks)
  • docs/src/user-docs/guides-using-object-storage/clp-config.md (3 hunks)
  • docs/src/user-docs/guides-using-presto.md (2 hunks)
  • docs/src/user-docs/quick-start/clp-json.md (3 hunks)
  • docs/src/user-docs/quick-start/clp-text.md (3 hunks)
  • docs/src/user-docs/quick-start/index.md (1 hunks)
  • taskfile.yaml (2 hunks)
  • taskfiles/lint.yaml (1 hunks)
  • tools/deployment/package/docker-compose-all.yaml (10 hunks)
  • tools/deployment/presto-clp/scripts/init.py (2 hunks)
🧰 Additional context used
🧠 Learnings (48)
📓 Common learnings
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1178
File: components/clp-package-utils/clp_package_utils/controller.py:757-757
Timestamp: 2025-10-17T19:59:35.299Z
Learning: In the y-scope/clp repository, prefer long-form command-line flags (e.g., `--recursive`) over short-form flags (e.g., `-R`) for readability, even if the long form is GNU-specific.
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1466
File: .github/workflows/clp-rust-checks.yaml:14-15
Timestamp: 2025-10-22T21:14:12.225Z
Learning: Repository y-scope/clp: In GitHub Actions workflows (e.g., .github/workflows/clp-rust-checks.yaml), YAML anchors/aliases are acceptable and preferred to avoid duplication; if actionlint flags an alias node (e.g., on push.paths) as an error, treat it as a tool limitation and do not require inlining unless the team asks to silence the warning.
📚 Learning: 2025-10-22T21:14:12.225Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1466
File: .github/workflows/clp-rust-checks.yaml:14-15
Timestamp: 2025-10-22T21:14:12.225Z
Learning: Repository y-scope/clp: In GitHub Actions workflows (e.g., .github/workflows/clp-rust-checks.yaml), YAML anchors/aliases are acceptable and preferred to avoid duplication; if actionlint flags an alias node (e.g., on push.paths) as an error, treat it as a tool limitation and do not require inlining unless the team asks to silence the warning.

Applied to files:

  • README.md
  • docs/src/user-docs/guides-using-object-storage/clp-config.md
  • taskfile.yaml
  • docs/src/index.md
  • docs/src/dev-docs/contributing-getting-started.md
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-10-22T21:02:31.113Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 0
File: :0-0
Timestamp: 2025-10-22T21:02:31.113Z
Learning: Repository y-scope/clp: Maintain deterministic CI/builds for Rust; add a check to verify Cargo.lock is in sync with Cargo.toml without updating dependencies (non-mutating verification in clp-rust-checks workflow).

Applied to files:

  • README.md
  • docs/src/index.md
  • components/clp-rust-utils/src/clp_config/package.rs
  • docs/src/dev-docs/components-core/index.md
  • docs/src/dev-docs/contributing-getting-started.md
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-10-02T15:48:58.961Z
Learnt from: 20001020ycx
Repo: y-scope/clp PR: 1368
File: components/clp-mcp-server/clp_mcp_server/__init__.py:11-15
Timestamp: 2025-10-02T15:48:58.961Z
Learning: In the clp-mcp-server component (components/clp-mcp-server/clp_mcp_server/__init__.py), the default host binding of 0.0.0.0 is intentional because the server is designed to be deployed in Docker containers where this binding is necessary to accept external connections.

Applied to files:

  • docs/src/user-docs/guides-mcp-server/index.md
📚 Learning: 2025-08-25T06:32:48.313Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1261
File: docs/src/dev-guide/components-core/manylinux-2-28-deps-install.md:24-24
Timestamp: 2025-08-25T06:32:48.313Z
Learning: In the CLP project documentation, when linking to scripts or other files within the repository, use relative paths (e.g., components/core/tools/scripts/...) rather than commit-pinned GitHub URLs to ensure docs and referenced files always belong to the same commit and stay synchronized.

Applied to files:

  • docs/src/user-docs/guides-using-object-storage/clp-config.md
  • docs/src/dev-docs/design-deployment-orchestration.md
  • docs/src/user-docs/guides-external-database.md
  • docs/src/user-docs/quick-start/clp-json.md
  • docs/src/user-docs/quick-start/clp-text.md
📚 Learning: 2025-01-15T16:36:48.932Z
Learnt from: haiqi96
Repo: y-scope/clp PR: 651
File: components/job-orchestration/job_orchestration/scheduler/job_config.py:29-39
Timestamp: 2025-01-15T16:36:48.932Z
Learning: The S3 service in the clp codebase only supports AWS S3, where region_code is mandatory. Other S3-like services are not supported.

Applied to files:

  • docs/src/user-docs/guides-using-object-storage/clp-config.md
📚 Learning: 2025-01-13T21:18:54.629Z
Learnt from: haiqi96
Repo: y-scope/clp PR: 662
File: components/job-orchestration/job_orchestration/executor/query/extract_stream_task.py:167-186
Timestamp: 2025-01-13T21:18:54.629Z
Learning: In the CLP system, streams can be deterministically recreated if needed for debugging purposes, so it's acceptable to delete them even if their S3 upload fails.

Applied to files:

  • docs/src/user-docs/guides-using-object-storage/clp-config.md
📚 Learning: 2025-09-25T19:26:32.436Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1335
File: taskfiles/docker-images.yaml:15-15
Timestamp: 2025-09-25T19:26:32.436Z
Learning: In the CLP project's Taskfile, the `:package` task creates the G_PACKAGE_BUILD_DIR directory structure, so any task that depends on `:package` (like `docker-images:package`) can safely assume this directory exists without needing additional mkdir commands.

Applied to files:

  • docs/src/dev-docs/design-deployment-orchestration.md
  • taskfile.yaml
📚 Learning: 2025-09-04T12:26:54.788Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 1170
File: tools/deployment/presto-clp/scripts/generate-metadata-filter-file.py:0-0
Timestamp: 2025-09-04T12:26:54.788Z
Learning: The tools/deployment/presto-clp/coordinator/config-template/ directory already exists in the CLP deployment structure and contains configuration files, so directory creation is not needed when writing metadata-filter.json to this location.

Applied to files:

  • docs/src/dev-docs/design-deployment-orchestration.md
📚 Learning: 2025-10-20T21:05:30.417Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1413
File: tools/docker-images/clp-package/Dockerfile:22-24
Timestamp: 2025-10-20T21:05:30.417Z
Learning: In the clp repository's Dockerfiles, ENV directives should be consolidated into multi-line ENV statements when possible to reduce image layers. ENV statements should only be split into separate commands when consolidation is not possible due to dependencies (e.g., when later variables must reference earlier ones that need to be set first, or when PATH must be modified sequentially).

Applied to files:

  • docs/src/dev-docs/design-deployment-orchestration.md
  • tools/deployment/package/docker-compose-all.yaml
📚 Learning: 2025-10-13T03:32:19.293Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1414
File: tools/docker-images/clp-package/Dockerfile:20-24
Timestamp: 2025-10-13T03:32:19.293Z
Learning: In the clp repository's Dockerfiles (e.g., tools/docker-images/clp-package/Dockerfile), ENV directives should be split into separate lines for readability rather than consolidated to reduce layer count. This is especially true for PATH modifications, as agreed upon in PR #1166. Later ENV settings may depend on earlier ones (e.g., referencing CLP_HOME).

Applied to files:

  • docs/src/dev-docs/design-deployment-orchestration.md
📚 Learning: 2025-08-25T16:27:50.549Z
Learnt from: davemarco
Repo: y-scope/clp PR: 1198
File: components/webui/server/src/plugins/app/Presto.ts:38-43
Timestamp: 2025-08-25T16:27:50.549Z
Learning: In the CLP webui Presto configuration, host and port are set via package settings (configurable), while user, catalog, and schema are set via environment variables (environment-specific). This mixed approach is intentional - settings are typically set by package and some values don't need to be package-configurable.

Applied to files:

  • docs/src/user-docs/guides-external-database.md
  • docs/src/user-docs/guides-using-presto.md
📚 Learning: 2025-08-15T21:48:46.674Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 1181
File: docs/src/user-guide/guides-retention.md:57-66
Timestamp: 2025-08-15T21:48:46.674Z
Learning: When dealing with timezone offset adjustments for retention periods in CLP, the correct formula is `adjusted_retention_period = retention_period - UTC_offset` (not using absolute value). For negative UTC offsets, this increases the retention period; for positive UTC offsets, this decreases it, properly compensating for how local timestamps are interpreted by the UTC-based garbage collector.

Applied to files:

  • docs/src/user-docs/guides-retention.md
📚 Learning: 2025-10-27T07:07:37.901Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1501
File: tools/deployment/presto-clp/scripts/init.py:10-13
Timestamp: 2025-10-27T07:07:37.901Z
Learning: In `tools/deployment/presto-clp/scripts/init.py`, the `DATABASE_COMPONENT_NAME` and `DATABASE_DEFAULT_PORT` constants are intentionally duplicated from `clp_py_utils.clp_config` because `clp_py_utils` is not installed in the Presto init script's runtime environment. The two flows are separate and this duplication is documented. There are plans to merge these flows after a future release.

Applied to files:

  • docs/src/user-docs/guides-using-presto.md
  • tools/deployment/presto-clp/scripts/init.py
  • components/clp-py-utils/clp_py_utils/clp_config.py
📚 Learning: 2025-07-23T09:54:45.185Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1122
File: components/core/src/clp/clp/CMakeLists.txt:175-195
Timestamp: 2025-07-23T09:54:45.185Z
Learning: In the CLP project, when reviewing CMakeLists.txt changes that introduce new compression library dependencies (BZip2, LibLZMA, LZ4, ZLIB), the team prefers to address conditional linking improvements in separate PRs rather than expanding the scope of focused migration PRs like the LibArchive task-based installation migration.

Applied to files:

  • taskfile.yaml
  • docs/src/dev-docs/components-core/index.md
  • docs/src/dev-docs/contributing-getting-started.md
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-07-01T14:52:15.217Z
Learnt from: jackluo923
Repo: y-scope/clp PR: 1054
File: components/core/tools/scripts/lib_install/musllinux_1_2/install-prebuilt-packages.sh:6-15
Timestamp: 2025-07-01T14:52:15.217Z
Learning: For installation scripts in the CLP project, maintain consistency in command patterns across different platforms (e.g., using separate update and install commands like `apk update && apk add`, `apt update && apt install`, `yum update && yum install`) rather than platform-specific optimizations, to ensure uniform script structure and readability.

Applied to files:

  • taskfile.yaml
📚 Learning: 2025-07-07T17:41:15.655Z
Learnt from: jackluo923
Repo: y-scope/clp PR: 1054
File: components/core/tools/scripts/lib_install/musllinux_1_2/install-prebuilt-packages.sh:27-32
Timestamp: 2025-07-07T17:41:15.655Z
Learning: In CLP installation scripts, consistency across platform scripts is prioritized over defensive programming improvements. For example, when extracting Task binaries with tar in `install-prebuilt-packages.sh`, the extraction pattern should remain consistent with other platform scripts rather than adding defensive flags like `--strip-components=1` to handle potential tarball layout changes.

Applied to files:

  • taskfile.yaml
📚 Learning: 2025-09-08T21:41:32.059Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 1291
File: docs/src/user-docs/quick-start/text-v-json.md:84-88
Timestamp: 2025-09-08T21:41:32.059Z
Learning: In the y-scope/clp project documentation, maintain informal contractions like "can't" and "don't" rather than formal alternatives like "cannot" and "do not" - the maintainer prefers a conversational tone.

Applied to files:

  • docs/src/user-docs/quick-start/clp-json.md
📚 Learning: 2025-06-18T20:48:48.990Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 968
File: docs/src/user-guide/quick-start/overview.md:53-54
Timestamp: 2025-06-18T20:48:48.990Z
Learning: CLP is designed to run on Linux systems where Python is typically pre-installed, so Python installation links are generally not needed in CLP documentation.

Applied to files:

  • docs/src/user-docs/quick-start/clp-json.md
📚 Learning: 2025-01-16T16:58:43.190Z
Learnt from: haiqi96
Repo: y-scope/clp PR: 651
File: components/clp-package-utils/clp_package_utils/scripts/compress.py:0-0
Timestamp: 2025-01-16T16:58:43.190Z
Learning: In the clp-package compression flow, path validation and error handling is performed at the scheduler level rather than in the compress.py script to maintain simplicity and avoid code duplication.

Applied to files:

  • components/clp-package-utils/clp_package_utils/scripts/compress_from_s3.py
  • tools/deployment/package/docker-compose-all.yaml
📚 Learning: 2025-09-04T13:51:02.311Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 1283
File: components/clp-package-utils/clp_package_utils/scripts/compress.py:206-210
Timestamp: 2025-09-04T13:51:02.311Z
Learning: In components/clp-package-utils/clp_package_utils/scripts/compress.py, an empty string ("") is a valid value for the --timestamp-key parameter, so validation should not treat empty strings as missing values.

Applied to files:

  • components/clp-package-utils/clp_package_utils/scripts/compress_from_s3.py
📚 Learning: 2024-11-18T16:49:20.248Z
Learnt from: haiqi96
Repo: y-scope/clp PR: 594
File: components/clp-package-utils/clp_package_utils/scripts/del_archives.py:56-65
Timestamp: 2024-11-18T16:49:20.248Z
Learning: When reviewing wrapper scripts in `components/clp-package-utils/clp_package_utils/scripts/`, note that it's preferred to keep error handling simple without adding extra complexity.

Applied to files:

  • components/clp-package-utils/clp_package_utils/scripts/compress_from_s3.py
📚 Learning: 2025-11-17T22:58:50.044Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 0
File: :0-0
Timestamp: 2025-11-17T22:58:50.044Z
Learning: In the y-scope/clp repository, when enabling new linting tools (ruff, mypy) on Python components, the team uses an incremental approach: first enable the tools with errors allowed (exit code 0), apply only safe auto-fixable fixes, then address remaining issues in follow-up PRs. During the initial enablement PR, reviews should focus on correctness of auto-fixes rather than flagging new code quality issues.

Applied to files:

  • taskfiles/lint.yaml
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-10-17T19:59:35.299Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1178
File: components/clp-package-utils/clp_package_utils/controller.py:757-757
Timestamp: 2025-10-17T19:59:35.299Z
Learning: In the y-scope/clp repository, prefer long-form command-line flags (e.g., `--recursive`) over short-form flags (e.g., `-R`) for readability, even if the long form is GNU-specific.

Applied to files:

  • docs/src/index.md
📚 Learning: 2025-09-04T12:26:54.788Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 1170
File: tools/deployment/presto-clp/scripts/generate-metadata-filter-file.py:0-0
Timestamp: 2025-09-04T12:26:54.788Z
Learning: The `set-up-config.sh` script in tools/deployment/presto-clp/scripts/ ensures that the output directory for metadata-filter.json already exists before calling generate-metadata-filter-file.py, so directory creation in the Python script is not strictly necessary.

Applied to files:

  • tools/deployment/presto-clp/scripts/init.py
📚 Learning: 2025-10-07T07:54:32.427Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1178
File: components/clp-py-utils/clp_py_utils/clp_config.py:47-47
Timestamp: 2025-10-07T07:54:32.427Z
Learning: In components/clp-py-utils/clp_py_utils/clp_config.py, the CONTAINER_AWS_CONFIG_DIRECTORY constant is intentionally set to pathlib.Path("/") / ".aws" (i.e., `/.aws`) rather than a user-specific home directory. This hardcoded path is part of the container orchestration design.

Applied to files:

  • tools/deployment/presto-clp/scripts/init.py
  • components/clp-package-utils/clp_package_utils/general.py
  • components/clp-py-utils/clp_py_utils/clp_config.py
  • tools/deployment/package/docker-compose-all.yaml
📚 Learning: 2025-11-10T05:19:56.600Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1575
File: components/clp-py-utils/clp_py_utils/clp_config.py:602-607
Timestamp: 2025-11-10T05:19:56.600Z
Learning: In the y-scope/clp repository, the `ApiServer` class in `components/clp-py-utils/clp_py_utils/clp_config.py` does not need a `transform_for_container()` method because no other containerized service depends on the API server - it's only accessed from the host, so no docker-network communication is expected.

Applied to files:

  • components/clp-package-utils/clp_package_utils/general.py
📚 Learning: 2025-07-05T03:38:16.779Z
Learnt from: quinntaylormitchell
Repo: y-scope/clp PR: 1069
File: docs/src/user-guide/quick-start/clp-json.md:135-152
Timestamp: 2025-07-05T03:38:16.779Z
Learning: The CLP project team has decided to refrain from using include directives in their documentation at present, preferring to maintain duplicated content rather than using shared includes or partials for de-duplication.

Applied to files:

  • docs/src/user-docs/quick-start/clp-text.md
📚 Learning: 2025-11-03T16:17:40.223Z
Learnt from: hoophalab
Repo: y-scope/clp PR: 1535
File: components/clp-rust-utils/src/clp_config/package/config.rs:47-61
Timestamp: 2025-11-03T16:17:40.223Z
Learning: In the y-scope/clp repository, the `ApiServer` struct in `components/clp-rust-utils/src/clp_config/package/config.rs` is a Rust-native configuration type and does not mirror any Python code, unlike other structs in the same file (Config, Database, ResultsCache, Package) which are mirrors of Python definitions.

Applied to files:

  • components/clp-rust-utils/src/clp_config/package.rs
  • docs/src/user-docs/quick-start/index.md
📚 Learning: 2025-10-22T21:01:31.391Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 0
File: :0-0
Timestamp: 2025-10-22T21:01:31.391Z
Learning: In y-scope/clp, for the clp-rust-checks workflow (GitHub Actions) and the Taskfile target deps:lock:check-rust, we should verify Rust Cargo.lock is in sync with Cargo.toml using a non-mutating method (e.g., cargo metadata --locked / cargo check --locked) to keep CI deterministic and avoid updating dependencies during validation.

Applied to files:

  • components/clp-rust-utils/src/clp_config/package.rs
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-08-25T07:27:19.449Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1262
File: docs/src/dev-guide/components-core/index.md:50-50
Timestamp: 2025-08-25T07:27:19.449Z
Learning: In the CLP project, nlohmann_json version 3.11.3 is installed through their dependency management process, but they don't enforce version constraints in CMake find_package calls - they control versions through installation rather than CMake version pinning.

Applied to files:

  • docs/src/user-docs/quick-start/index.md
📚 Learning: 2025-09-02T13:35:33.396Z
Learnt from: anlowee
Repo: y-scope/clp PR: 1228
File: tools/deployment/presto-clp/scripts/init.py:298-306
Timestamp: 2025-09-02T13:35:33.396Z
Learning: In the CLP codebase, all configuration values loaded from YAML files are string values, so functions that retrieve config values should use Optional[str] rather than Optional[Any] for type hints.

Applied to files:

  • components/clp-py-utils/clp_py_utils/clp_config.py
📚 Learning: 2025-10-27T04:05:01.560Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1507
File: taskfiles/deps/lock.yaml:66-76
Timestamp: 2025-10-27T04:05:01.560Z
Learning: In the CLP project, the `uv` CLI tool is documented as a prerequisite in docs/src/dev-docs/building-package.md and is not installed via a task dependency like the rust toolchain. UV is expected to be available in the environment rather than being provisioned by the taskfile system.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-08-09T04:07:27.083Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1156
File: components/core/CMakeLists.txt:772-772
Timestamp: 2025-08-09T04:07:27.083Z
Learning: In the CLP project's CMakeLists.txt, when reviewing changes related to the ${zstd_TARGET} variable usage in test linking, the team is planning a refactoring PR to improve this mechanism. Guards for undefined target variables should be deferred to that separate PR rather than being added in focused dependency migration PRs.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
📚 Learning: 2025-08-29T07:31:24.032Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1271
File: components/core/tools/scripts/lib_install/centos-stream-9/install-prebuilt-packages.sh:41-43
Timestamp: 2025-08-29T07:31:24.032Z
Learning: In CLP's build tool installation scripts, uv version constraints should use lower bound constraints (uv>=0.8) rather than exact version pinning, following the same philosophy used for other build tools to accommodate platform differences while ensuring minimum required functionality.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-08-29T07:26:53.532Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1271
File: components/core/tools/scripts/lib_install/centos-stream-9/install-prebuilt-packages.sh:27-33
Timestamp: 2025-08-29T07:26:53.532Z
Learning: In CLP's build tool installation scripts, CMake version constraints should accommodate platform differences rather than using exact version pinning. Range constraints like "cmake>=3.23,<3.24" are preferred over exact pinning (cmake==3.23.5) to allow for platform-specific package availability while maintaining required version bounds.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
📚 Learning: 2024-11-26T19:12:43.982Z
Learnt from: LinZhihao-723
Repo: y-scope/clp PR: 486
File: components/core/tests/test-error_handling.cpp:37-38
Timestamp: 2024-11-26T19:12:43.982Z
Learning: In the CLP project, C++20 is used, allowing the utilization of C++20 features such as class template argument deduction (CTAD) with `std::array`.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
📚 Learning: 2025-08-13T19:58:26.058Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1184
File: taskfiles/deps/main.yaml:0-0
Timestamp: 2025-08-13T19:58:26.058Z
Learning: In the CLP project, custom CMake find modules (like FindLibLZMA.cmake) are designed to flexibly link against either shared or static libraries based on availability, rather than requiring both variants to be built. The find modules use flags like LibLZMA_USE_STATIC_LIBS and temporarily modify CMAKE_FIND_LIBRARY_SUFFIXES to prefer the desired library type while gracefully falling back if needed.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
📚 Learning: 2025-08-04T17:26:17.098Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1124
File: components/core/CMakeLists.txt:167-170
Timestamp: 2025-08-04T17:26:17.098Z
Learning: In CLP's CMake configuration for BZip2, Bill-hbrhbr prefers using HINTS parameter for path-based resolution rather than version pinning in find_package(). The primary concern is ensuring the task-installed BZip2 is found instead of system copies, not enforcing specific versions.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
📚 Learning: 2025-06-27T01:49:15.724Z
Learnt from: sitaowang1998
Repo: y-scope/clp PR: 1044
File: .github/workflows/clp-core-build-macos.yaml:0-0
Timestamp: 2025-06-27T01:49:15.724Z
Learning: In the clp project, manually setting LDFLAGS for library paths can cause runtime errors because it interferes with CMake's built-in library discovery and linking mechanisms. CMake can identify and correctly link to libraries on its own without requiring manual LDFLAGS configuration.

Applied to files:

  • docs/src/dev-docs/components-core/index.md
📚 Learning: 2025-10-13T03:24:35.074Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1405
File: components/clp-package-utils/pyproject.toml:5-15
Timestamp: 2025-10-13T03:24:35.074Z
Learning: In the y-scope/clp repository, the Python 3.9 to 3.10 version requirement change was intentionally deferred to a separate PR (after PR #1405) to reduce review effort, as decided in an offline discussion between junhaoliao and kirkrodrigues.

Applied to files:

  • docs/src/dev-docs/contributing-getting-started.md
📚 Learning: 2025-09-25T05:13:13.298Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1178
File: components/clp-package-utils/clp_package_utils/controller.py:217-223
Timestamp: 2025-09-25T05:13:13.298Z
Learning: The compression scheduler service in CLP runs with CLP_UID_GID (current user's UID:GID) rather than CLP_SERVICE_CONTAINER_UID_GID (999:999), unlike infrastructure services such as database, queue, redis, and results cache which run with the service container UID:GID.

Applied to files:

  • tools/deployment/package/docker-compose-all.yaml
📚 Learning: 2025-09-28T15:00:22.170Z
Learnt from: LinZhihao-723
Repo: y-scope/clp PR: 1340
File: components/job-orchestration/job_orchestration/executor/compress/compression_task.py:528-528
Timestamp: 2025-09-28T15:00:22.170Z
Learning: In components/job-orchestration/job_orchestration/executor/compress/compression_task.py, there is a suggestion to refactor from passing logger as a parameter through multiple functions to creating a ClpCompressor class that takes the logger as a class member, with current helper functions becoming private member functions.

Applied to files:

  • tools/deployment/package/docker-compose-all.yaml
📚 Learning: 2024-11-17T23:24:08.862Z
Learnt from: haiqi96
Repo: y-scope/clp PR: 569
File: components/job-orchestration/job_orchestration/scheduler/query/query_scheduler.py:76-77
Timestamp: 2024-11-17T23:24:08.862Z
Learning: The `query_scheduler.py` file operates with single threading, and multithreading is not used.

Applied to files:

  • tools/deployment/package/docker-compose-all.yaml
📚 Learning: 2025-10-20T20:19:40.504Z
Learnt from: 20001020ycx
Repo: y-scope/clp PR: 1436
File: components/clp-mcp-server/clp_mcp_server/clp_mcp_server.py:22-27
Timestamp: 2025-10-20T20:19:40.504Z
Learning: In the clp-mcp-server project (components/clp-mcp-server/clp_mcp_server/clp_mcp_server.py), the --config Click option should use exists=True to validate the configuration file path at option processing time, even though this requires the default path to exist on all machines.

Applied to files:

  • tools/deployment/package/docker-compose-all.yaml
  • components/clp-mcp-server/clp_mcp_server/clp_mcp_server.py
📚 Learning: 2025-08-25T00:45:05.464Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1242
File: components/core/tools/scripts/lib_install/ubuntu-jammy/install-prebuilt-packages.sh:39-41
Timestamp: 2025-08-25T00:45:05.464Z
Learning: Task v3.44.1 causes issues in the clp-ffi-js project (issue #110), so CLP should avoid upgrading to v3.44.1 and stick with v3.44.0 for now.

Applied to files:

  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-08-25T00:45:05.464Z
Learnt from: junhaoliao
Repo: y-scope/clp PR: 1242
File: components/core/tools/scripts/lib_install/ubuntu-jammy/install-prebuilt-packages.sh:39-41
Timestamp: 2025-08-25T00:45:05.464Z
Learning: Task v3.44.1 has a regression that breaks shell command processing, particularly rsync commands with brace expansion (e.g., `file.{d.ts,js,wasm}`). This causes CI failures in clp-ffi-js project (issue #110), so CLP should avoid v3.44.1 and use v3.44.0 instead, which fixes the dynamic variable bug without the shell processing regression.

Applied to files:

  • docs/src/dev-docs/contributing-linting.md
📚 Learning: 2025-08-25T06:29:59.610Z
Learnt from: Bill-hbrhbr
Repo: y-scope/clp PR: 1261
File: .github/workflows/clp-core-build.yaml:294-332
Timestamp: 2025-08-25T06:29:59.610Z
Learning: In the CLP project, Bill-hbrhbr prefers a "fail fast" approach for CI workflows - allowing potential command availability issues (like getconf in musllinux) to surface through CI failures rather than preemptively adding fallback logic, as they will fix issues when they occur.

Applied to files:

  • docs/src/dev-docs/contributing-linting.md
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (15)
  • GitHub Check: musllinux_1_2-x86_64-static-linked-bins
  • GitHub Check: musllinux_1_2-x86_64-dynamic-linked-bins
  • GitHub Check: ubuntu-jammy-static-linked-bins
  • GitHub Check: ubuntu-jammy-dynamic-linked-bins
  • GitHub Check: package-image
  • GitHub Check: ubuntu-jammy-lint
  • GitHub Check: centos-stream-9-dynamic-linked-bins
  • GitHub Check: centos-stream-9-static-linked-bins
  • GitHub Check: manylinux_2_28-x86_64-static-linked-bins
  • GitHub Check: manylinux_2_28-x86_64-dynamic-linked-bins
  • GitHub Check: build-macos (macos-15, false)
  • GitHub Check: build-macos (macos-15, true)
  • GitHub Check: rust-checks
  • GitHub Check: lint-check (macos-15)
  • GitHub Check: lint-check (ubuntu-24.04)
🔇 Additional comments (27)
docs/src/user-docs/quick-start/index.md (1)

48-48: Consistent documentation update for YAML filename extension.

The configuration file reference has been properly updated from etc/clp-config.yml to etc/clp-config.yaml in the note describing flavor configuration. This aligns with the PR's standardization effort and maintains documentation accuracy.

docs/src/user-docs/guides-external-database.md (1)

176-176: Configuration file references correctly updated to .yaml extension.

All three references to configuration files have been properly migrated from .yml to .yaml (lines 176, 183, 191), maintaining consistency with the PR objective and ensuring the documentation aligns with the renamed configuration files. The use of relative paths (etc/clp-config.yaml, etc/credentials.yaml) is appropriate for user-facing documentation.

Also applies to: 183-183, 191-191

docs/src/user-docs/quick-start/clp-text.md (3)

27-44: Configuration file reference update is correct.

The note and warning sections now correctly reference etc/clp-config.yaml. The updated references align with the PR objective and are consistent with the breaking changes documented.


61-63: Configuration option documentation updated appropriately.

The reference to etc/clp-config.yaml in the compression section documentation is correct and aligns with the configuration path renaming.


120-122: UI configuration reference updated correctly.

The reference to etc/clp-config.yaml in the UI search section is updated consistently with the other documentation changes in this file.

docs/src/dev-docs/contributing-linting.md (1)

39-39: Update to feature-request template URL is correct.

The template reference has been correctly updated from feature-request.yml to feature-request.yaml, aligning with the PR's systematic renaming effort. The URL parameter structure remains valid.

docs/src/user-docs/guides-retention.md (1)

54-55: Documentation path references updated consistently to .yaml extension.

All four configuration path references have been correctly updated from etc/clp-config.yml to etc/clp-config.yaml across the retention guide (introduction, archive retention, search result retention, and garbage collector sections). The changes are mechanically consistent and align with the PR's standardization objectives.

Also applies to: 60-60, 129-129, 164-164

docs/src/user-docs/guides-using-object-storage/clp-config.md (1)

12-12: Filename references consistently updated to .yaml extension.

The documentation correctly updates all three configuration file path references from clp-config.yml to clp-config.yaml, aligning with the PR's naming consistency objective. The changes preserve documentation context and structure.

Also applies to: 29-29, 62-62

docs/src/dev-docs/components-core/index.md (1)

132-132: Update template URL to use .yaml extension—looks good.

The change correctly updates the GitHub issue template URL parameter from feature-request.yml to feature-request.yaml, aligning with the PR's systematic renaming of YAML file extensions across the codebase. Assuming the corresponding template file has been renamed in this PR, the link will resolve correctly.

Note: The AI summary mentions two locations where this template is referenced, but only one marked change appears in the provided code. Verify there are no other references to feature-request.yml elsewhere in this file that may have been missed.

docs/src/dev-docs/contributing-getting-started.md (1)

16-18: Documentation links verified and approved.

The issue template reference links have been correctly updated from .yml to .yaml extensions. Verification confirms that both referenced template files in .github/ISSUE_TEMPLATE/ have been successfully renamed:

  • bug-report.yaml
  • feature-request.yaml

No old .yml files remain. The documentation changes are complete and accurate.

docs/src/user-docs/guides-multi-host.md (1)

51-92: ✓ File extension updates are consistent and correct.

All .yml file extension references have been systematically updated to .yaml throughout the documentation. The changes align with the official YAML recommendation to use .yaml since 2006, which is consistent with the PR's stated RFC preference.

The six changed segments follow the same pattern correctly:

  • Credentials template and configuration files (lines 51-52, 56)
  • Generated container-specific configuration (lines 74, 89)
  • References in instructional text (line 92)

No stray .yml references remain in the documentation.

components/clp-package-utils/clp_package_utils/scripts/compress_from_s3.py (1)

242-248: Log message now matches updated config filename

The error message now points to clp-config.yaml, which aligns with the updated default config path; no change in runtime behaviour. Looks good.

components/package-template/src/etc/clp-config.yaml (1)

14-16: Template credentials path consistent with .yaml rename

Sample credentials_file_path now uses etc/credentials.yaml, matching the new credentials filename in the rest of the project. No issues.

components/clp-package-utils/clp_package_utils/general.py (1)

342-344: Container config filename aligns with .yaml convention

get_container_config_filename now returns .<container>-config.yaml, which matches the updated shared/config naming elsewhere. This is an internal filename change only, so existing call sites should remain correct.

docs/src/user-docs/guides-mcp-server/index.md (1)

24-26: MCP server docs now reference the correct YAML config

The guide now points to etc/clp-config.yaml, matching the updated default config path used by the MCP server and other components. All good.

taskfile.yaml (1)

466-487: Packaging sed targets updated to clp-config.yaml

The package-tar task now uncomments and patches etc/clp-config.yaml instead of the old .yml file, which matches the updated template path in components/package-template/src/etc. The sequence of replacements still looks correct.

components/clp-mcp-server/clp_mcp_server/clp_mcp_server.py (1)

27-31: Default MCP config path moved to /etc/clp-config.yaml

The CLI now defaults to /etc/clp-config.yaml and the help text matches, which keeps the MCP server aligned with the new global config naming. Assuming packaging places the config at this path in your deployment images, this looks good.

taskfiles/lint.yaml (1)

92-103: Verification confirmed—config file exists

The .yamllint.yaml file is present in the repository. The lint task will run successfully without runtime failures due to missing configuration.

README.md (1)

104-115: Issue template links verified—changes are correct

The required issue template files exist in .github/ISSUE_TEMPLATE/ with the correct .yaml extensions that the README links reference. The changes maintain consistency across the repository.

docs/src/user-docs/quick-start/clp-json.md (1)

27-27: LGTM!

The documentation references have been consistently updated from etc/clp-config.yml to etc/clp-config.yaml across all occurrences in this file.

Also applies to: 59-60, 163-164

docs/src/index.md (1)

118-118: LGTM!

The GitHub issue template references have been correctly updated to use the .yaml extension.

Also applies to: 124-124

docs/src/user-docs/guides-using-presto.md (1)

36-36: LGTM!

The configuration file references in the Presto guide have been consistently updated to use the .yaml extension.

Also applies to: 199-199

tools/deployment/presto-clp/scripts/init.py (1)

57-57: LGTM!

The file path references have been correctly updated to use the .yaml extension for both the configuration and credentials files.

Also applies to: 158-158

components/clp-rust-utils/src/clp_config/package.rs (1)

5-6: LGTM!

The default configuration and credentials file path constants have been correctly updated to use the .yaml extension, maintaining consistency with the Python constants they mirror.

tools/deployment/package/docker-compose-all.yaml (1)

35-36: LGTM!

All configuration file references throughout the Docker Compose file have been systematically updated from .yml to .yaml, including volume mounts, CLI arguments, and environment variables. The changes are comprehensive and consistent.

Also applies to: 96-96, 237-237, 246-246, 351-351, 382-382, 399-399, 447-447, 479-479, 514-514

components/clp-py-utils/clp_py_utils/clp_config.py (1)

56-57: LGTM!

The configuration file path constants have been correctly updated to use the .yaml extension. These changes are consistent across the default config file path, credentials file path, and shared config filename.

Also applies to: 68-68

docs/src/dev-docs/design-deployment-orchestration.md (1)

196-196: LGTM!

The documentation correctly reflects the updated configuration file name with the .yaml extension.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Member

@davidlion davidlion left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if there is more involved testing that I could have done, but the changes lgtm and I couldn't find any other (relevant) files or content with .yml.

@junhaoliao junhaoliao merged commit 28c0af2 into y-scope:main Nov 18, 2025
30 checks passed
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.

2 participants