diff --git a/data/upload_log.csv b/data/upload_log.csv
index c4f96f6..820e676 100644
--- a/data/upload_log.csv
+++ b/data/upload_log.csv
@@ -2,3 +2,8 @@ action,bgg_id,collid,name,version_id,second_copy,status,timestamp,error
add,334011,,A Gentle Rain,701315,,failed,2026-08-06T02:15:34+00:00,"TimeoutError: Locator.wait_for: Timeout 15000ms exceeded. Call log: - waiting for get_by_role(""dialog"").get_by_role(""heading"", name=re.compile(r""A\ Gentle\ Rain"", re.IGNORECASE)) to be visible"
add,589,,Wiz-War,27352,,failed,2026-08-06T02:20:33+00:00,"Error: Locator.check: Error: strict mode violation: get_by_role(""dialog"").get_by_label(""Own"") resolved to 2 elements: 1) aka get_by_role(""checkbox"", name=""Own"", exact=True) 2) aka get_by_role(""checkbox"", name=""Prev. Owned"") Call log: - waiting for get_by_role(""dialog"").get_by_label(""Own"")"
add,334011,,A Gentle Rain,701315,,added,2026-08-06T02:21:32+00:00,
+add,125921,,Catan: Junior,476263,,added,2026-08-06T02:24:22+00:00,
+add,31260,,Agricola,297589,,added,2026-08-06T02:24:28+00:00,
+add,181304,,Mysterium,536289,,added_no_version,2026-08-06T02:24:34+00:00,version 'English edition 2018-2' not in picker; added without version
+add,312786,,Poetry for Neanderthals,514050,,added_no_version,2026-08-06T02:24:40+00:00,version 'English edition 2020' not in picker; added without version
+add,273240,,The Red Dragon Inn Smorgasbox,446069,,added,2026-08-06T02:24:46+00:00,
diff --git a/docs/bgg-upload-flow.md b/docs/bgg-upload-flow.md
index d5a329b..2f7b4dd 100644
--- a/docs/bgg-upload-flow.md
+++ b/docs/bgg-upload-flow.md
@@ -100,3 +100,39 @@ the existing one).
page but did not overlay the form in the probe.
- Logged-in detection heuristic (unverified): the header shows a "Sign In"
link only when logged out.
+
+
+## Verified against the live site (2026-08-06, first real uploads)
+
+The add flow works end to end; every failure on the way was in code the
+earlier walkthrough had marked *verified*, and the parts marked
+*unverified* were mostly right. Corrections:
+
+- **Sign In is an `` with no `href`.** It therefore has no
+ implicit `link` role: `get_by_role("link", name="Sign In")` matches
+ nothing in any state. The header also hydrates after
+ `domcontentloaded`, so for a moment neither Sign In nor Sign Out
+ exists — a check resting on one absence silently concludes "signed in"
+ and browses anonymously. Poll until one control or the other proves the
+ state; treat "neither, after 30s" as an error.
+- **`get_by_label("Own")` also matches "Prev. Owned."** Use
+ `get_by_role("checkbox", name="Own", exact=True)`.
+- **Version rows** are the `