-
Notifications
You must be signed in to change notification settings - Fork 14
add artifactpromotionrun notification solutions #94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughAdds two new documentation guides: one for integrating ArtifactPromotionRun approval notifications with CorpWeChat (end-to-end architecture, manifests, CEL filters, verification, troubleshooting) and one for installing the Kube Event Enricher sink, including offline/air‑gapped preparation and configuration flags. Changes
Sequence Diagram(s)(omitted — changes are documentation-only and do not modify runtime control flow) Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.mddocs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🧰 Additional context used
🪛 GitHub Actions: Build and Update
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
[error] 1-1: MDX compile error: Dead link found in /home/runner/work/knowledge/knowledge/docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
[error] 1-1: MDX compile error: Dead link found in /home/runner/work/knowledge/knowledge/docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[error] 1-1: MDX compile error: Language cel is not included in this bundle. You may want to load it from external source.
[error] 1-1: MDX compile error: Language cel is not included in this bundle. You may want to load it from external source.
🪛 LanguageTool
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[uncategorized] ~443-~443: The official name of this popular chat service is spelled with a capital “C”.
Context: ...orts multiple comma-separated values) | "wechat,corpwechat,email" | | `spec.subscriber...
(WECHAT)
🪛 markdownlint-cli2 (0.18.1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
17-17: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
333-333: Table column count
Expected: 3; Actual: 4; Too many cells, extra data will be missing
(MD056, table-column-count)
🔇 Additional comments (1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (1)
440-449: Fix WeChat capitalization in example code.The official name uses proper capitalization: "WeChat" and "CorpWeChat".
🔎 Proposed fix
-| `metadata.annotations["core.katanomi.dev/sink.pluginclasses"]` | Notification channels (supports multiple comma-separated values) | `"wechat,corpwechat,email"` | +| `metadata.annotations["core.katanomi.dev/sink.pluginclasses"]` | Notification channels (supports multiple comma-separated values) | `"WeChat,CorpWeChat,Email"` |Likely an incorrect or invalid review comment.
...ons/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
Outdated
Show resolved
Hide resolved
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
Outdated
Show resolved
Hide resolved
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
Show resolved
Hide resolved
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
Show resolved
Hide resolved
354d73d to
3e07aa0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (3)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (3)
17-29: Add language identifier to ASCII diagram code block.The fenced code block is missing a language specifier. Add
textto enable proper rendering.🔎 Proposed fix
-``` +```text K8s Events (ArtifactPromotionRun) ↓ APIServerSource (Watches Event resources) @@ -26,7 +26,7 @@ ↓ CorpWeChat Notification Service (Katanomi Plugin) -``` +```text
335-335: Fix table column count mismatch caused by pipe character in inline command.The pipe character
|within the inline command (kubectl get users | grep) is incorrectly parsed as a table column separator, creating an extra cell. Rewrite the command description to avoid embedded pipes.🔎 Proposed fix
-| `spec.subscriber.info.id` | ACP user ID, you can retrive it by `kubectl get users | grep {subscriber.name}` | `21232f297a57a5a743894a0e4a801fc3` | +| `spec.subscriber.info.id` | ACP user ID, retrieve via: `kubectl get users` and filter by `{subscriber.name}` | `21232f297a57a5a743894a0e4a801fc3` |
454-460: Replace CEL code block language with text to fix MDX compilation.The
cellanguage identifier is not included in the MDX bundle and causes build failures. Change the code block language totextto allow documentation to build successfully.🔎 Proposed fix
#### CEL Filter Expression Examples -```cel +```text # Scenario 1: Subscriber is an approver ce.data.object.status.artifactPromotionSpec.approvalSpec.users.exists(item, item.name == "$(subscriber.name)")
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.mddocs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🚧 Files skipped from review as they are similar to previous changes (1)
- docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🧰 Additional context used
🪛 GitHub Actions: Build and Update
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[error] 1-1: MDX compile error: Language cel is not included in this bundle. You may want to load it from external source.
[error] 1-1: MDX compile error: Dead link found in /home/runner/work/knowledge/knowledge/docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
🪛 LanguageTool
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[uncategorized] ~445-~445: The official name of this popular chat service is spelled with a capital “C”.
Context: ...orts multiple comma-separated values) | "wechat,corpwechat,email" | | `spec.subscriber...
(WECHAT)
🪛 markdownlint-cli2 (0.18.1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
17-17: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
44-44: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
335-335: Table column count
Expected: 3; Actual: 4; Too many cells, extra data will be missing
(MD056, table-column-count)
🔇 Additional comments (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (2)
445-445: Capitalize WeChat product name correctly.The reference to "wechat" in the example should be capitalized as "WeChat" per the official product naming convention.
🔎 Proposed fix
-| `metadata.annotations["core.katanomi.dev/sink.pluginclasses"]` | Notification channels (supports multiple comma-separated values) | `"wechat,corpwechat,email"` | +| `metadata.annotations["core.katanomi.dev/sink.pluginclasses"]` | Notification channels (supports multiple comma-separated values) | `"WeChat,corpwechat,email"` |Likely an incorrect or invalid review comment.
74-74: No action required. The referenced installation guide fileArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.mdexists in the same directory with the correct relative path, and the anchor section "Offline Package Preparation" is properly defined in the referenced file. Both links on lines 74 and 88 are valid.Likely an incorrect or invalid review comment.
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
Outdated
Show resolved
Hide resolved
3e07aa0 to
38e96cf
Compare
38e96cf to
6a3851a
Compare
| Download the installation package from AlaudaCloud to your working directory: | ||
|
|
||
| ```bash | ||
| export DOWNLOAD_URL=https://xxx.xx/kubeveent-enricher.tar.gz |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
上传正式包后替换为正式的地址
| @@ -0,0 +1,493 @@ | |||
| --- | |||
| id: KB2505xxxx | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
有正式 KB ID后更新。
|
/lgtm |
6a3851a to
db0adbc
Compare
db0adbc to
dbdbb1b
Compare
dbdbb1b to
4cba429
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In
`@docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md`:
- Line 214: The configuration key "aitMethod" in the snippet (the line
containing aitMethod: CorpWeChat) is a typo; update that key to the correct name
(e.g., authMethod) so the plugin mapping and notification delivery work; locate
the occurrence of "aitMethod" in the
ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md content and
replace it with the correct key (verify against Katanomi docs if "authMethod" is
not the intended key) while keeping the value "CorpWeChat" unchanged.
- Line 120: The APIServerSource manifest uses a broker name string
"cloudevents-katanomi-dev" which is environment-specific and not listed in the
"Required Parameter Customization" section; update the document by either adding
a new customization entry for the broker (referencing the broker query param
value "?broker=cloudevents-katanomi-dev" and explaining how to discover or set
the correct broker name for the reader's environment) or by adding a clear
sentence stating that "cloudevents-katanomi-dev" is a standard/fixed broker and
must not be changed.
🧹 Nitpick comments (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (2)
166-168: Clarify placeholder naming for Secret values.The placeholder names
<BASE64_ENCODED_CORP_ID>,<BASE64_ENCODED_CORP_SECRET>, and<BASE64_ENCODED_AGENT_ID>may mislead users into thinking they need to manually base64-encode these values. Since the Secret usesstringData(line 163), Kubernetes automatically handles base64 encoding. Users should provide plain text values.📝 Suggested placeholder naming
- corpId: <BASE64_ENCODED_CORP_ID> - corpSecret: <BASE64_ENCODED_CORP_SECRET> - agentId: <BASE64_ENCODED_AGENT_ID> + corpId: <YOUR_CORP_ID> + corpSecret: <YOUR_CORP_SECRET> + agentId: <YOUR_AGENT_ID>
180-180: Format URL as proper markdown link.The bare URL should be formatted as a proper markdown link for better readability and to satisfy markdown linting rules.
🔗 Suggested formatting
-The WeChat Work corpId, corpSecret, agentId acquisition methods can be referenced in the official documentation: https://developer.work.weixin.qq.com/document/path/90665 +For instructions on obtaining WeChat Work corpId, corpSecret, and agentId, refer to the [official documentation](https://developer.work.weixin.qq.com/document/path/90665).
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.mddocs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🚧 Files skipped from review as they are similar to previous changes (1)
- docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2026-01-13T11:25:34.596Z
Learnt from: jing2uo
Repo: alauda/knowledge PR: 104
File: docs/en/solutions/How_to_Migrate_VirtualMachine_From_VMware.md:131-172
Timestamp: 2026-01-13T11:25:34.596Z
Learning: In VMware migration documentation (docs/en/solutions), when describing the Forklift Operator workflow for VMware, specify that the VMware provider secret should set insecureSkipVerify=true to accommodate self-signed certificates commonly used in enterprise vCenter/ESXi environments. Include a note on the security trade-offs and ensure readers understand this is for internal, controlled environments.
Applied to files:
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
🪛 LanguageTool
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[uncategorized] ~446-~446: The official name of this popular chat service is spelled with a capital “C”.
Context: ...orts multiple comma-separated values) | "wechat,corpwechat,email" | | `spec.subscriber...
(WECHAT)
🪛 markdownlint-cli2 (0.18.1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
180-180: Bare URL used
(MD034, no-bare-urls)
🔇 Additional comments (1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (1)
1-494: Overall assessment: Well-structured documentation with minor issues.This is comprehensive documentation for setting up ArtifactPromotionRun approval notifications. The guide provides clear step-by-step instructions, troubleshooting guidance, and advanced configuration options. The most critical issue is the configuration key typo at line 214 that could break notification delivery.
✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
Outdated
Show resolved
Hide resolved
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In
`@docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md`:
- Line 37: The DOWNLOAD_URL value contains a typo in the filename; update the
exported variable DOWNLOAD_URL to use the correct package name
"kubeevent-enricher.tar.gz" instead of "kubeveent-enricher.tar.gz" so the
variable DOWNLOAD_URL points to the correct tarball.
- Around line 63-66: The sed invocation using sed -i'' is invalid for both macOS
and Linux; update the replacement line that references CLUSTER_REGISTRY (the
line containing sed -i'' "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g"
dist/install.yaml) to use a portable approach: either use macOS-compatible
syntax (sed -i '' ...) when running on macOS and sed -i ... on Linux, or switch
to a single cross-platform pattern such as creating a temp backup with sed
-i.bak ... then removing the .bak, or use an alternative substitution tool like
envsubst or perl -pi -e to perform the replacement without platform-specific -i
semantics.
♻️ Duplicate comments (3)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (3)
16-28: Add language identifier to ASCII diagram code block.The ASCII architecture diagram is missing a language identifier, which affects proper rendering in documentation systems.
📝 Proposed fix
-``` +```text K8s Events (ArtifactPromotionRun) ↓ APIServerSource (Watches Event resources)
43-43: Use proper Markdown heading instead of bold emphasis.Line 43 uses bold text for a section title but should use a proper Markdown heading for better document structure and accessibility.
📝 Proposed fix
-ACP Version Requirement: >= 4.0 +### ACP Version Requirement + +ACP >= 4.0
327-339: Fix table column count mismatch caused by pipe character in inline command.The table has a formatting error on line 336 where the pipe character (
|) in the inline kubectl command breaks the table structure, creating an extra column.📝 Proposed fix
-| `spec.subscriber.info.id` | ACP user ID, retrieve via: `kubectl get users` and filter by `{subscriber.name}` | `21232f297a57a5a743894a0e4a801fc3` | +| `spec.subscriber.info.id` | ACP user ID, retrieve via `kubectl get users` then filter by subscriber name | `21232f297a57a5a743894a0e4a801fc3` |Or escape the command reference:
-| `spec.subscriber.info.id` | ACP user ID, retrieve via: `kubectl get users` and filter by `{subscriber.name}` | `21232f297a57a5a743894a0e4a801fc3` | +| `spec.subscriber.info.id` | ACP user ID (retrieve by running `kubectl get users` and filtering by subscriber name) | `21232f297a57a5a743894a0e4a801fc3` |
🧹 Nitpick comments (1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (1)
180-180: Wrap bare URL in angle brackets for proper Markdown formatting.The URL on line 180 should be enclosed in angle brackets to follow Markdown best practices and ensure proper link rendering.
📝 Proposed fix
-The WeChat Work corpId, corpSecret, agentId acquisition methods can be referenced in the official documentation: https://developer.work.weixin.qq.com/document/path/90665 +The WeChat Work corpId, corpSecret, agentId acquisition methods can be referenced in the official documentation: <https://developer.work.weixin.qq.com/document/path/90665>
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.mddocs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2026-01-13T11:25:34.596Z
Learnt from: jing2uo
Repo: alauda/knowledge PR: 104
File: docs/en/solutions/How_to_Migrate_VirtualMachine_From_VMware.md:131-172
Timestamp: 2026-01-13T11:25:34.596Z
Learning: In VMware migration documentation (docs/en/solutions), when describing the Forklift Operator workflow for VMware, specify that the VMware provider secret should set insecureSkipVerify=true to accommodate self-signed certificates commonly used in enterprise vCenter/ESXi environments. Include a note on the security trade-offs and ensure readers understand this is for internal, controlled environments.
Applied to files:
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.mddocs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
🪛 LanguageTool
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[uncategorized] ~446-~446: The official name of this popular chat service is spelled with a capital “C”.
Context: ...orts multiple comma-separated values) | "wechat,corpwechat,email" | | `spec.subscriber...
(WECHAT)
🪛 markdownlint-cli2 (0.18.1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
180-180: Bare URL used
(MD034, no-bare-urls)
🔇 Additional comments (10)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md (4)
77-92: LGTM! Clear installation and verification steps.The installation commands and verification steps are well-documented and follow Kubernetes best practices.
94-106: LGTM! Comprehensive configuration documentation.The configuration flags are well-documented with clear descriptions, default values, and required status indicators.
115-143: LGTM! Helpful troubleshooting guidance.The troubleshooting section provides clear diagnostic commands and actionable solutions for common deployment issues.
16-16: > Likely an incorrect or invalid review comment.docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (6)
202-230: Verify the ConfigMap patch syntax and structure.The
kubectl patchcommand uses--patch-file /dev/stdinbut the data is provided via a heredoc. This approach should work, but the YAML structure appears to have inconsistent indentation.Please verify this command works as intended in your environment. If there are issues, consider using
kubectl applyinstead:#!/bin/bash # Verify the ConfigMap patch command syntax # Test in a development environment before applying to production # Alternative approach using kubectl apply cat <<EOF | kubectl apply -f - apiVersion: v1 kind: ConfigMap metadata: name: katanomi-config namespace: cpaas-system data: cloudeventsDelivery.sinkPluginAddress.corpwechat: http://katanomi-plugin.cpaas-system.svc/plugins/v1alpha1/notifications/corpwechat cloudeventsDelivery.sinkPluginclasses: | - corpwechat # ... rest of the configuration EOF
342-366: LGTM! Clear verification and testing procedures.The verification steps and expected notification behavior are well-documented, providing users with clear guidance on testing the implementation.
367-397: LGTM! Comprehensive troubleshooting guide.The troubleshooting section provides a systematic approach to diagnosing notification issues with clear diagnostic commands and verification steps.
440-461: LGTM! Comprehensive ClusterSubscription configuration documentation.The field descriptions and CEL filter examples provide excellent guidance for configuring personalized event subscriptions. The CEL expressions are properly documented with clear scenario-based examples.
463-490: LGTM! Well-documented CloudEvents data structure.The CloudEvents JSON example clearly illustrates the event structure, making it easy for users to understand how to write CEL filters and customize notification templates.
491-494: LGTM! Relevant reference documentation.The references provide appropriate external documentation for users who need to dive deeper into Knative Eventing and CEL expression syntax.
✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.
...ons/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
Show resolved
Hide resolved
| # Note: On macOS, sed requires a space between -i and the backup extension | ||
| # Use: sed -i '' "s/..." (with space) on macOS | ||
| # Use: sed -i "s/..." (without '') on Linux | ||
| sed -i'' "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g" dist/install.yaml |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix sed command syntax for cross-platform compatibility.
The sed -i'' syntax on line 66 is problematic. The comment correctly notes the difference between macOS and Linux, but the actual command uses incorrect syntax that won't work on either platform.
🔧 Proposed fix for cross-platform compatibility
# Update the manifest with your registry address
# Note: On macOS, sed requires a space between -i and the backup extension
-# Use: sed -i '' "s/..." (with space) on macOS
-# Use: sed -i "s/..." (without '') on Linux
-sed -i'' "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g" dist/install.yaml
+# Use: sed -i '' "s/..." on macOS (space between -i and '')
+# Use: sed -i "s/..." on Linux (no backup extension)
+if [[ "$OSTYPE" == "darwin"* ]]; then
+ sed -i '' "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g" dist/install.yaml
+else
+ sed -i "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g" dist/install.yaml
+fiAlternatively, use a more portable approach with a backup file:
-sed -i'' "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g" dist/install.yaml
+sed -i.bak "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g" dist/install.yaml
+rm dist/install.yaml.bak🤖 Prompt for AI Agents
In
`@docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md`
around lines 63 - 66, The sed invocation using sed -i'' is invalid for both
macOS and Linux; update the replacement line that references CLUSTER_REGISTRY
(the line containing sed -i'' "s/registry.alauda.cn:60070/${CLUSTER_REGISTRY}/g"
dist/install.yaml) to use a portable approach: either use macOS-compatible
syntax (sed -i '' ...) when running on macOS and sed -i ... on Linux, or switch
to a single cross-platform pattern such as creating a temp backup with sed
-i.bak ... then removing the .bak, or use an alternative substitution tool like
envsubst or perl -pi -e to perform the replacement without platform-specific -i
semantics.
4cba429 to
bc82ea6
Compare
Signed-off-by: chengjingtao <[email protected]>
bc82ea6 to
783a30f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In
`@docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md`:
- Line 180: Replace the bare URL
"https://developer.work.weixin.qq.com/document/path/90665" with a Markdown link
so it renders properly (for example: [WeChat Work official
documentation](https://developer.work.weixin.qq.com/document/path/90665));
update the line in the
ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md content where the
URL appears to use the [text](URL) syntax and ensure surrounding
punctuation/spacing remains correct.
♻️ Duplicate comments (3)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (3)
43-43: Use proper heading syntax instead of bold text.Line 43 uses bold text but should be a proper Markdown heading for better document structure and semantic clarity.
🔧 Proposed fix
-ACP Version Requirement: >= 4.0 +### ACP Version Requirement + +ACP version >= 4.0 is required.
120-120: Document broker name as a customization parameter or clarify if it's standard.The broker name
cloudevents-katanomi-devappears environment-specific but is not documented in the "Required Parameter Customization" section (lines 327-339). The inline comment states it's the "default Broker name" but doesn't clarify whether users need to customize this value for their environment.Either add the broker name to the customization parameters table with instructions for discovery, or explicitly state that this is a fixed/standard value that must not be changed.
214-214: Fix configuration key typo.The key
aitMethodappears to be a typo and should beauthMethod. An incorrect configuration key will prevent proper plugin class mapping and break notification delivery.🔧 Proposed fix
- aitMethod: CorpWeChat + authMethod: CorpWeChatNote: Verify the correct configuration key name in the Katanomi documentation if
authMethodis not the correct key.
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.mddocs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
✅ Files skipped from review due to trivial changes (1)
- docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat_Install_kubeevent-enricher.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2026-01-13T11:25:34.596Z
Learnt from: jing2uo
Repo: alauda/knowledge PR: 104
File: docs/en/solutions/How_to_Migrate_VirtualMachine_From_VMware.md:131-172
Timestamp: 2026-01-13T11:25:34.596Z
Learning: In VMware migration documentation (docs/en/solutions), when describing the Forklift Operator workflow for VMware, specify that the VMware provider secret should set insecureSkipVerify=true to accommodate self-signed certificates commonly used in enterprise vCenter/ESXi environments. Include a note on the security trade-offs and ensure readers understand this is for internal, controlled environments.
Applied to files:
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
🪛 LanguageTool
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
[uncategorized] ~446-~446: The official name of this popular chat service is spelled with a capital “C”.
Context: ...orts multiple comma-separated values) | "wechat,corpwechat,email" | | `spec.subscriber...
(WECHAT)
🪛 markdownlint-cli2 (0.18.1)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md
180-180: Bare URL used
(MD034, no-bare-urls)
🔇 Additional comments (4)
docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md (4)
1-29: LGTM! Clear overview and architecture.The frontmatter, title, overview, and architecture flow diagram are well-structured. The ASCII diagram correctly uses the
textlanguage identifier for proper rendering.
60-88: LGTM! Clear preparation and setup instructions.The offline package preparation section appropriately references the external installation guide, and the setup overview provides a clear roadmap for the two-phase configuration process.
235-340: LGTM! Comprehensive user configuration guide.The user configuration section provides a complete ClusterSubscription example with proper CEL filters for each event type. The parameter customization table clearly documents all required fields. The previous table formatting issue has been resolved.
342-494: LGTM! Comprehensive verification, troubleshooting, and advanced configuration.The verification steps are practical and actionable. The troubleshooting section provides clear diagnostic commands for common issues. The advanced configuration section thoroughly covers multi-namespace subscriptions, template customization, and CEL filtering with helpful examples. The CloudEvents data structure documentation and external references are valuable additions.
✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.
| EOF | ||
| ``` | ||
|
|
||
| The WeChat Work corpId, corpSecret, agentId acquisition methods can be referenced in the official documentation: https://developer.work.weixin.qq.com/document/path/90665 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Format URL as a proper Markdown link.
The bare URL should be formatted as a Markdown link for better readability and to follow Markdown best practices.
🔧 Proposed fix
-The WeChat Work corpId, corpSecret, agentId acquisition methods can be referenced in the official documentation: https://developer.work.weixin.qq.com/document/path/90665
+For instructions on obtaining the WeChat Work corpId, corpSecret, and agentId, refer to the [official documentation](https://developer.work.weixin.qq.com/document/path/90665).📝 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.
| The WeChat Work corpId, corpSecret, agentId acquisition methods can be referenced in the official documentation: https://developer.work.weixin.qq.com/document/path/90665 | |
| For instructions on obtaining the WeChat Work corpId, corpSecret, and agentId, refer to the [official documentation](https://developer.work.weixin.qq.com/document/path/90665). |
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
180-180: Bare URL used
(MD034, no-bare-urls)
🤖 Prompt for AI Agents
In
`@docs/en/solutions/ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md`
at line 180, Replace the bare URL
"https://developer.work.weixin.qq.com/document/path/90665" with a Markdown link
so it renders properly (for example: [WeChat Work official
documentation](https://developer.work.weixin.qq.com/document/path/90665));
update the line in the
ArtifactPromotionRun_Approval_Notification_with_CorpWeChat.md content where the
URL appears to use the [text](URL) syntax and ensure surrounding
punctuation/spacing remains correct.
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.