From 60c658e2f0db58da8c9d08b53397bb2933e9713c Mon Sep 17 00:00:00 2001 From: Kristin Martin Date: Wed, 21 Oct 2026 19:02:15 +0000 Subject: [PATCH 1/4] Give the Vale workflow full history so changed-files can find the merge base --- .github/workflows/vale-docs-linter.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/vale-docs-linter.yml b/.github/workflows/vale-docs-linter.yml index ea36c75d34..bb61079547 100644 --- a/.github/workflows/vale-docs-linter.yml +++ b/.github/workflows/vale-docs-linter.yml @@ -10,14 +10,16 @@ jobs: - name: check out repo uses: actions/checkout@v4 with: - fetch-depth: 2 + # changed-files needs the commit where this branch split from main to + # work out what the PR changed. A shallow checkout usually doesn't + # reach it, so the step logged "Unable to find merge base" and fell + # back to a cruder comparison. See docs-tracking#377. + fetch-depth: 0 - name: get changed files id: changed-files uses: tj-actions/changed-files@v46.0.5 - with: - fetch_depth: 2 # run reviewdog and the linter - name: run reviewdog and linter From dcd9945bbc5f9d91033a97bc9b7f299d750c86a5 Mon Sep 17 00:00:00 2001 From: Kristin Martin Date: Wed, 21 Oct 2026 19:02:31 +0000 Subject: [PATCH 2/4] Fix the wordiness and grammar Vale flagged on the LiteFS internals page --- litefs/how-it-works.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/litefs/how-it-works.mdx b/litefs/how-it-works.mdx index 6865a419fb..61b2baa492 100644 --- a/litefs/how-it-works.mdx +++ b/litefs/how-it-works.mdx @@ -28,7 +28,7 @@ extensive consistency checking to ensure correctness. By applying these page sets in the LTX files in order, we can reconstruct the state of our SQLite database at any point in time. We can also copy them to -another nodes in order to replicate the changes in real-time to our cluster. +other nodes to replicate the changes in real time to our cluster. ### Rollback journal handling From ae95a2ff3eebc454c5d6a13b92a5129365dcd2a2 Mon Sep 17 00:00:00 2001 From: Kristin Martin Date: Wed, 21 Oct 2026 19:06:02 +0000 Subject: [PATCH 3/4] Pass Vale a JSON array of changed files instead of a separator-joined string --- .github/workflows/vale-docs-linter.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/vale-docs-linter.yml b/.github/workflows/vale-docs-linter.yml index bb61079547..8ebc7a0001 100644 --- a/.github/workflows/vale-docs-linter.yml +++ b/.github/workflows/vale-docs-linter.yml @@ -20,20 +20,21 @@ jobs: id: changed-files uses: tj-actions/changed-files@v46.0.5 + with: + # Emit the list as a JSON array, which is the one shape vale-action + # parses without a separator. See the comment on the next step. + json: true # run reviewdog and the linter - name: run reviewdog and linter uses: errata-ai/vale-action@reviewdog with: - # tj-actions/changed-files emits a space-separated list, so telling the - # action it is comma-separated made it pass Vale one argument holding - # every path joined by spaces. That is a valid path only when a PR - # changed exactly one file, so from 2023 this check worked on - # single-file PRs and silently skipped every larger one: Vale answers - # an unmatched path with an empty result and exit 0. See - # docs-tracking#375. + # vale-action reads this input one of three ways: a single existing + # path, a JSON array, or a string split on 'separator'. It trims + # 'separator', so a space can't be passed that way, and an unparseable + # value makes it lint the whole repo instead. A JSON array is the only + # shape that reliably means "these files". See docs-tracking#375. files: ${{ steps.changed-files.outputs.all_changed_and_modified_files }} - separator: " " # added, diff_context, file, nofilter filter_mode: file # github-pr-check, github-pr-review, github-check From 146422ccf195e9788c124929adf9c075c4bd448a Mon Sep 17 00:00:00 2001 From: Kristin Martin Date: Wed, 21 Oct 2026 19:06:46 +0000 Subject: [PATCH 4/4] Stop escaping the JSON file list so vale-action can parse it --- .github/workflows/vale-docs-linter.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/vale-docs-linter.yml b/.github/workflows/vale-docs-linter.yml index 8ebc7a0001..048e24e94a 100644 --- a/.github/workflows/vale-docs-linter.yml +++ b/.github/workflows/vale-docs-linter.yml @@ -22,8 +22,10 @@ jobs: uses: tj-actions/changed-files@v46.0.5 with: # Emit the list as a JSON array, which is the one shape vale-action - # parses without a separator. See the comment on the next step. + # parses without a separator. escape_json defaults to true, which + # backslash-escapes the quotes and makes the array unparseable. json: true + escape_json: false # run reviewdog and the linter - name: run reviewdog and linter