Skip to content

fix(marketing): remove /en prefix from docs links to fix 404 errors#281

Merged
yacosta738 merged 13 commits into
mainfrom
fix/marketing-docs-links
Mar 20, 2026
Merged

fix(marketing): remove /en prefix from docs links to fix 404 errors#281
yacosta738 merged 13 commits into
mainfrom
fix/marketing-docs-links

Conversation

@yacosta738
Copy link
Copy Markdown
Contributor

This pull request updates several documentation links on the marketing homepage to remove the /en/ language prefix from their URLs. This ensures that all references to guides and documentation point to the correct, language-agnostic paths.

Documentation Link Updates:

  • Updated all occurrences of documentation URLs in index.astro to remove the /en/ prefix, ensuring links now use the format ${docsBaseUrl}/guides/... instead of ${docsBaseUrl}/en/guides/.... This change affects install guides, CLI references, architecture docs, and quick start links throughout the install methods, quick links, FAQ groups, and hero panel. [1] [2] [3] [4] [5] [6] [7] [8] [9]

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 20, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Removed /en/ segments from documentation links on the marketing homepage; normalized whitespace/indentation and added a trailing newline in two localized JSON schema files; simplified Gradle dependency-locking logic by removing CI-specific lockMode = LockMode.STRICT branching and retaining ignored dependency patterns.

Changes

Cohort / File(s) Summary
Marketing links
clients/web/apps/marketing/src/pages/index.astro
Removed /en/ path segment from multiple docs ctaHref/href values (hero panel and CTAs).
Localized docs schemas
clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_suggest_topic_key.json, clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_update.json
Whitespace/formatting changes: added trailing newline in mem_suggest_topic_key.json and reformatted input.observation.anyOf indentation in mem_update.json. No schema rules changed.
Gradle build scripts
gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts, gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
Removed CI-detection and conditional lockMode = LockMode.STRICT; simplified dependencyLocking/configuration predicate and kept ignoredDependencies.add("com.example:*").

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested labels

area:web, area:docs

Suggested reviewers

  • yuniel-acosta
🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed Title follows Conventional Commits style with 'fix' prefix, includes scope '(marketing)', and is under 72 characters (67 chars). It clearly summarizes the main change: removing /en prefix from docs links.
Description check ✅ Passed Description covers the purpose and specific changes made to index.astro, but lacks tested information and breaking changes sections from the template.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/marketing-docs-links

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 20, 2026

✅ Contributor Report

User: @yacosta738
Status: Passed (12/13 metrics passed)

Metric Description Value Threshold Status
PR Merge Rate PRs merged vs closed 89% >= 30%
Repo Quality Repos with ≥100 stars 0 >= 0
Positive Reactions Positive reactions received 9 >= 1
Negative Reactions Negative reactions received 0 <= 5
Account Age GitHub account age 3066 days >= 30 days
Activity Consistency Regular activity over time 108% >= 0%
Issue Engagement Issues with community engagement 0 >= 0
Code Reviews Code reviews given to others 423 >= 0
Merger Diversity Unique maintainers who merged PRs 2 >= 0
Repo History Merge Rate Merge rate in this repo 91% >= 0%
Repo History Min PRs Previous PRs in this repo 163 >= 0
Profile Completeness Profile richness (bio, followers) 90 >= 0
Suspicious Patterns Spam-like activity detection 1 N/A

Contributor Report evaluates based on public GitHub activity. Analysis period: 2025-03-20 to 2026-03-20

@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Mar 20, 2026

Deploying corvus with  Cloudflare Pages  Cloudflare Pages

Latest commit: c5768e4
Status: ✅  Deploy successful!
Preview URL: https://e89ea5fd.corvus-42x.pages.dev
Branch Preview URL: https://fix-marketing-docs-links.corvus-42x.pages.dev

View logs

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a 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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts (2)

7-7: 🧹 Nitpick | 🔵 Trivial

Unused variable isCi after refactor.

isCi is defined but no longer referenced. Remove the dead code.

-val isCi = providers.environmentVariable("CI").orNull?.isNotBlank() == true
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts`
at line 7, Remove the dead variable by deleting the unused declaration val isCi
from the Gradle Kotlin script; locate the declaration of isCi in the build-logic
script and remove that single line (the providers.environmentVariable(...)
assignment) so there are no unused local variables left after the refactor.

26-43: ⚠️ Potential issue | 🟡 Minor

Pipeline failure: detekt ReturnCount violation.

shouldUseDependencyLocking has 4 return statements, exceeding the limit of 2. Refactor to reduce early returns.

♻️ Proposed fix to consolidate returns
 fun Configuration.shouldUseDependencyLocking(): Boolean {
-  if (!isCanBeResolved) {
-    return false
-  }
-
-  if (name in excludedLockingConfigurations) {
-    return false
-  }
-
-  if (
-    project.rootProject.name == "corvus-build-logic" &&
-      name in buildLogicOnlyExcludedLockingConfigurations
-  ) {
-    return false
-  }
-
-  return excludedLockingConfigurationPrefixes.none { prefix -> name.startsWith(prefix) }
+  val isBuildLogicExcluded =
+    project.rootProject.name == "corvus-build-logic" &&
+      name in buildLogicOnlyExcludedLockingConfigurations
+
+  return isCanBeResolved &&
+    name !in excludedLockingConfigurations &&
+    !isBuildLogicExcluded &&
+    excludedLockingConfigurationPrefixes.none { prefix -> name.startsWith(prefix) }
 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts`
