S548 · R1 ekran: test deseni ve FramebufferCap bağlama modeli
S548 kaynak/host model kapısı PASS'tir: M4.4 FramebufferCap modelinin PixelFormat ve FramebufferRights şekillerine bağlı deterministik bir ekran test deseni renderer'ı modellenmiştir. Renk barları (8 bar), dama tahtası (ayarlanabilir hücre), gradyan ve çerçeve+artı desenleri; açık pitch işleme (pitch, genişlik×bpp'yi aşabilir), BGRA8888 ve RGB565 paketleme, sınır denetimli piksel yazımı ve üretilen tamponun FNV-1a 64 checksum'ı ile alloc::vec::Vec<u32> içine çizilir; 720x1280 ve 64x64 durumları için exact checksum'lar sabitlenmiştir. Grant hak denetimi fail-closed'dur: WRITE zorunludur, VSYNC/DMA gerekli değildir ve cap sınırını aşan grant reddedilir. Focused 21/21 PASS'tir; hiçbir MMIO, mailbox, gerçek framebuffer eşlemesi veya production çağrı noktası yoktur. S540 ve S543 fiziksel raw/verdict değişmez RED kalır; physical observation=0, RUNBOOK_EXECUTED_IN_S548=NO, Boot-to-UI=false ve R1 acceptance=false'dur. S549, S548 geometri/format şekillerini tüketen host-only RP1 DSI host register haritası ve D-PHY zamanlama modeli kapısıdır.
Doğrulanan kanıt
- S548, S547'den ayrı kaynak modülü, 21-test focused binary, proof, status manifest, Operations kaydı ve complete Code kartına sahiptir; production callsite eklenmemiştir.
- Dar S548 source/host status=PASS; R1 umbrella=PARTIAL, R1 aşaması 2 (ekran, dokunma ve temel UI); S540 ve S543 physical gate status=RED olarak ayrı tutulur.
- Model M4.4 PixelFormat (Bgra8888=4 B/px, Rgb565=2 B/px) ve FramebufferRights (READ/WRITE/VSYNC/DMA bitmask) şekillerini kernel no_std ve host simülasyonda aynı derlenecek biçimde yansıtır.
- G8lS548FramebufferBinding cap_id, width, height, pitch_bytes, format, cap_max_rights ve granted_rights taşır; render pitch_bytes×height/4 kelimelik Vec<u32> üretir.
- Piksel (x,y) byte ofseti y×pitch+x×bpp'dir; RGB565 için yarım-kelime kayması (ofset%4)×8'dir; pitch dolgu kelimeleri hiç yazılmaz, sıfır kalır ve checksum'a dahildir.
- BGRA8888 paketi 0xff<<24|R<<16|G<<8|B (bellek sırası B,G,R,A); RGB565 paketi R5<<11|G6<<5|B5'tir.
- Dört desen tablo güdümlüdür: renk barları (bar=x×8/width, beyaz-sarı-camgöbeği-yeşil-macenta-kırmızı-mavi-siyah), dama tahtası ((x/cell+y/cell) çift ise beyaz), gradyan (r=x×255/(w-1), g=y×255/(h-1), b=255-r), çerçeve+artı (4 px beyaz çerçeve, kırmızı orta sütun/satır, 0x202020 zemin).
- Sabitlenen FNV-1a 64 checksum'lar bağımsız referans uygulamasıyla çapraz doğrulanmıştır: 720x1280 BGRA8888 renk barları 0x7c544deb81579325, 720x1280 RGB565 gradyan 0x2c3b445594879b71, 720x1280 BGRA8888 dama(40) 0xbb4f86efb3eb0325, 64x64 BGRA8888 dama(8) 0xa5469e63bfa70325, 64x64 RGB565 renk barları 0x8e562bac11284b25, 64x64 BGRA8888 çerçeve+artı 0xf748ab56fde2f1b2, 64x64 BGRA8888 gradyan 0x10b5b99e81f4aef5.
- Pitch dolgulu durumlar da sabitlenmiştir: 64x64 BGRA8888 pitch 320 renk barları 0xe6453365e4503325 ve 64x64 RGB565 pitch 192 renk barları 0xde434cdc99b58b25; dolgu checksum'ı değiştirir, piksel içeriğini değiştirmez.
- Hak denetimi fail-closed'dur: granted_rights cap_max_rights'ı aşarsa GrantExceedsCapability, WRITE yoksa WriteRightMissing döner; READ, VSYNC veya DMA tek başına veya birlikte WRITE'ın yerini tutmaz; VSYNC ve DMA gerekli değildir.
- Geometri denetimi fail-closed'dur: sıfır boyut, 4096 üstü boyut, 4'e hizasız pitch, satır byte'ının altındaki pitch, 16384 üstü pitch ve 64 MiB üstü veya checked çarpım taşması reddedilir; 4096x4096x4 tam sınırda kabul edilir.
- Desen parametreleri fail-closed'dur: 8 genişliğin altında renk barları, 0 veya kareyi aşan dama hücresi ve 9x9 altı çerçeve+artı reddedilir.
- Piksel okuma/yazma sınır denetimlidir: geometri dışı koordinat PixelOutOfBounds, tampon uzunluğunu aşan kelime BufferIndexOutOfRange döner; RGB565 yazımı yalnız kendi yarım-kelimesine dokunur.
- On beş hata kodu sıfırdan farklı ve benzersizdir; exact tekrar aynı receipt ile Retained döner, yayın sonrası farklı desen, cap_id veya hak kümesi PublishedStateDrift ile reddedilir.
- Focused target 1 grup / 21 passed / 0 failed / 0 ignored / 0 filtered verdi.
- Implementation 21461 B / eee6f8da27a9fb74c9590c8de21ea6c9409cdb2a2353ea1327d5a1dbee4baceb; focused test 27193 B / 5a50432d03423c286321f049818dda3fb5ca74234e2d7d54408e9749888f9f53 SHA-256'dır.
- Proof 5612 B'dir.
- S540 immutable raw 20525 B ve S543 immutable raw 20509 B byte-exact korunur; her ikisi RED, automatic promotion=false ve rerun=false'dur.
- S548 sırasında panel, DSI host, mailbox, MMIO, gerçek framebuffer eşlemesi, SD write/read-back/eject, UART open/capture, power transition veya yeni immutable raw üretimi yapılmadı.
- RUNBOOK_EXECUTED_IN_S548=NO; supported-profile runtime observations=0, physical observations=0, hardware present=false, Boot-to-UI physically observed=false ve R1 acceptance=false'dur.
- S549 yalnız host üzerinde RP1 DSI host register haritasını ve D-PHY zamanlama modelini S548 geometri/format şekilleri üzerinden modelleyecektir; aygıt veya fiziksel koşu yetkisi değildir.
Sınır / bekleyen kanıt
- S548 yalnız host üzerinde derlenen ve focused testle sürülen bir modeldir; hiçbir donanım/panel/modem/board gözlemi yoktur.
- Renderer hiçbir MMIO, mailbox veya gerçek framebuffer eşlemesine dokunmaz; üretilen Vec<u32> tamponu yalnız checksum ve piksel assertion'ları ile doğrulanır.
- Modül hiçbir boot, IRQ, scheduler veya driver yoluna bağlanmamıştır; production callsite wired=false'dur.
- S540 ve S543 fiziksel RED immutable kalır; S546 üçüncü fiziksel koşu ayrı bir kapıdır ve kararı burada varsayılmaz.
- Boot-to-UI fiziksel olarak gözlenmedi; Boot-to-UI ve R1 acceptance false kalır.
- S549 host-only RP1 DSI host register haritası ve D-PHY zamanlama modeli tamamlanmadan panel yolu için yeni bir fiziksel aday yoktur.
Terminal komutları ve gerçek yanıtlar
S548 kaynak/host model PASS'tir; supported-profile runtime veya fiziksel PASS değildir. S540 ve S543 RED raw ve kararları değişmez.
$ CARGO_INCREMENTAL=0 cargo test -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s548_r1_display_test_pattern_framebuffer_capability_binding -- --test-threads=1test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
S548 focused=1 group / 21 passed / 0 failed
hardware=none physical=0 runbook=NO