Skip to content

Conversation

@AlexSkrypnyk
Copy link
Member

@AlexSkrypnyk AlexSkrypnyk commented Sep 2, 2025

related to #1915

Summary by CodeRabbit

  • Chores

    • Excluded robots.txt from automatic scaffolding and removed the existing robots.txt to prevent regeneration or overwriting.
  • Tests

    • Set error logging to “all” across multiple environment tests to capture full error output.
    • Skipped permission hardening in specific local/container test setups to streamline test execution.
  • Refactor

    • Expanded environment-specific settings to enable verbose error logging in local and CI contexts, aligning behavior across environments.

@coderabbitai
Copy link

coderabbitai bot commented Sep 2, 2025

Warning

Rate limit exceeded

@AlexSkrypnyk has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 1 minutes and 15 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 281d16c and 40576d6.

⛔ Files ignored due to path filters (30)
  • .vortex/installer/tests/Fixtures/install/_baseline/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/composer.json is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/web/robots.txt is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/web/sites/default/includes/modules/settings.system.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/ciprovider_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/deploy_type_all_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/deploy_type_none_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/deps_updates_provider_ci_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/composer.json is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/docroot/robots.txt is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/docroot/sites/default/includes/modules/settings.system.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/web/-robots.txt is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_lagoon/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/provision_database_lagoon/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/starter_drupal_cms_profile/composer.json is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/timezone_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_groups_no_be_lint_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_groups_no_be_tests/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_groups_no_be_tests_circleci/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_behat_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpcs_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpmd_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpstan_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpunit/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpunit_circleci/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_rector_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_none/.gitignore is excluded by !.vortex/installer/tests/Fixtures/**
📒 Files selected for processing (9)
  • .gitignore (0 hunks)
  • .vortex/tests/bats/_helper.bash (1 hunks)
  • .vortex/tests/bats/_helper.deployment.bash (1 hunks)
  • .vortex/tests/bats/_helper.workflow.bash (1 hunks)
  • .vortex/tests/phpunit/Traits/AssertFilesTrait.php (1 hunks)
  • composer.json (1 hunks)
  • tests/phpunit/Drupal/EnvironmentSettingsTest.php (6 hunks)
  • web/robots.txt (0 hunks)
  • web/sites/default/includes/modules/settings.system.php (1 hunks)

Walkthrough

Updates Drupal configuration to exclude scaffolding of robots.txt, removes the existing robots.txt file, expands environment-based settings to show all errors and skip permissions hardening for local and CI, and adjusts PHPUnit environment tests accordingly.

Changes

Cohort / File(s) Summary of Changes
Composer scaffold config
composer.json
Excludes [web-root]/robots.txt from drupal-scaffold file-mapping so it isn’t generated/overwritten.
Environment tests adjustments
tests/phpunit/Drupal/EnvironmentSettingsTest.php
Sets system.logging.error_level to all in several env tests; adds skip_permissions_hardening = TRUE for local/local container tests.
Robots.txt removal
web/robots.txt
Deletes static robots.txt that contained allow/disallow rules.
Environment settings behavior
web/sites/default/includes/modules/settings.system.php
Expands condition to apply to LOCAL or CI; within it sets $config['system.logging']['error_level'] = 'all' and continues skipping permissions hardening.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor User
  participant Drupal as Drupal Bootstrap
  participant Settings as settings.system.php
  participant Config as Drupal Config

  User->>Drupal: HTTP request
  Drupal->>Settings: Load environment settings
  alt ENVIRONMENT_LOCAL or ENVIRONMENT_CI
    Settings->>Config: Set system.logging.error_level = "all"
    Settings->>Drupal: Set skip_permissions_hardening = TRUE
  else Other environments
    Settings-->>Drupal: No changes
  end
  Drupal-->>User: Response (logging level applied)
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

Confirmed

Poem

I twitched my ears at logs that whisper all—
In local burrows, no hardening wall.
The bots? No map to nibble, none at all.
Composer hops, scaffolds take a pause—
Tests thump approval with tidy paws. 🐇✨

✨ Finishing Touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/remove-robotstxt-file

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore or @coderabbit ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@github-actions github-actions bot temporarily deployed to commit September 2, 2025 09:14 Inactive
Copy link

@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: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between be95da9 and 281d16c.

⛔ Files ignored due to path filters (23)
  • .vortex/installer/tests/Fixtures/install/_baseline/composer.json is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/web/robots.txt is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/_baseline/web/sites/default/includes/modules/settings.system.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/ciprovider_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/deploy_type_all_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/deploy_type_none_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/deps_updates_provider_ci_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/composer.json is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/docroot/robots.txt is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/docroot/sites/default/includes/modules/settings.system.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_acquia/web/-robots.txt is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/hosting_lagoon/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/provision_database_lagoon/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/starter_drupal_cms_profile/composer.json is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/timezone_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_groups_no_be_lint_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_behat_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpcs_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpmd_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_phpstan_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/install/tools_no_rector_circleci/tests/phpunit/Drupal/EnvironmentSettingsTest.php is excluded by !.vortex/installer/tests/Fixtures/**
📒 Files selected for processing (4)
  • composer.json (1 hunks)
  • tests/phpunit/Drupal/EnvironmentSettingsTest.php (6 hunks)
  • web/robots.txt (0 hunks)
  • web/sites/default/includes/modules/settings.system.php (1 hunks)
💤 Files with no reviewable changes (1)
  • web/robots.txt
🧰 Additional context used
📓 Path-based instructions (1)
composer.json

📄 CodeRabbit inference engine (CLAUDE.md)

When adding JavaScript or CSS libraries as Drupal libraries with Composer, define them as inline Composer packages in the 'repositories' section of composer.json

Files:

  • composer.json
⏰ 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). (7)
  • GitHub Check: build (1)
  • GitHub Check: build (0)
  • GitHub Check: vortex-test-common
  • GitHub Check: vortex-test-installer (8.2)
  • GitHub Check: vortex-test-installer (8.4)
  • GitHub Check: vortex-test-installer (8.3)
  • GitHub Check: vortex-test-docs
🔇 Additional comments (6)
composer.json (1)

109-109: Verify robotstxt module configuration

  • Scaffolding exclusion ("[web-root]/robots.txt": false) is present; no static robots.txt under web/
  • Unable to find any core.extension.yml in the repo to confirm the robotstxt module is enabled—please verify it’s listed under enabled modules in your Drupal config
  • No server configs explicitly handling robots.txt were detected under docker/ or web/.htaccess
web/sites/default/includes/modules/settings.system.php (1)

22-23: Enable verbose errors for Local/CI — LGTM.

Matches the PR goal to surface all errors in dev and CI.

tests/phpunit/Drupal/EnvironmentSettingsTest.php (4)

425-425: Local: assertions updated — LGTM.

Config adds system.logging.error_level = 'all' and settings add skip_permissions_hardening = TRUE; ordering remains alphabetical.

Also applies to: 445-445


472-472: Local (container): assertions updated — LGTM.

Mirrors Local expectations with correct alphabetic placement.

Also applies to: 492-492


522-522: CircleCI: show all errors — LGTM.

Config matches settings change for CI.


571-571: GitHub Actions: show all errors — LGTM.

Consistent with CI expectations.

}

if ($settings['environment'] === ENVIRONMENT_CI) {
if ($settings['environment'] === ENVIRONMENT_LOCAL || $settings['environment'] === ENVIRONMENT_CI) {
Copy link

Choose a reason for hiding this comment

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

🧹 Nitpick (assertive)

Nit: simplify environment check.

Use in_array for readability and to avoid repeating the variable.

-if ($settings['environment'] === ENVIRONMENT_LOCAL || $settings['environment'] === ENVIRONMENT_CI) {
+if (in_array($settings['environment'], [ENVIRONMENT_LOCAL, ENVIRONMENT_CI], TRUE)) {
📝 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.

Suggested change
if ($settings['environment'] === ENVIRONMENT_LOCAL || $settings['environment'] === ENVIRONMENT_CI) {
if (in_array($settings['environment'], [ENVIRONMENT_LOCAL, ENVIRONMENT_CI], TRUE)) {
🤖 Prompt for AI Agents
In web/sites/default/includes/modules/settings.system.php around line 19, the
environment comparison repeats the same variable and can be simplified; replace
the dual === checks with a single in_array($settings['environment'],
[ENVIRONMENT_LOCAL, ENVIRONMENT_CI]) call to improve readability and avoid
repeating $settings['environment'].

@codecov
Copy link

codecov bot commented Sep 2, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 77.57%. Comparing base (43d07e2) to head (40576d6).
⚠️ Report is 2 commits behind head on develop.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #1964   +/-   ##
========================================
  Coverage    77.57%   77.57%           
========================================
  Files           89       89           
  Lines         5515     5515           
  Branches        35       35           
========================================
  Hits          4278     4278           
  Misses        1237     1237           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@AlexSkrypnyk AlexSkrypnyk force-pushed the feature/remove-robotstxt-file branch from 281d16c to ac32cc1 Compare September 2, 2025 09:23
@AlexSkrypnyk AlexSkrypnyk force-pushed the feature/remove-robotstxt-file branch from ac32cc1 to 40576d6 Compare September 2, 2025 09:24
@github-actions github-actions bot temporarily deployed to commit September 2, 2025 09:26 Inactive
@AlexSkrypnyk AlexSkrypnyk added this to the 25.8.0 milestone Sep 2, 2025
@AlexSkrypnyk AlexSkrypnyk moved this from BACKLOG to In progress in Vortex Sep 2, 2025
@AlexSkrypnyk AlexSkrypnyk enabled auto-merge (rebase) September 2, 2025 09:27
@AlexSkrypnyk AlexSkrypnyk added the AUTOMERGE Pull request has been approved and set to automerge label Sep 2, 2025
@AlexSkrypnyk AlexSkrypnyk merged commit ffaa5db into develop Sep 2, 2025
31 checks passed
@AlexSkrypnyk AlexSkrypnyk deleted the feature/remove-robotstxt-file branch September 2, 2025 09:42
@github-project-automation github-project-automation bot moved this from In progress to Release queue in Vortex Sep 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AUTOMERGE Pull request has been approved and set to automerge

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants