fix(docs): sibling links from directory-style pages need ../

This commit is contained in:
pj committed 2026-06-06 23:26:19 +05:30
1 parent 663ef96595
commit c9edd955d9
7 files changed
+15 -15

No files matched your search

+1 -1
View File
@@ -35,7 +35,7 @@ Serve a local web UI for browsing traces. The positional argument is optional an
| `--no-open` | `false` | Skip opening the default browser on startup. | | `--no-open` | `false` | Skip opening the default browser on startup. |
| `--dev` | `false` | Reverse-proxy non-API requests to the Vite dev server on `127.0.0.1:5173`. | | `--dev` | `false` | Reverse-proxy non-API requests to the Vite dev server on `127.0.0.1:5173`. |
See [the replay UI page](./replay/) for the panel reference and keyboard shortcuts. See [the replay UI page](../replay/) for the panel reference and keyboard shortcuts.
## `sanderling doctor` ## `sanderling doctor`
+3 -3
View File
@@ -6,7 +6,7 @@ title: Getting started
This page installs sanderling and runs a first test against folio, the example app that ships with the repo. By the end you will have a trace of a real run open in your browser. This page installs sanderling and runs a first test against folio, the example app that ships with the repo. By the end you will have a trace of a real run open in your browser.
If you have not read the [introduction](./introduction/), start there. It explains what sanderling does and how it works. If you have not read the [introduction](../introduction/), start there. It explains what sanderling does and how it works.
## Install ## Install
@@ -110,8 +110,8 @@ This opens a web UI for the trace. Step through the run with `j` and `k`. Each s
The folio spec gives extra weight to rapid double taps, because a form that submits twice on a double tap is a classic bug. folio's transaction form has exactly that flaw. When the explorer hits it, the balance moves by twice the typed amount, the `submitMovesBalanceByTypedAmount` property fires, and the timeline shows the violation. The folio spec gives extra weight to rapid double taps, because a form that submits twice on a double tap is a classic bug. folio's transaction form has exactly that flaw. When the explorer hits it, the balance moves by twice the typed amount, the `submitMovesBalanceByTypedAmount` property fires, and the timeline shows the violation.
See [replay](./replay/) for the full panel and shortcut reference. See [replay](../replay/) for the full panel and shortcut reference.
## Next ## Next
You have run sanderling against an app with a finished spec. The next page builds that spec from scratch, one concept at a time: [writing specs](./writing-specs/). You have run sanderling against an app with a finished spec. The next page builds that spec from scratch, one concept at a time: [writing specs](../writing-specs/).
+6 -6
View File
@@ -82,9 +82,9 @@ Kotlin Multiplatform apps need nothing special: the Android build is tested thro
## Reading this manual ## Reading this manual
- [Getting started](./getting-started/) installs the CLI and runs a first test against folio, the example app. - [Getting started](../getting-started/) installs the CLI and runs a first test against folio, the example app.
- [Writing specs](./writing-specs/) builds the folio spec from scratch and teaches every concept along the way. - [Writing specs](../writing-specs/) builds the folio spec from scratch and teaches every concept along the way.
- [Spec language reference](./spec-language/) lists every selector, operator, and action. - [Spec language reference](../spec-language/) lists every selector, operator, and action.
- [Runs](./runs/) explains what happens during a run and why runs are long. - [Runs](../runs/) explains what happens during a run and why runs are long.
- [Replay](./replay/) covers the trace browser. - [Replay](../replay/) covers the trace browser.
- [CLI reference](./cli/) lists every command and flag. - [CLI reference](../cli/) lists every command and flag.
+1 -1
View File
@@ -22,7 +22,7 @@ The positional argument can be a runs directory or a single run directory (auto-
| ActionList | Ordered list of steps with the verb and target for each action. | | ActionList | Ordered list of steps with the verb and target for each action. |
| Timeline | Per-property lane chart over the run; cells coloured by violated, pending, or holds. | | Timeline | Per-property lane chart over the run; cells coloured by violated, pending, or holds. |
| ViolationsPanel | Property statuses at the focused step with residual formulas for any that failed. | | ViolationsPanel | Property statuses at the focused step with residual formulas for any that failed. |
| HierarchyPanel | Filterable table of every UI element captured at the focused step; mirrors the selectors documented in [Spec language reference](./spec-language/). | | HierarchyPanel | Filterable table of every UI element captured at the focused step; mirrors the selectors documented in [Spec language reference](../spec-language/). |
| SnapshotTable | Flattened `snapshots` map for the focused step, with diffs against the previous step. | | SnapshotTable | Flattened `snapshots` map for the focused step, with diffs against the previous step. |
| MetricsChart | Heap and other host-side metrics sampled per step. | | MetricsChart | Heap and other host-side metrics sampled per step. |
| ExceptionsPanel | Uncaught exceptions captured during the run, with a jump-to-first control. | | ExceptionsPanel | Uncaught exceptions captured during the run, with a jump-to-first control. |
+2 -2
View File
@@ -30,7 +30,7 @@ The trace is written incrementally. An interrupted run is complete up to the ste
## App state across runs ## App state across runs
By default the installed app stays in place between runs, so whatever the previous run left behind (an account, cached responses, completed onboarding) carries over. Pass `--clear-data` to wipe app data before launch and start cold every time. See the [CLI reference](./cli/#sanderling-test). By default the installed app stays in place between runs, so whatever the previous run left behind (an account, cached responses, completed onboarding) carries over. Pass `--clear-data` to wipe app data before launch and start cold every time. See the [CLI reference](../cli/#sanderling-test).
## Why runs are long ## Why runs are long
@@ -44,7 +44,7 @@ Long runs reach states that restart-per-test approaches structurally cannot.
## Setup cost is paid once ## Setup cost is paid once
Preconditions like login run through the spec's `setup` export (see [writing specs](./writing-specs/#getting-past-login)). They fire when their condition is unmet and go quiet after, so login costs a few seconds once per run, not once per test case. Preconditions like login run through the spec's `setup` export (see [writing specs](../writing-specs/#getting-past-login)). They fire when their condition is unmet and go quiet after, so login costs a few seconds once per run, not once per test case.
| Run length | Login cost | Share of run | | Run length | Login cost | Share of run |
|---|---|---| |---|---|---|
+1 -1
View File
@@ -4,7 +4,7 @@ title: Spec language reference
# Spec language reference # Spec language reference
Lookup reference for everything importable from `@sanderling/spec`. For a guided walkthrough, read [writing specs](./writing-specs/) first. Lookup reference for everything importable from `@sanderling/spec`. For a guided walkthrough, read [writing specs](../writing-specs/) first.
## Module structure ## Module structure
+1 -1
View File
@@ -4,7 +4,7 @@ title: Writing specs
# Writing specs # Writing specs
This page teaches spec writing by building one. The subject is folio, the example app from [getting started](./getting-started/). We start from an empty file and end at the finished spec that ships in the repo at `examples/folio/sanderling/spec.ts`. Each section adds one concept. This page teaches spec writing by building one. The subject is folio, the example app from [getting started](../getting-started/). We start from an empty file and end at the finished spec that ships in the repo at `examples/folio/sanderling/spec.ts`. Each section adds one concept.
## The app ## The app