f4c5466c39
gates / gates (push) Successful in 30s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
7.4 KiB
7.4 KiB
REPORT — backlog triage, 2026-10-03
Paperwork session. No machine touched. No release. No golden. Other repos read only.
Baseline: felhom.eu main 9305288 (verified). Commits: A 9e2786c · B 71b8c8c · C 9f77865 · D 33bbf8e ·
E (this commit).
The Part table
| Part | Done? | Changed from the brief, and why |
|---|---|---|
| A — four roadmap items | Done. R-808 (box OS security updates), R-809 (legal + business papers), R-810 (independence, spike), R-811 (second login step). Findings filed beside two: R-812 (no box receives OS security updates), R-813 (website: no privacy notice, terms or imprint). 00 gained three §E/§G gap rows and a new §H "Business & legal". CONTEXT records the request first. |
R-810 and R-811 got no register finding: nothing about them is false today (one password is a stated limitation, 00 §E). |
| B — finished rows out + gate | Done. 125 rows with an id and 20 without moved to CLOSED-ITEMS.md (one dated section, each naming git show 9e2786c:…). Open rows normalised to one shape. Narratives (campaign write-ups, rulings, old ranking paragraphs) moved word for word to documentation/archive/OPEN-ITEMS-narratives-2026-10-03.md. closed_register_gate.py RULE 3. Workflow text in PROMPT-TEMPLATE.md §N.7/§N.5 and CLAUDE.md. Loose notes: verdict per file in backlog/README.md. |
14 rows with an OPEN verdict were found finished and moved — each checked by me against live source (list below). 11 rows with a finished verdict stayed open, narrowed, because they name work no other row carries (R-451, R-579, R-610, R-618, R-621, R-635, R-691, R-707, R-719, R-723, R-738). Two loose notes stay in place (other repos link to their path). There is no "Deliverables" line in the template; §N.5's "report which rows" line gained "closed (and moved), narrowed". |
| C — category + severity | Done. Columns ` | ID |
| D — clean ROADMAP | Done. 161 → 124 lines, 81 → 42 KB. Intentions re-sorted P2/P3/P4, each names its 00 row. 33 items + the pre-invite checklist → ROADMAP-HISTORY.md. UPDATE-ARC collapsed. Pre-invite list → pointer to STATUS. |
R-48 was SHIPPED (controller v0.154.0) though the roadmap still listed it as an idea. Fixing one_register_gate.py to read suffix ids found R-50b — a finding that lived only in the roadmap; moved to the register. |
| E — ranking + recommendation | Done. documentation/audits/backlog-triage-2026-10-03/RECOMMENDATION.md and one decision in STATUS. |
The top list is 29 rows: every P2. No P1 exists, so severity alone fills the 20–30. |
Headline numbers
OPEN-ITEMS.md: 442 rows with an id + 22 without, 824 KB, 932 lines → 326 rows, all with an id, ≈540 KB.- Moved to
CLOSED-ITEMS.md: 125 + 20. Marked VERIFY: 11. New rows: 11 (R-812..R-819, R-50b moved in). - Category × severity (P2/P3/P4; no P1): Install 2/11/5 · Apps 0/15/21 · App updates 0/12/7 · Backup 12/24/20 · Storage 0/7/5 · Security 3/23/3 · Box system 3/11/3 · Monitoring 2/16/6 · Hub 1/7/13 · Business 4/0/3 · Process 0/4/83 — totals 27 / 130 / 169.
Claims in the brief that turned out wrong
- The row counts. Measured at
9305288with a split that skips pipes inside backticks: 442 id rows (not 444) plus 22 rows with no id the count missed. By leading verdict: 113 finished (107 CLOSED + SHIPPED 2, FIXED 1, RULED 1, EXECUTED 1, ANSWERED 1), plus 4 DECIDED and 1 "✅ CLOSED" — 118 for the new gate; 195 READY (not ~129); OPEN 74 + NARROWED 10; WAITING-ON-OPERATOR 15; WATCHING 15. "~125 unreadable" was wrong: in those six-column tables the state is the THIRD column — the script read the last one, which is the owner. Only 18 rows needed a person: 5 because of a pipe in prose, 13 because their state word was undefined. - "Nothing updates the host or guest OS" — TRUE for boxes, with two nuances: the installer points the host at
the no-subscription repository "so the box can pull security updates" and then says "No upgrades are run"; the
guest's Docker engine is current only on the day the golden is baked. The one
apt full-upgradein the project is a by-hand step for the off-site endpoint ep0. - "The website has no legal pages" — TRUE. Worse than stated: the contact form asks for data-processing consent and links to no notice.
- "No document answers the independence question" — PARTLY WRONG. The LOST-hub half is answered
(
architecture/_recovery-inventory-2026-07-28.md§D2.4;07§8 row 11b), and01§7 rules that the customer owns the domain. Leaving, export and hand-over are answered nowhere — R-810 keeps those. - "No gate refuses a closed row in OPEN-ITEMS" — TRUE. One more gate had the same blind spot in another shape:
instructions_gate.pyread the state by position and would have misread the new layout; fixed.
Rows found finished and moved (verified by me, evidence in each CLOSED entry)
R-123, R-131, R-202, R-229, R-272, R-295, R-343, R-369, R-398, R-500, R-506, R-572, R-590, R-800.
Gates — new rules and decoys, each seen red
closed_register_gate.pyRULE 3 — red on the real register before the move (118 convicted). Decoyfinished-row-in-openpassed the old gate; convicts now. Genuine article (READY, prose says "closed") passes.register_shape_gate.pyRULES 5–8 — five decoys (old-shape row, near-miss category,P3-LOWas Sev, undefined state word, pipe outside backticks): all five passed the old gate; all convict now.one_register_gate.py— suffix ids and backtick-aware split; decoysuffix-id-rowpassed the old gate.- Suite:
test_gate_decoys.py29/29;test_instructions_gate.py73/73;repo_gates.py --fastOK at every commit.
Rules carried out of closed rows
21 sentences that stated a rule and had no other home → CONTEXT.md ("Rules carried out of rows closed
2026-10-03"); the three decisions among them (R-245, R-303, R-312) → 07 §11 as [DESIGN].
Observations
scripts/check_stands.pyis red and runs in no runner (2 dangling ids before today, 3 more after rows closed). FILED: R-819.09decision 56 and R-745 disagree about the controller self-update's roll-back target. FILED: R-817.- Two changelogs cite R-330/R-331 for other findings. FILED: R-818.
- F-DIAG's six off-site failure messages have never been seen on a real failure. FILED: R-816.
- Two July watch rows had no id and no recorded outcome (a Storage Box deletion; the first GC on the off-site datastore). FILED: R-814, R-815.
- One stray duplicate owner word ("operator") in R-209a's broken extra cell was dropped in normalising; every other word of every open row is kept (checked by a token diff). NOT-A-FINDING: a duplicated cell, not content.
Teardown
Provisioned nothing.