QA: what #192 shipped — CBS neighbourhood statistics: is it worth wiring in? #245

Closed
opened 2026-08-31 02:31:47 +00:00 by viberfox-agent · 2 comments
Collaborator

Issue #192 (“CBS neighbourhood statistics: is it worth wiring in?”) was built and merged by the unattended lane, and nobody has used it. Walk what it delivered as a player would meet it.

This is a QA pass, not a build. Change no code and open no pull request on this
ticket — the deliverables are findings.

  1. Exercise it for real. Run what a player would touch, headlessly: cargo run -p cartopolis_simulator with a client or a wire/HTTP probe for anything online, the
    loopback tests, cargo run -p cartopolis -- --shot … --dump-state for anything with
    geometry. CLAUDE.md lists every harness. If part of this genuinely needs a screen, a
    phone or a microphone, verify the half a machine can reach and name the half it cannot.
  2. Walk the user's journey, not the happy path. At each step ask what a real user
    would obviously expect to be able to do next — then try exactly that. A refusal or an
    absence that would surprise a user is a finding even when every implemented piece
    works: registration worked, claiming a house worked, and a registered account still
    could not claim a house. No test failed; a user hit a wall.
  3. File each real gap as its own issue: title starting gap:, label qa-gap, with
    what you did, what happened, what a user would expect instead, and where in the code
    the seam is. Use the Forgejo API with the FORGEJO_TOKEN in your environment. Do not
    label them autonomous — a person decides which gaps become work.
  4. Report and close. Your final message: what you exercised, what held, what you
    filed. Nothing found after a genuine pass is a good outcome — say what you checked.
    Then close this ticket through the API; a QA pass has no branch to merge.

Decide it yourself. Nobody is watching this ticket; a question asked here is a
ticket that stops. Judge by what a reasonable player would expect, verify before
claiming, and never post credentials or file contents from outside the repository.

Filed by the autopilot.

Issue #192 (“CBS neighbourhood statistics: is it worth wiring in?”) was built and merged by the unattended lane, and nobody has used it. Walk what it delivered as a player would meet it. **This is a QA pass, not a build.** Change no code and open no pull request on this ticket — the deliverables are findings. 1. **Exercise it for real.** Run what a player would touch, headlessly: `cargo run -p cartopolis_simulator` with a client or a wire/HTTP probe for anything online, the loopback tests, `cargo run -p cartopolis -- --shot … --dump-state` for anything with geometry. CLAUDE.md lists every harness. If part of this genuinely needs a screen, a phone or a microphone, verify the half a machine can reach and name the half it cannot. 2. **Walk the user's journey, not the happy path.** At each step ask what a real user would obviously expect to be able to do next — then try exactly that. A refusal or an absence that would surprise a user is a finding even when every implemented piece works: registration worked, claiming a house worked, and a registered account still could not claim a house. No test failed; a user hit a wall. 3. **File each real gap as its own issue**: title starting `gap:`, label `qa-gap`, with what you did, what happened, what a user would expect instead, and where in the code the seam is. Use the Forgejo API with the `FORGEJO_TOKEN` in your environment. Do not label them `autonomous` — a person decides which gaps become work. 4. **Report and close.** Your final message: what you exercised, what held, what you filed. Nothing found after a genuine pass is a good outcome — say what you checked. Then close this ticket through the API; a QA pass has no branch to merge. **Decide it yourself.** Nobody is watching this ticket; a question asked here is a ticket that stops. Judge by what a reasonable player would expect, verify before claiming, and never post credentials or file contents from outside the repository. <sub>Filed by the autopilot. <!-- autopilot:qa-reverify-192 --></sub>
Author
Collaborator

🤖 Picked this up — working on branch feat/245-qa-what-192-shipped in a fresh worktree on the VPS. I'll report back here when I'm done.

Label an issue agent:skip to keep me off it, or driven to keep it in a session you are driving.

🤖 Picked this up — working on branch `feat/245-qa-what-192-shipped` in a fresh worktree on the VPS. I'll report back here when I'm done. <sub>Label an issue `agent:skip` to keep me off it, or `driven` to keep it in a session you are driving.</sub>
Author
Collaborator

Issue #192 turned out to be documentation, not a feature: it landed one note plus a row in docs/direction.md saying the CBS neighbourhood statistics were checked and rejected. So there was nothing for a player to walk. I checked the note instead — re-ran its measurements against the live service, and checked every claim it makes about this codebase. I changed no code and made no commits.

What held

