From cb8c62a8a410fd4eac10b807c585d361bb50e220 Mon Sep 17 00:00:00 2001 From: Marcel Amirault Date: Fri, 3 Oct 2025 13:48:30 +0900 Subject: [PATCH 1/6] Vale config should only apply to markdown files in /doc --- .vale.ini | 4 ---- gems/gitlab-active-context/doc/usage.md | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/.vale.ini b/.vale.ini index 5bbce807fcd044..0eb17152be78b2 100644 --- a/.vale.ini +++ b/.vale.ini @@ -12,7 +12,3 @@ BasedOnStyles = gitlab_base, gitlab_docs # Ignore SVG markup TokenIgnores = (\*\*\{\w*\}\*\*) - -# Exclude gem documentation from GitLab docs rules -[gems/**/*.md] -BasedOnStyles = diff --git a/gems/gitlab-active-context/doc/usage.md b/gems/gitlab-active-context/doc/usage.md index 2b6eb5b406c218..06c85679e81e19 100644 --- a/gems/gitlab-active-context/doc/usage.md +++ b/gems/gitlab-active-context/doc/usage.md @@ -2,7 +2,7 @@ ## Creating a migration -Migrations are similiar to database migrations: they create collections, update schemas, run backfills, etc. +Migrations are similar to database migrations: they create collections, update schemas, run backfills, etc. See [migrations](migrations.md) for more details. -- GitLab From 6bc8ac8efb230c26f2caaf54b10304391490d7fe Mon Sep 17 00:00:00 2001 From: Marcel Amirault Date: Fri, 3 Oct 2025 15:49:34 +0900 Subject: [PATCH 2/6] Run docs jobs too --- doc/development/ai_features/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/development/ai_features/glossary.md b/doc/development/ai_features/glossary.md index 0fa186c3e8113e..42bff17e0d3e35 100644 --- a/doc/development/ai_features/glossary.md +++ b/doc/development/ai_features/glossary.md @@ -261,7 +261,7 @@ context-aware code suggestions and generation. ### AI Context Abstraction Layer -A [Ruby gem](https://gitlab.com/gitlab-org/gitlab/-/tree/master/gems/gitlab-active-context) that provides a unified interface for Retrieval Augmented Generation (RAG) across multiple vector databases within GitLab. The system abstracts away the differences between Elasticsearch, OpenSearch, and PostgreSQL with pgvector, enabling AI features to work regardless of the underlying storage solution. +A [Ruby gem](https://gitlab.com/gitlab-org/gitlab/-/tree/master/gems/gitlab-active-context) that provides a unified interface for Retrieval Augmented Generation (RAG) across multiple vector databases in GitLab. The system abstracts away the differences between Elasticsearch, OpenSearch, and PostgreSQL with pgvector, enabling AI features to work regardless of the underlying storage solution. Key components include collections that define data schemas and reference classes that handle serialization, migrations for schema management, and preprocessors for embedding generation. The layer supports automatic model migration between different LLMs without downtime, asynchronous processing through Redis-backed queues, and permission-aware search with automatic redaction. -- GitLab From 0ec7561a713bcf98ee7604a68f375e706647fd20 Mon Sep 17 00:00:00 2001 From: Marcel Amirault Date: Fri, 3 Oct 2025 16:52:58 +0900 Subject: [PATCH 3/6] Don't test all files --- scripts/lint-doc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/lint-doc.sh b/scripts/lint-doc.sh index 6f7da391f13861..074bb6ba95a0d3 100755 --- a/scripts/lint-doc.sh +++ b/scripts/lint-doc.sh @@ -156,7 +156,7 @@ then file_filter: ->(file) { !file['deleted_file'] && file['new_path'] =~ %r{doc/.*\.md|\.vale|\.markdownlint|lint-doc\.sh|docs\.gitlab-ci\.yml} }, only_new_paths: true ).execute" - if grep -E "\.vale|\.markdownlint|lint-doc\.sh|docs\.gitlab-ci\.yml" < $DOC_CHANGES_FILE + if grep -E "\.markdownlint|docs\.gitlab-ci\.yml" < $DOC_CHANGES_FILE then MD_DOC_PATH=${MD_DOC_PATH:-'doc/{*,**/*}.md'} MD_DOC_PATH_VALE=${MD_DOC_PATH_VALE:-'doc/'} -- GitLab From 0e7e9dc319cf9df06dcdaf0672e010185b8416e4 Mon Sep 17 00:00:00 2001 From: Marcel Amirault Date: Mon, 6 Oct 2025 16:13:43 +0900 Subject: [PATCH 4/6] Apply 1 suggestion(s) to 1 file(s) --- scripts/lint-doc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/lint-doc.sh b/scripts/lint-doc.sh index 074bb6ba95a0d3..fd415b0c29ea24 100755 --- a/scripts/lint-doc.sh +++ b/scripts/lint-doc.sh @@ -153,7 +153,7 @@ then ruby -r './tooling/lib/tooling/find_changes' -e "Tooling::FindChanges.new( from: :api, changed_files_pathname: '${DOC_CHANGES_FILE}', - file_filter: ->(file) { !file['deleted_file'] && file['new_path'] =~ %r{doc/.*\.md|\.vale|\.markdownlint|lint-doc\.sh|docs\.gitlab-ci\.yml} }, + file_filter: ->(file) { !file['deleted_file'] && file['new_path'] =~ %r{\A(?:doc/|\.vale\.ini|\.markdownlint-cli2.yaml|scripts/lint-doc\.sh|\.gitlab/ci/docs\.gitlab-ci\.yml)} }, only_new_paths: true ).execute" if grep -E "\.markdownlint|docs\.gitlab-ci\.yml" < $DOC_CHANGES_FILE -- GitLab From d7933fbd8fabad72e064b5db02a2dda762fc4004 Mon Sep 17 00:00:00 2001 From: Marcel Amirault Date: Mon, 6 Oct 2025 16:21:26 +0900 Subject: [PATCH 5/6] Restore previous behavior --- scripts/lint-doc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/lint-doc.sh b/scripts/lint-doc.sh index fd415b0c29ea24..f8e86399fdf31b 100755 --- a/scripts/lint-doc.sh +++ b/scripts/lint-doc.sh @@ -156,7 +156,7 @@ then file_filter: ->(file) { !file['deleted_file'] && file['new_path'] =~ %r{\A(?:doc/|\.vale\.ini|\.markdownlint-cli2.yaml|scripts/lint-doc\.sh|\.gitlab/ci/docs\.gitlab-ci\.yml)} }, only_new_paths: true ).execute" - if grep -E "\.markdownlint|docs\.gitlab-ci\.yml" < $DOC_CHANGES_FILE + if grep -E "\.vale|\.markdownlint|lint-doc\.sh|docs\.gitlab-ci\.yml" < $DOC_CHANGES_FILE then MD_DOC_PATH=${MD_DOC_PATH:-'doc/{*,**/*}.md'} MD_DOC_PATH_VALE=${MD_DOC_PATH_VALE:-'doc/'} -- GitLab From 2d9a1617d3c9de6e79991e342d31655b56e396e3 Mon Sep 17 00:00:00 2001 From: Marcel Amirault Date: Wed, 8 Oct 2025 18:49:34 +0900 Subject: [PATCH 6/6] Apply 1 suggestion(s) to 1 file(s) Co-authored-by: Niklas van Schrick --- scripts/lint-doc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/lint-doc.sh b/scripts/lint-doc.sh index f8e86399fdf31b..f3d6c065b6c536 100755 --- a/scripts/lint-doc.sh +++ b/scripts/lint-doc.sh @@ -153,7 +153,7 @@ then ruby -r './tooling/lib/tooling/find_changes' -e "Tooling::FindChanges.new( from: :api, changed_files_pathname: '${DOC_CHANGES_FILE}', - file_filter: ->(file) { !file['deleted_file'] && file['new_path'] =~ %r{\A(?:doc/|\.vale\.ini|\.markdownlint-cli2.yaml|scripts/lint-doc\.sh|\.gitlab/ci/docs\.gitlab-ci\.yml)} }, + file_filter: ->(file) { !file['deleted_file'] && file['new_path'] =~ %r{\A(?:doc/(.*\.md|\.markdownlint|\.vale)|\.vale\.ini|\.markdownlint-cli2.yaml|scripts/lint-doc\.sh|\.gitlab/ci/docs\.gitlab-ci\.yml)} }, only_new_paths: true ).execute" if grep -E "\.vale|\.markdownlint|lint-doc\.sh|docs\.gitlab-ci\.yml" < $DOC_CHANGES_FILE -- GitLab