WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Conversation

@nixel2007
Copy link
Member

@nixel2007 nixel2007 commented Dec 15, 2025

Summary by CodeRabbit

  • Documentation
    • Updated multiple diagnostic and contributing documentation files with localization enhancements, including removal of language qualifiers from source references.
    • Reformatted section headers and example labels for consistency (e.g., "Description" to "Diagnostics description," "Incorrect" to "Wrong").
    • Adjusted code samples with localized translations and formatting improvements.
    • Enhanced source citations and adjusted documentation structure for better clarity.

✏️ Tip: You can customize this high-level summary in your review settings.

Copilot AI review requested due to automatic review settings December 15, 2025 13:39
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 15, 2025

Walkthrough

This PR updates documentation across contributing guides and diagnostic documentation, making formatting refinements, removing language qualifiers from source references, standardizing example labels (Incorrect→Wrong, Correct→Right), updating section headers, and localizing content to Russian where applicable.

Changes

Cohort / File(s) Summary
Contributing Guides
docs/en/contributing/DiagnostcAddSettings.md, docs/en/contributing/DiagnosticDevWorkFlow.md, docs/en/contributing/DiagnosticExample.md, docs/en/contributing/DiagnosticStructure.md, docs/en/contributing/DiagnosticTypeAndSeverity.md, docs/en/contributing/EventsApi.md, docs/en/contributing/StyleGuide.md
Minor formatting fixes, whitespace adjustments, wording updates, and Russian section header translations (e.g., "Null values" → "Обработка null")
Diagnostic Docs – Source Reference Cleanup
docs/en/diagnostics/CachedPublic.md, docs/en/diagnostics/CanonicalSpellingKeywords.md, docs/en/diagnostics/CodeBlockBeforeSub.md, docs/en/diagnostics/CodeOutOfRegion.md, docs/en/diagnostics/CommentedCode.md, docs/en/diagnostics/CommonModuleMissingAPI.md, docs/en/diagnostics/CompilationDirectiveNeedLess.md, docs/en/diagnostics/DeprecatedAttributes8312.md, docs/en/diagnostics/DeprecatedMethods8310.md, docs/en/diagnostics/DeprecatedMethods8317.md, docs/en/diagnostics/DeprecatedMessage.md, docs/en/diagnostics/DeprecatedMethodCall.md, docs/en/diagnostics/DeprecatedTypeManagedForm.md, docs/en/diagnostics/DuplicateRegion.md, docs/en/diagnostics/DuplicateStringLiteral.md, docs/en/diagnostics/EmptyRegion.md, docs/en/diagnostics/ExportVariables.md, docs/en/diagnostics/FormDataToValue.md, docs/en/diagnostics/FullOuterJoinQuery.md, docs/en/diagnostics/FunctionNameStartsWithGet.md, docs/en/diagnostics/GetFormMethod.md, docs/en/diagnostics/IncorrectUseLikeInQuery.md, docs/en/diagnostics/IncorrectUseOfStrTemplate.md, docs/en/diagnostics/InvalidCharacterInFile.md, docs/en/diagnostics/IsInRoleMethod.md, docs/en/diagnostics/LineLength.md, docs/en/diagnostics/MethodSize.md, docs/en/diagnostics/MissingParameterDescription.md, docs/en/diagnostics/MissingReturnedValueDescription.md, docs/en/diagnostics/MissingVariablesDescription.md, docs/en/diagnostics/MultilingualStringHasAllDeclaredLanguages.md, docs/en/diagnostics/NonExportMethodsInApiRegion.md, docs/en/diagnostics/NonStandardRegion.md, docs/en/diagnostics/NumberOfValuesInStructureConstructor.md, docs/en/diagnostics/OneStatementPerLine.md, docs/en/diagnostics/OrdinaryAppSupport.md, docs/en/diagnostics/PairingBrokenTransaction.md, docs/en/diagnostics/SelectTopWithoutOrderBy.md, docs/en/diagnostics/SelfInsertion.md, docs/en/diagnostics/SetPermissionsForNewObjects.md, docs/en/diagnostics/SpaceAtStartComment.md, docs/en/diagnostics/StyleElementConstructors.md, docs/en/diagnostics/TimeoutsInExternalResources.md, docs/en/diagnostics/TryNumber.md
Removed language qualifiers (RU) from source reference link text, replaced Russian source labels with English equivalents, updated section headers (Sources→Reference), and adjusted link anchors and URLs for consistency
Diagnostic Docs – Header & Label Standardization
docs/en/diagnostics/BadWords.md, docs/en/diagnostics/CommonModuleInvalidType.md, docs/en/diagnostics/CommonModuleNameFullAccess.md, docs/en/diagnostics/CommonModuleNameGlobalClient.md, docs/en/diagnostics/CommonModuleNameWords.md, docs/en/diagnostics/CreateQueryInCycle.md, docs/en/diagnostics/DataExchangeLoading.md, docs/en/diagnostics/DeletingCollectionItem.md, docs/en/diagnostics/DeprecatedCurrentDate.md, docs/en/diagnostics/FieldsFromJoinsWithoutIsNull.md, docs/en/diagnostics/ForbiddenMetadataName.md, docs/en/diagnostics/FunctionOutParameter.md, docs/en/diagnostics/GlobalContextMethodCollision8312.md, docs/en/diagnostics/MissingCodeTryCatchEx.md, docs/en/diagnostics/MissingTempStorageDeletion.md, docs/en/diagnostics/MissingTemporaryFileDeletion.md, docs/en/diagnostics/MultilingualStringUsingWithTemplate.md, docs/en/diagnostics/NestedFunctionInParameters.md, docs/en/diagnostics/NestedStatements.md, docs/en/diagnostics/NestedTernaryOperator.md, docs/en/diagnostics/NumberOfParams.md, docs/en/diagnostics/ParseError.md, docs/en/diagnostics/QueryNestedFieldsByDot.md, docs/en/diagnostics/QueryParseError.md, docs/en/diagnostics/QueryToMissingMetadata.md, docs/en/diagnostics/SameMetadataObjectAndChildNames.md, docs/en/diagnostics/SeveralCompilerDirectives.md, docs/en/diagnostics/ServerCallsInFormEvents.md, docs/en/diagnostics/ServerSideExportFormMethod.md, docs/en/diagnostics/TempFilesDir.md, docs/en/diagnostics/TernaryOperatorUsage.md
Standardized example labels (Incorrect→Wrong, Correct→Right/Good), updated section headers (Description→Diagnostics description), adjusted code block formatting and indentation, and minor wording refinements
Diagnostic Docs – Content Expansion & Localization
docs/en/diagnostics/CrazyMultilineString.md, docs/en/diagnostics/DenyIncompleteValues.md, docs/en/diagnostics/DisableSafeMode.md, docs/en/diagnostics/DoubleNegatives.md, docs/en/diagnostics/ExecuteExternalCode.md, docs/en/diagnostics/ExternalAppStarting.md, docs/en/diagnostics/FileSystemAccess.md, docs/en/diagnostics/InternetAccess.md, docs/en/diagnostics/LogicalOrInJoinQuerySection.md, docs/en/diagnostics/LogicalOrInTheWhereSectionOfQuery.md, docs/en/diagnostics/MagicDate.md, docs/en/diagnostics/MissedRequiredParameter.md, docs/en/diagnostics/MissingCommonModuleMethod.md, docs/en/diagnostics/MultilineStringInQuery.md, docs/en/diagnostics/PrivilegedModuleMethodCall.md, docs/en/diagnostics/ProtectedModule.md, docs/en/diagnostics/RefOveruse.md, docs/en/diagnostics/ReservedParameterNames.md, docs/en/diagnostics/RewriteMethodParameter.md, docs/en/diagnostics/ScheduledJobHandler.md, docs/en/diagnostics/SetPrivilegedMode.md, docs/en/diagnostics/TransferringParametersBetweenClientAndServer.md, docs/en/diagnostics/DuplicatedInsertionIntoCollection.md
Added Description/Examples/Sources sections, expanded documentation with Russian translations and bilingual content, updated code examples with localized identifiers, added bullet lists and explanatory notes, and restructured narrative flows

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25–35 minutes

  • High volume: 100+ files changed with mostly repetitive formatting and localization updates
  • Low heterogeneity: Consistent patterns (label standardization, RU removal, header updates) across many files reduce reasoning per file
  • Moderate complexity: Mix of simple label/formatting changes and some substantive content expansions and example updates requiring careful verification

Areas requiring extra attention:

  • Diagnostic files with expanded content (DisableSafeMode.md, SetPrivilegedMode.md, LogicalOrInJoinQuerySection.md, TransferringParametersBetweenClientAndServer.md) – verify localization accuracy and clarity
  • Source reference updates – ensure all URL targets remain correct and no links are broken
  • Example code blocks with Russian localization – validate syntax correctness and alignment with original intent

Possibly related PRs

Suggested labels

hacktoberfest-accepted

Poem

🐰 Whiskers twitching with delight,
Docs now sparkle, clean and bright!
Labels fixed from Wrong to Right,
Russian touches shine tonight—
A hundred files, all holding tight!

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'New Crowdin updates' is vague and generic, using a non-descriptive term that doesn't convey specific information about the changeset's main purpose. Consider using a more descriptive title that explains what type of updates were made, such as 'Update documentation translations via Crowdin' or 'Localization updates for diagnostic documentation'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch l10n_develop

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.

Copy link
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: 13

Note

Due to the large number of review comments, Critical severity comments were prioritized as inline comments.

Caution

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

⚠️ Outside diff range comments (14)
docs/en/diagnostics/CommonModuleInvalidType.md (1)

16-17: Examples section is empty.

The Examples section contains only a comment but no actual examples. According to documentation guidelines, diagnostic documentation should include examples of problematic code and fixes. Please add concrete examples demonstrating common mistakes with module type selection and how to correct them.

docs/en/diagnostics/NestedTernaryOperator.md (1)

6-6: Fix grammar error in description.

The verb should agree with its subject: "Use of nested ternary operators decreases code readability."

-Use of nested ternary operators decrease code readability.
+Use of nested ternary operators decreases code readability.
docs/en/diagnostics/IsInRoleMethod.md (2)

27-27: Fix Cyrillic character in example label.

Line 27 contains "Сorrect:" where the first character is Cyrillic 'С' instead of Latin 'C'. This should match the Latin "Correct:" label used in other examples.

-Сorrect:
+Correct:

10-10: Remove duplicated text in description.

Line 10 contains a verbatim repetition of the same sentence. The second occurrence should be removed to improve readability.

-If Standard Subsystems Library is used in a configuration, use the RolesAvailable function of the Users common module, otherwise IsInRole method call must be combined with PrivilegedMode() method call. If Standard Subsystems Library is used in a configuration, use the RolesAvailable() function of the Users common module, otherwise IsInRole() method call must be combined with PrivilegedMode() method call.
+If Standard Subsystems Library is used in a configuration, use the RolesAvailable() function of the Users common module, otherwise IsInRole() method call must be combined with PrivilegedMode() method call.
docs/en/diagnostics/GlobalContextMethodCollision8312.md (1)

24-25: Add code examples for problematic patterns and fixes.

The Examples section is empty. Per the diagnostic documentation guidelines, please provide examples that demonstrate:

  1. Code that triggers the diagnostic (incorrect usage showing method name collision)
  2. The corrected/recommended approach

This helps users understand the issue and how to resolve it.

I can help generate concrete code examples for the 1C:Enterprise platform showing the collision scenario and the recommended migration pattern. Would you like me to create these examples?

docs/en/diagnostics/StyleElementConstructors.md (1)

13-14: Add code examples to Examples section.

The Examples section header exists but contains no actual code examples. Per coding guidelines, diagnostic documentation must include "examples of problematic code and fixes." Add "Incorrect" and "Correct" subsections with StyleElementConstructors diagnostic violations and their fixes, following the structure used in other diagnostic documentation like AllFunctionPathMustHaveReturn.md.

docs/en/diagnostics/ProtectedModule.md (2)

12-24: Add Examples section with concrete code samples.

Per coding guidelines, diagnostic documentation must include "examples of problematic code and fixes" in both Russian and English. Currently, the Examples section (lines 12-24) contains only placeholder comments with no actual examples.

Please add concrete code examples demonstrating the problem (e.g., a protected module without source code) and how to address it (e.g., providing source code).


16-24: Populate the Sources section with actual references.

The Sources section currently contains only commented template text with no actual references. Please add relevant sources (e.g., standards, documentation links) that support the diagnostic guidance.

docs/en/diagnostics/SetPrivilegedMode.md (1)

14-17: Fix mixed English/Russian and incomplete Description section.

Line 14 contains improperly merged English and Russian text: "Правило находит вызовы метода The diagnostic finds calls to the SetPrivilegedMode method". This appears to be a translation merge artifact where Russian and English descriptions were concatenated.

Additionally, lines 15-17 appear incomplete and lack proper context. Please clarify the intent:

  • Should lines 15-17 specify that calls to SetPrivilegedMode(False) are ignored?
  • Should the Description be consistently in English, Russian, or clearly separated bilingual sections?

Rewrite this section for clarity and consistency.

docs/en/diagnostics/TernaryOperatorUsage.md (1)

27-27: Fix inconsistent 1C keyword spelling: change End If; to EndIf; on line 42

Line 42 uses End If; while line 27 uses the canonical form EndIf;. According to the official 1C keyword reference in CanonicalSpellingKeywords.md (КонецЕсли → EndIf), the correct spelling is EndIf without a space. Update line 42 to match line 27.

docs/en/diagnostics/DuplicatedInsertionIntoCollection.md (1)

1-21: Add diagnostic content to the documentation.

Both the English and Russian versions of this file contain only empty template sections with placeholder comments. The Description, Examples, and Sources sections must include actual content: a clear explanation of the DuplicatedInsertionIntoCollection diagnostic, code examples showing both problematic and correct patterns, and reference links.

This does not meet the coding guidelines requirement for diagnostic documentation. See AllFunctionPathMustHaveReturn.md for an example of the expected structure and level of detail.

docs/en/diagnostics/CrazyMultilineString.md (1)

17-29: Address localization inconsistency in examples.

The first example (lines 20–21) is localized to Russian while the "Classic variant" example (lines 27–29) remains in English. For clarity and consistency, both examples should use the same language.

Decide: Should the classic variant also be localized to Russian?

  Classic variant:

  ```bsl
- String = "BBB" + "CC"
+ Строка = "ВВВ" + "СС"
-          + "F";
+          + "Ф";

</blockquote></details>
<details>
<summary>docs/en/diagnostics/InternetAccess.md (1)</summary><blockquote>

`5-28`: **Complete the Examples section with actual diagnostic violations.**

The Examples section contains placeholder template code without sufficient context. The HTTP/FTP connection examples need clarification on what specifically triggers the diagnostic rule regarding "Internet resources and transmitted data."

Currently, lines 15–18 show generic connection code, but the examples should explicitly demonstrate:
- Why accessing Internet resources without proper controls is a violation
- What data transmission scenarios are flagged
- How to correctly structure such code to comply



Consider expanding the examples to show:

```bsl
// Wrong: Direct uncontrolled internet access
HTTPConnection = New HTTPConnection("zabbix.localhost", 80); // error

