steps/<key>.felhom.yml: gate rule 4b, writer, backfill (8) (R-664)
gates / gates (push) Successful in 2s

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-09-24 11:45:34 +02:00
parent 635c7e68f7
commit cf7cf8456f
15 changed files with 1321 additions and 2 deletions
+16
View File
@@ -210,3 +210,19 @@ def step_key(to):
def step_file(to):
"""The step definition's path RELATIVE to the template directory."""
return "steps/%s.yml" % step_key(to)
def step_meta_file(to):
"""The step's own `.felhom.yml` (R-664, 2026-09-24): its probe, memory limits and applied record — the
box judges the step with it. RELATIVE to the template directory."""
return "steps/%s.felhom.yml" % step_key(to)
def strip_ladder_block(felhom_text):
"""A `.felhom.yml` without its update_ladder block (and the header comment the writer puts above it):
a step's own copy carries no ladder — only the template's is read for one."""
lines = felhom_text.splitlines()
for i, l in enumerate(lines):
if l.startswith("# update_ladder") or l.startswith("update_ladder:"):
return "\n".join(lines[:i]).rstrip("\n") + "\n"
return felhom_text