fail dart doc CI on validate-links warnings (T-17)
test / unit + widget + golden + a11y (push) Failing after 41s
test / integration_test (xvfb) (push) Has been skipped
test / bundle smoke (xvfb 5s) (push) Has been skipped
test / daemon subprocess + web WASM smoke (push) Has been skipped
test / dart doc (lib API) (push) Failing after 1m22s

Wraps the `dart doc --validate-links` step so any warning fails the
job, not just hard errors. The previous step exited 0 even with
broken doc refs and dangling README links — exactly the
informational-mode drift that lets a clean board rot.

Updates the CHANGELOG entry to describe the gate accurately (the
earlier wording overstated `--validate-links`, which only prints).

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-05-06 17:58:27 +02:00
co-authored by Claude
parent 5ee759d0fd
commit ad807fb0df
3 changed files with 13 additions and 5 deletions
+8 -1
View File
@@ -78,7 +78,14 @@ jobs:
- uses: subosito/flutter-action@v2
with: { channel: stable, cache: true }
- run: dart pub get
- run: dart doc --validate-links
- name: dart doc --validate-links (fail on warning)
run: |
set -o pipefail
dart doc --validate-links 2>&1 | tee dartdoc.log
if grep -q "^ warning:" dartdoc.log; then
echo "::error::dartdoc emitted warnings — see log above"
exit 1
fi
- uses: actions/upload-artifact@v4
with:
name: dart-api-docs
+1 -1
View File
@@ -1,5 +1,5 @@
{
"exported_at": "2026-05-06T15:58:18Z",
"exported_at": "2026-05-06T15:58:27Z",
"decisions": [
{
"id": "D-1",
+4 -3
View File
@@ -19,9 +19,10 @@ heading, and (b) bumping `pubspec.yaml` `version:` in the same commit.
### Added
- Staged `dart doc` CI job — generates and uploads an HTML API
reference for the public `lib/` surface, with `--validate-links` to
fail the build on broken references. Inert with the rest of the
workflow until Gitea Actions activates.
reference for the public `lib/` surface. The step wraps
`dart doc --validate-links` and grep-fails the build on any warning,
so broken doc refs and dangling links can't accumulate. Inert with
the rest of the workflow until Gitea Actions activates.
- Mouse wheel scrolling in Claude pane — converts scroll events to
PgUp/PgDown so Claude Code (and other TUI apps) scroll their
history naturally.