clear dart doc validate-links warnings

Eight unresolved doc references and broken README-rewritten links
that surfaced under `dart doc --validate-links`:

- Library-scope refs `[spawn]`, `[openProject]` qualified to
  `[Backend.spawn]` / `[Backend.openProject]`; same treatment for
  `[resolvePaths]` / `[applyResolved]` on Toolchain.
- `[D-41]` was a decision ID, not a Dart symbol — drop the brackets.
- `[from]` from I18n.interpolated qualified to `[I18nReplacer.from]`.
- `[DefaultSurfaceMap]` was a stale name (private `_defaultSurfaceMap`
  in resolver.dart); switch to backticked path reference since
  dartdoc can't link private members.
- `[icons/]` was a directory, not a symbol; backticked path.
- README links to `legacy/`, `docs/initial-plan.md`, `decisions/`,
  `LICENSE` rewritten as absolute github.com/postmeridiem/clide URLs
  so dartdoc stops re-rooting them into the doc tree.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-05-06 17:58:18 +02:00
co-authored by Claude
parent eda5d04710
commit 5ee759d0fd
8 changed files with 17 additions and 16 deletions
+3 -3
View File
@@ -1,8 +1,8 @@
/// Manages the backend isolate lifecycle.
///
/// Two-phase boot:
/// 1. [spawn] — starts the isolate, resolves toolchain (binary checks only).
/// 2. [openWorkspace] — initializes services for a specific project root.
/// 1. [Backend.spawn] — starts the isolate, resolves toolchain (binary checks only).
/// 2. [Backend.openProject] — initializes services for a specific project root.
library;
import 'dart:async';
@@ -34,7 +34,7 @@ class Backend {
int _validateId = 0;
/// Spawn the backend isolate. Returns when the toolchain is resolved.
/// No services are active yet — call [openWorkspace] to activate.
/// No services are active yet — call [openProject] to activate.
static Future<Backend> spawn({
required IsolateClient Function(SendPort backendPort) clientFactory,
String? hintRoot,
+2 -1
View File
@@ -136,7 +136,8 @@ class I18n extends ChangeNotifier {
}
/// [string] + naive `replaceAll` interpolation per replacer.
/// Matches fframe: replacers whose [from] isn't present are silent no-ops.
/// Matches fframe: replacers whose [I18nReplacer.from] isn't present
/// are silent no-ops.
String interpolated(
String key, {
required String namespace,
+2 -2
View File
@@ -6,8 +6,8 @@ import 'package:flutter/foundation.dart';
///
/// The token surface grows as features need more of it. Every token
/// declared here must have a default resolution in
/// [DefaultSurfaceMap] so legacy palette-only themes produce a complete
/// SurfaceTokens without declaring the full surface.
/// `_defaultSurfaceMap` (resolver.dart) so legacy palette-only themes
/// produce a complete SurfaceTokens without declaring the full surface.
@immutable
class SurfaceTokens {
const SurfaceTokens({
+3 -3
View File
@@ -1,8 +1,8 @@
/// Centralized binary resolution for external tools.
///
/// Resolution runs in a background isolate via [resolvePaths] to avoid
/// blocking the merged UI/platform thread on macOS. The result is
/// applied on the main thread via [applyResolved].
/// Resolution runs in a background isolate via [Toolchain.resolvePaths]
/// to avoid blocking the merged UI/platform thread on macOS. The result
/// is applied on the main thread via [Toolchain.applyResolved].
library;
import 'dart:async';