drill/multiuser.sh — the drill's last-resort recovery still force-stops through raw incus, and #236 makes that expressible as box down --force: migrate it, or say in the file why it stays raw?
#243
Replies: 1 comment
Settled: Reading B — the call stays raw, the file says why, and no repository-wide rule is declared. Minted as #246; closing this.The answer was already given, on the wrong threadThis discussion asked for "one sentence answering A or B" and has sat with zero comments since
That is Reading B, from the builder who raised the objection in the first place, agreeing with the triage analysis in this body. Triage did not carry it here, and the What is decidedB for this call site. The third position — "B here, A as the rule for the rest of the repo" — is not adopted, because the corpus does not support a rule. Measured at
The two in One thing this body got wrong, corrected
It is a two-file change, for the opposite reason. Under B the existing pin — "multiuser: (p) force-stops only as post-failure recovery", which greps The line numbers in this body were re-verified rather than assumed: Where it went, and what it is not#246 — @danmt — this is triage's decision, not yours to make, and it is yours to overturn. It comes off your list; #246 is where to argue with it, and nothing about it touches — triage 2026-08-29 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Raised by @cndgrr on #236 at
2026-08-29T13:16:08Z, and brought here by triage rather than minted as an issue, because it has an open question in it and TRIAGE.md does not let a spec carry one.The fact
#236 gives
box downa--forcethat maps toincus stop --force, with theuser.box=1boundary enforced on the force path. Its whole premise is thatbox incus <box> -- stop --forceis an escape hatch being used as a feature — an unguardedincuscall wearing box's name.drill/multiuser.shhas one such call. Measured onmainat7d9db3c, insidebounded_admin_down():After #236 merges that last line is expressible as
box down "$b" --force. The question is whether it should be.The question, stated as the two readings
Reading A — migrate it. It is the same shape #236 exists to close. A drill that rehearses the product should not reach past the product, and leaving it raw means the repository ships a
--forceverb while its own drill demonstrates the hatch. crew#588 is migrating for exactly this reason.Reading B — leave it raw, and say why in a comment. This is not an ordinary call site. It is reached only when
box down allhas already blown a 60-second timeout — the recovery path for abox downthat did not return. Making it callbox down --forcemakes the recovery depend on the verb whose failure it is recovering from: ifdownis wedged for a reason that is box's rather than the guest's, the escape is wedged with it. On this reading the raw call is the point, and it wants a comment saying so, not a migration.There is a third position worth naming: B for this call site, A as the rule — i.e. the drill's last-resort path stays raw and documented, and any other raw
incuscall in the repo is a defect.What is already true, so the discussion does not re-derive it
box downisincus stopwith no force, so a wedged box cannot be stopped at all:--force, and the escape hatch stops being the answer #236 does not fix this and should not. It is a consumer migration, not that issue's deliverable, and it was correctly left alone in PR #242.test/cli.shpins the current spelling. Whatever this settles is a two-file change, not a one-line one.0.10.0window. #182 is closing on the cut (#222); this is post-window work whichever way it goes.incus stopunderdrill/, and the other two are a different category.drill/drill.sh:1633and:1737each runincus stop -foncbprobeandtpl— but those lines exist to set up an assertion about incus itself (thatincus copypreservesuser.*keys, and that a live-instance clone reads back the daemon's own config). They rehearse incus deliberately.bounded_admin_down()is the only one recovering from box's verb, which is why it is the one this question is about. If the answer is Reading A, say whether it reaches those two as well; triage's view is that it does not.What triage needs to mint
One sentence answering A or B, and if B, whether the rule in the third position holds for the rest of the repo. With that, this is an ordinary small issue; without it, minting one would just move the question onto a builder.
All reactions