HYPERFLEET-761 - docs: align to documentation to architecture standard#33
HYPERFLEET-761 - docs: align to documentation to architecture standard#33rh-amarin wants to merge 1 commit intoopenshift-hyperfleet:mainfrom
Conversation
…dards - Add CONTRIBUTING.md with development setup and common tasks - Add CHANGELOG.md following Keep a Changelog format - Add CLAUDE.md with AI agent optimization guidelines (<200 lines) - Update README.md to include Documentation section with architecture repo link
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
WalkthroughThis pull request adds four new documentation files to establish project guidelines and contribution workflows. The changes include a Estimated code review effort🎯 2 (Simple) | ⏱️ ~15 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@CLAUDE.md`:
- Around line 15-16: The validation step currently runs "cd terraform &&
terraform validate" without initializing providers; update the sequence so the
Terraform working directory is initialized before validation by running
"terraform init" (with backend setup as needed) prior to "terraform validate" —
locate the line containing "cd terraform && terraform validate" in CLAUDE.md and
insert or replace it with a two-step sequence that first runs "terraform init"
in the terraform directory and then runs "terraform validate".
In `@CONTRIBUTING.md`:
- Around line 9-10: Replace the personal-fork clone URL in the CONTRIBUTING.md
git clone line so contributors clone the canonical repository; change the
existing "git clone https://github.com/rh-amarin/hyperfleet-infra.git" command
to the project's official URL (e.g., "git clone
https://github.com/hyperfleet/hyperfleet-infra.git"), and ensure the adjacent
instructions (the "cd hyperfleet-infra" line) still match the renamed directory;
also mention or ensure the docs instruct users how to add a personal fork remote
if needed.
- Around line 199-205: The release/versioning guidance in CONTRIBUTING.md
conflicts with the SemVer claim in CHANGELOG.md; pick the intended policy and
make the docs consistent by updating one of the files: either change the SemVer
statement in CHANGELOG.md to reflect the non-SemVer practices described in
CONTRIBUTING.md (referencing the "Terraform modules", "Helm charts",
"Infrastructure changes", and "Image tags" bullets) or update the release
section in CONTRIBUTING.md to describe a SemVer-based release flow (including
git tags, helm chart versioning, and image tagging) so both documents align;
ensure the chosen policy is clearly stated and remove or amend the contradictory
statement.
🪄 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: CHILL
Plan: Pro
Run ID: 7c8f5503-3393-4b18-afe3-acdb4d7fdc3d
📒 Files selected for processing (4)
CHANGELOG.mdCLAUDE.mdCONTRIBUTING.mdREADME.md
| # 2. Validate Terraform configuration (requires backend setup) | ||
| cd terraform && terraform validate |
There was a problem hiding this comment.
Quick validation sequence is incomplete before terraform validate.
terraform validate typically needs initialized providers/modules; without terraform init, this flow can fail in a clean checkout.
Suggested fix
# 1. Validate Terraform formatting
cd terraform && terraform fmt -check -recursive
-# 2. Validate Terraform configuration (requires backend setup)
-cd terraform && terraform validate
+# 2. Initialize Terraform working directory
+cd terraform && terraform init -backend-config=envs/gke/dev.tfbackend
+
+# 3. Validate Terraform configuration
+cd terraform && terraform validate
-# 3. Validate Helm charts with dry-run
+# 4. Validate Helm charts with dry-run
make install-all DRY_RUN=true
-# 4. Check Makefile targets are valid
+# 5. Check Makefile targets are valid
make help📝 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.
| # 2. Validate Terraform configuration (requires backend setup) | |
| cd terraform && terraform validate | |
| # 1. Validate Terraform formatting | |
| cd terraform && terraform fmt -check -recursive | |
| # 2. Initialize Terraform working directory | |
| cd terraform && terraform init -backend-config=envs/gke/dev.tfbackend | |
| # 3. Validate Terraform configuration | |
| cd terraform && terraform validate | |
| # 4. Validate Helm charts with dry-run | |
| make install-all DRY_RUN=true | |
| # 5. Check Makefile targets are valid | |
| make help |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@CLAUDE.md` around lines 15 - 16, The validation step currently runs "cd
terraform && terraform validate" without initializing providers; update the
sequence so the Terraform working directory is initialized before validation by
running "terraform init" (with backend setup as needed) prior to "terraform
validate" — locate the line containing "cd terraform && terraform validate" in
CLAUDE.md and insert or replace it with a two-step sequence that first runs
"terraform init" in the terraform directory and then runs "terraform validate".
| git clone https://github.com/rh-amarin/hyperfleet-infra.git | ||
| cd hyperfleet-infra |
There was a problem hiding this comment.
Use the canonical repository URL for clone instructions.
The current command points to a personal fork, which can misdirect contributors and break expected remotes.
Suggested fix
-git clone https://github.com/rh-amarin/hyperfleet-infra.git
+git clone https://github.com/openshift-hyperfleet/hyperfleet-infra.git
cd hyperfleet-infra🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@CONTRIBUTING.md` around lines 9 - 10, Replace the personal-fork clone URL in
the CONTRIBUTING.md git clone line so contributors clone the canonical
repository; change the existing "git clone
https://github.com/rh-amarin/hyperfleet-infra.git" command to the project's
official URL (e.g., "git clone
https://github.com/hyperfleet/hyperfleet-infra.git"), and ensure the adjacent
instructions (the "cd hyperfleet-infra" line) still match the renamed directory;
also mention or ensure the docs instruct users how to add a personal fork remote
if needed.
| This repository does not follow traditional semantic versioning for releases. Instead: | ||
|
|
||
| - **Terraform modules** are versioned through git tags and referenced in consuming projects | ||
| - **Helm charts** are stored in component repositories (`hyperfleet-api`, `hyperfleet-sentinel`, `hyperfleet-adapter`) and pulled via helm-git plugin | ||
| - **Infrastructure changes** are deployed directly from `main` branch after review and approval | ||
| - **Image tags** default to component versions (e.g., `v0.1.0` from upstream releases) | ||
|
|
There was a problem hiding this comment.
Release/versioning policy conflicts with CHANGELOG.md.
This section says releases are not traditional SemVer, while CHANGELOG.md states the project adheres to SemVer. Keep one consistent policy to avoid contributor confusion.
Suggested fix (if SemVer is intended)
-This repository does not follow traditional semantic versioning for releases. Instead:
+This repository follows semantic versioning for repository tags and changelog entries. In practice:📝 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.
| This repository does not follow traditional semantic versioning for releases. Instead: | |
| - **Terraform modules** are versioned through git tags and referenced in consuming projects | |
| - **Helm charts** are stored in component repositories (`hyperfleet-api`, `hyperfleet-sentinel`, `hyperfleet-adapter`) and pulled via helm-git plugin | |
| - **Infrastructure changes** are deployed directly from `main` branch after review and approval | |
| - **Image tags** default to component versions (e.g., `v0.1.0` from upstream releases) | |
| This repository follows semantic versioning for repository tags and changelog entries. In practice: | |
| - **Terraform modules** are versioned through git tags and referenced in consuming projects | |
| - **Helm charts** are stored in component repositories (`hyperfleet-api`, `hyperfleet-sentinel`, `hyperfleet-adapter`) and pulled via helm-git plugin | |
| - **Infrastructure changes** are deployed directly from `main` branch after review and approval | |
| - **Image tags** default to component versions (e.g., `v0.1.0` from upstream releases) |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@CONTRIBUTING.md` around lines 199 - 205, The release/versioning guidance in
CONTRIBUTING.md conflicts with the SemVer claim in CHANGELOG.md; pick the
intended policy and make the docs consistent by updating one of the files:
either change the SemVer statement in CHANGELOG.md to reflect the non-SemVer
practices described in CONTRIBUTING.md (referencing the "Terraform modules",
"Helm charts", "Infrastructure changes", and "Image tags" bullets) or update the
release section in CONTRIBUTING.md to describe a SemVer-based release flow
(including git tags, helm chart versioning, and image tagging) so both documents
align; ensure the chosen policy is clearly stated and remove or amend the
contradictory statement.
Align with project structure standards adding:
Summary by CodeRabbit