proposal: the unattended lane has only ever looked at the map half of the twin #284

Closed
opened 2026-09-03 00:59:47 +00:00 by viberfox-agent · 0 comments
Collaborator

A proposal for docs/direction.md, argued from 27 August – 3 September. Not
labelled autonomous: the direction is the maintainer's by that file's own first
rule, and this ticket is an argument, not work.

What the period looks like when you count it

74 issues were created in seven days.

about a public dataset ("… is it worth wiring in?") 12
QA passes 14
qa-gap findings 34
retrospectives, red-main repairs, machinery, proposals 14

Sixteen tickets shipped. Three of them raised registry data into the world — crop
parcels (#203), navigation marks (#206), level crossings (#216) — and all three
landed on 30 August. Nine recorded a rejection in the "checked and not taken"
table, which is real and durable work. Since 31 August the lane has shipped three
gap fixes and one compile repair, and nothing else.

That is not drift on its own. What is worth a decision is where all of it
points
.

Every gap this lane has ever filed is about the map

All 34. Not one is about the half of this codebase a person inhabits.

docs/qa/targets.md is the standing list the QA lane is supposed to rotate
through. Its sixteen rows are: register and sign in · claim and own a house · walk,
run, stroll · jump and flight · sit on a bench · emotes · chat · proximity voice ·
block and report · delete account · create and edit a prim · script a prim · touch
and interact · export, import, transfer builds · bookmarks and place pins · place
photos.

None of them has ever been walked — 14 of 14 QA passes were re-verifies of a
freshly shipped ticket, and nine of those re-verified a documentation-only
verdict. The mechanism is #280; this ticket is the question underneath it.

So the simulator, accounts, ownership, scripting, chat, voice, the sit pose and
driver mode have had no unattended attention at all, while the map layers have 31
open findings and a promotion queue that can drain three a week.

Why the direction produced this, without saying so

docs/direction.md's "Why this makes an unattended lane possible" section is
entirely about data layers:

Most of the last year of work has one shape: take a public dataset and raise it
into the world.
… That shape is automatable, and almost nothing else here is,
because it can be judged without taste: the number of things placed in a cell,
and where they stand, whether the scene still settles …

Every measurement it lists is a map measurement. The frontier is a list of
datasets. The fences name the wire protocol and the schema, which are exactly the
things the simulator half is made of. Read together, the file says "the unattended
lane works on the map" without ever writing the sentence — and the lane has
obeyed it perfectly.

The argument that it should not stay that way

The rule that made the map automatable was value 6: ship the smallest thing a
machine can judge. That rule is not about maps. The simulator half is the most
machine-judgeable code in this repository:

  • it is headless already, and crates/simulator/tests/http_surface.rs drives the
    real server over its real wire;
  • its outcomes are refusals and status codes, not colour — "a registered account
    still could not claim a house" is the example fileQaTicket itself uses, and it
    is from this half;
  • the user-safety surface (block, report, delete account) is a thing a store
    requires, and whether a blocked line still arrives is a boolean.

The three things the fences forbid — changing PROTOCOL_HISTORY, changing a
migration, anything you have to look at — rule out some fixes there, not
looking at all. A QA pass changes no code, so the fences do not touch it, and a
finding on this half can be promoted or declined exactly like a map one.

What I propose

  1. Say in docs/direction.md whether the simulator half is in scope for the
    unattended lane.
    Either answer is workable; the file not answering is what
    produced seven days of one-sided attention. If it is out of scope, say so and
    delete the sixteen rows in docs/qa/targets.md that nothing will ever reach.
  2. If it is in scope, give it a floor — one QA pass a week from
    docs/qa/targets.md, before any re-verify. The machinery half of that is #280.
  3. Add the measurements that make it judgeable to the list in "why this makes an
    unattended lane possible"
    — a wire round trip, an HTTP status, a refusal, a
    tick — so a session reading the file for the first time does not conclude, as
    every session so far has, that only counted objects in a cell qualify.
  • #221 — a source is not wired until a player can find it, and gaps outrank the
    next candidate. Filed 30 August.
  • #272 — a qa-gap needs a way out. Filed 2 September.

Both are about the map queue. This one is about there being only one queue. All
three are cheap to answer and none can be answered from inside the lane.

Filed by the 7-day retrospective (#279).

A proposal for `docs/direction.md`, argued from 27 August – 3 September. Not labelled `autonomous`: the direction is the maintainer's by that file's own first rule, and this ticket is an argument, not work. ## What the period looks like when you count it 74 issues were created in seven days. | | | |---|---| | about a public dataset ("… is it worth wiring in?") | **12** | | QA passes | **14** | | `qa-gap` findings | **34** | | retrospectives, red-`main` repairs, machinery, proposals | **14** | Sixteen tickets shipped. Three of them raised registry data into the world — crop parcels (#203), navigation marks (#206), level crossings (#216) — and all three landed on 30 August. Nine recorded a *rejection* in the "checked and not taken" table, which is real and durable work. Since 31 August the lane has shipped three gap fixes and one compile repair, and nothing else. That is not drift on its own. What is worth a decision is **where all of it points**. ## Every gap this lane has ever filed is about the map All 34. Not one is about the half of this codebase a person inhabits. `docs/qa/targets.md` is the standing list the QA lane is supposed to rotate through. Its sixteen rows are: register and sign in · claim and own a house · walk, run, stroll · jump and flight · sit on a bench · emotes · chat · proximity voice · block and report · delete account · create and edit a prim · script a prim · touch and interact · export, import, transfer builds · bookmarks and place pins · place photos. **None of them has ever been walked** — 14 of 14 QA passes were re-verifies of a freshly shipped ticket, and nine of those re-verified a documentation-only verdict. The mechanism is #280; this ticket is the question underneath it. So the simulator, accounts, ownership, scripting, chat, voice, the sit pose and driver mode have had no unattended attention at all, while the map layers have 31 open findings and a promotion queue that can drain three a week. ## Why the direction produced this, without saying so `docs/direction.md`'s "Why this makes an unattended lane possible" section is entirely about data layers: > Most of the last year of work has one shape: *take a public dataset and raise it > into the world.* … That shape is automatable, and almost nothing else here is, > because it can be judged without taste: the number of things placed in a cell, > and where they stand, whether the scene still settles … Every measurement it lists is a map measurement. The frontier is a list of datasets. The fences name the wire protocol and the schema, which are exactly the things the simulator half is made of. Read together, the file says "the unattended lane works on the map" without ever writing the sentence — and the lane has obeyed it perfectly. ## The argument that it should not stay that way The rule that made the map automatable was **value 6**: ship the smallest thing a machine can judge. That rule is not about maps. The simulator half is the most machine-judgeable code in this repository: - it is headless already, and `crates/simulator/tests/http_surface.rs` drives the real server over its real wire; - its outcomes are refusals and status codes, not colour — "a registered account still could not claim a house" is the example `fileQaTicket` itself uses, and it is from this half; - the user-safety surface (block, report, delete account) is a thing a store requires, and whether a blocked line still arrives is a boolean. The three things the fences forbid — changing `PROTOCOL_HISTORY`, changing a migration, anything you have to look at — rule out *some* fixes there, not looking at all. A QA pass changes no code, so the fences do not touch it, and a finding on this half can be promoted or declined exactly like a map one. ## What I propose 1. **Say in `docs/direction.md` whether the simulator half is in scope for the unattended lane.** Either answer is workable; the file not answering is what produced seven days of one-sided attention. If it is out of scope, say so and delete the sixteen rows in `docs/qa/targets.md` that nothing will ever reach. 2. **If it is in scope, give it a floor** — one QA pass a week from `docs/qa/targets.md`, before any re-verify. The machinery half of that is #280. 3. **Add the measurements that make it judgeable to the list in "why this makes an unattended lane possible"** — a wire round trip, an HTTP status, a refusal, a tick — so a session reading the file for the first time does not conclude, as every session so far has, that only counted objects in a cell qualify. ## Related, and still unanswered - **#221** — a source is not wired until a player can find it, and gaps outrank the next candidate. Filed 30 August. - **#272** — a `qa-gap` needs a way out. Filed 2 September. Both are about the map queue. This one is about there being only one queue. All three are cheap to answer and none can be answered from inside the lane. <sub>Filed by the 7-day retrospective (#279).</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#284
No description provided.