semantic-map and claude commands/skills#2902
semantic-map and claude commands/skills#2902newtonheath wants to merge 3 commits intoopenshift:masterfrom
Conversation
⏺ Audit complete. Validation passed: 122 markdown files OK. Audit Summary ┌────────────────────────────┬─────────┬───────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ Agent │ Modules │ Fixed │ Key Findings │ ├────────────────────────────┼─────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ cmd/contrib/hack │ 21 │ 7 │ Signature corrections, command name fixes, ghost capability removal │ ├────────────────────────────┼─────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ pkg/controller/* │ 37 │ 27 │ pkg/constants missing from 21 modules, 2 ghost capabilities fixed, clusterdeployment was missing 9 deps │ ├────────────────────────────┼─────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ pkg/creds/clients/operator │ 28 │ 3 │ awsclient missing metrics dep, gcpclient method count corrected │ ├────────────────────────────┼─────────┼───────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ pkg/test/util/remaining │ 35 │ 1 │ pkg/test/logger had wrong deps │ └────────────────────────────┴─────────┴───────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────┘ Totals across 121 modules: - 38 modules fixed in place - 83 modules passed with no changes - 2 ghost capabilities caught and corrected (argocdregister env var name, controlplanecerts controller name) - 0 score changes — all scores confirmed reasonable - Most common issue: pkg/constants missing from Internal Dependencies (ubiquitous cross-cutting import) The Hive semantic map is now fully built, analyzed, and audited. All 122 files (1 root.md + 121 module.md) pass validation.
📝 WalkthroughWalkthroughThis PR introduces a comprehensive semantic-map bundle for the OpenShift Hive repository, containing 200+ machine-generated and hand-authored documentation files. It includes module atlases for every significant package, command references, orchestration guides, and LLM prompt templates to support multi-agent code understanding workflows. ChangesSemantic-Map Documentation Bundle
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Reasoning: While the PR is voluminous (200+ files, 4,500+ lines added), the changes are primarily homogeneous and documentation-only. Individual module atlases follow consistent templates with minimal variation in structure (responsibility, API, dependencies, capabilities, understanding score). Spot-checking for accuracy, completeness, and correct API/identifier documentation across a representative sample (e.g., 10–15 modules and prompts) is sufficient; full line-by-line review of all identical template instances is not necessary. The main review focus is ensuring semantic correctness of API descriptions and prompt instruction clarity, not syntactic diversity.
✨ Finishing Touches🧪 Generate unit tests (beta)
|
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: newtonheath 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 |
There was a problem hiding this comment.
Actionable comments posted: 13
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
semantic-map/prompts-expanded/analyst.md (1)
1-24:⚠️ Potential issue | 🔴 Critical | 🏗️ Heavy liftCritical: Generated expanded prompt with hardcoded paths committed to source control.
This file contains expanded placeholders with hardcoded absolute paths (lines 7-11:
/Users/mworthin/GitHub/newtonheath/hive). According to the documentation inprompts-expanded/README.mdandorchestration-queue.md, theprompts-expanded/directory is generated by runningsemantic-map prompts expandto replace{{...}}placeholders with absolute paths.Issues:
- Generated expanded prompts with machine-specific paths committed to source control
- Other developers cannot use these expanded prompts without path corrections
- Defeats the purpose of the template expansion mechanism
Recommendation:
Addsemantic-map/prompts-expanded/*.mdto.gitignore(keeping only the README) and document that users should runsemantic-map prompts expandlocally to generate their own expanded prompts. The unexpanded templates insemantic-map/prompts/appear to be the source of truth that should be committed.🤖 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 `@semantic-map/prompts-expanded/analyst.md` around lines 1 - 24, This file committed machine-specific expanded prompts (semantic-map/prompts-expanded/analyst.md) containing hardcoded absolute paths; remove these generated files from source control and prevent future commits by adding semantic-map/prompts-expanded/*.md to .gitignore (keeping prompts-expanded/README.md), revert or delete the committed expanded .md (e.g., analyst.md), and update the repository docs or prompts-expanded/README.md to instruct developers to run the generator locally using "semantic-map prompts expand" (and point to the canonical templates in semantic-map/prompts/) so only the unexpanded templates are tracked.semantic-map/orchestration-queue.md (1)
1-168:⚠️ Potential issue | 🔴 Critical | 🏗️ Heavy liftCritical: Hardcoded absolute paths and generated file committed to source control.
This entire file contains machine-specific absolute paths (
/Users/mworthin/GitHub/newtonheath/hive) that will not work on other machines. Additionally, Line 3 explicitly states this file is "Generated bysemantic-map orchestrate" and should be "regenerate[d] after changingdocs/context", which indicates it should be generated locally rather than committed.Issues:
- Personal username
mworthinembedded in 121+ command examples- All clone/bundle paths are hardcoded to a specific macOS filesystem location
- Other developers cannot use these commands without manual path replacement
- Generated files in source control create merge conflicts and staleness issues
Recommendations:
- Add
semantic-map/orchestration-queue.mdto.gitignore- Document in the README that users should run
semantic-map orchestratelocally to generate their own queue- Alternatively, if this file must be committed, use placeholder variables like
${CLONE_DIR}or${BUNDLE_ROOT}instead of absolute paths🤖 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 `@semantic-map/orchestration-queue.md` around lines 1 - 168, The file semantic-map/orchestration-queue.md was committed with machine-specific absolute paths (e.g. occurrences of /Users/mworthin/... and the personal username) and a generated-header "Generated by `semantic-map orchestrate`"; fix this by removing the committed generated output or replacing the hardcoded paths in that file with placeholders (e.g. ${CLONE_DIR}, ${BUNDLE_ROOT}) and generic example commands, add semantic-map/orchestration-queue.md to .gitignore to prevent future commits of generated artifacts, and update the README to instruct developers to run `semantic-map orchestrate` locally to regenerate the queue (search for the "Generated by `semantic-map orchestrate`" string and the command examples table in semantic-map/orchestration-queue.md to locate the exact content to change).
🧹 Nitpick comments (26)
semantic-map/docs/context/contrib/pkg/createcluster/module.md (1)
9-9: ⚡ Quick winTighten constructor wording to avoid API ambiguity
NewCreateClusterCommand()appears to be a command constructor, so saying it “generates and applies” can be read as immediate behavior rather than runtime behavior. Consider rewording to “constructs the cobra command that generates/applies resources when executed.”🤖 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 `@semantic-map/docs/context/contrib/pkg/createcluster/module.md` at line 9, Update the documentation line describing NewCreateClusterCommand() to clarify it is a constructor, not performing work at import time: reword the description to something like “constructs the cobra command that generates and applies cluster deployment artifacts when executed” (or similar), so NewCreateClusterCommand() is clearly presented as returning a command that will perform generation/application at runtime when run.semantic-map/docs/context/pkg/test/manager/mock/module.md (1)
5-5: ⚡ Quick winAvoid hard-coding the full method list for generated mocks.
Line 5 is likely to drift as
manager.Managerevolves. Prefer describing behavior generically and pointing to generated source as the canonical API surface.Suggested doc tweak
-Generated gomock mock of the `controller-runtime/pkg/manager.Manager` interface. Provides `MockManager` with expectation recording for all Manager methods (Add, Start, GetClient, GetScheme, GetCache, GetConfig, GetRESTMapper, GetFieldIndexer, GetEventRecorderFor, GetLogger, GetWebhookServer, GetHTTPClient, GetAPIReader, GetControllerOptions, Elected, AddHealthzCheck, AddReadyzCheck, AddMetricsServerExtraHandler). +Generated gomock mock of the `controller-runtime/pkg/manager.Manager` interface. Provides `MockManager` and expectation recording (`EXPECT()`) for the full interface surface defined by the generated file.🤖 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 `@semantic-map/docs/context/pkg/test/manager/mock/module.md` at line 5, The doc currently hard-codes the full method list for the generated gomock type; update the text so it does not enumerate methods but instead describes the behavior of the generated mock (e.g., "Generated gomock mock of the controller-runtime/pkg/manager.Manager interface providing MockManager with expectation recording for Manager methods") and point readers to the generated source (the MockManager implementation) as the canonical API surface; specifically modify the description that mentions MockManager and manager.Manager to remove the explicit method list and add a one-line note referencing the generated mock file as authoritative.semantic-map/docs/context/contrib/pkg/verification/module.md (1)
26-28: 💤 Low valueConsider adding context for the Understanding Score.
The Understanding Score of 0.9 lacks explanation of the scale, criteria, or methodology used. Consider documenting what this score represents and how it was calculated to help readers interpret its meaning.
🤖 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 `@semantic-map/docs/context/contrib/pkg/verification/module.md` around lines 26 - 28, The "Understanding Score" heading currently shows "0.9" with no context; update module.md to add a brief explanatory subsection under "Understanding Score" that describes the score's scale (e.g., 0–1 or 0–100), the criteria or signals used to compute it (e.g., semantic similarity, completeness, confidence thresholds), the calculation/methodology (e.g., weighted average of X, Y, Z or model confidence), and a short interpretation/example (what 0.9 means in practice and any thresholds for good/acceptable/poor). Reference the "Understanding Score" header when adding this text so readers can immediately see scale, inputs, and meaning.semantic-map/docs/context/pkg/test/dnszone/module.md (1)
38-39: 💤 Low valueConsider documenting the Understanding Score methodology.
The score of 0.9 is provided without explanation of:
- What the scale represents (0-1 scale assumed)
- What criteria determine the score
- How it was calculated (manual vs. automated)
Adding a brief explanation or reference to scoring methodology would make this metric more actionable for readers. However, if this follows a standard format across all semantic-map module files, consider documenting the methodology once in a central location (e.g.,
semantic-map/README.md) and referencing it from here.🤖 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 `@semantic-map/docs/context/pkg/test/dnszone/module.md` around lines 38 - 39, The Understanding Score value "0.9" is shown with no methodology; update the module.md entry that contains the "0.9" score to either (A) add a one- or two-sentence explanation immediately adjacent to the score describing the scale (e.g., 0–1), the criteria used, and whether it was computed manually or automatically, or (B) add a brief note linking to a central scoring methodology document (e.g., add a reference to the README entry titled "Understanding Score methodology") and ensure that central document contains the scale definition, scoring criteria, and calculation method so all modules can reference it.semantic-map/docs/context/pkg/controller/argocdregister/module.md (1)
5-5: 💤 Low valueConsider mentioning HIVE_ARGOCD_NAMESPACE for completeness.
While the documentation correctly identifies
HIVE_ARGOCDas the enablement flag, the relatedHIVE_ARGOCD_NAMESPACEenvironment variable (which specifies where ArgoCD is deployed) is defined in the same constants file but not mentioned here. Including it would give readers a more complete picture of the ArgoCD integration configuration.📝 Optional enhancement
-Provides a controller that registers provisioned OpenShift clusters with ArgoCD by creating and maintaining ArgoCD cluster secrets. When a ClusterDeployment is installed, the controller generates an ArgoCD-compatible cluster secret in the ArgoCD namespace containing the API URL, cluster name, bearer token, and TLS configuration. On ClusterDeployment deletion, the controller cleans up the ArgoCD secret using a finalizer (`hive.openshift.io/argocd-cluster`). The controller is only active when the `HIVE_ARGOCD` environment variable is set (via `constants.ArgoCDEnvVar`). +Provides a controller that registers provisioned OpenShift clusters with ArgoCD by creating and maintaining ArgoCD cluster secrets. When a ClusterDeployment is installed, the controller generates an ArgoCD-compatible cluster secret in the ArgoCD namespace containing the API URL, cluster name, bearer token, and TLS configuration. On ClusterDeployment deletion, the controller cleans up the ArgoCD secret using a finalizer (`hive.openshift.io/argocd-cluster`). The controller is only active when the `HIVE_ARGOCD` environment variable is set (via `constants.ArgoCDEnvVar`), and the target namespace is configured via `HIVE_ARGOCD_NAMESPACE` (via `constants.ArgoCDNamespaceEnvVar`).🤖 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 `@semantic-map/docs/context/pkg/controller/argocdregister/module.md` at line 5, Update the module documentation to also mention the HIVE_ARGOCD_NAMESPACE environment variable: state that alongside enabling the controller via constants.ArgoCDEnvVar (HIVE_ARGOCD), HIVE_ARGOCD_NAMESPACE controls which namespace ArgoCD is deployed into and is used by the controller to place/read ArgoCD cluster secrets; reference the HIVE_ARGOCD_NAMESPACE constant (from the same constants file) so readers know where to find the definition and expected usage.semantic-map/docs/context/pkg/controller/fakeclusterinstall/module.md (1)
33-33: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain formatting consistency.
🤖 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 `@semantic-map/docs/context/pkg/controller/fakeclusterinstall/module.md` at line 33, Remove the trailing blank line at the end of semantic-map/docs/context/pkg/controller/fakeclusterinstall/module.md so the file ends immediately after the last non-empty line, ensuring there is no extra newline or blank line at the end of the document.semantic-map/docs/context/pkg/test/statefulset/module.md (1)
35-35: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain formatting consistency.
🤖 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 `@semantic-map/docs/context/pkg/test/statefulset/module.md` at line 35, Remove the trailing blank line at the end of the markdown file module.md so the file ends immediately after the last content line; open module.md, delete the final empty newline/blank line at EOF, and save the file to maintain consistent formatting.semantic-map/docs/context/pkg/test/job/module.md (1)
31-31: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain formatting consistency.
🤖 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 `@semantic-map/docs/context/pkg/test/job/module.md` at line 31, Remove the extra trailing blank line at the end of module.md (semantic-map/docs/context/pkg/test/job/module.md) so the file ends immediately after the last content line; simply delete the final blank newline character to maintain consistent formatting.semantic-map/docs/context/pkg/test/generic/module.md (1)
40-40: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain formatting consistency.
🤖 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 `@semantic-map/docs/context/pkg/test/generic/module.md` at line 40, The file module.md ends with an extra trailing blank line; open semantic-map/docs/context/pkg/test/generic/module.md (module.md) and remove the final empty newline so the file ends on the last content line without an extra blank line, then save to restore consistent formatting.semantic-map/docs/context/pkg/constants/module.md (1)
33-33: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain consistency with standard Markdown formatting.
🤖 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 `@semantic-map/docs/context/pkg/constants/module.md` at line 33, Remove the trailing blank line at the end of module.md so the file ends immediately after the last Markdown content line; simply delete the extra empty final newline to conform to standard Markdown formatting.semantic-map/docs/context/pkg/controller/images/module.md (1)
27-27: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line after the understanding score. While this doesn't affect functionality, removing it would maintain consistency with standard Markdown formatting conventions.
🤖 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 `@semantic-map/docs/context/pkg/controller/images/module.md` at line 27, The file ends with an extra trailing blank line after the "understanding score" content; remove that final empty line so the file ends immediately after the understanding score text to conform to standard Markdown formatting and maintain consistency in module.md.semantic-map/docs/context/pkg/manageddns/module.md (1)
27-27: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain formatting consistency.
🤖 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 `@semantic-map/docs/context/pkg/manageddns/module.md` at line 27, module.md ends with an extra trailing blank line; open the file and remove the final empty line so the file terminates immediately after the last non-empty line (ensure no extra newline characters after the last content line).semantic-map/docs/context/pkg/test/syncidentityprovider/module.md (1)
34-34: 💤 Low valueOptional: Remove trailing blank line.
The file ends with an extra blank line. Removing it would maintain formatting consistency.
🤖 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 `@semantic-map/docs/context/pkg/test/syncidentityprovider/module.md` at line 34, The file module.md ends with an extra trailing blank line; open module.md (the Markdown for the syncidentityprovider module) and remove the final empty newline so the file ends directly after the last content line, preserving existing formatting and line endings.semantic-map/docs/context/pkg/operator/assets/module.md (2)
39-39: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.88 +🤖 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 `@semantic-map/docs/context/pkg/operator/assets/module.md` at line 39, The file module.md is missing a trailing newline; update semantic-map/docs/context/pkg/operator/assets/module.md by adding a single newline character at the end of the file so the file ends with a blank line (ensure the file ends with '\n').
32-32: 💤 Low valueConsider alternative to "very large".
The phrase "very large" is somewhat vague. Consider using a more specific descriptor such as "extremely large" or "several thousand lines".
📝 Proposed fix
-- Single source file: `bindata.go` (auto-generated, very large). +- Single source file: `bindata.go` (auto-generated, several thousand lines).🤖 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 `@semantic-map/docs/context/pkg/operator/assets/module.md` at line 32, The description in module.md calling the auto-generated single source file "bindata.go" "very large" is vague; update the sentence in semantic-map/docs/context/pkg/operator/assets/module.md to use a more specific descriptor (e.g., "extremely large" or "several thousand lines") and/or include the approximate size or line count for bindata.go so the reader has concrete context; locate the sentence referencing "bindata.go" in module.md and replace "very large" with the chosen specific phrasing.semantic-map/docs/context/cmd/hiveadmission/module.md (1)
42-42: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.8 +🤖 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 `@semantic-map/docs/context/cmd/hiveadmission/module.md` at line 42, The file module.md is missing a trailing newline; open semantic-map/docs/context/cmd/hiveadmission/module.md (the Markdown file named module.md) and add a single newline character at the end of the file so it ends with a trailing newline, then save and commit the change.semantic-map/docs/context/pkg/test/assert/module.md (1)
35-35: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.9 +🤖 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 `@semantic-map/docs/context/pkg/test/assert/module.md` at line 35, The file module.md is missing a trailing newline at the end of file; open module.md and add a single newline character (ensure the file ends with "\n") so the file ends with a trailing newline to satisfy POSIX/Git conventions and avoid diff noise.semantic-map/docs/context/pkg/test/secret/module.md (1)
33-33: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.9 +🤖 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 `@semantic-map/docs/context/pkg/test/secret/module.md` at line 33, The file is missing a trailing newline; open the markdown file and add a single newline character at the end so the file ends with a blank line (ensure the final byte is a '\n'), then save to avoid git diff noise and comply with POSIX text file conventions.semantic-map/docs/context/contrib/pkg/utils/module.md (1)
44-44: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.85 +🤖 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 `@semantic-map/docs/context/contrib/pkg/utils/module.md` at line 44, The file semantic-map/docs/context/contrib/pkg/utils/module.md is missing a trailing newline; update module.md to ensure the file ends with a single newline character (i.e., add a final blank line / newline at EOF) so the file terminates with a trailing newline to satisfy Markdown/git conventions.semantic-map/docs/context/pkg/creds/ibmcloud/module.md (1)
28-28: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.85 +🤖 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 `@semantic-map/docs/context/pkg/creds/ibmcloud/module.md` at line 28, Add a single trailing newline character at the end of module.md so the file ends with a '\n' (ensure the last line is terminated), then save and commit the change to eliminate the missing-EOF-newline warning.semantic-map/docs/context/pkg/controller/clusterdeployment/module.md (1)
52-52: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.80 +🤖 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 `@semantic-map/docs/context/pkg/controller/clusterdeployment/module.md` at line 52, Add a single trailing newline at the end of the Markdown file module.md so the file ends with a newline character; open module.md, move cursor to the end of the file and insert one newline, then save and commit to eliminate the missing-trailing-newline warning.semantic-map/docs/context/pkg/test/configmap/module.md (1)
32-32: ⚡ Quick winAdd trailing newline at end of file.
Markdown files should end with a trailing newline following common conventions and to avoid git diff noise.
📝 Proposed fix
0.9 +🤖 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 `@semantic-map/docs/context/pkg/test/configmap/module.md` at line 32, The Markdown document is missing a trailing newline at EOF; open the impacted Markdown file and add a single newline character at the end of the file so the file ends with a blank line (ensure the final character is \n) to conform to POSIX/git conventions and avoid diff noise.semantic-map/prompts/README.md (2)
1-21: 💤 Low valueConsider consolidating duplicate content.
This file appears nearly identical to
semantic-map/prompts-expanded/README.md(lines 1-21). Both files have the same structure, table, and explanatory text. Consider whether both files are necessary or if one could reference the other to reduce maintenance burden.🤖 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 `@semantic-map/prompts/README.md` around lines 1 - 21, The README.md in semantic-map/prompts duplicates the content of semantic-map/prompts-expanded/README.md; remove the duplication by keeping one canonical README (e.g., prompts-expanded/README.md) and update the other (semantic-map/prompts/README.md) to either include a short pointer to the canonical file or import/reference it, ensuring the table and usage instructions (the lines describing architect.md, analyst.md, specialist.md, auditor.md and the expand command) are preserved in only one place; update any references to the moved/canonical file so tools that rely on prompts/ or prompts-expanded/ still find the documentation.
20-20: ⚡ Quick winUse placeholder paths in documentation examples.
Similar to the issue in
prompts-expanded/README.md, Line 20 contains a hardcoded example path with personal username. Consider using generic placeholders like{{CLONE}}/semantic-map/go-facts.jsonor/path/to/clone/semantic-map/go-facts.json.🤖 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 `@semantic-map/prompts/README.md` at line 20, Replace the hardcoded user-specific example path in README.md with a generic placeholder path; locate the hardcoded path string (the example showing prompts-expanded/ with an absolute path containing a personal username) and change it to use a placeholder such as {{CLONE}}/semantic-map/go-facts.json or /path/to/clone/semantic-map/go-facts.json so examples are reusable and non-personalized.semantic-map/prompts-expanded/README.md (1)
20-20: ⚡ Quick winUse placeholder paths in documentation examples.
Line 20 shows a hardcoded example path
/Users/mworthin/GitHub/newtonheath/hive/semantic-map/go-facts.jsonthat includes a personal username. For documentation, consider using generic placeholders like$HOME/projects/hive/semantic-map/go-facts.jsonor/path/to/clone/semantic-map/go-facts.jsonto make examples more universal.🤖 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 `@semantic-map/prompts-expanded/README.md` at line 20, Replace the hardcoded, user-specific absolute path string `/Users/mworthin/GitHub/newtonheath/hive/semantic-map/go-facts.json` in the README example with a generic placeholder (e.g. `$HOME/projects/hive/semantic-map/go-facts.json` or `/path/to/clone/semantic-map/go-facts.json`) so documentation examples are universal; update the same for any other personal paths in the sentence that mentions `prompts-expanded/` and `{{…}}` placeholders to use placeholder paths instead of a real username.semantic-map/docs/context/pkg/operator/metrics/module.md (1)
1-1: ⚡ Quick winStandardize heading format for consistency.
This file uses
# Module: pkg/operator/metricswhile all other module documentation files in this PR use# Module atlasas the top-level heading. Consider standardizing to match the established pattern.📝 Proposed fix for consistency
-# Module: pkg/operator/metrics +# Module atlas🤖 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 `@semantic-map/docs/context/pkg/operator/metrics/module.md` at line 1, Replace the top-level heading string "# Module: pkg/operator/metrics" with the standardized heading used across the repo ("# Module atlas") in module.md so it matches the other module docs; locate the existing heading text in the file and update it to the exact canonical heading to maintain consistency.
🤖 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 `@semantic-map/architect-summary.md`:
- Around line 3-8: The committed architect-summary.md contains a
machine-specific absolute path under the "Facts dir:" line (and the duplicate at
161) which leaks a username and breaks portability; update the generator that
writes this file (the code that produces the "Facts dir:" value) to emit
repo-relative paths or a placeholder (e.g., "./" or "{REPO_ROOT}") instead of
the full /Users/… path, and replace the literal path in the current artifact
with a repo-relative value; ensure any occurrences (including the duplicate at
161) and any example regenerate commands are similarly sanitized so
go-facts.json, repo-tree.json, and deps-graph.json references remain correct but
no absolute user paths are committed.
- Around line 159-161: The two conflicting metadata values "depth ≤ 4" (in the
heading "Repository tree preview (repo-tree.json, depth ≤ 4)") and "depth_limit:
8" (in the clone line "*depth_limit:* 8") must be made consistent; pick the
correct repository tree depth and update both the heading text "depth ≤ 4" and
the clone metadata "depth_limit: 8" to the same numeric value so consumers see a
single depth value.
In `@semantic-map/docs/context/contrib/pkg/certificate/module.md`:
- Line 10: Typo in the documented function name: replace occurrences of
NewCreateCertifcateCommand with the correctly spelled
NewCreateCertificateCommand in the module documentation; update the description
line that currently reads "`NewCreateCertifcateCommand() *cobra.Command` —
creates a Let's Encrypt certificate" to use `NewCreateCertificateCommand()` so
it matches the actual exported function symbol and avoids reference mismatches.
In `@semantic-map/docs/context/contrib/pkg/testresource/module.md`:
- Around line 5-11: The docs currently use two different command names
("test-resource" vs "resource"); update the module documentation so the command
name is consistent — choose one canonical name (e.g., "test-resource") and
change all occurrences in the Responsibility and Public Interface/API sections
to match; specifically update the descriptions referencing
NewTestResourceCommand(), and the listed subcommands (apply, patch) so they
refer to the chosen parent command name consistently.
In `@semantic-map/docs/context/contrib/pkg/verification/module.md`:
- Line 5: Update the module description for the verify-imports command to state
that it validates import alias naming rather than grouping/ordering: replace the
phrases on lines 5 and 11 that mention "grouping convention" and "group
ordering/separation" with text saying the command parses Go source files and
verifies each import's alias (importName) against YAML-configured
importPath→importName rules (as implemented by the verify-imports logic that
compares import paths to expected names from the YAML config).
In `@semantic-map/docs/context/pkg/creds/openstack/module.md`:
- Line 9: Update the documentation string for GetCreds to use a consistent
fallback path for the system clouds file; replace the shorter directory
reference with the explicit filename so both descriptions state the same
fallback (i.e., mention clouds.yaml in the system fallback), ensuring the
GetCreds(...) docs consistently list the exact fallback file path.
In `@semantic-map/docs/context/pkg/manageddns/module.md`:
- Line 1: Replace the nonstandard header "# Module: pkg/manageddns" with the
standardized header used across module atlas files, namely "# Module atlas";
update the top of the file (module.md) so the header exactly matches the
project's canonical module atlas header format to ensure consistency with other
docs.
In `@semantic-map/docs/context/pkg/test/selectorsyncset/module.md`:
- Around line 12-14: The docs list a WithNamespace(namespace) Option for
SelectorSyncSet but the resource is cluster-scoped; either remove the option
from the builder or document why it’s accepted. Update the builder in
pkg/test/selectorsyncset/selectorsyncset.go (the function/method providing
WithNamespace) to remove/disable the WithNamespace option for the cluster-scoped
resource (and adjust Generic/Option plumbing if needed), or alternatively update
the module.md entry to explain why WithNamespace is allowed for SelectorSyncSet
(explicitly referencing BasicBuilder(), FullBuilder(name, typer) and
Generic(opt) Option and the WithName/WithGeneration options) so the docs match
the CRD’s cluster scope.
In `@semantic-map/docs/context/root.md`:
- Around line 114-116: The "Understanding Score" entry uses "2.0" which doesn't
match the project's semantic-map scoring schema; replace the out-of-band value
"2.0" under the "Understanding Score" heading with the schema-compliant
representation used elsewhere in the PR (e.g., "2" or the canonical scoring
token the schema expects), update the surrounding text if it references the
numeric format, and run the same schema/validation used in this repo to confirm
the updated value conforms to the expected format.
In `@semantic-map/manifest.json`:
- Around line 4-8: The manifest.json currently contains machine-specific
absolute paths in the clone_dir and artifact_root fields which must not be
committed; remove these hardcoded values and make the file local-only by adding
semantic-map/manifest.json to .gitignore and updating documentation
(ANALYSIS.md) to instruct developers to run the local generator (semantic-map
analyze) to create the manifest, or alternatively change the tooling that reads
clone_dir/artifact_root to compute paths at runtime (instead of relying on the
committed clone_dir/artifact_root entries) so only relative paths or no paths
are stored in the committed manifest.
In `@semantic-map/prompts-expanded/architect.md`:
- Around line 7-14: Replace the machine-local absolute paths in
semantic-map/prompts-expanded/architect.md with repo-relative
placeholders/tokens and/or relative paths so the artifact is portable: update
the entries labeled "Architect digest (read first):", "Clone root path:",
"Artifact bundle root:", "Deterministic tree JSON:", "Deterministic Go facts
JSON:", "Package import graph:", "This bundle’s manifest (paths):", and the
optional "Chunk index for markdown retrieval testing:" to use placeholders like
{REPO_ROOT}, {BUNDLE_ROOT} or relative paths such as semantic-map/..., and
ensure fully expanded local paths remain only in generated/untracked output (and
add them to .gitignore if needed).
In `@semantic-map/prompts-expanded/auditor.md`:
- Line 19: Replace the HTML entity < with the literal less-than character in
the prompt sentence so it reads "If the score is < 0.8, output a numbered list
of discrepancies..." (locate the sentence "If the score is < 0.8" in
auditor.md and update it to use "<" directly); ensure no other HTML-entity
encoded comparisons remain in the file and that Markdown renders the comparison
correctly.
- Around line 7-11: The file semantic-map/prompts-expanded/auditor.md contains
machine-generated content with absolute local paths; remove or stop committing
generated artifacts by either adding the directory
semantic-map/prompts-expanded/ to .gitignore and documenting how to produce
auditor.md from the template, or delete prompts-expanded/ from the repo and
ensure only the template file semantic-map/prompts/auditor.md is tracked and
expanded at build/runtime; update repository docs or build scripts to show how
to generate the expanded file locally and ensure CI/build generates any required
expanded artifacts instead of storing hardcoded paths in version control.
---
Outside diff comments:
In `@semantic-map/orchestration-queue.md`:
- Around line 1-168: The file semantic-map/orchestration-queue.md was committed
with machine-specific absolute paths (e.g. occurrences of /Users/mworthin/...
and the personal username) and a generated-header "Generated by `semantic-map
orchestrate`"; fix this by removing the committed generated output or replacing
the hardcoded paths in that file with placeholders (e.g. ${CLONE_DIR},
${BUNDLE_ROOT}) and generic example commands, add
semantic-map/orchestration-queue.md to .gitignore to prevent future commits of
generated artifacts, and update the README to instruct developers to run
`semantic-map orchestrate` locally to regenerate the queue (search for the
"Generated by `semantic-map orchestrate`" string and the command examples table
in semantic-map/orchestration-queue.md to locate the exact content to change).
In `@semantic-map/prompts-expanded/analyst.md`:
- Around line 1-24: This file committed machine-specific expanded prompts
(semantic-map/prompts-expanded/analyst.md) containing hardcoded absolute paths;
remove these generated files from source control and prevent future commits by
adding semantic-map/prompts-expanded/*.md to .gitignore (keeping
prompts-expanded/README.md), revert or delete the committed expanded .md (e.g.,
analyst.md), and update the repository docs or prompts-expanded/README.md to
instruct developers to run the generator locally using "semantic-map prompts
expand" (and point to the canonical templates in semantic-map/prompts/) so only
the unexpanded templates are tracked.
---
Nitpick comments:
In `@semantic-map/docs/context/cmd/hiveadmission/module.md`:
- Line 42: The file module.md is missing a trailing newline; open
semantic-map/docs/context/cmd/hiveadmission/module.md (the Markdown file named
module.md) and add a single newline character at the end of the file so it ends
with a trailing newline, then save and commit the change.
In `@semantic-map/docs/context/contrib/pkg/createcluster/module.md`:
- Line 9: Update the documentation line describing NewCreateClusterCommand() to
clarify it is a constructor, not performing work at import time: reword the
description to something like “constructs the cobra command that generates and
applies cluster deployment artifacts when executed” (or similar), so
NewCreateClusterCommand() is clearly presented as returning a command that will
perform generation/application at runtime when run.
In `@semantic-map/docs/context/contrib/pkg/utils/module.md`:
- Line 44: The file semantic-map/docs/context/contrib/pkg/utils/module.md is
missing a trailing newline; update module.md to ensure the file ends with a
single newline character (i.e., add a final blank line / newline at EOF) so the
file terminates with a trailing newline to satisfy Markdown/git conventions.
In `@semantic-map/docs/context/contrib/pkg/verification/module.md`:
- Around line 26-28: The "Understanding Score" heading currently shows "0.9"
with no context; update module.md to add a brief explanatory subsection under
"Understanding Score" that describes the score's scale (e.g., 0–1 or 0–100), the
criteria or signals used to compute it (e.g., semantic similarity, completeness,
confidence thresholds), the calculation/methodology (e.g., weighted average of
X, Y, Z or model confidence), and a short interpretation/example (what 0.9 means
in practice and any thresholds for good/acceptable/poor). Reference the
"Understanding Score" header when adding this text so readers can immediately
see scale, inputs, and meaning.
In `@semantic-map/docs/context/pkg/constants/module.md`:
- Line 33: Remove the trailing blank line at the end of module.md so the file
ends immediately after the last Markdown content line; simply delete the extra
empty final newline to conform to standard Markdown formatting.
In `@semantic-map/docs/context/pkg/controller/argocdregister/module.md`:
- Line 5: Update the module documentation to also mention the
HIVE_ARGOCD_NAMESPACE environment variable: state that alongside enabling the
controller via constants.ArgoCDEnvVar (HIVE_ARGOCD), HIVE_ARGOCD_NAMESPACE
controls which namespace ArgoCD is deployed into and is used by the controller
to place/read ArgoCD cluster secrets; reference the HIVE_ARGOCD_NAMESPACE
constant (from the same constants file) so readers know where to find the
definition and expected usage.
In `@semantic-map/docs/context/pkg/controller/clusterdeployment/module.md`:
- Line 52: Add a single trailing newline at the end of the Markdown file
module.md so the file ends with a newline character; open module.md, move cursor
to the end of the file and insert one newline, then save and commit to eliminate
the missing-trailing-newline warning.
In `@semantic-map/docs/context/pkg/controller/fakeclusterinstall/module.md`:
- Line 33: Remove the trailing blank line at the end of
semantic-map/docs/context/pkg/controller/fakeclusterinstall/module.md so the
file ends immediately after the last non-empty line, ensuring there is no extra
newline or blank line at the end of the document.
In `@semantic-map/docs/context/pkg/controller/images/module.md`:
- Line 27: The file ends with an extra trailing blank line after the
"understanding score" content; remove that final empty line so the file ends
immediately after the understanding score text to conform to standard Markdown
formatting and maintain consistency in module.md.
In `@semantic-map/docs/context/pkg/creds/ibmcloud/module.md`:
- Line 28: Add a single trailing newline character at the end of module.md so
the file ends with a '\n' (ensure the last line is terminated), then save and
commit the change to eliminate the missing-EOF-newline warning.
In `@semantic-map/docs/context/pkg/manageddns/module.md`:
- Line 27: module.md ends with an extra trailing blank line; open the file and
remove the final empty line so the file terminates immediately after the last
non-empty line (ensure no extra newline characters after the last content line).
In `@semantic-map/docs/context/pkg/operator/assets/module.md`:
- Line 39: The file module.md is missing a trailing newline; update
semantic-map/docs/context/pkg/operator/assets/module.md by adding a single
newline character at the end of the file so the file ends with a blank line
(ensure the file ends with '\n').
- Line 32: The description in module.md calling the auto-generated single source
file "bindata.go" "very large" is vague; update the sentence in
semantic-map/docs/context/pkg/operator/assets/module.md to use a more specific
descriptor (e.g., "extremely large" or "several thousand lines") and/or include
the approximate size or line count for bindata.go so the reader has concrete
context; locate the sentence referencing "bindata.go" in module.md and replace
"very large" with the chosen specific phrasing.
In `@semantic-map/docs/context/pkg/operator/metrics/module.md`:
- Line 1: Replace the top-level heading string "# Module: pkg/operator/metrics"
with the standardized heading used across the repo ("# Module atlas") in
module.md so it matches the other module docs; locate the existing heading text
in the file and update it to the exact canonical heading to maintain
consistency.
In `@semantic-map/docs/context/pkg/test/assert/module.md`:
- Line 35: The file module.md is missing a trailing newline at the end of file;
open module.md and add a single newline character (ensure the file ends with
"\n") so the file ends with a trailing newline to satisfy POSIX/Git conventions
and avoid diff noise.
In `@semantic-map/docs/context/pkg/test/configmap/module.md`:
- Line 32: The Markdown document is missing a trailing newline at EOF; open the
impacted Markdown file and add a single newline character at the end of the file
so the file ends with a blank line (ensure the final character is \n) to conform
to POSIX/git conventions and avoid diff noise.
In `@semantic-map/docs/context/pkg/test/dnszone/module.md`:
- Around line 38-39: The Understanding Score value "0.9" is shown with no
methodology; update the module.md entry that contains the "0.9" score to either
(A) add a one- or two-sentence explanation immediately adjacent to the score
describing the scale (e.g., 0–1), the criteria used, and whether it was computed
manually or automatically, or (B) add a brief note linking to a central scoring
methodology document (e.g., add a reference to the README entry titled
"Understanding Score methodology") and ensure that central document contains the
scale definition, scoring criteria, and calculation method so all modules can
reference it.
In `@semantic-map/docs/context/pkg/test/generic/module.md`:
- Line 40: The file module.md ends with an extra trailing blank line; open
semantic-map/docs/context/pkg/test/generic/module.md (module.md) and remove the
final empty newline so the file ends on the last content line without an extra
blank line, then save to restore consistent formatting.
In `@semantic-map/docs/context/pkg/test/job/module.md`:
- Line 31: Remove the extra trailing blank line at the end of module.md
(semantic-map/docs/context/pkg/test/job/module.md) so the file ends immediately
after the last content line; simply delete the final blank newline character to
maintain consistent formatting.
In `@semantic-map/docs/context/pkg/test/manager/mock/module.md`:
- Line 5: The doc currently hard-codes the full method list for the generated
gomock type; update the text so it does not enumerate methods but instead
describes the behavior of the generated mock (e.g., "Generated gomock mock of
the controller-runtime/pkg/manager.Manager interface providing MockManager with
expectation recording for Manager methods") and point readers to the generated
source (the MockManager implementation) as the canonical API surface;
specifically modify the description that mentions MockManager and
manager.Manager to remove the explicit method list and add a one-line note
referencing the generated mock file as authoritative.
In `@semantic-map/docs/context/pkg/test/secret/module.md`:
- Line 33: The file is missing a trailing newline; open the markdown file and
add a single newline character at the end so the file ends with a blank line
(ensure the final byte is a '\n'), then save to avoid git diff noise and comply
with POSIX text file conventions.
In `@semantic-map/docs/context/pkg/test/statefulset/module.md`:
- Line 35: Remove the trailing blank line at the end of the markdown file
module.md so the file ends immediately after the last content line; open
module.md, delete the final empty newline/blank line at EOF, and save the file
to maintain consistent formatting.
In `@semantic-map/docs/context/pkg/test/syncidentityprovider/module.md`:
- Line 34: The file module.md ends with an extra trailing blank line; open
module.md (the Markdown for the syncidentityprovider module) and remove the
final empty newline so the file ends directly after the last content line,
preserving existing formatting and line endings.
In `@semantic-map/prompts-expanded/README.md`:
- Line 20: Replace the hardcoded, user-specific absolute path string
`/Users/mworthin/GitHub/newtonheath/hive/semantic-map/go-facts.json` in the
README example with a generic placeholder (e.g.
`$HOME/projects/hive/semantic-map/go-facts.json` or
`/path/to/clone/semantic-map/go-facts.json`) so documentation examples are
universal; update the same for any other personal paths in the sentence that
mentions `prompts-expanded/` and `{{…}}` placeholders to use placeholder paths
instead of a real username.
In `@semantic-map/prompts/README.md`:
- Around line 1-21: The README.md in semantic-map/prompts duplicates the content
of semantic-map/prompts-expanded/README.md; remove the duplication by keeping
one canonical README (e.g., prompts-expanded/README.md) and update the other
(semantic-map/prompts/README.md) to either include a short pointer to the
canonical file or import/reference it, ensuring the table and usage instructions
(the lines describing architect.md, analyst.md, specialist.md, auditor.md and
the expand command) are preserved in only one place; update any references to
the moved/canonical file so tools that rely on prompts/ or prompts-expanded/
still find the documentation.
- Line 20: Replace the hardcoded user-specific example path in README.md with a
generic placeholder path; locate the hardcoded path string (the example showing
prompts-expanded/ with an absolute path containing a personal username) and
change it to use a placeholder such as {{CLONE}}/semantic-map/go-facts.json or
/path/to/clone/semantic-map/go-facts.json so examples are reusable and
non-personalized.
🪄 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: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: c9eae3c3-e868-432b-a89a-db43492dbf0f
📒 Files selected for processing (145)
.claude/commands/semantic-map-light-query.md.claude/commands/semantic-map-light-validate.md.claude/skills/semantic-map-light/SKILL.mdsemantic-map/ANALYSIS.mdsemantic-map/architect-summary.mdsemantic-map/deps-graph.jsonsemantic-map/docs/context/cmd/hiveadmission/module.mdsemantic-map/docs/context/cmd/manager/module.mdsemantic-map/docs/context/cmd/operator/module.mdsemantic-map/docs/context/cmd/util/module.mdsemantic-map/docs/context/contrib/cmd/hiveutil/module.mdsemantic-map/docs/context/contrib/cmd/waitforjob/module.mdsemantic-map/docs/context/contrib/pkg/adm/managedns/module.mdsemantic-map/docs/context/contrib/pkg/adm/module.mdsemantic-map/docs/context/contrib/pkg/awsprivatelink/common/module.mdsemantic-map/docs/context/contrib/pkg/awsprivatelink/endpointvpc/module.mdsemantic-map/docs/context/contrib/pkg/awsprivatelink/module.mdsemantic-map/docs/context/contrib/pkg/certificate/module.mdsemantic-map/docs/context/contrib/pkg/clusterpool/module.mdsemantic-map/docs/context/contrib/pkg/createcluster/module.mdsemantic-map/docs/context/contrib/pkg/deprovision/module.mdsemantic-map/docs/context/contrib/pkg/report/module.mdsemantic-map/docs/context/contrib/pkg/testresource/module.mdsemantic-map/docs/context/contrib/pkg/utils/module.mdsemantic-map/docs/context/contrib/pkg/verification/module.mdsemantic-map/docs/context/contrib/pkg/version/module.mdsemantic-map/docs/context/hack/module.mdsemantic-map/docs/context/pkg/awsclient/mock/module.mdsemantic-map/docs/context/pkg/awsclient/module.mdsemantic-map/docs/context/pkg/azureclient/mock/module.mdsemantic-map/docs/context/pkg/azureclient/module.mdsemantic-map/docs/context/pkg/clusterresource/module.mdsemantic-map/docs/context/pkg/constants/module.mdsemantic-map/docs/context/pkg/controller/argocdregister/module.mdsemantic-map/docs/context/pkg/controller/awsprivatelink/module.mdsemantic-map/docs/context/pkg/controller/clusterclaim/module.mdsemantic-map/docs/context/pkg/controller/clusterdeployment/module.mdsemantic-map/docs/context/pkg/controller/clusterdeprovision/module.mdsemantic-map/docs/context/pkg/controller/clusterpool/module.mdsemantic-map/docs/context/pkg/controller/clusterpoolnamespace/module.mdsemantic-map/docs/context/pkg/controller/clusterprovision/module.mdsemantic-map/docs/context/pkg/controller/clusterrelocate/module.mdsemantic-map/docs/context/pkg/controller/clusterstate/module.mdsemantic-map/docs/context/pkg/controller/clustersync/module.mdsemantic-map/docs/context/pkg/controller/clusterversion/module.mdsemantic-map/docs/context/pkg/controller/controlplanecerts/module.mdsemantic-map/docs/context/pkg/controller/dnsendpoint/module.mdsemantic-map/docs/context/pkg/controller/dnsendpoint/nameserver/mock/module.mdsemantic-map/docs/context/pkg/controller/dnsendpoint/nameserver/module.mdsemantic-map/docs/context/pkg/controller/dnszone/module.mdsemantic-map/docs/context/pkg/controller/fakeclusterinstall/module.mdsemantic-map/docs/context/pkg/controller/hibernation/mock/module.mdsemantic-map/docs/context/pkg/controller/hibernation/module.mdsemantic-map/docs/context/pkg/controller/images/module.mdsemantic-map/docs/context/pkg/controller/machinepool/mock/module.mdsemantic-map/docs/context/pkg/controller/machinepool/module.mdsemantic-map/docs/context/pkg/controller/metrics/module.mdsemantic-map/docs/context/pkg/controller/privatelink/actuator/awsactuator/module.mdsemantic-map/docs/context/pkg/controller/privatelink/actuator/gcpactuator/module.mdsemantic-map/docs/context/pkg/controller/privatelink/actuator/mock/module.mdsemantic-map/docs/context/pkg/controller/privatelink/actuator/module.mdsemantic-map/docs/context/pkg/controller/privatelink/conditions/module.mdsemantic-map/docs/context/pkg/controller/privatelink/module.mdsemantic-map/docs/context/pkg/controller/remoteingress/module.mdsemantic-map/docs/context/pkg/controller/syncidentityprovider/module.mdsemantic-map/docs/context/pkg/controller/unreachable/module.mdsemantic-map/docs/context/pkg/controller/utils/module.mdsemantic-map/docs/context/pkg/controller/utils/nutanixutils/module.mdsemantic-map/docs/context/pkg/controller/utils/vsphereutils/module.mdsemantic-map/docs/context/pkg/controller/velerobackup/module.mdsemantic-map/docs/context/pkg/creds/aws/module.mdsemantic-map/docs/context/pkg/creds/azure/module.mdsemantic-map/docs/context/pkg/creds/gcp/module.mdsemantic-map/docs/context/pkg/creds/ibmcloud/module.mdsemantic-map/docs/context/pkg/creds/module.mdsemantic-map/docs/context/pkg/creds/nutanix/module.mdsemantic-map/docs/context/pkg/creds/openstack/module.mdsemantic-map/docs/context/pkg/creds/vsphere/module.mdsemantic-map/docs/context/pkg/gcpclient/mock/module.mdsemantic-map/docs/context/pkg/gcpclient/module.mdsemantic-map/docs/context/pkg/ibmclient/mock/module.mdsemantic-map/docs/context/pkg/ibmclient/module.mdsemantic-map/docs/context/pkg/imageset/module.mdsemantic-map/docs/context/pkg/install/module.mdsemantic-map/docs/context/pkg/installmanager/module.mdsemantic-map/docs/context/pkg/manageddns/module.mdsemantic-map/docs/context/pkg/operator/assets/module.mdsemantic-map/docs/context/pkg/operator/hive/module.mdsemantic-map/docs/context/pkg/operator/metrics/module.mdsemantic-map/docs/context/pkg/operator/module.mdsemantic-map/docs/context/pkg/remoteclient/mock/module.mdsemantic-map/docs/context/pkg/remoteclient/module.mdsemantic-map/docs/context/pkg/resource/mock/module.mdsemantic-map/docs/context/pkg/resource/module.mdsemantic-map/docs/context/pkg/test/assert/module.mdsemantic-map/docs/context/pkg/test/checkpoint/module.mdsemantic-map/docs/context/pkg/test/clusterclaim/module.mdsemantic-map/docs/context/pkg/test/clusterdeployment/module.mdsemantic-map/docs/context/pkg/test/clusterdeploymentcustomization/module.mdsemantic-map/docs/context/pkg/test/clusterdeprovision/module.mdsemantic-map/docs/context/pkg/test/clusterpool/module.mdsemantic-map/docs/context/pkg/test/clusterprovision/module.mdsemantic-map/docs/context/pkg/test/clusterrelocate/module.mdsemantic-map/docs/context/pkg/test/clustersync/module.mdsemantic-map/docs/context/pkg/test/configmap/module.mdsemantic-map/docs/context/pkg/test/dnszone/module.mdsemantic-map/docs/context/pkg/test/fake/module.mdsemantic-map/docs/context/pkg/test/generic/module.mdsemantic-map/docs/context/pkg/test/job/module.mdsemantic-map/docs/context/pkg/test/logger/module.mdsemantic-map/docs/context/pkg/test/machinepool/module.mdsemantic-map/docs/context/pkg/test/manager/mock/module.mdsemantic-map/docs/context/pkg/test/manager/module.mdsemantic-map/docs/context/pkg/test/namespace/module.mdsemantic-map/docs/context/pkg/test/secret/module.mdsemantic-map/docs/context/pkg/test/selectorsyncset/module.mdsemantic-map/docs/context/pkg/test/statefulset/module.mdsemantic-map/docs/context/pkg/test/syncidentityprovider/module.mdsemantic-map/docs/context/pkg/test/syncset/module.mdsemantic-map/docs/context/pkg/util/contracts/module.mdsemantic-map/docs/context/pkg/util/labels/module.mdsemantic-map/docs/context/pkg/util/logrus/module.mdsemantic-map/docs/context/pkg/util/scheme/module.mdsemantic-map/docs/context/pkg/util/yaml/module.mdsemantic-map/docs/context/pkg/validating-webhooks/hive/v1/module.mdsemantic-map/docs/context/pkg/version/module.mdsemantic-map/docs/context/root.mdsemantic-map/docs/context/test/e2e/common/module.mdsemantic-map/go-facts.jsonsemantic-map/manifest.jsonsemantic-map/markdown-chunks.jsonsemantic-map/orchestration-queue.mdsemantic-map/prompts-expanded/ORCHESTRATION.mdsemantic-map/prompts-expanded/README.mdsemantic-map/prompts-expanded/analyst.mdsemantic-map/prompts-expanded/architect.mdsemantic-map/prompts-expanded/auditor.mdsemantic-map/prompts-expanded/specialist.mdsemantic-map/prompts/ORCHESTRATION.mdsemantic-map/prompts/README.mdsemantic-map/prompts/analyst.mdsemantic-map/prompts/architect.mdsemantic-map/prompts/auditor.mdsemantic-map/prompts/specialist.mdsemantic-map/repo-tree.json
| Implements the `test-resource` command for hiveutil: a developer tool that tests the resource helper's apply and patch operations against a live cluster. | ||
|
|
||
| ## Public Interface/API | ||
|
|
||
| - `NewTestResourceCommand() *cobra.Command` — `resource` parent command with two subcommands: `apply` and `patch` | ||
| - `apply RESOURCEFILE` subcommand — reads a YAML/JSON file and applies it via `resource.Helper.Apply` | ||
| - `patch PATCHFILE` subcommand — reads a patch file and applies it via `resource.Helper.Patch` with configurable patch type (json, merge, strategic) |
There was a problem hiding this comment.
Resolve command-name inconsistency (test-resource vs resource).
This module describes two different command names for the same surface, which can mislead users invoking hiveutil. Pick one canonical name and use it consistently across Responsibility and Public Interface sections.
Suggested doc fix
-Implements the `test-resource` command for hiveutil: a developer tool that tests the resource helper's apply and patch operations against a live cluster.
+Implements the `resource` command for hiveutil: a developer tool that tests the resource helper's apply and patch operations against a live cluster.📝 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.
| Implements the `test-resource` command for hiveutil: a developer tool that tests the resource helper's apply and patch operations against a live cluster. | |
| ## Public Interface/API | |
| - `NewTestResourceCommand() *cobra.Command` — `resource` parent command with two subcommands: `apply` and `patch` | |
| - `apply RESOURCEFILE` subcommand — reads a YAML/JSON file and applies it via `resource.Helper.Apply` | |
| - `patch PATCHFILE` subcommand — reads a patch file and applies it via `resource.Helper.Patch` with configurable patch type (json, merge, strategic) | |
| Implements the `resource` command for hiveutil: a developer tool that tests the resource helper's apply and patch operations against a live cluster. | |
| ## Public Interface/API | |
| - `NewTestResourceCommand() *cobra.Command` — `resource` parent command with two subcommands: `apply` and `patch` | |
| - `apply RESOURCEFILE` subcommand — reads a YAML/JSON file and applies it via `resource.Helper.Apply` | |
| - `patch PATCHFILE` subcommand — reads a patch file and applies it via `resource.Helper.Patch` with configurable patch type (json, merge, strategic) |
🤖 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 `@semantic-map/docs/context/contrib/pkg/testresource/module.md` around lines 5
- 11, The docs currently use two different command names ("test-resource" vs
"resource"); update the module documentation so the command name is consistent —
choose one canonical name (e.g., "test-resource") and change all occurrences in
the Responsibility and Public Interface/API sections to match; specifically
update the descriptions referencing NewTestResourceCommand(), and the listed
subcommands (apply, patch) so they refer to the chosen parent command name
consistently.
|
|
||
| ## Responsibility | ||
|
|
||
| Implements the `verify-imports` command for hiveutil: parses Go source files using the Go AST and verifies that import statements conform to a YAML-configured grouping convention. |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Description: Examine the verify-imports implementation to clarify its actual functionality
# Check the main implementation file
fd -t f --full-path 'pkg/verification' -e go -x cat {} \; | head -200
# Search for YAML config structure to see what rules it defines
rg -A 10 -B 2 'type.*Config|type.*Rule|importPath|importName|grouping|ordering' --type go --glob '**/verification/**'Repository: openshift/hive
Length of output: 7720
Update lines 5 and 11 to accurately describe import alias validation.
The documentation incorrectly describes the module's functionality. Lines 5 and 11 state the module validates "grouping convention" and "group ordering/separation," but the actual implementation validates import alias naming — comparing each import's name against YAML-configured rules that specify expected importPath → importName pairs.
Lines 22–23 and the AI summary correctly describe this behavior. Update lines 5 and 11 to align: remove references to grouping/ordering and clarify they validate import aliases against importPath/importName rules defined in the YAML config.
🤖 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 `@semantic-map/docs/context/contrib/pkg/verification/module.md` at line 5,
Update the module description for the verify-imports command to state that it
validates import alias naming rather than grouping/ordering: replace the phrases
on lines 5 and 11 that mention "grouping convention" and "group
ordering/separation" with text saying the command parses Go source files and
verifies each import's alias (importName) against YAML-configured
importPath→importName rules (as implemented by the verify-imports logic that
compares import paths to expected names from the YAML config).
| ## Understanding Score | ||
|
|
||
| 2.0 -- entry points identified, controller topology and reconciliation paths mapped; implementation-level flow tracing not yet performed. |
There was a problem hiding this comment.
Align understanding score format with semantic-map schema.
2.0 appears out of band for the documented scoring convention used elsewhere in this PR. Normalizing to the expected range avoids downstream confusion in validation/reporting.
Suggested doc fix
-2.0 -- entry points identified, controller topology and reconciliation paths mapped; implementation-level flow tracing not yet performed.
+1.0 -- entry points identified, controller topology and reconciliation paths mapped; implementation-level flow tracing not yet performed.📝 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.
| ## Understanding Score | |
| 2.0 -- entry points identified, controller topology and reconciliation paths mapped; implementation-level flow tracing not yet performed. | |
| ## Understanding Score | |
| 1.0 -- entry points identified, controller topology and reconciliation paths mapped; implementation-level flow tracing not yet performed. |
🤖 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 `@semantic-map/docs/context/root.md` around lines 114 - 116, The "Understanding
Score" entry uses "2.0" which doesn't match the project's semantic-map scoring
schema; replace the out-of-band value "2.0" under the "Understanding Score"
heading with the schema-compliant representation used elsewhere in the PR (e.g.,
"2" or the canonical scoring token the schema expects), update the surrounding
text if it references the numeric format, and run the same schema/validation
used in this repo to confirm the updated value conforms to the expected format.
| "clone_dir": "/Users/mworthin/GitHub/newtonheath/hive", | ||
| "owner": "newtonheath", | ||
| "repo": "hive", | ||
| "slug": "newtonheath/hive", | ||
| "artifact_root": "/Users/mworthin/GitHub/newtonheath/hive/semantic-map", |
There was a problem hiding this comment.
Critical: Machine-specific absolute paths in manifest.
The clone_dir and artifact_root fields contain hardcoded absolute paths (/Users/mworthin/GitHub/newtonheath/hive) that are specific to one developer's machine. This manifest file will not work for any other user without modification.
Recommendations:
- Add
semantic-map/manifest.jsonto.gitignoreand document that it should be generated locally viasemantic-map analyze - Alternatively, modify the tooling to compute these paths dynamically at runtime rather than storing them in a static file
- If the manifest must be committed, use relative paths or document clearly that users must regenerate it
Based on the context snippet from ANALYSIS.md, the manifest is generated during the analyze step and includes absolute paths by design. This strongly suggests it should be a local, per-developer artifact rather than checked into source control.
🤖 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 `@semantic-map/manifest.json` around lines 4 - 8, The manifest.json currently
contains machine-specific absolute paths in the clone_dir and artifact_root
fields which must not be committed; remove these hardcoded values and make the
file local-only by adding semantic-map/manifest.json to .gitignore and updating
documentation (ANALYSIS.md) to instruct developers to run the local generator
(semantic-map analyze) to create the manifest, or alternatively change the
tooling that reads clone_dir/artifact_root to compute paths at runtime (instead
of relying on the committed clone_dir/artifact_root entries) so only relative
paths or no paths are stored in the committed manifest.
| - Markdown file to verify: `/Users/mworthin/GitHub/newtonheath/hive/semantic-map/docs/context/test/e2e/common/module.md` | ||
| - Source directory or file to compare: `/Users/mworthin/GitHub/newtonheath/hive/test/e2e/common` | ||
| - `go-facts.json`: `/Users/mworthin/GitHub/newtonheath/hive/semantic-map/go-facts.json` | ||
| - `deps-graph.json`: `/Users/mworthin/GitHub/newtonheath/hive/semantic-map/deps-graph.json` | ||
| - Clone: `/Users/mworthin/GitHub/newtonheath/hive` |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check if prompts-expanded is already in .gitignore
rg -n 'prompts-expanded' .gitignore
# Check if there's a template version without hardcoded paths
fd 'auditor.md' semantic-map/prompts/Repository: openshift/hive
Length of output: 90
🏁 Script executed:
# Check the content of the prompts-expanded/auditor.md file around lines 7-11
cat -n semantic-map/prompts-expanded/auditor.md | head -20Repository: openshift/hive
Length of output: 1184
🏁 Script executed:
# Check the template version for comparison
cat -n semantic-map/prompts/auditor.md | head -20Repository: openshift/hive
Length of output: 947
🏁 Script executed:
# Check if there's any build or generation script that produces prompts-expanded
fd -e sh -e py -e go | xargs rg -l 'prompts-expanded|prompt.*expand' 2>/dev/null | head -10Repository: openshift/hive
Length of output: 40
🏁 Script executed:
# Check git status/history of prompts-expanded directory
git ls-files semantic-map/prompts-expanded/ | head -5Repository: openshift/hive
Length of output: 270
Remove machine-generated files with hardcoded paths from version control.
The semantic-map/prompts-expanded/auditor.md file contains absolute paths (/Users/mworthin/GitHub/newtonheath/hive/...) that are specific to a local development environment. The template version in semantic-map/prompts/auditor.md uses placeholders ({{MARKDOWN_PATH}}, {{SOURCE_PATH}}, etc.), confirming that prompts-expanded/ contains generated content with substituted values.
Machine-generated files with hardcoded local paths should not be committed to version control, as they break portability and cannot be shared or reproduced across different development environments.
Either:
- Add
semantic-map/prompts-expanded/to.gitignoreand document how users should generate these locally, or - Maintain only the template versions in
semantic-map/prompts/and generate expanded versions at build/runtime as needed
🤖 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 `@semantic-map/prompts-expanded/auditor.md` around lines 7 - 11, The file
semantic-map/prompts-expanded/auditor.md contains machine-generated content with
absolute local paths; remove or stop committing generated artifacts by either
adding the directory semantic-map/prompts-expanded/ to .gitignore and
documenting how to produce auditor.md from the template, or delete
prompts-expanded/ from the repo and ensure only the template file
semantic-map/prompts/auditor.md is tracked and expanded at build/runtime; update
repository docs or build scripts to show how to generate the expanded file
locally and ensure CI/build generates any required expanded artifacts instead of
storing hardcoded paths in version control.
| 2. **Hidden dependencies** — Does the code import or call something not reflected in the Markdown? | ||
| 3. **Understanding score** — Assign **0.0–1.0** for accuracy of interface/capability descriptions. | ||
|
|
||
| If the score is **< 0.8**, output a **numbered list of discrepancies** with file:line when possible. |
There was a problem hiding this comment.
Fix HTML entity encoding.
The line uses HTML entity < instead of the literal < character. In Markdown, you can use < directly without encoding.
📝 Proposed fix
-If the score is **< 0.8**, output a **numbered list of discrepancies** with file:line when possible.
+If the score is **< 0.8**, output a **numbered list of discrepancies** with file:line when possible.📝 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.
| If the score is **< 0.8**, output a **numbered list of discrepancies** with file:line when possible. | |
| If the score is **< 0.8**, output a **numbered list of discrepancies** with file:line when possible. |
🤖 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 `@semantic-map/prompts-expanded/auditor.md` at line 19, Replace the HTML entity
< with the literal less-than character in the prompt sentence so it reads "If
the score is < 0.8, output a numbered list of discrepancies..." (locate the
sentence "If the score is < 0.8" in auditor.md and update it to use "<"
directly); ensure no other HTML-entity encoded comparisons remain in the file
and that Markdown renders the comparison correctly.
|
/retest |
|
Caution There are some errors in your PipelineRun template.
|
|
@newtonheath: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
I'm gonna tidy up this and bring it back in a few days |
Created semantic map - semantic-map contains the detail and enabled by .claude/skills and .claude/commands
Summary by CodeRabbit
semantic-map queryandsemantic-map validateoperations.