around lines 26 - 43, The function shouldUseDependencyLocking currently has
multiple early returns; refactor it to compute a single Boolean result and
return once to satisfy Detekt's ReturnCount rule. Replace the early-return
checks (isCanBeResolved, name in excludedLockingConfigurations, the
rootProject/name check against buildLogicOnlyExcludedLockingConfigurations, and
the excludedLockingConfigurationPrefixes.none check) by evaluating them into a
single val (e.g., val shouldUse = ...) using logical operators and then return
that val at the end; reference the existing symbols shouldUseDependencyLocking,
isCanBeResolved, excludedLockingConfigurations, project.rootProject.name,
buildLogicOnlyExcludedLockingConfigurations, and
excludedLockingConfigurationPrefixes to locate the conditions.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts`:
- Line 64: Remove the unused variable declaration "isCI" introduced by val isCI
= EnvAccess.isCi(providers) since it is not referenced anywhere; delete that
line (or replace its usage with a direct call where needed) to avoid dead code
and confusion, ensuring no other code references the symbol "isCI".

In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts`:
- Line 54: The change removed strict dependency lock enforcement in the locking
build logic—restore or explicitly enforce LockMode.STRICT: update the
dependencyLocking configuration (the dependencyLocking block and
ignoredDependencies usage) to set LockMode.STRICT again, or add a clear guard
that ensures LockMode.STRICT is applied at CI/root level (matching
com.profiletailors.check.dependencies.gradle.kts) so strict lock enforcement
remains guaranteed for supply-chain integrity.

---