// Right: With proper data validation/sanitization
// Example would depend on your specific security requirements

Please add comments explaining the security implications for clarity.

docs/en/diagnostics/CodeAfterAsyncCall.md (1)

31-48: English documentation file contains Russian code examples; maintain language consistency.

The "Correct code" section (lines 31–48) is entirely in Russian (&НаКлиенте, Процедура, КонецПроцедуры), while the "Incorrect code" section (lines 13–29) is in English (&AtClient, Procedure, EndProcedure). This creates a confusing presentation for English-speaking readers trying to compare the two examples.

Since separate localized files exist (docs/en/ for English, docs/diagnostics/ for Russian), the English file should consistently use English keywords in all code examples. Either revert the "Correct code" section to English keywords to match the "Incorrect code" section, or if bilingual examples are intentionally required, establish a clear, consistent structure with labeled sections for each language.

🟠 Major comments (15)
docs/en/diagnostics/ScheduledJobHandler.md-24-25 (1)

24-25: Examples section requires code samples showing problematic and correct patterns.

The Examples section is currently empty. Per the coding guidelines for diagnostic documentation, this section should include concrete examples of problematic code and the corrected version to illustrate when and how the diagnostic triggers.

Please add examples such as:

  • A scheduled job handler with parameters when the job is predefined (incorrect)
  • A scheduled job handler with an empty method body (incorrect)
  • A correctly implemented scheduled job handler (correct)
docs/en/diagnostics/BadWords.md-4-11 (1)

4-11: Russian documentation missing and example format inconsistent with diagnostic standards.

The Russian counterpart file (docs/ru/diagnostics/BadWords.md) does not exist; the entire docs/ru/diagnostics/ directory is absent. Per coding guidelines, diagnostic documentation must include both Russian and English versions with examples of problematic code and fixes.

Additionally, this diagnostic uses a configuration pattern format ("Sample setup:" with regex examples) rather than the standard "Incorrect/Correct" code examples used in other diagnostics. Align the example format with the established pattern and create the Russian documentation version.

docs/en/diagnostics/LogicalOrInTheWhereSectionOfQuery.md-54-62 (1)

54-62: Use English keywords in English documentation code examples.

Lines 54–62 contain Russian SQL keywords (ОБЪЕДИНИТЬ ВСЕ, ПО, И, ИЛИ) in English documentation. For consistency and readability, code examples in docs/en/ should use English keywords:

-    Table.Field1 = &Value1
-
-ОБЪЕДИНИТЬ ВСЕ
-
-WHERE
-    Table.Field2 = &Value1
+    Table.Field1 = &Value1
+
+UNION ALL
+
+WHERE
+    Table.Field2 = &Value1

The same applies to line 58 and other Russian keywords in code blocks. Consider aligning all code examples to use English keywords throughout.

docs/en/diagnostics/DeprecatedCurrentDate.md-28-28 (2)

28-28: Code examples use inconsistent identifier language.

The client example (line 28) uses Russian identifiers (ДатаОперации, ОбщегоНазначенияКлиент), while the server example (line 40) uses English identifiers (OperationDate, CurrentSessionDate). For consistency and clarity in English documentation, both examples should use the same language style.

Also applies to: 40-40


28-28: English documentation should not contain Russian code identifiers.

Line 28 contains Russian identifiers (ДатаОперации, ОбщегоНазначенияКлиент.ДатаСеанса) in the English documentation file. The root docs/diagnostics/DeprecatedCurrentDate.md is the Russian version (confirmed by Russian section headers); docs/en/diagnostics/DeprecatedCurrentDate.md should have English code examples with English module names from the Library of Standard Subsystems.

This also applies to line 44 (Russian comment).

docs/en/diagnostics/DeprecatedCurrentDate.md-19-19 (1)

19-19: Inconsistent example labels within the same file.

The file mixes "Incorrect/Correct" labels (lines 19, 25) with a "Right" label (line 37) for the server example. Use consistent labeling throughout the document.

Apply this diff to standardize labels:

- Incorrect:
+ Wrong:

- Correct:
+ Right:

Alternatively, use "Incorrect/Correct" consistently throughout all sections.

Also applies to: 25-25, 37-37

docs/en/diagnostics/DeprecatedAttributes8312.md-37-37 (1)

37-37: Add code examples showing problematic usage and recommended alternatives.

This diagnostic documentation must include code examples demonstrating the deprecated features and their recommended replacements, as required by the coding guidelines for diagnostic documentation. Currently, the file only lists deprecated items without showing problematic code patterns or fixes.

Reference the Russian version (docs/diagnostics/DeprecatedAttributes8312.md) for consistency, and ensure both versions contain identical examples.

docs/en/diagnostics/DenyIncompleteValues.md-28-30 (1)

28-30: Examples section is empty.

The Examples section header is added (line 28) but contains only a Russian comment placeholder (line 30). Per the coding guidelines, diagnostic documentation should include "examples of problematic code and fixes" that demonstrate the rule in practice.

Please add concrete examples showing:

  • Incorrect usage (a dimension not marked with "Deny Incomplete Values")
  • Correct usage (a dimension with the flag properly set)

Do you want me to generate example code snippets for this diagnostic rule, or open a new issue to track this requirement?

docs/en/diagnostics/DenyIncompleteValues.md-9-19 (1)

9-19: Remove Russian text from English documentation and complete Examples section.

The file contains Russian text mixed within English paragraphs (lines 11-19), which should be replaced with proper English translation. Additionally, the Examples section (line 28) is empty but should include code samples showing problematic and corrected register dimension configurations, consistent with examples in other diagnostic documentation files.

docs/en/diagnostics/MissingCommonModuleMethod.md-24-27 (1)

24-27: Sources section is incomplete.

The section contains only template comments and placeholders. Per coding guidelines, add actual sources that informed the diagnostic's design.

docs/en/diagnostics/MissingCommonModuleMethod.md-20-23 (1)

20-23: Examples section is empty.

Per the coding guidelines for docs/*/diagnostics/**/*.md, this section should include "examples of problematic code and fixes" to demonstrate when the diagnostic triggers and how to resolve the issue. Add concrete code examples showing:

  • Erroneous method calls that trigger the diagnostic
  • Correct code or fixes
docs/en/diagnostics/RewriteMethodParameter.md-9-12 (1)

9-12: Fix: Mixed-language content breaks English documentation.

Line 12 contains mixed Russian and English text: "Иногда разработчик пишут функции таким образом, когда аргументы функции перезаписываются сразу на входе в функцию/процедуру. Такое поведение вводит в заблуждение других разработчиков, которые вызывают подобные функции/процедуры. Эти функции нужно исправить. It is necessary to correct this deficiency..." This is incomplete localization. Either translate to Russian completely or revert to English.

docs/en/contributing/StyleGuide.md-7-11 (1)

7-11: Resolve language inconsistency and address style issues.

The section header is in Russian ("Обработка null") while the rest of the document is in English. This appears to be a localization error—either the header should remain "Null values" in English, or this is a mistaken merge from a Russian version.

Additionally, two minor style improvements:

  • Line 9: "high frequency" should be hyphenated as "high-frequency" (compound adjective before noun)
  • Line 11: "To do this" could be more expressive as "To achieve this"

Proposed fix:

-## Обработка null
+## Null values

 If a method can legally return `null`, it is recommended that you return `Optional<T>` instead of explicitly returning `null`. Exceptions (eg. high-frequency or performance functions) are negotiated separately.

-The description of the `package-info.java` package must indicate that the NonNull API is used by default in the package. To do this, the annotation `@NullMarked` is added above the package name
+The description of the `package-info.java` package must indicate that the NonNull API is used by default in the package. To achieve this, the annotation `@NullMarked` is added above the package name
docs/en/contributing/DiagnosticStructure.md-282-285 (1)

282-285: Remove Russian content from English documentation and fix spelling errors in source Russian text.

This file in docs/en/ contains Russian text blocks (lines 282-285, 347) that duplicate content from the Russian documentation version (docs/contributing/DiagnosticStructure.md). Remove these untranslated paragraphs from the English version.

Additionally, the Russian text contains spelling errors present in both versions:

  • "зафиксированно" → "зафиксировано"
  • "допущенно" → "допущено"
  • "контрольнх" → "контрольных"

These errors should be corrected in the source Russian documentation.

This pattern affects multiple files in docs/en/ (at least 15 files with mixed Russian content). Address systematically.

docs/en/diagnostics/CodeAfterAsyncCall.md-52-57 (1)

52-57: Inconsistent keyword language within the same code block.

Lines 52–57 mix Russian keywords (&НаКлиенте, Процедура, Сообщить) with English keywords (EndProcedure). This is inconsistent and confusing. Ensure code examples use consistent language throughout.

🟡 Minor comments (15)
docs/en/diagnostics/ExternalAppStarting.md-18-20 (1)

18-20: Fix hyphenation in compound adjective.

Use a hyphen to join the words "client" and "side" when used as a compound adjective modifying a noun.

- FileSystemsClient.RunApp (for client side) and FileSystems.RunApp (for server side)
+ FileSystemsClient.RunApp (for client-side) and FileSystems.RunApp (for server-side)
docs/en/diagnostics/GlobalContextMethodCollision8312.md-35-35 (1)

35-35: Remove trailing space from link text.

The markdown linter flags a space inside the link text (before the closing bracket). This violates the MD039 rule.

Apply this diff to fix the spacing:

