Files
hq/04-ISSUES/001-failed-package-install-reports-success/00-report.md
T
jschoubben c0b35652d0 The numbering is the flow: decisions are 02, design is 03
papa-hq reads 01 research -> 03 decision -> 02 design. The order is a
scar, not a choice: 02-DESIGN existed from its initial commit, and when
adr/ was finally promoted on 2026-07-13 it took the next free number
rather than its place in the sequence. By then design was too settled to
renumber.

hal-hq was three commits old, so it is not. adr/ becomes 02-DECISIONS and
02-DESIGN becomes 03-DESIGN, and following the folder numbers now walks
the process in the order it happens: research produces a decision, the
decision authorises a design.

00-GENESIS becomes 00-META, matching papa's rename from the same
restructure.

Every path reference rewritten across documents, frontmatter, playbooks
and skills. All links resolve; all 58 frontmatter blocks parse and their
path fields still point at files that exist.
2026-08-23 18:05:11 +02:00

50 lines
1.5 KiB
Markdown

---
status: open
opened: 2026-08-22
located-in: []
fixed-by:
amended-design:
---
# 001 — A failed package install does not fail the job
## Symptom
A module declared a package. The install produced, from every mirror:
```
error: failed retrieving file … 404
```
followed by:
```
-> error installing repo packages
```
The prepare job then reported **success**. The package is absent; the pipeline is green.
## Why this matters more than one missing package
The first thing the lab work asked the mesh to install demonstrated the exact fault the lab
exists to catch — a step that failed, reported success, and left the next step to run against
state that was never produced.
It is also a direct violation of a decision already taken and recorded:
[ADR 0008](../../02-DECISIONS/0008-a-failed-step-fails-the-job.md) says a step that fails must fail the
job. That record notes the rule is applied instance by instance and enforced by no mechanism.
This is an instance where it was never applied.
## Evidence
- Observed 2026-08-22 while declaring the virtualisation package required by
[ADR 0016](../../02-DECISIONS/0016-a-lab-node-is-a-virtual-machine.md).
- A fix is written and open as a pull request, unmerged since 2026-08-20.
## Open questions
- Why is the failure swallowed — is the exit status discarded, or never checked?
- Is this specific to package installation, or does the surrounding stage swallow every
non-zero exit?
- The fix has been open for two days. What is the review path for a change of this class?