Every measured number in the note reproduces exactly, on 2026-08-31, against the live PDOK service: 23 / 6 / 1 features over the Groningen box, 257,021 bytes of buurten against 27,582 bytes of geometry, 696 coordinate pairs, 244 attributes per feature, 1,614 of 5,368 values suppressed (30%), the CC0 licence and Fees: none read off GetCapabilities, and the paging duplicate where startIndex=22 returns Sterrebosbuurt a second time. Every code line reference in the note lands on what it claims. The decision to reject CBS looks right.

What I filed

  • #246 — the note's one forward-looking pointer is wrong. It says the vector tile already carries a population figure that is "the cheaper answer to the same question", and flags as unverified what that figure resolves to. I verified it: in the Groningen tile, all 21 of 21 features carry the Shortbread schema's per-category default (every quarter says exactly 500 people, every neighbourhood exactly 100). It is the category re-encoded as a number, with no demographic content. No follow-up ticket was ever filed, so this pointer is the only surviving record of the idea.
  • #247 — the car-density comparison is backwards. The generated traffic works out to 848 cars per square kilometre against CBS's measured 1,971 in that neighbourhood, so it is sparser, not denser — and sparser than 16 of the 19 neighbourhoods measured. docs/direction.md states the opposite, and that row is what a future reader consults to avoid repeating the check.
  • #248 — two notes cite a tile fixture at a path that no longer exists; the file moved to crates/geo on 2026-08-06.

All three are labelled qa-gap, none labelled autonomous. #245 is closed.

For you to decide

#246 and #247 are both corrections to docs/direction.md as well as to the note — that table is described in the file as the thing that stops a check being repeated, and it currently holds one claim with its sign inverted and one recommendation that leads somewhere empty. Neither implies a code change.

The branch feat/245-qa-what-192-shipped has no commits and nothing to push.

No commits were made.


🤖 viberfox issue agent on the VPS — 45 turns · $3.70 · session dcc4622d-d137-4b04-98cd-e47d619af979. Reply with @agent to continue this session.

Issue #192 turned out to be documentation, not a feature: it landed one note plus a row in `docs/direction.md` saying the CBS neighbourhood statistics were checked and rejected. So there was nothing for a player to walk. I checked the note instead — re-ran its measurements against the live service, and checked every claim it makes about this codebase. **I changed no code and made no commits.** ## What held Every measured number in the note reproduces exactly, on 2026-08-31, against the live PDOK service: 23 / 6 / 1 features over the Groningen box, 257,021 bytes of `buurten` against 27,582 bytes of geometry, 696 coordinate pairs, 244 attributes per feature, 1,614 of 5,368 values suppressed (30%), the CC0 licence and `Fees: none` read off GetCapabilities, and the paging duplicate where `startIndex=22` returns `Sterrebosbuurt` a second time. Every code line reference in the note lands on what it claims. The decision to reject CBS looks right. ## What I filed - **#246** — the note's one forward-looking pointer is wrong. It says the vector tile already carries a population figure that is "the cheaper answer to the same question", and flags as unverified what that figure resolves to. I verified it: in the Groningen tile, all 21 of 21 features carry the Shortbread schema's per-category default (every quarter says exactly 500 people, every neighbourhood exactly 100). It is the category re-encoded as a number, with no demographic content. No follow-up ticket was ever filed, so this pointer is the only surviving record of the idea. - **#247** — the car-density comparison is backwards. The generated traffic works out to 848 cars per square kilometre against CBS's measured 1,971 in that neighbourhood, so it is sparser, not denser — and sparser than 16 of the 19 neighbourhoods measured. `docs/direction.md` states the opposite, and that row is what a future reader consults to avoid repeating the check. - **#248** — two notes cite a tile fixture at a path that no longer exists; the file moved to `crates/geo` on 2026-08-06. All three are labelled `qa-gap`, none labelled `autonomous`. #245 is closed. ## For you to decide #246 and #247 are both corrections to `docs/direction.md` as well as to the note — that table is described in the file as the thing that stops a check being repeated, and it currently holds one claim with its sign inverted and one recommendation that leads somewhere empty. Neither implies a code change. The branch `feat/245-qa-what-192-shipped` has no commits and nothing to push. _No commits were made._ --- <sub>🤖 viberfox issue agent on the VPS — 45 turns · $3.70 · session `dcc4622d-d137-4b04-98cd-e47d619af979`. Reply with **@agent** to continue this session.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jeroen/cartopolis#245
No description provided.