# Memory intervention source and native fixture proof Evidence class: actual patch-applied C native fixtures, immutable source/API inspection and pure Nix identity evaluation. Matching full kernel/system/bundle, actual selected config/dev headers and RISC-V object/lifetime/layout remain **UNVERIFIED**. Positive controller preparation, physical output/receipt/recovery and task 5b.5 stay open. No full kernel build or board/UART/camera action occurred. Worktree `/home/jadams/tmp/k230-mainline-uart-progress-memory`, branch `mainline-uart-progress-memory`, base `a4d6958dddf9572320b63c96b4777c959424ece9`. Owned: new Memory patch/recipe, additive flake family, native fixtures, source-host evidence and only task 5i.1. Shared build lock used only for pure identity evaluation, never derivation realization. GNU `patch --batch --fuzz=0 -p1` applied the new zero-context patch to immutable `/nix/store/wnvbxaiqgbhhajsajy5mlpn36zf8alga-linux-mainline-k230-uart-progress-post-sample-src/drivers/soc/canaan/k230-uart-progress.c`. Parent worker SHA-256: `aee68aaec5c5c0e2b23919901eb99189265fd2b4787a0e50bc11159afd81ef9b`. Applied Memory worker SHA-256: `307d7c0588499dd32826c1d05476e0bf6d46ca0c8939d42e0b4f7180545b98dc`. Portable native fixtures reconstruct the same parent from existing repository patches, then apply only the new Memory layer. Existing patches/recipes, getter/timer sources, configuration and artifact parameters are untouched. Only exact `k230.uart_progress_memory=1`, base progress opt-in, CONFIG_RISCV_SBI and actual DBCN availability enable the intervention. It suppresses every worker output, including numeric and both earlier point families, while retaining six 5000ms sleeps, cached snapshots, stop checks, normal priority and termination. The typed controller rejects simultaneous Breadcrumbs/PostSample selectors; the source suppresses their worker writes even if those flags are present. Absent/bare/invalid Memory gate retains inherited behavior and creates no observer. No IRQ/PID1/TTY/MMIO/clock/console-policy or scheduler-policy change is added. The added normal-priority observer changes the workload/timing; this remains an intervention rather than a passive observation of identical execution. A separate ordinary atomic state packs stage bits[2:0], current index[5:3] and completed-snapshot bitmap[11:6]. Each publication is one `atomic_set_release`; observer uses ONE `atomic_read_acquire`, with no retry/seqcount loop. The last completed index is derived from that single bitmap in a six-iteration bounded loop. State/helpers/flags/completion/buffer have ordinary lifetimes; setup alone uses init lifetime. The new public summary format, with lowercase two-digit hex: ```text \nK230_UMP1 s=%u n=%u m=%02x l=%u w=%u\n ``` | Stage s | Meaning | n and m | | --- | --- | --- | | 0 | initialized | n6, m00 | | 1 | before sleep | n0..5, m=(1<