-* Source: [Migration configuration to the "1C: Enterprise 8.3" platform without the compatibility mode with version 8.2 ](https://its.1c.ru/db/metod8dev#content:5293:hdoc:pereimenovaniya_metodov_i_svojstv)
+* Source: [Migration configuration to the "1C: Enterprise 8.3" platform without the compatibility mode with version 8.2](https://its.1c.ru/db/metod8dev#content:5293:hdoc:pereimenovaniya_metodov_i_svojstv)
docs/en/diagnostics/QueryNestedFieldsByDot.md-32-32 (1)

32-32: Fix broken markdown link syntax.

There is a space between the link text bracket and the URL parenthesis, which breaks the markdown link rendering.

Apply this diff to fix the link syntax:

-Source: [Dereference of composite type reference fields in the query language (RU)] (https://its.1c.ru/db/v8std/content/654/hdoc)
+Source: [Dereference of composite type reference fields in the query language (RU)](https://its.1c.ru/db/v8std/content/654/hdoc)
docs/en/diagnostics/QueryNestedFieldsByDot.md-28-28 (1)

28-28: Translate Russian comment to English in this English documentation file.

The comment at line 28 is in Russian but should be translated to match the file's language.

Apply this diff to translate the comment:

-<!-- В данном разделе приводятся примеры, на которые диагностика срабатывает, а также можно привести пример, как можно исправить ситуацию -->
+<!-- This section provides examples on which the diagnostic works. Examples of how to fix the issues are also provided below. -->
docs/en/diagnostics/DisableSafeMode.md-24-24 (1)

24-24: Add language identifier to code block.

The fenced code block (line 24) should specify a language for proper syntax highlighting. Given the Russian code content, consider adding a language identifier.

-```
+```bsl
docs/en/diagnostics/TransferringParametersBetweenClientAndServer.md-65-71 (1)

65-71: Specify language for output code block.

The output code block on line 65 lacks a language identifier. While plain output is acceptable, consider adding ```plaintext or ```text for better Markdown compliance.

Apply this diff:

-```
+```plaintext
 after server Param1= <Changed1>
 after server ParamWithVal= <Initial2>
 after server Collection.Key1 =  <Changed1>
 after server CollectionWithVal.Key2= <Initial2>
-```
+```
docs/en/diagnostics/TransferringParametersBetweenClientAndServer.md-79-109 (1)

79-109: Replace hard tabs with spaces in code block.

The Russian 1C code block uses hard tabs for indentation instead of spaces, which violates Markdown formatting standards.

Apply this diff to replace all hard tabs with spaces (use 4 spaces per indentation level):

-&НаКлиенте
-Процедура ГруппыПользователейПеретаскиваниеЗавершение(Ответ, ДополнительныеПараметры) Экспорт
-	
-	Если Ответ = КодВозвратаДиалога.Нет Тогда
-		Возврат;
-	КонецЕсли;
-	
-	СообщениеПользователю = ПеремещениеПользователяВНовуюГруппу(
-		ДополнительныеПараметры.ПараметрыПеретаскивания,
-		ДополнительныеПараметры.Строка,
-		ДополнительныеПараметры.Перемещение);
-	
-КонецПроцедуры
-
-// входные параметры МассивПользователей и остальные параметры не меняются 
-// и поэтому нет смысла дополнительно возвращать их с сервера
-&НаСервере
-Функция ПеремещениеПользователяВНовуюГруппу(МассивПользователей, НоваяГруппаВладелец, Перемещение)
-	
-	Если НоваяГруппаВладелец = Неопределено Тогда
-		Возврат Неопределено;
-	КонецЕсли;
-	
-	ТекущаяГруппаВладелец = Элементы.ГруппыПользователей.ТекущаяСтрока;
-	СообщениеПользователю = ПользователиСлужебный.ПеремещениеПользователяВНовуюГруппу(
-		МассивПользователей, ТекущаяГруппаВладелец, НоваяГруппаВладелец, Перемещение);
-	
-	Элементы.ПользователиСписок.Обновить();
-	Элементы.ГруппыПользователей.Обновить();
-	
-	Возврат СообщениеПользователю;
-	
-КонецФункции
+&НаКлиенте
+Процедура ГруппыПользователейПеретаскиваниеЗавершение(Ответ, ДополнительныеПараметры) Экспорт
+
+    Если Ответ = КодВозвратаДиалога.Нет Тогда
+        Возврат;
+    КонецЕсли;
+
+    СообщениеПользователю = ПеремещениеПользователяВНовуюГруппу(
+        ДополнительныеПараметры.ПараметрыПеретаскивания,
+        ДополнительныеПараметры.Строка,
+        ДополнительныеПараметры.Перемещение);
+
+КонецПроцедуры
+
+// входные параметры МассивПользователей и остальные параметры не меняются 
+// и поэтому нет смысла дополнительно возвращать их с сервера
+&НаСервере
+Функция ПеремещениеПользователяВНовуюГруппу(МассивПользователей, НоваяГруппаВладелец, Перемещение)
+
+    Если НоваяГруппаВладелец = Неопределено Тогда
+        Возврат Неопределено;
+    КонецЕсли;
+
+    ТекущаяГруппаВладелец = Элементы.ГруппыПользователей.ТекущаяСтрока;
+    СообщениеПользователю = ПользователиСлужебный.ПеремещениеПользователяВНовуюГруппу(
+        МассивПользователей, ТекущаяГруппаВладелец, НоваяГруппаВладелец, Перемещение);
+
+    Элементы.ПользователиСписок.Обновить();
+    Элементы.ГруппыПользователей.Обновить();
+
+    Возврат СообщениеПользователю;
+
+КонецФункции
docs/en/diagnostics/DeletingCollectionItem.md-6-6 (2)

6-6: Fix the pre-existing grammar error: "it change" → "it changes".

The description has a subject-verb agreement issue: "Because it change index of next element" should be "Because it changes index of next element."

Apply this diff to fix the grammar:

-Don't delete elements of collection %s when iterating through collection using the operator **For each ... In ... Do**. Because it change index of next element.
+Don't delete elements of collection %s when iterating through collection using the operator **For each ... In ... Do**. Because it changes index of next element.

6-6: Remove the %s placeholder from the description.

The English version contains an unexplained %s placeholder ("collection %s"), but the Russian version (the source documentation) has no such placeholder. This appears to be an unintended insertion that makes the description unclear. Remove it to match the Russian version and restore the natural flow of the text.

docs/en/diagnostics/CommonModuleMissingAPI.md-14-14 (1)

14-14: Revert code block language identifiers to lowercase bsl for consistency with diagnostic documentation.

The capitalization change to Bsl introduces inconsistency rather than standardization. The codebase predominantly uses lowercase bsl across 20 diagnostic documentation files, while only 4 files (including this one) use Bsl. Either revert these changes to match the existing bsl convention or standardize all diagnostic documentation files to Bsl.

Additionally, note that the learning to update both Russian and English diagnostic documentation does not apply here—no Russian counterpart file exists for CommonModuleMissingAPI.md.

docs/en/diagnostics/FunctionNameStartsWithGet.md-18-19 (1)

18-19: Standardize source reference format across diagnostic documentation.

The file uses * Source: [text](url) without language qualifiers, but other diagnostic files inconsistently include (RU) in source references (e.g., CommonModuleNameCached.md, DisableSafeMode.md, NumberOfParams.md). Ensure all source references follow the same format across docs/en/diagnostics/ and docs/ru/diagnostics/ to maintain consistency with coding guidelines requiring updates in both languages.

docs/en/contributing/DiagnosticExample.md-181-181 (1)

181-181: Remove trailing whitespace.

Line 181 contains trailing whitespace that should be removed for code consistency.

Apply this diff to remove the trailing whitespace:

-Before finishing development, you need to run `gradlew precommit` from the command line or `precommit` from the Gradle taskbar in the IDE. 
+Before finishing development, you need to run `gradlew precommit` from the command line or `precommit` from the Gradle taskbar in the IDE.
docs/en/diagnostics/MissingReturnedValueDescription.md-29-29 (1)

29-29: Fix spelling error in source reference.

Line 29 contains a spelling error: "Standart" should be "Standard".

Apply this diff to fix the spelling:

-* Standart: [Procedures and functions description](https://its.1c.ru/db/v8std#content:453:hdoc)
+* Standard: [Procedures and functions description](https://its.1c.ru/db/v8std#content:453:hdoc)
docs/en/diagnostics/DeprecatedMethodCall.md-25-25 (1)

25-25: Correct the spelling of "Standard".

"Standart" is an incorrect spelling; "Standard" is the correct form. This appears to be a translation artifact from Russian localization.

Apply this diff to fix the spelling:

-* [Standart: Procedures and functions description](https://its.1c.ru/db/v8std/content/453/hdoc), section 5.7
+* [Standard: Procedures and functions description](https://its.1c.ru/db/v8std/content/453/hdoc), section 5.7
docs/en/diagnostics/MissingParameterDescription.md-29-29 (1)

29-29: Fix spelling error in source reference.

Line 29 has a typo: "Standart" should be "Standard". This spelling error should be corrected in this update.

Apply this diff to fix the spelling:

-* Standart: Procedures and functions description
+* Standard: Procedures and functions description
🧹 Nitpick comments (8)
docs/en/diagnostics/CommonModuleInvalidType.md (1)

19-21: Sources section lacks English reference.

The Sources section references only a Russian standard (RU). For English-language documentation targeting an international audience, consider including an English-language reference or international standard when available. This improves accessibility and credibility for non-Russian developers.

docs/en/diagnostics/DeprecatedTypeManagedForm.md (1)

11-11: Verify source label clarity for English readers.

The language qualifier has been removed from the source reference, changing the label from "Platform 8.3.16 changelog (RU)" to "Changelog". However, the URL still points to a Russian resource. While this aligns with the PR's objective to remove language qualifiers, the generic "Changelog" label may not clearly convey to English readers that the source is in Russian.

Consider whether the label adequately describes the source, or if additional context (e.g., a note about the language) would improve clarity for users consulting this documentation.

docs/en/diagnostics/FileSystemAccess.md (1)

9-12: Consider adding section headers to separate language content.

The description mixes Russian prose (lines 9–10) with English prose (line 12) without visual separation. Consider adding explicit subheaders (e.g., "Description (Russian)" and "Description (English)") to improve clarity and readability, especially if other diagnostic docs follow a consistent pattern.

docs/en/diagnostics/QueryNestedFieldsByDot.md (1)

9-26: Add remediation guidance to examples per coding guidelines.

The Examples section lists five problematic queries but does not include corrections or best practices. Per coding guidelines, diagnostic documentation should include examples of both problematic code and fixes.

Consider restructuring each example to show both the problematic pattern and the recommended fix. For instance:

 1. Base dereference through a dot (in temp. db or in select query)
+   - **Problematic:**
    `ЗаказКлиентаТовары.Ссылка.Организация КАК Организация`
+   - **Correct approach:** Consider using an explicit JOIN to improve query performance.
docs/en/diagnostics/PrivilegedModuleMethodCall.md (1)

9-24: Consider adding concrete Wrong/Right code examples.

While the narrative description and validation checklist in the Examples section provide good context, the coding guidelines specify diagnostic documentation should include "examples of problematic code and fixes." Currently, this file provides Russian narrative explanation but lacks concrete code snippets showing Wrong and Right patterns.

Consider adding explicit code examples (in both Russian and English) demonstrating a problematic call to a privileged module method and its corrected version.

docs/en/diagnostics/FieldsFromJoinsWithoutIsNull.md (1)

84-93: Standardize source reference formatting.

The Sources section has inconsistent formatting—some references include (RU) language qualifiers (lines 88–93) while others don't (line 87). This inconsistency affects readability and clarity about which sources are Russian-language resources.

Either add (RU) consistently to all Russian resources or remove it throughout for a uniform style.

docs/en/diagnostics/OneStatementPerLine.md (1)

12-12: Consider: Inconsistent language qualifier handling.

The link text still includes the "(RU)" language qualifier while other files in the PR remove these qualifiers for English documentation. For consistency with the PR's standardization objectives, consider also removing the RU suffix.

docs/en/contributing/DiagnosticStructure.md (1)

11-11: Standardize "Work in Progress" localization labels across the document.

The file inconsistently marks work-in-progress sections:

  • Line 11: Uses English suffix "(Work in Progress)" with link anchors
  • Line 235: Uses Cyrillic "<В разработке>"
  • Line 347: Uses Cyrillic "<В разработке>"

Choose one consistent approach across the file: either use English labels throughout (for an English doc) or apply a consistent bilingual format.

Also applies to: 235-235, 347-347

Comment on lines +9 to +11
In addition to configuration code, the application solution can execute third-party program code, which can be connected in various ways (external reports and data processing, extensions, external components, etc.). The developer cannot guarantee the reliability of this code. При этом злоумышленник может предусмотреть в нем различные деструктивные действия (как в самом внешнем коде, так и опосредовано, через запуск внешних приложений, внешних компонент, COM-объектов), которые могут нанести вред компьютерам пользователей, серверным компьютерам, а также данным в программе.

Перечисленные проблемы безопасности особенно критичны при работе конфигураций в модели сервиса. The listed security problems are especially critical when operating configurations in the service model, because Having gained access to the service, malicious code can immediately gain access to all applications of all users of the service.
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Fix mixed English/Russian text in Description section.

The Description section contains improperly merged English and Russian text that harms readability:

  • Line 9 transitions mid-sentence from English to Russian.
  • Line 11 repeats the same concept in both languages with grammatical issues ("because Having gained access").

Please rewrite the Description to be consistently in either English or Russian (or clearly separate bilingual sections), ensuring proper flow and no repetition.

For example, consider separating into a clear English section followed by a Russian section, rather than interleaving them mid-sentence.

🧰 Tools
🪛 LanguageTool

[grammar] ~9-~9: Ensure spelling is correct
Context: ...йствия (как в самом внешнем коде, так и опосредовано, через запуск внешних приложений, внешн...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🤖 Prompt for AI Agents
In docs/en/diagnostics/DisableSafeMode.md around lines 9 to 11, the Description
mixes English and Russian mid-sentence and repeats the same idea with
grammatical errors; rewrite this block so it is consistently in one language or
clearly split into two labeled sections (English / Russian). Remove the
mid-sentence language switch, consolidate the repeated sentences into a single,
fluent paragraph per language, and fix grammar (e.g., "Having gained access" →
"once an attacker gains access") so the meaning is clear and not duplicated.

Comment on lines +6 to +8
Diagnostics checks fields from left, right, full joins that are not validated with `ISNULL()` or `NOT IS NULL` or `IS NOT NULL</0 >.</p>

Queries cannot use attributes from left-join or right-join tables without checking the values for `NULL`.
Such a call can lead to errors if the join condition is not met and there are no matching records in the left or right table.
As a result, as a result of executing the query, you may receive unexpected data and the system may behave in an incorrect way.
<p spaces-before="0">Queries cannot use attributes from left-join or right-join tables without checking the values for <code>NULL`. Such a call can lead to errors if the join condition is not met and there are no matching records in the left or right table. As a result, as a result of executing the query, you may receive unexpected data and the system may behave in an incorrect way.
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Fix malformed HTML markup.

Lines 6 and 8 contain broken or malformed HTML/Markdown tags that appear to be corrupted during Crowdin localization:

  • Line 6: Ends with invalid closing tag </0 >.
  • Line 8: Contains malformed opening tag <p spaces-before="0"> with no closing tag

This looks like content corruption from the localization process. Clean up these lines to proper Markdown.

🤖 Prompt for AI Agents
docs/en/diagnostics/FieldsFromJoinsWithoutIsNull.md lines 6-8: fix malformed
HTML/Markdown introduced by localization by removing the stray closing tag "</0
>." on line 6 and the invalid opening tag "<p spaces-before="0">" on line 8,
then reformat the text into proper Markdown sentences (ensure backticks around
`IS NULL`/`IS NOT NULL` are balanced and punctuation is correct) so the
paragraph reads cleanly and no stray HTML tags remain.


- [File system access from application code (RU)](https://its.1c.ru/db/v8std#content:542:hdoc)
- [Standard: Application launch security (RU)](https://its.1c.ru/db/v8std#content:774:hdoc)
- [Safe operation - Developer's Guide (RU](https://its.1c.ru/db/v8323doc#bookmark:dev:TI000000186)
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Fix malformed markdown link syntax.

Line 47 has a broken markdown link with a missing closing parenthesis before the closing bracket.

Apply this diff to fix the link:

-- [Safe operation - Developer's Guide (RU](https://its.1c.ru/db/v8323doc#bookmark:dev:TI000000186)
+- [Safe operation - Developer's Guide (RU)](https://its.1c.ru/db/v8323doc#bookmark:dev:TI000000186)
📝 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
- [Safe operation - Developer's Guide (RU](https://its.1c.ru/db/v8323doc#bookmark:dev:TI000000186)
- [Safe operation - Developer's Guide (RU)](https://its.1c.ru/db/v8323doc#bookmark:dev:TI000000186)
🤖 Prompt for AI Agents
In docs/en/diagnostics/FileSystemAccess.md around line 47, the markdown link is
malformed due to a missing closing parenthesis before the closing bracket; fix
it by inserting the missing ")" so the link becomes properly formatted as [Safe
operation - Developer's Guide
(RU)](https://its.1c.ru/db/v8323doc#bookmark:dev:TI000000186).

* Источник: [Cognitive complexity, ver. 1.4](https://www.sonarsource.com/docs/CognitiveComplexity.pdf) -->

- [Standard. Features of use in operator requests LIKE (RU)](https://its.1c.ru/db/v8std/content/726/hdoc?ysclid=l3g3fkmxsx)
- Standard. Features of use in operator requests LIKE (RU)
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Fix: Source reference lost markdown link formatting.

Line 73 shows plain text "- Standard. Features of use in operator requests LIKE (RU)" with no markdown link syntax. This removes the clickable reference, breaking usability. The source should maintain markdown link formatting like [Standard. Features of use in operator requests LIKE (RU)](url) to preserve documentation navigation.

Restore the markdown link formatting:

-  - Standard. Features of use in operator requests LIKE (RU)
+  * [Standard. Features of use in operator requests LIKE (RU)](https://its.1c.ru/db/v8std#content:XXX:hdoc)

(Note: Replace the URL placeholder with the actual link from the original file.)

Committable suggestion skipped: line range outside the PR's diff.

🤖 Prompt for AI Agents
In docs/en/diagnostics/IncorrectUseLikeInQuery.md around line 73, the source
reference text "- Standard. Features of use in operator requests LIKE (RU)" has
lost markdown link formatting; restore it to a proper markdown link by replacing
the plain text with the original link syntax, e.g. [Standard. Features of use in
operator requests LIKE (RU)](URL), and ensure you insert the correct URL from
the original source in place of the placeholder.


Here mistake not closed parenthesis for `NStr`. As a result, the expression after evaluating `NStr` becomes empty.
It is rather difficult to detect such an error by reading the code due to the presence of parentheses. And you can only catch it at runtime by getting an exception.
Here mistake not closed parenthesis for `NStr</ 0>. As a result, the expression after evaluating <code>NStr` becomes empty. It is rather difficult to detect such an error by reading the code due to the presence of parentheses. And you can only catch it at runtime by getting an exception.
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# First, find the exact file
fd -t f "IncorrectUseOfStrTemplate.md" --exec wc -l {} +

Repository: 1c-syntax/bsl-language-server

Length of output: 286


🏁 Script executed:

# Read the English file
cat -n docs/en/diagnostics/IncorrectUseOfStrTemplate.md

Repository: 1c-syntax/bsl-language-server

Length of output: 2809


🏁 Script executed:

# Check if Russian version exists
fd -t f "IncorrectUseOfStrTemplate.md" docs/ru/

Repository: 1c-syntax/bsl-language-server

Length of output: 168


🏁 Script executed:

# Check the file at docs/diagnostics/ to see if it's Russian
cat -n docs/diagnostics/IncorrectUseOfStrTemplate.md

Repository: 1c-syntax/bsl-language-server

Length of output: 2785


🏁 Script executed:

# Search for all diagnostic files to understand the structure
fd -t f "IncorrectUseOfStrTemplate.md" docs/

Repository: 1c-syntax/bsl-language-server

Length of output: 167


🏁 Script executed:

# Find all diagnostic directories
fd -t d diagnostics docs/

Repository: 1c-syntax/bsl-language-server

Length of output: 111


Fix malformed text and markup on line 24.

The sentence contains broken markup and nonsensical text that renders incorrectly:

  • NStr</ 0> is malformed (appears to be a markup error)
  • <code>NStr is an unclosed tag
  • The phrase is grammatically broken

The Russian version (docs/diagnostics/IncorrectUseOfStrTemplate.md lines 25–26) shows the correct explanation: the closing parenthesis for NStr() is missing, causing the expression to evaluate to empty. Revise the English version to match this clarity:

- Here mistake not closed parenthesis for `NStr</ 0>. As a result, the expression after evaluating <code>NStr` becomes empty. It is rather difficult to detect such an error by reading the code due to the presence of parentheses. And you can only catch it at runtime by getting an exception.
+ Here the closing parenthesis for `NStr()` is missing. As a result, the expression evaluates to empty. Such errors are difficult to detect by reading the code due to the many nested parentheses, and you can only catch them at runtime by getting an exception.
📝 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
Here mistake not closed parenthesis for `NStr</ 0>. As a result, the expression after evaluating <code>NStr` becomes empty. It is rather difficult to detect such an error by reading the code due to the presence of parentheses. And you can only catch it at runtime by getting an exception.
Here the closing parenthesis for `NStr()` is missing. As a result, the expression evaluates to empty. Such errors are difficult to detect by reading the code due to the many nested parentheses, and you can only catch them at runtime by getting an exception.
🤖 Prompt for AI Agents
In docs/en/diagnostics/IncorrectUseOfStrTemplate.md around line 24, the sentence
contains broken markup and text (`NStr</ 0>` and an unclosed `<code>NStr`) and
should be replaced with a clear, grammatical explanation: state that the closing
parenthesis for NStr() is missing (e.g., use inline code formatting for NStr()
and remove stray HTML), explain that this omission causes the expression to
evaluate to an empty string and is only caught at runtime, and match the clarity
of the Russian version.

Comment on lines 3 to +12
<!-- Блоки выше заполняются автоматически, не трогать -->

## Description

Required parameters must not be omitted when calling methods, otherwise the value `Undefined` will be passed to the parameter, which the method often cannot process.
При вызове функций не следует пропускать обязательные параметры. В противном случае в параметр будет передано значение `Неопределено`, на которое функция может быть не рассчитана.
If the value `Undefined` is valid, then you need to
- explicitly pass a value

- или его передавать в функцию явно
- or make the parameter optional with a default value of `Undefined`.

Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# First, let's find the diagnostic documentation files
find docs -name "MissedRequiredParameter.md" 2>/dev/null

Repository: 1c-syntax/bsl-language-server

Length of output: 163


🏁 Script executed:

# Check the general structure of docs directory
ls -la docs/ 2>/dev/null | head -20

Repository: 1c-syntax/bsl-language-server

Length of output: 922


🏁 Script executed:

# Look for all diagnostic files to understand the structure
fd "MissedRequiredParameter" docs/ 2>/dev/null

Repository: 1c-syntax/bsl-language-server

Length of output: 163


🏁 Script executed:

# Check if there are both Russian and English versions of diagnostic files
fd "diagnostics" docs/ -type d 2>/dev/null

Repository: 1c-syntax/bsl-language-server

Length of output: 55


🏁 Script executed:

# Read the English file mentioned in the review
cat -n docs/en/diagnostics/MissedRequiredParameter.md | head -20

Repository: 1c-syntax/bsl-language-server

Length of output: 786


🏁 Script executed:

# Read the Russian file for comparison
cat -n docs/diagnostics/MissedRequiredParameter.md | head -20

Repository: 1c-syntax/bsl-language-server

Length of output: 858


🏁 Script executed:

# Check more of the English file to see full extent of the issue
wc -l docs/en/diagnostics/MissedRequiredParameter.md

Repository: 1c-syntax/bsl-language-server

Length of output: 122


🏁 Script executed:

# Get full content of English file to see entire structure
cat docs/en/diagnostics/MissedRequiredParameter.md

Repository: 1c-syntax/bsl-language-server

Length of output: 1044


🏁 Script executed:

# Get full Russian file for comparison
cat docs/diagnostics/MissedRequiredParameter.md

Repository: 1c-syntax/bsl-language-server

Length of output: 1117


🏁 Script executed:

# Check another diagnostic file to see if the HTML comment is a standard pattern
cat docs/en/diagnostics/UnreachableCode.md | head -10

Repository: 1c-syntax/bsl-language-server

Length of output: 394


🏁 Script executed:

# Check the Russian version of the same file
cat docs/diagnostics/UnreachableCode.md | head -10

Repository: 1c-syntax/bsl-language-server

Length of output: 458


🏁 Script executed:

# Verify line numbers match the review comment's references
cat -n docs/en/diagnostics/MissedRequiredParameter.md | sed -n '3,12p'

Repository: 1c-syntax/bsl-language-server

Length of output: 557


🏁 Script executed:

# Double-check the exact problematic lines and suggest appropriate translations
cat -n docs/en/diagnostics/MissedRequiredParameter.md | sed -n '7,11p'

Repository: 1c-syntax/bsl-language-server

Length of output: 446


Remove Russian text from English documentation to maintain language separation.

This English file (docs/en/) contains mixed Russian and English text in the Description section:

  • Line 7: Russian description should be replaced with English
  • Line 10: Russian bullet point should be English

Replace with proper English:

  • Line 7: "When calling functions, do not skip required parameters. Otherwise, the parameter will receive the value Undefined, which the function may not be designed for."
  • Line 10: "- pass it to the function explicitly"

The corresponding Russian content is properly maintained in docs/ru/diagnostics/MissedRequiredParameter.md.

🤖 Prompt for AI Agents
In docs/en/diagnostics/MissedRequiredParameter.md around lines 3 to 12, replace
the Russian sentences in the Description section with the provided English text:
change line 7 to "When calling functions, do not skip required parameters.
Otherwise, the parameter will receive the value `Undefined`, which the function
may not be designed for." and change the Russian bullet on line 10 to "- pass it
to the function explicitly"; ensure punctuation and backticks around `Undefined`
are preserved and leave the rest of the file intact.


Diagnostics detects erroneous calls to methods of common modules.
Detects the following errors
Находятся проблемные варианты
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# First, let's read the English documentation file to confirm the Russian text presence
cat -n docs/en/diagnostics/MissingCommonModuleMethod.md

Repository: 1c-syntax/bsl-language-server

Length of output: 1550


🏁 Script executed:

# Check if a Russian version exists
fd 'MissingCommonModuleMethod.md' docs/

Repository: 1c-syntax/bsl-language-server

Length of output: 167


🏁 Script executed:

# Get an overview of the diagnostics documentation structure
ls -la docs/en/diagnostics/ | head -20
ls -la docs/ru/diagnostics/ 2>/dev/null | head -20

Repository: 1c-syntax/bsl-language-server

Length of output: 1440


🏁 Script executed:

# Check if Russian version exists and compare
cat -n docs/diagnostics/MissingCommonModuleMethod.md

Repository: 1c-syntax/bsl-language-server

Length of output: 1501


🏁 Script executed:

# Check if Russian version file exists in docs/ru/diagnostics/
ls docs/ru/diagnostics/MissingCommonModuleMethod.md 2>&1

Repository: 1c-syntax/bsl-language-server

Length of output: 168


🏁 Script executed:

# Check the directory structure of docs
ls -la docs/

Repository: 1c-syntax/bsl-language-server

Length of output: 922


🏁 Script executed:

# Verify the actual structure and see if there's a ru subdirectory
find docs -maxdepth 1 -type d | sort

Repository: 1c-syntax/bsl-language-server

Length of output: 174


🏁 Script executed:

# Let's check the en directory structure
ls -la docs/en/

Repository: 1c-syntax/bsl-language-server

Length of output: 670


🏁 Script executed:

# Compare the structure - check both files side by side for the problematic lines
echo "=== Russian version lines 6-13 ===" && sed -n '6,13p' docs/diagnostics/MissingCommonModuleMethod.md
echo ""
echo "=== English version lines 9-19 ===" && sed -n '9,19p' docs/en/diagnostics/MissingCommonModuleMethod.md

Repository: 1c-syntax/bsl-language-server

Length of output: 920


🏁 Script executed:

# Check if the Examples and Sources sections are empty
echo "=== English file Examples section ===" && sed -n '20,23p' docs/en/diagnostics/MissingCommonModuleMethod.md
echo ""
echo "=== English file Sources section ===" && sed -n '24,27p' docs/en/diagnostics/MissingCommonModuleMethod.md
echo ""
echo "=== Russian file Examples section ===" && sed -n '14,16p' docs/diagnostics/MissingCommonModuleMethod.md
echo ""
echo "=== Russian file Sources section ===" && sed -n '17,19p' docs/diagnostics/MissingCommonModuleMethod.md

Repository: 1c-syntax/bsl-language-server

Length of output: 811


Remove Russian text from English documentation file.

Lines 10 and 16 contain Russian text ("Находятся проблемные варианты" and "Исключаются варианты") that should not appear in the English version. Replace these with English equivalents or remove them appropriately to match the rest of the English documentation.

Additionally, the Examples section is empty and should be populated with code examples demonstrating the diagnostic behavior, as required by the coding guidelines.

🤖 Prompt for AI Agents
In docs/en/diagnostics/MissingCommonModuleMethod.md around lines 10 and 16,
remove the Russian phrases "Находятся проблемные варианты" and "Исключаются
варианты" and replace them with appropriate English equivalents (e.g.,
"Problematic variants found" and "Variants excluded") or delete the lines if
redundant to match the English documentation style; also populate the Examples
section with one or more concise code examples that demonstrate the diagnostic
behavior (input code that triggers the diagnostic and the expected diagnostic
output), following the project's example formatting guidelines.

```

Correct:
Сorrect:
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Critical: Typographical error in example label.

Line 18 contains "Сorrect" with a Cyrillic C (Cyrillic: С) instead of Latin C. This should be "Correct" to maintain consistency with English documentation standards.

Apply this fix:

-Сorrect:
+Correct:
📝 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
Сorrect:
Correct:
🤖 Prompt for AI Agents
docs/en/diagnostics/MissingTemporaryFileDeletion.md around line 18: the example
label uses a Cyrillic capital C ("Сorrect") instead of a Latin "Correct" —
replace the Cyrillic character with the ASCII Latin "C" so the label reads
"Correct" and save the file.

Parameter names should not contain reserved words such as system enumerations.
The list of reserved words is set by a regular expression.
The search is case-insensitive.
Поиск производится без учета регистра символов.
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Remove Russian text from English documentation file.

This is an English documentation file (docs/en/), but it contains Russian text and identifiers. Lines 10 and 14 have Russian content that breaks the English documentation experience.

According to your learnings and guidelines, diagnostic documentation should be maintained in both Russian and English — meaning separate, language-specific files in docs/en/ and docs/ru/ directories, not mixed content within a single file.

Line 10 should contain English text or be removed entirely:

-Поиск производится без учета регистра символов.
+**Note:** The search is case-insensitive.

Line 14 should use English enumeration identifiers instead of Russian ones:

-"ВидГруппыФормы|ВидПоляФормы"
+"FormGroupType|FormFieldType"

Alternatively, if these changes are from a Crowdin automated sync, please verify that the corresponding Russian documentation file (docs/ru/diagnostics/ReservedParameterNames.md) is being updated correctly in a separate PR or commit.

Also applies to: 14-14

🤖 Prompt for AI Agents
In docs/en/diagnostics/ReservedParameterNames.md around lines 10 and 14, the
file contains Russian text/identifiers that don't belong in an English doc;
replace the Russian sentence on line 10 with the correct English equivalent (or
remove it if redundant) and convert the Russian enumeration identifiers on line
14 to English identifiers/labels; if these were introduced by an automated
Crowdin sync, ensure the corresponding Russian content is placed/updated in
docs/ru/diagnostics/ReservedParameterNames.md in a separate commit/PR instead of
mixing languages in the English file.


<!-- Блоки выше заполняются автоматически, не трогать -->
## Description
## Diagnostics description
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check both English and Russian diagnostic files

echo "=== English diagnostic file ==="
if [ -f "docs/en/diagnostics/ServerSideExportFormMethod.md" ]; then
  head -20 "docs/en/diagnostics/ServerSideExportFormMethod.md"
else
  echo "English file not found"
fi

echo -e "\n=== Russian diagnostic file ==="
if [ -f "docs/ru/diagnostics/ServerSideExportFormMethod.md" ]; then
  head -20 "docs/ru/diagnostics/ServerSideExportFormMethod.md"
else
  echo "Russian file not found"
fi

echo -e "\n=== Checking for header patterns ==="
echo "English header line:"
grep -n "^##" "docs/en/diagnostics/ServerSideExportFormMethod.md" 2>/dev/null | head -5 || echo "Not found"

echo "Russian header line:"
grep -n "^##" "docs/ru/diagnostics/ServerSideExportFormMethod.md" 2>/dev/null | head -5 || echo "Not found"

Repository: 1c-syntax/bsl-language-server

Length of output: 1578


Russian diagnostic file is missing; create docs/ru/diagnostics/ServerSideExportFormMethod.md with appropriate Russian content.

The English file has been properly updated with the "Diagnostics description" header and includes well-structured examples. However, the corresponding Russian diagnostic file does not exist. Per coding guidelines, diagnostic documentation must be maintained in both Russian and English with examples of problematic code and fixes.

🤖 Prompt for AI Agents
In docs/ru/diagnostics/ServerSideExportFormMethod.md around lines 1 to 20,
create the missing Russian translation mirroring
docs/en/diagnostics/ServerSideExportFormMethod.md: add the "Диагностика" header
(or equivalent), translate the English diagnostic description into Russian, and
include the same structured examples showing the problematic code and the fixed
code with Russian captions and explanations; ensure formatting and code fences
match the English file and include any notes or references present in the
original so the Russian doc is fully parallel.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 15, 2025

Test Results

0 files   - 2 700  0 suites   - 2 700   0s ⏱️ - 48m 7s
0 tests  - 1 011  0 ✅  - 1 011  0 💤 ±0  0 ❌ ±0 
0 runs   - 9 099  0 ✅  - 9 099  0 💤 ±0  0 ❌ ±0 

Results for commit 35923f8. ± Comparison against base commit 321bdf9.

♻️ This comment has been updated with latest results.

@sonarqubecloud
Copy link

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.

2 participants