Files
app-catalog-felhom.eu/CONTEXT.md
T
admin dc0ab8b2a8
gates / gates (push) Successful in 2s
New-app checklist: reviewed, a gate (onboarding), the wger pilot record, the existing apps' gap page
NEW-APP-CHECKLIST.md: the reviewer's draft reviewed - 60 rows in 10 groups, each with how/why and a since date;
7 rows added, 16 sharpened, 9 wrong claims fixed. onboarding/_TEMPLATE.md (one line per id), onboarding/wger.md
(the pilot, exempt app, 11 open rows each a register row), onboarding/EXISTING-APPS-GAPS.md (read only, from
scripts/onboarding_gaps.py). Gate onboarding (scripts/check-onboarding.py) in --fast: a template directory not
among the 53 published before 2026-10-01 needs a complete record; decoys in test_gate_decoys.py (16 cases, 5 gate
mutants seen red). CLAUDE.md, REUSE.md 5, README point to it. No template changed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
2026-10-01 15:20:52 +02:00

2.5 KiB

CONTEXT — app-catalog-felhom.eu working state

Created with the REUSE.md rollout (2026-07-03). History: CHANGELOG.md; format spec: README.md.

  • 2026-10-01 (evening) — THE NEW-APP CHECKLIST. NEW-APP-CHECKLIST.md (60 rows, since per id) + onboarding/ (_TEMPLATE.md, wger.md pilot, EXISTING-APPS-GAPS.md) + gate onboarding (check-onboarding.py, --fast, decoys). The 53 published apps exempt by name (operator default, may reverse). A new app = template + complete record in one commit. Open from the pilot: R-758..R-764 (R-762/R-763 P2 on wger).
  • 2026-09-24 (morning) — STEP DEFINITIONS (5ed599c). Every ladder entry but the newest has its own compose at templates/<app>/steps/<ladder.step_key(to)>.yml (sha256 of to, canonical JSON, 16 hex = controller stacks.StepKey); gate rule 4 + decoys; the writer keeps the superseded step; 8 backfilled (steps_backfill.py, one-off, from the NEWEST commit naming the step's images). Controller v0.268.0 reads them: one press = one step (proven live, romm two steps). R-653/R-656 fixed in the bench; the two suites that typed live pins now read them (R-663). Open: R-652, R-655, R-664 (a step has no .felhom.yml of its own).
  • 2026-09-24 (night 2026-09-23) — THE TEST RECORD. An image: move needs a proven update_ladder: entry (scripts/ladder.py; gates check-test-record.py + check-test-record-move.py; the only writer upgrade-test.py --write-ladder). 21 older moves backfilled; 12 steps published tonight. Harness v3: box fixtures on the bench (upgrade_boxport.py), anon memory (09 decision 22), files_may_change. Open: R-652, R-653, R-655 (adventurelog), R-656; the box does not read the ladder yet (09 §6.4 part 5).
  • 2026-07-12 — :latest banned from catalog — pin rule recorded. 5 templates pinned (bentopdf v2.8.6, calibre-web v4.0.6 = running digest on 9201, papra 26.6.1-rootless, recipe-importer v0.9.11, termix 2.5.0; all digest-equal to that day's :latest — no-op for running apps). Standing rule in CLAUDE.md + gate scripts/check-image-pins.py (run after any compose change). Deployed apps pin to their RUNNING digest; pin ≠ upgrade.
  • 2026-07-03 — CLAUDE.md expanded (repo purpose, push-to-main deploy contract, pointers); still intentionally light.
  • 2026-07-03 — REUSE.md exists at the repo root (catalog conventions, healthcheck families, canonical example app = paperless-ngx, traps); maintenance rule active: update it in the same commit that changes a catalog-wide convention.