# The Canary commits that exist only in this container `/canary` is a separate checkout on branch `sylpheed-re`. **Four commits on it are not on any remote**, and several committed findings cannot be reproduced without them. This directory is their durable copy, because `/work` is pushed and `/canary` is not. Bounded by measurement, not by guess: `git -C /canary branch -r --contains` puts `590912722` on `origin/sylpheed-re` and finds no remote for any commit after it. So the container-only stack is exactly these four. | patch | canary sha | what it adds | findings that need it | |---|---|---|---| | `0001` | `0f920e645` | **`blend=` — `RB_BLENDCONTROL0` per draw** | [`ui-blend-mode-decoded.md`](../../docs/re/structures/ui-blend-mode-decoded.md) — the entire blend decode, and the additive path in `ui_layout` that follows from it | | `0002` | `fa1e4c221` | vertex dump raised 8 → 64 | the `EXTRAS` 24-index batch: at 8 vertices the log printed two quads of six and **silently dropped four**, which is why `ptframe4`/`pteff21`/`22`/`23` looked absent | | `0003` | `d90d14e02` | render-target state, resolves, PS constants | [`ui-splash-draw-pass.md`](../../docs/re/ui-splash-draw-pass.md) — "is there a post-process pass at all?" is a question about render targets, and the log could not see one | | `0004` | `ab3203f79` | **`h=` — a content hash per sampled texture** | [`guest-frame-rate-resolved.md`](../../docs/re/guest-frame-rate-resolved.md), its withdrawal, and [`clock-is-frame-based-one-unit-per-present.md`](../../docs/re/clock-is-frame-based-one-unit-per-present.md) | ## Applying ```bash git -C /canary am /work/tools/canary-patches/*.patch ln -sfn /canary /work/xenia-canary # the build REQUIRES this symlink cmake --build /sylph-home/re/canary-build --config Release --parallel 2 --target xenia_canary rm /work/xenia-canary ``` ⚠️ Without the symlink the build fails with `The source directory "/work/xenia-canary" does not exist` from a `cmake --regenerate-during-build` step, which does not obviously point at a missing symlink. ⚠️ `--parallel 2`, not 4: this container has been OOM-killed before. ## Why this directory exists **A finding whose reproduce recipe names a `/canary` sha is not reproducible.** Three corpus pages cite `canary sylpheed-re d90d14e02` as though it were a public reference; it is reachable from nowhere but this box. The failure is silent — the recipe *looks* complete, and only fails for someone who tries it on a different machine, long after the person who wrote it could explain what the flag did. 📌 The sharpest case is `0001`. Without it a draw log records no blend state at all, so `ui-blend-mode-decoded.md`'s 35-element oracle — the thing that overturned a REFUTED entry and deleted the port's authored blend map — could not be re-derived by anyone who cloned this repository. 📌 And `0004` is the one whose absence actively misleads rather than merely blocking: without a content hash a draw log records only texture *base addresses*, and a triple buffer rotating once per present is indistinguishable from one decode per present. That confusion cost two withdrawn positions on `units/second` in a single day.