system poster refreshed 2026-10-21: one-file HTML + A1 PDF from Claude Design (data area, https only); R-1201 closed
gates / gates (push) Successful in 13m7s
gates / gates (push) Successful in 13m7s
Third export passed all Part A checks (documentation/audits/poster-refresh-2026-10-21/CHECKS.md). STATUS poster line removed; facts file History line. Register 179 -> 178. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
This commit is contained in:
@@ -5,24 +5,24 @@ Binding: `documentation/architecture/felhom-system-poster.facts.md`.
|
||||
|
||||
## Plain words
|
||||
|
||||
- **The new poster was NOT put in the repository.** The web export is a folder of 6 files, not one HTML file.
|
||||
Claude Design also changed four texts that were not asked. One of them is wrong: it says the off-site copies
|
||||
keep „the last 2"; the real rule is one per week for 2 weeks.
|
||||
- The two changes you asked for are on it, readable, and do not overlap. The three old fixes hold. No secrets.
|
||||
- **The OMV guide is fixed.** It now matches the PDF that Ferenc got.
|
||||
- To finish: in Claude Design, put the four texts back, and export as **one standalone HTML** file. Then give it
|
||||
to a CC session with the PDF.
|
||||
- **The new poster is in the repository**, the web page and the PDF. It took three exports.
|
||||
- The first export was a folder of 6 files, and Claude Design had changed four texts. Nothing was committed then
|
||||
(commit `3decdf94`, with the OMV guide fixes and R-1201).
|
||||
- The second export was one file; two texts were still short. The third export passed every check.
|
||||
- The STATUS line „System poster needs a refresh" is gone. R-1201 is closed.
|
||||
|
||||
## Part A — checks
|
||||
Full table: `documentation/audits/poster-refresh-2026-10-21/CHECKS.md`.
|
||||
Zip FAIL (6 files) · shape NO · two changes PASS · nothing lost FAIL (4 rewrites) · secrets PASS · look PASS (PDF).
|
||||
Full table, all three rounds: `documentation/audits/poster-refresh-2026-10-21/CHECKS.md`.
|
||||
Round 3: file PASS · shape: plain static HTML (better than the old loader) · two changes PASS · nothing lost PASS ·
|
||||
secrets PASS · look PASS (PDF; HTML render not checked, no browser on DooPlex).
|
||||
|
||||
## Part B — not done
|
||||
Strict rule 1: no HTML, no PDF, no facts-file history line. The STATUS poster line stays and now names R-1201.
|
||||
`poster_facts_gate.py`: rc 0 with its advisory WARNING (poster older than facts) — expected, the poster was not replaced.
|
||||
`repo_gates.py --fast` (sibling clones beside this one): **all felhom.eu gates OK**. A first run made STATUS 152 characters too long (status-view); the line was shortened.
|
||||
## Part B — committed (second commit)
|
||||
- `documentation/architecture/felhom-system-poster.html` replaced; `felhom-system-poster.pdf` added (6.25 MB, A1 size).
|
||||
- Facts file: one History line.
|
||||
- STATUS: the poster line removed. R-1201 moved to `CLOSED-ITEMS.md`.
|
||||
- Evidence: round-3 hashes, text diff, three PNG crops.
|
||||
|
||||
## Part C — `documentation/pilot/GUIDE-omv-kvm-hu.md`
|
||||
## Part C — `documentation/pilot/GUIDE-omv-kvm-hu.md` (first commit, `3decdf94`)
|
||||
1. „Ha valami nem megy" item 7 (HDD_PATH error) removed; 8 → 7.
|
||||
2. Jellyfin: „Ha a géped egy korábbi telepítővel…" sentence removed.
|
||||
3. Memory bullet: „Az első napokban kevés alkalmazással indulunk; a nagy fotógyűjtemény feltöltését együtt csináljuk." added.
|
||||
@@ -33,13 +33,16 @@ serves `SCRIPT_VERSION="1.35.0"` (≥ 1.33.0). `https://felhom.eu/letoltes` list
|
||||
and `dceacae5…4829`, the same as the guide's step 3.
|
||||
|
||||
## Rows
|
||||
Opened **R-1201** (P3, operator). Closed none. Register +1.
|
||||
Opened R-1201 (first commit), closed R-1201 (second commit). Register 178 → 179 → 178.
|
||||
|
||||
## Claims in the task that were wrong
|
||||
- The PDF is not A2: 2400×1696.5 pt ≈ A1 size.
|
||||
- `claude/DESIGN-poster-refresh-2026-10-21.md` (the paste prompt) does not exist in the repository or on DooPlex
|
||||
under `/mnt/5_hdd/felhom.eu` or `~` (searched to depth 4).
|
||||
- `claude/DESIGN-poster-refresh-2026-10-21.md` is not in this repository: `claude/` is the planning project's folder
|
||||
(as for `claude/MONTHLY-security-retest.md`).
|
||||
- felhom.eu has no root `CHANGELOG.md`; this repo records sessions in `REPORT-<topic>.md` files, so this is one.
|
||||
|
||||
## Notes
|
||||
- The pre-push hook refuses a clone outside `/mnt/5_hdd/felhom.eu`; the clones were moved under it. No `--no-verify`.
|
||||
|
||||
## Teardown
|
||||
Provisioned nothing. Scratch copies deleted. `~/temp/` untouched.
|
||||
Provisioned nothing. Scratch copies and clones deleted. `~/temp/` untouched.
|
||||
|
||||
@@ -64,5 +64,4 @@ Newest first. CC's pick is in the „Pick" column. Each row also has its full te
|
||||
- Rotate the reused homelab logins and decide the Gitea repo's visibility (R-925, P1). Since 2026-10-09.
|
||||
- Two leftovers on DooPlex: keep, commit or delete the Facebook `first-post/` folder in `/mnt/5_hdd/felhom.eu/leftovers/2026-10-14/`; commit or drop the `deny`-list edit in `~/git/homelab-manifests/.claude/settings.json`. If not: they stay. Since 2026-10-14.
|
||||
- Before the first paying customer: Tandoor's permission (R-789); a lawyer for the licence list and the terms (R-802, R-813); SparkyFitness by e-mail (R-784); print the break-glass sheet and the signing keys (R-923, R-924).
|
||||
- System poster needs a refresh: data area on one disk, https only. The 2026-10-21 export was not taken in (R-1201): re-export as one HTML file, with four texts put back. If not: the old poster stays.
|
||||
- Later (yours, not urgent): R-862 (Tester 2's bootstrap, when it is back), R-504, R-1071, R-1073, R-1077, R-1042, R-132, R-908, R-779, R-904, R-232, R-433, R-933, R-213, R-832, R-388, R-882, R-883, R-814, R-1056, R-1164, R-930, R-920, R-902.
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
> renamed here the same day, with the operator's three Claude Design fixes folded in (marked *fix
|
||||
> (a)/(b)/(c)* below) and one measured correction: felhom.eu is served from DooPlex with
|
||||
> **Cloudflare DNS only**, not through Cloudflare.
|
||||
> 2026-10-21: poster regenerated in Claude Design (one-disk data area, https-only); PDF print version added next to it
|
||||
> (`felhom-system-poster.pdf`).
|
||||
|
||||
---
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
+17104
File diff suppressed because one or more lines are too long
@@ -13,3 +13,25 @@ Hashes in `sha256.txt`. Old poster = `felhom-system-poster.html` at `7a773207`.
|
||||
| 6. Look | **PASS (PDF).** One page, 2400×1696.5 pt (≈ 847×598 mm — A1 size, not A2). `crop-zone1-data-area.png` and `crop-remote-access-https.png` (120 dpi): readable, no overlap. HTML render not checked (no browser on DooPlex; the folder export would need serving). |
|
||||
|
||||
Verdict: nothing from the export committed (strict rule 1).
|
||||
|
||||
## Round 2 (13:11) — one HTML file, not committed
|
||||
|
||||
`~/temp/felhom-system-poster.html` (307,513 B): self-contained, no `<script>`, fonts and picture as `data:` URIs.
|
||||
Mealie, „one per week, 2 weeks" and „one copy per day, up to 3 days" back. Still different: the Tier-2 cell lost
|
||||
„counted only on a different physical disk" (the VM note moved to the drive-2 box) and the local cell lost „(fewer on a
|
||||
small disk)". The PDF was still the 09:38 one. The operator fixed both texts and exported again.
|
||||
|
||||
## Round 3 (13:17 HTML, 13:18 PDF) — PASS, committed
|
||||
|
||||
Hashes: `sha256-round3.txt`. Old poster = `felhom-system-poster.html` at `7ad17be6`.
|
||||
|
||||
| Check | Result |
|
||||
|---|---|
|
||||
| 1. File | **PASS.** One HTML file, 307,526 B. No `<script>`, no outside `src`/`href`; fonts and the picture are inline `data:` URIs. |
|
||||
| 2. Shape | **Different, and better.** Not a `__bundler` loader any more: plain static HTML that renders alone. Same `<title>Felhom system poster</title>`. |
|
||||
| 3. Two changes | **PASS** in HTML and PDF: `Data area`, `one-disk`, `Bels`, `same disk`, `https only`, `http://` once each. Positive control `WireGuard` 3/3; negative control `xyzzyq` 0/0. |
|
||||
| 4. Nothing lost | **PASS.** Text diff (`label-diff-round3-old-vs-new.txt`): the two asked changes; „State of 9 October 2026" → „21 October"; the Tier-2 cell's brackets became a dash (same words); „— Proxmox + the guest" (a dash). Fixes (a)/(b)/(c) hold. Round-1 rewrites absent from both files: `last 2`, `+51 more`, `up to 3 copies` 0/0. The PDF carries the same fragments as the HTML (`small disk` wraps across two lines there: „(fewer on a small / disk)"). |
|
||||
| 5. No secrets | **PASS.** No IPv4/IPv6, no e-mail address, no long key-like string in the HTML text, the HTML source or `pdftotext`. |
|
||||
| 6. Look | **PASS (PDF).** One page, 2400×1696.5 pt (A1 size). `crop-zone1-data-area.png`, `crop-remote-access-https.png`, `crop-backup-tiers.png` (120 dpi): readable, no overlap. HTML render not checked (no browser on DooPlex). |
|
||||
|
||||
The round-1 crops were replaced by the round-3 ones; the round-1 versions are in commit `3decdf94`.
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 886 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 202 KiB After Width: | Height: | Size: 202 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 429 KiB After Width: | Height: | Size: 427 KiB |
@@ -0,0 +1,20 @@
|
||||
2c2
|
||||
< State of 9 October 2026
|
||||
---
|
||||
> State of 21 October 2026
|
||||
22a23,24
|
||||
> https only
|
||||
> — http:// is sent to https:// before any app answers.
|
||||
57c59,64
|
||||
< Proxmox + the guest; local whole-guest copies
|
||||
---
|
||||
> — Proxmox + the guest; local whole-guest copies
|
||||
> Data area — „Belső tárhely”
|
||||
> one-disk boxes only
|
||||
> On a box with one disk, this part of the system disk is data drive 1.
|
||||
> Not in the whole-guest backups.
|
||||
> A copy between it and the system data does not count as a second copy — same disk.
|
||||
166c173
|
||||
< data drive 2, on the box (counted only on a different physical disk; in a VM made, not counted)
|
||||
---
|
||||
> data drive 2, on the box — counted only on a different physical disk; in a VM made, not counted
|
||||
@@ -0,0 +1,2 @@
|
||||
228685025a0febd169f03f2d1a69463a7496f7d073f2dc1be3f3ab013d9829ab felhom-system-poster.html
|
||||
5f081a1d871f1a6b2ba20ece8165557e23f06d70a0c866358ec4f6ce7ec0597a Felhom — the whole system on one page.pdf
|
||||
@@ -26,6 +26,12 @@
|
||||
|
||||
---
|
||||
|
||||
## 2026-10-21 — the system poster refreshed (full text of the row: `git show 3decdf94:documentation/backlog/OPEN-ITEMS.md`)
|
||||
|
||||
| Row | What | Closed | Evidence |
|
||||
|---|---|---|---|
|
||||
| **R-1201** | **The refreshed system poster could not replace the old one: a 6-file folder export, and four texts rewritten that were not asked.** (P3) | CLOSED 2026-10-21 — the operator re-exported twice: one self-contained HTML (no script, fonts and picture inline) and a matching PDF. Text diff against the old poster: only the two asked changes, the date („State of 21 October 2026") and one punctuation change in the Tier-2 cell; the facts file's wording is back for all four. Both committed. | `documentation/audits/poster-refresh-2026-10-21/` |
|
||||
|
||||
## 2026-10-21 — dated checks read by the rehearsal session (full text of each row: `git show 0d3f72e4:documentation/backlog/OPEN-ITEMS.md`)
|
||||
|
||||
| Row | What | Closed | Evidence |
|
||||
|
||||
@@ -316,7 +316,7 @@ stopping line that lies.
|
||||
| **R-990** | Business & legal | P4 | **Operator: read `documentation/audits/forum-research-2026-10-12/FELHOM.md` §5 and rule on each recommendation.** READ-ONLY research 2026-10-12: three years (#7943–#11092, 2,908 posts, 195 people, 82 beginner threads) of the public PROHARDVER! topic „Home server / házi szerver építése”, tagged and counted by person (`FINDINGS.md`, method and spot-check in `METHOD.md`; no username or post text in git). Ten ranked recommendations, none acted on; the top three: a „which machine works” page (8 of 33 beginners who name their hardware own only a Synology, a router disk or a Raspberry Pi — the installer cannot run there; the same gap is R-989's first recommendation from a different source, and the shipped-page half is R-991), „you do not choose an operating system — we do” (the biggest beginner question, 20 of 82 threads), and „bring your old office PC” as the cheap entry. Catalog gap (≥ 3 people): a DLNA server (7), an ad/DNS blocker (5), a camera recorder (5). | **WAITING-ON-OPERATOR** — filed 2026-10-12 | the operator's reading | Operator: rule on each of the ten (yes / no / later). If nothing is done: nothing changes; the research ages | operator |
|
||||
| **R-1035** | Business & legal | P4 | **Did the „felhő tárhely” page earn anything? Two dated checks.** **Baseline (reported by the operator from Search Console, 2026-10-14, last 3 months):** 1 click, 48 impressions, CTR 2.1 %, average position **73.6**; „felhő tárhely” 19 impressions, „felhőtárhely” 5, „felhő alapú tárhely” 3. CC measured separately that the phrase „felhő tárhely” appeared **0 times** on the home, FAQ and backup pages — Google was showing the home page for those queries by accident. `/sajat-felho-tarhely` + `/en/own-cloud-storage` published **2026-10-14**; full baseline, price sources and the power provenance in `audits/seo-2026-10-14/BASELINE.md`. **What to measure, both times:** impressions and average position for „felhő tárhely” and „saját felhő tárhely”, plus the new page's own impressions, clicks and position. **A null result at +4 weeks means nothing on its own** — a new page on a site at position 73.6 takes weeks to months to move, and „felhő tárhely” alone is held by Microsoft, Google and the big list sites; the page aims at the two longer phrases. That is why there are two checks and not one, and why neither should be read as a verdict on the copy. **There is no Search Console connector in this project, so CC cannot read these numbers** — the operator reads them, CC records and compares. **Blocked until the operator asks for indexing** (Search Console → URL-ellenőrzés → the URL → „Indexelés kérése”): until that happens, or Google finds the page itself, both checks read zero for a reason that is not the page. **This is a slow channel and does not replace talking to people.** | **WATCHING** | operator: request indexing, then supply the Search Console read | 2026-11-11: first read (+4 weeks); 2026-12-09: second (+8 weeks), compared with the first | operator + CC |
|
||||
|
||||
## Process & tooling — 32 rows (P3 9, P4 23)
|
||||
## Process & tooling — 31 rows (P3 8, P4 23)
|
||||
|
||||
| ID | Category | Sev | What | State | Blocked on | Next action | Owner |
|
||||
|---|---|---|---|---|---|---|---|
|
||||
@@ -329,7 +329,6 @@ stopping line that lies.
|
||||
| **R-902** | Process & tooling | P3 | **The contact form's mailer has no source in any repository: the running image cannot be rebuilt or changed.** FOUND 2026-10-08 (website refresh, brief Part C5). `manifests/contact-mailer.yaml` names `contact-mailer:latest` with `imagePullPolicy: Never` (imported into k3s by hand); the binary in the pod is `/app/contact-mailer` dated 2026-02-05, Go module `github.com/felhom/contact-mailer` (devel). Searched: `git log --all` of felhom.eu (only the manifest), every repo under `/mnt/5_hdd/felhom.eu/git`, `find /mnt/5_hdd/felhom.eu ~ -maxdepth 5 -iname '*contact-mailer*'`. READ from the binary (strings, read-only `kubectl exec … cat`): ONE send per form (`sendViaResend`) to `TO_EMAIL`, `reply_to` = the visitor; nothing is sent back to the visitor; the operator's notification is Hungarian (`buildEmailHTML`, „Csatolmány … fájl"). The English form needs no mailer change (its subject labels carry „(EN)"). `audits/website-refresh-2026-10-08/mailer.md` | **OPEN — NARROWED 2026-10-08 (search done, NOT FOUND): owner: operator.** A read-only search found no source on DooPlex (55,548 `*.go`/`go.mod`/`Dockerfile*` files, every disk, media/Longhorn/containerd/PBS excluded by name), in the web editor's storage and file history, in all 10 Gitea repositories' history, or in Docker's build cache (oldest record 2026-09-28). The binary's own clues: one file `/build/main.go`, go1.23.12, no `vcs.*` stamp; image built 2026-02-05 10:40 by BuildKit. The binary is now KEPT in git (`audits/mailer-source-2026-10-08/contact-mailer.bin`), so a DooPlex rebuild no longer loses the program. A replacement plan is written (`audits/mailer-source-2026-10-08/PLAN-replacement.md`); one question left: is the February folder on the operator's Windows workstation? | — | Operator: look on the workstation; if absent, build the replacement from the plan (attended deploy) | operator |
|
||||
| **R-934** | Process & tooling | P3 | **Pull the failed disk ST3000VX010 S/N Z6A07P2G out of DooPlex; follow the checklist.** The data was moved off at the first alarm (2026-10-10); the disk is unmounted, its fstab line commented out since 2026-08-14, k3s no longer waits for it, and its empty Longhorn disk entry was removed 2026-10-12. Its two SMART alarms (352 unreadable / offline-uncorrectable sectors, flat since 2026-10-09) are silenced by serial until **2026-11-11 14:32 UTC** — if the disk is still in the machine then, they come back on purpose. **A TWIN of the same model (S/N Z6A070XZ, `/mnt/3_hdd`) is in use: read the serial before unplugging.** Checklist: `runbooks/dooplex-remove-disk-Z6A07P2G.md`. | **OPEN** — NEW 2026-10-12 | the operator (hands, a power-off window) | Follow the checklist; after the first boot remove the exporter line and the silence; tell CC | operator |
|
||||
| **R-935** | Process & tooling | P3 | **Something sets `core.bare = true` on the shared `felhom.eu` checkout, and then every git command there fails („this operation must be run in a work tree").** SEEN 2026-10-12 evening twice: `.git/config` changed at 16:29:37 and 16:37:33 CEST, each time with `core.bare=true`; restored by hand both times (`git config core.bare false`, a flag only, no file touched). **Not caused by the gates:** `repo_gates.py --fast` run plainly and with `GIT_DIR=.git` (as a hook gets it) left the flag `false`; a scratch `git init --bare <path>` under `GIT_DIR` does not flip the parent either. The first flip came while this session did not touch the repo; another session pushed to main at 16:44 from elsewhere. | **OPEN** — 2026-10-12 later: across this session's next push the flag stayed `false` (read before and after); not this session's pushes. **OPEN** — NEW 2026-10-12 **Note 2026-10-12 (security review):** at least some of these flips match the security review's pushes from a git worktree of this clone (about 16:29 and 16:37): inside the pre-push hook, `scripts/test_gate_decoys.py`'s poster-facts case runs `git init`/`git config`/`git commit` with the hook's inherited `GIT_DIR`, so it wrote into the real repository — four test commits in the worktree and `user.name d` / `user.email d@d` in the shared `.git/config` (the review removed that `[user]` section at about 16:50; commits 6c2c3dd5 and 186f3aa3 carry that author). The review stopped pushing from the worktree. Fix: the test helper must drop `GIT_DIR`, `GIT_WORK_TREE` and `GIT_INDEX_FILE` from its environment. | finding the writer | Watch `.git/config` (an inotify or audit rule on the file) during a day with the parallel sessions; name the command; fix it there | CC |
|
||||
| **R-1201** | Process & tooling | P3 | **The refreshed system poster (Claude Design export, 2026-10-21) cannot replace the old one yet — two reasons.** (1) **Wrong export shape:** the web zip is a 6-file folder (`Main.dc.html` + `support.js` + `vendor/react*.js` + one PNG under `assets/` + a README calling it a „reference mockup"), not the one self-contained `__bundler` HTML that `felhom-system-poster.html` is. (2) **Claude Design rewrote text it was not asked to touch** (old poster vs new, text extracted from both): the off-site whole-guest retention reads „keeps the last 2" / „last 2" — the facts file and ep0's prune say **one per week, 2 weeks** (`keep-weekly 2`, R-1162), which is not the same rule; the local whole-guest retention lost „one copy per day" („up to 3 copies"); data drive 2 lost „counted only on a different physical disk; in a VM made, not counted" („only if the household has 2 drives"); the Mealie app tile was dropped („+51 more"). The two asked changes (one-disk data area in Zone 1, https-only on the remote-access arrow) are present, readable and not overlapping in the PDF; the three earlier fixes (a)/(b)/(c) hold; no address, e-mail or key value in either file. Nothing was committed from the export; evidence `documentation/audits/poster-refresh-2026-10-21/`. | **OPEN** — NEW 2026-10-21 | the operator, in Claude Design | Restore the four rewritten texts to the facts file's wording (`felhom-system-poster.facts.md` table rows Tier 2, Whole guest local/off-site, and the apps line), re-export as **one standalone HTML** (the same export that made the current file), and hand it with the PDF to a CC session to re-run the poster-refresh checks | operator |
|
||||
| **R-206** | Process & tooling | P4 | **The build-cache cap and the weekly prune exist only as a hand-edited `/etc/docker/daemon.json` on DooPlex — not in Ansible, so a rebuild loses them.** The `node_housekeeping` role must also carry the prune, which today it is forbidden to run | **NARROWED** — **2026-10-12 evening: part (a) is in git** (homelab-manifests `eba52d7`, role `docker_daemon`, tags `never` + `docker_daemon`: a byte-copy of the live `daemon.json` and a restart-and-verify handler). **Not installed** — installing restarts the Docker engine on DooPlex (the operator's window). Part (b), narrowing the housekeeping ban to `docker builder prune -af`, loosens a safety rule: the operator's word. Part (c) is in the role's handler. **READY (M) — NEW 2026-08-05** | — | Operator: install in a window (`ansible-playbook site.yml --tags docker_daemon`, check first) — and say yes/no to (b) | operator |
|
||||
| **R-928** | Process & tooling | P4 | **Two sessions running `repo_gates.py` at the same time in the shared `felhom.eu` clone see each other's DECOY plants.** SEEN 2026-10-10 ~15:40: while another session's gate run was in its decoy suite, this session's working tree showed `website/assets/crafty-controller-logo.png` renamed to `crafty-logo.png`, `website/en/apps.html` with a leftover text language switch, then `website/en/contact.html` and `scripts/felhom-host-install.sh` modified — each a plant of `test_gate_decoys.py`, each gone when that run ended. This session's own `site_gates.py` failed three times in that window on plants, not on its change, and a `git add` of a broad path at that moment would have committed a plant. A killed run (`timeout`) leaves its plant in place (its cleanup never runs). Fix direction (a design): decoys plant into a temporary COPY of the tree (as the catalog's volume-persistence decoys already do), or a lock file that a second run waits on. | **OPEN** — filed 2026-10-10 (register-shrink session) | — | Design the copy-or-lock; meanwhile stage explicit paths only (already the rule) and re-run a red site gate once another session's run has ended | CC |
|
||||
| **R-394** | Process & tooling | P4 | **`felhom-build-deploy/SKILL.md` is 179 lines, over the 150-line limit its own repo now enforces.** Found 2026-08-25 by `scripts/check_skills.py` on its first run — the over-length was discovered BY the new checker, on the day the limit was written down, which is the checker working as intended. **It is not edited and not trimmed here:** the task that introduced the limit explicitly scoped the four pre-existing skills out, and trimming a build-and-deploy skill without exercising its commands is how a wrong command ships to a live host. **It is a named single-entry exception in `GRANDFATHERED` in `scripts/check_skills.py`, printed as a WARN on every run**, so it cannot fade; a NEW skill over the limit is convicted normally, and growing the set requires editing that file in a commit with a row to name. **The rationale for the limit** — attention thins across the excess, so the lines that matter are not the ones that survive — is in `skills/felhom-doc-authoring/SKILL.md` §5. | **OPEN — LOW** | — | Trim `felhom-build-deploy/SKILL.md` under 150 lines in a session that can VERIFY the commands it keeps, then delete its `GRANDFATHERED` entry in the same commit. The likely trim is the per-artifact command blocks moving behind a pointer to the runbooks, keeping the gotchas inline — but that is a judgement for a session with a build to run, not a line-count exercise. | CC |
|
||||
|
||||
Reference in New Issue
Block a user