From 1f9eea879f9bf1e7d8afe3b6aee4090139ea6cf9 Mon Sep 17 00:00:00 2001 From: iris-ai <4+iris-ai@noreply.localhost> Date: Sat, 19 Sep 2026 16:55:57 -0400 Subject: [PATCH] Record narrow_rel_base and the None argument --- docs/HANDOFF.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/HANDOFF.md b/docs/HANDOFF.md index 41f24a7..28054f5 100644 --- a/docs/HANDOFF.md +++ b/docs/HANDOFF.md @@ -6,10 +6,11 @@ in `docs/LAYOUT_LOG.md`. ## The Iris layout repair is submitted -**Iris PR #19** (`layout/one-ask`) replaces closed #18. The tip is `aeb60e5`: +**Iris PR #19** (`layout/one-ask`) replaces closed #18. The tip is `beb1386`: `add6774` fixes collapsed-share placement, retained mask ownership and a redraw-on-reparent defect, `84dad21` removes repeated work in the test -harness, and `5642f20` and `aeb60e5` are the vocabulary and API work below. +harness, and `5642f20`, `aeb60e5` and `beb1386` are the vocabulary and API +work below. The core design remains sound; round-to-nearest is still unchanged. Two checkouts share one Git storage. `/home/bob/repos/iris` is the active @@ -50,6 +51,9 @@ had been paid for and ergonomics had not: - `Painter::place_at` takes the rel base, returns the answer, and draws the child where there is no answer to re-express. `Span`'s second pass is one call, and its `drawn_across` bookkeeping is gone. +- The rel base a container decides for a child is `narrow_rel_base`, and it + takes `impl Into; 2]>>`, so one that narrows nothing + writes `None`. The resolved value stays the bare `rel_base`. - `Part::All` is a `Part::WHOLE` constant rather than a variant. It was exactly `Of(UiSpan::FULL)`; measured at 0.07% of instructions retired against 0.04% run-to-run noise on a 60-seed depth-5 shrink.