Outside diff comments:
In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts`:
- Line 7: Remove the dead variable by deleting the unused declaration val isCi
from the Gradle Kotlin script; locate the declaration of isCi in the build-logic
script and remove that single line (the providers.environmentVariable(...)
assignment) so there are no unused local variables left after the refactor.
- Around line 26-43: The function shouldUseDependencyLocking currently has
multiple early returns; refactor it to compute a single Boolean result and
return once to satisfy Detekt's ReturnCount rule. Replace the early-return
checks (isCanBeResolved, name in excludedLockingConfigurations, the
rootProject/name check against buildLogicOnlyExcludedLockingConfigurations, and
the excludedLockingConfigurationPrefixes.none check) by evaluating them into a
single val (e.g., val shouldUse = ...) using logical operators and then return
that val at the end; reference the existing symbols shouldUseDependencyLocking,
isCanBeResolved, excludedLockingConfigurations, project.rootProject.name,
buildLogicOnlyExcludedLockingConfigurations, and
excludedLockingConfigurationPrefixes to locate the conditions.
🪄 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: ASSERTIVE

Plan: Pro

Run ID: 05643e30-61a5-4a7b-860a-e443a88abd00

📥 Commits

Reviewing files that changed from the base of the PR and between 5a6bbfe and 56e466b.

📒 Files selected for processing (4)
  • clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_suggest_topic_key.json
  • clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_update.json
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: pr-checks-build-logic
  • GitHub Check: core-checks
  • GitHub Check: sonar
  • GitHub Check: pr-checks
  • GitHub Check: pr-checks-build-logic
  • GitHub Check: submit-gradle
  • GitHub Check: core-checks
  • GitHub Check: pr-checks
  • GitHub Check: Cloudflare Pages
🧰 Additional context used
📓 Path-based instructions (2)
**/*

⚙️ CodeRabbit configuration file

**/*: Security first, performance second.
Validate input boundaries, auth/authz implications, and secret management.
Look for behavioral regressions, missing tests, and contract breaks across modules.

Files:

  • clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_suggest_topic_key.json
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
  • clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_update.json
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts
**/*.gradle.kts

⚙️ CodeRabbit configuration file

**/*.gradle.kts: Prefer tasks.register/configureEach, avoid afterEvaluate, and preserve configuration cache.
Ensure dependencies come from version catalogs and avoid eager task realization.
Review plugin/config changes for supply-chain and reproducibility risks.

Files:

  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts
🪛 GitHub Actions: Scan with Detekt
gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts

[error] 26-26: detekt ReturnCount: Function shouldUseDependencyLocking has 4 return statements (limit: 2).

🔇 Additional comments (3)
clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_suggest_topic_key.json (1)

44-44: Formatting-only change is safe.

EOF newline addition has no behavioral, schema, or security impact.

clients/web/apps/docs/src/content/docs/es/guides/cerebro/mcp-schema/mem_update.json (1)

16-21: No behavioral change detected in anyOf typing.

This hunk is formatting-only; schema validation behavior and accepted observation types are unchanged.

gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts (1)

67-67: Removing LockMode.STRICT in CI weakens reproducibility guarantees.

Previously, CI enforced strict lock mode, failing builds when dependencies drifted from the lockfile. Without this, lockfile mismatches may go undetected in CI, which is a supply-chain risk per coding guidelines. If strict enforcement moved elsewhere (e.g., the checkLocks task), please confirm; otherwise, consider restoring CI-specific strict mode.

[raise_major_issue, request_verification]

#!/bin/bash
# Verify if LockMode.STRICT is configured elsewhere in build-logic
rg -n "LockMode\.STRICT" gradle/build-logic/

Comment thread gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts Outdated
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts (1)

44-44: ⚠️ Potential issue | 🟠 Major

Same placeholder com.example:* pattern found here.

This duplicates the issue in the sibling script. If this is intentional configuration, use the actual dependency coordinates; otherwise remove.

The LockMode.STRICT removal concern was already raised in a previous review. Ensure strict lock enforcement is handled elsewhere or restore it to maintain supply-chain integrity.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts`
at line 44, The dependencyLocking block uses a placeholder ignored dependency
pattern "com.example:*" which duplicates the sibling script; replace this
placeholder with the actual group:artifact coordinates to ignore or remove the
ignoredDependencies.add("com.example:*") call if no ignore is needed, and verify
that LockMode.STRICT enforcement is configured elsewhere (or restore
LockMode.STRICT) so strict lock enforcement for dependency locking remains in
place; look for the dependencyLocking block and any use of ignoredDependencies
and LockMode.STRICT to make the change.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In
`@gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts`:
- Line 44: The dependencyLocking block uses a placeholder ignored dependency
pattern "com.example:*" which duplicates the sibling script; replace this
placeholder with the actual group:artifact coordinates to ignore or remove the
ignoredDependencies.add("com.example:*") call if no ignore is needed, and verify
that LockMode.STRICT enforcement is configured elsewhere (or restore
LockMode.STRICT) so strict lock enforcement for dependency locking remains in
place; look for the dependencyLocking block and any use of ignoredDependencies
and LockMode.STRICT to make the change.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 4b0b773b-35ff-41d2-b114-2d6a4b0f7e9b

📥 Commits

Reviewing files that changed from the base of the PR and between 56e466b and e6fc213.

📒 Files selected for processing (2)
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: submit-gradle
  • GitHub Check: pr-checks-build-logic
  • GitHub Check: pr-checks
  • GitHub Check: core-checks
  • GitHub Check: Cloudflare Pages
🧰 Additional context used
📓 Path-based instructions (2)
**/*.gradle.kts

⚙️ CodeRabbit configuration file

**/*.gradle.kts: Prefer tasks.register/configureEach, avoid afterEvaluate, and preserve configuration cache.
Ensure dependencies come from version catalogs and avoid eager task realization.
Review plugin/config changes for supply-chain and reproducibility risks.

Files:

  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
**/*

⚙️ CodeRabbit configuration file

**/*: Security first, performance second.
Validate input boundaries, auth/authz implications, and secret management.
Look for behavioral regressions, missing tests, and contract breaks across modules.

Files:

  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts
  • gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts
🔇 Additional comments (2)
gradle/build-logic/src/main/kotlin/com.profiletailors.check.locking.gradle.kts (1)

25-32: LGTM on the refactored exclusion logic.

The combined predicate properly handles build-logic-specific exclusions. The logic is clear: exclude configurations that aren't resolvable, are in the global exclusion set, match build-logic-only exclusions when in that project, or start with excluded prefixes.

gradle/build-logic/src/main/kotlin/com.profiletailors.check.dependencies.gradle.kts (1)

64-64: Remove placeholder dependency pattern com.example:* from build logic.

This pattern appears in newly created build files (com.profiletailors.check.dependencies.gradle.kts and com.profiletailors.check.locking.gradle.kts) but uses the standard documentation placeholder namespace. Either replace with the actual dependency to ignore or remove if not needed.

@sentry
Copy link
Copy Markdown

sentry Bot commented Mar 20, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@sonarqubecloud
Copy link
Copy Markdown

@yacosta738 yacosta738 merged commit 7cd314c into main Mar 20, 2026
21 checks passed
@yacosta738 yacosta738 deleted the fix/marketing-docs-links branch March 20, 2026 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant