From 1aa1bd17c2c128cadf5c77d59066b1be88670b90 Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Thu, 30 Jul 2026 08:32:39 +0200 Subject: [PATCH] =?UTF-8?q?docs(template):=20=C2=A713=20gains=20a=20teardo?= =?UTF-8?q?wn=20step,=20=C2=A715=20gains=20its=20evidence=20line?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three drills, three orphaned hub customers -- drill-r50, sess-c, sess-d -- because §13 covered the clean-tree gate, build/deploy, live validation and the STOP point and said nothing about teardown at all. Layers 1 and 2 (the VM and its volumes; the host's reclaimed space) get remembered because they are visible on the box. Layer 3, the hub-side customer or appliance record, is invisible from there and has been missed every time -- sess-c was not even recorded by its own report, so the record claimed a clean teardown that had not happened. §13: a Teardown subsection at the end, before §14. All three layers, with the hub layer requiring an EXPLICIT disposition -- deleted, retained as a fixture with the reason, or gate-blocked with the command recorded -- because silence is how drill-r50 became simultaneously a blocked customer and the only drift fixture. Cites runbooks/target-selection.md for which machine to provision on rather than restating it. §15: deliverable 8 demands the evidence for all three layers and names the failure it prevents; the former 8 (Observations) becomes 9. No section renumbered, §13/§15 not restructured, author checklist untouched. Part 1 of the R-116 join task, committed alone and before any Go file is opened -- the code half ends in a live run and live runs have stalled twice, while the record work is unconditional. --- documentation/PROMPT-TEMPLATE.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/documentation/PROMPT-TEMPLATE.md b/documentation/PROMPT-TEMPLATE.md index 3e213b9..7e7bb1f 100644 --- a/documentation/PROMPT-TEMPLATE.md +++ b/documentation/PROMPT-TEMPLATE.md @@ -429,6 +429,23 @@ automation is **NOT available** on DooPlex — endpoint-level is the standard me live destructive op or migrate real customer data** — that is the supervised [Bx] step. Throwaway marker dirs under a scratch `/mnt` path are OK only if they touch no enrolled customer data. +**Teardown.** A run that provisions anything owns its removal. Three layers, and the third is the one +that gets missed: + +1. **The machine** — the VM or guest and its volumes, deleted. +2. **The host** — `pvesm status` before and after, and the space actually returned. +3. **The hub** — the customer or appliance record the run created. State its disposition + **explicitly**: deleted; or retained as a fixture **with the reason**; or blocked by the + ONLINE→DOWN delete gate **with the command recorded for later**. Silence is how `drill-r50` became + both a blocked customer and the only drift fixture. + +**Precedent: three drills, three orphaned customers** — `drill-r50`, `sess-c`, `sess-d`. `sess-c` was +not recorded by its own report, so the record said the teardown was clean when it was not. Layers 1 and +2 are the ones that get remembered because they are visible on the box; layer 3 is invisible from there +and has been missed every time. + +Which machine to provision on in the first place: **`documentation/runbooks/target-selection.md`**. + --- ## 14. Implementation order @@ -459,7 +476,11 @@ Report MUST include: 6. **Deployed versions** + `docker ps` / agent-service / hub-pod verification output. 7. **NOT yet live-validated — awaiting supervised [Bx]:** explicit list (the real put-data → operate → integrity flow). -8. **Observations:** out-of-scope items noticed — documented, NOT acted on. +8. **Teardown evidence — all three §13 layers**, if the run provisioned anything: the machine deleted, + `pvesm status` before/after with the space returned, and the **hub-side record's disposition named** + (deleted / retained-with-reason / gate-blocked-with-the-command). A run that provisioned nothing says + so. "Teardown clean" without layer 3 is not a report — it is the `sess-c` failure. +9. **Observations:** out-of-scope items noticed — documented, NOT acted on. ---