S38 · SOURCE-BOUND GATE EVIDENCE
RPi5 G7c 276d568b…a99d0 paketi microSD'ye güvenle yazıldı
Operations komutu/kapı ailesi → gerçek repository yürütme sözleşmesi Bu sayfa yalnız S38 kapısına aittir; komşu kapıların kaynakları bu kabulün içine katılmaz.
S38Komut / fiziksel sözleşmeOperations id exactsource SHA exact
operation: rpi5-g7c-package-microsd-reflash-verified
script/Makefile/config · Operations · 2 exact excerpt
sequence-bound=true · implementation-bound=false
01 · Yürütme sözleşmesi
Gerçek script / Makefile / config kaynağı
tam Make hedefiL6163–L6179
Makefile::check-sd-rpi5
check-sd-rpi5:
@test -n "$(SD_DISK)" || \
(echo "HATA: SD_DISK zorunlu. Örnek: make $@ SD_DISK=/dev/disk4"; exit 1)
@printf '%s\n' "$(SD_DISK)" | grep -Eq '^/dev/disk[0-9]+$$' || \
(echo "HATA: SD_DISK whole disk biçiminde olmalı: /dev/diskN"; exit 1)
@INFO=$$(mktemp -t aselsanos-sd); trap 'rm -f "$$INFO"' EXIT; \
diskutil info -plist "$(SD_DISK)" > "$$INFO"; \
[ "$$(plutil -extract DeviceNode raw -o - "$$INFO")" = "$(SD_DISK)" ] || \
{ echo "HATA: DeviceNode eşleşmiyor"; exit 1; }; \
[ "$$(plutil -extract WholeDisk raw -o - "$$INFO")" = "true" ] || \
{ echo "HATA: $(SD_DISK) whole disk değil"; exit 1; }; \
[ "$$(plutil -extract OSInternalMedia raw -o - "$$INFO")" = "false" ] || \
{ echo "HATA: işletim sistemi dahili diski reddedildi"; exit 1; }; \
[ "$$(plutil -extract RemovableMediaOrExternalDevice raw -o - "$$INFO")" = "true" ] || \
{ echo "HATA: aygıt çıkarılabilir/harici değil"; exit 1; }; \
[ "$$(plutil -extract BusProtocol raw -o - "$$INFO")" = "Secure Digital" ] || \
{ echo "HATA: yalnızca Secure Digital veri yolu kabul edilir"; exit 1; }snippet sha256: 753a0ed713d7…file sha256: a8d6a7830268…
02 · Kapı kimlik kaydı
Operations sıra, kimlik ve başlık bağı
tam Operations kaydıL33873–L33964
website/src/lib/operations.ts::rpi5-g7c-package-microsd-reflash-verified
{
id: "rpi5-g7c-package-microsd-reflash-verified",
date: "2026-08-20",
sequence: 38,
status: "verified",
title: "RPi5 G7c 276d568b…a99d0 paketi microSD'ye güvenle yazıldı",
summary:
"Sıra 37'de host/build kapılarından geçen 226448 baytlık G7c paketi, exact whole-disk ve FAT32 volume kimliği yeniden fail-closed çözülen fiziksel microSD'ye mevcut bölüm düzeni korunarak yazıldı. Önce karttaki fiziksel G7b PASS veren c065bbd7…db5f imaj ve 3/3 manifest salt-okunur doğrulandı; format çalıştırılmadı. Yeni G7c manifesti 3/3, image/DTB/config/manifest dört cmp ve güvenli eject geçti. Bu tarihsel kayıt yalnız kart yazma zinciridir; fiziksel BOOT7C sonucu sıra 39'dadır.",
evidence: [
"/dev/disk4 exact whole disk olarak çözüldü: 62,549,655,552 B Built In SDXC Reader; WholeDisk=true, OSInternalMedia=false, removable=true, writable=true ve BusProtocol=Secure Digital.",
"Child /dev/disk4s1 DOS_FAT_32 ASELSANBOOT olarak /Volumes/ASELSANBOOT altında bağlıydı; msdos/FAT32 mount parent whole disk /dev/disk4 ile eşleşti.",
"Yazma öncesi karttaki fiziksel G7b PASS imajı 140432 B / c065bbd704d836cd84f7ba9515bacd67664a947337d76a704643d6a58d17db5f ve eski SHA256SUMS 6eb474f17acc8f0968f040892856a6e3140e1d66f3f98618362b589d28192bb5 olarak doğrulandı; eski manifest 3/3 OK verdi.",
"G7c image-rpi5 kapısı yeniden çalıştı: hedef testleri 16/16, pre-MMU publish ve G7c makine-kodu/layout denetimleri PASS; build manifesti 3/3 OK ve imaj hash'i 276d568b793dc580577f3e3c89e06f428dc56c5d5ec208e10d905043f0ba99d0 olarak değişmeden kaldı.",
"Mevcut doğru MBR/FAT32 düzen korundu; format-sd-rpi5 çalıştırılmadı. make flash-rpi5 SD_DISK=/dev/disk4 SD_MOUNT=/Volumes/ASELSANBOOT exit 0 verdi.",
"Karttaki aselsanos-rpi5.img 226448 B / 276d568b793dc580577f3e3c89e06f428dc56c5d5ec208e10d905043f0ba99d0 olarak doğrulandı.",
"Karttaki bcm2712-rpi-5-b.dtb 78703 B / 40a2fbe9c29e8b9a4912cf726a943068defb779fc052ec38e457a79c58abca00 ve config.txt 501 B / 1248275cdc6f6ce951ce0ff2183471d194c5b9bb58c3dc3f66efa9156f91d76b olarak doğrulandı.",
"Karttaki SHA256SUMS 248 B / eb267fc450a8b14105867935d2b2a07a78af7b78170a4bf9dcf5a4d4c2184acc; kart manifesti 3/3 OK verdi.",
"Image, DTB, config ve SHA256SUMS build/rpi5 kaynaklarıyla dört ayrı cmp kontrolünde byte-for-byte aynı bulundu.",
"sync tamamlandı; diskutil eject /dev/disk4 exit 0 verdi. Son kontrolde /dev/disk4 ile /Volumes/ASELSANBOOT absent idi.",
],
commands: [
"diskutil list + diskutil info -plist /dev/disk4",
"make check-sd-rpi5 SD_DISK=/dev/disk4",
"make verify-sd-volume-rpi5 SD_DISK=/dev/disk4 SD_MOUNT=/Volumes/ASELSANBOOT",
"pre-write card shasum + 3/3 manifest audit",
"make image-rpi5",
"make flash-rpi5 SD_DISK=/dev/disk4 SD_MOUNT=/Volumes/ASELSANBOOT",
"post-write 3/3 manifest + four cmp + independent SHA-256 audit",
"sync && diskutil eject /dev/disk4",
],
terminalSessionsNote:
"Kart numarası tahmin edilmedi; her yıkıcı adımdan önce whole-disk, parent volume ve mevcut G7b chain-of-custody verileri salt-okunur doğrulandı. Bölümleme/format hedefi çağrılmadı.",
terminalSessions: [
{
id: "g7c-card-identity-before-write",
title: "Exact SD kimliği ve önceki G7b paketi",
commandLines: [
"make check-sd-rpi5 SD_DISK=/dev/disk4",
"make verify-sd-volume-rpi5 SD_DISK=/dev/disk4 SD_MOUNT=/Volumes/ASELSANBOOT",
"pre-write shasum + manifest",
],
outputLines: [
"DeviceNode=/dev/disk4 WholeDisk=true OSInternalMedia=false",
"RemovableMediaOrExternalDevice=true BusProtocol=Secure Digital Writable=true",
"disk4s1 · FAT32/msdos · ASELSANBOOT · parent=disk4",
"c065bbd704d836cd84f7ba9515bacd67664a947337d76a704643d6a58d17db5f aselsanos-rpi5.img",
"aselsanos-rpi5.img: OK · bcm2712-rpi-5-b.dtb: OK · config.txt: OK",
],
exitCode: 0,
outputMode: "selected",
},
{
id: "g7c-card-flash",
title: "Formatsız G7c flash ve manifest",
commandLines: [
"make flash-rpi5 SD_DISK=/dev/disk4 SD_MOUNT=/Volumes/ASELSANBOOT",
],
outputLines: [
"format-sd-rpi5: ÇALIŞTIRILMADI",
"aselsanos-rpi5.img: OK",
"bcm2712-rpi-5-b.dtb: OK",
"config.txt: OK",
"sync",
],
exitCode: 0,
outputMode: "selected",
},
{
id: "g7c-card-cmp-eject",
title: "Dört cmp · bağımsız hash · güvenli eject",
commandLines: [
"cmp build/rpi5/<file> /Volumes/ASELSANBOOT/<file> ×4",
"shasum -a 256 /Volumes/ASELSANBOOT/*",
"sync && diskutil eject /dev/disk4",
],
outputLines: [
"cmp=aselsanos-rpi5.img OK · cmp=bcm2712-rpi-5-b.dtb OK",
"cmp=config.txt OK · cmp=SHA256SUMS OK",
"276d568b793dc580577f3e3c89e06f428dc56c5d5ec208e10d905043f0ba99d0 aselsanos-rpi5.img",
"Disk /dev/disk4 ejected",
"disk_absent=PASS · mount_absent=PASS",
],
exitCode: 0,
outputMode: "complete",
},
],
limitations: [
"Bu kayıt yalnız fiziksel microSD yazma, manifest, cmp ve eject kanıtıdır; kendi başına EL0, SVC veya BOOT7C runtime PASS değildir. Runtime sonucu sıra 39'da ayrı tutulur.",
"Kartın önceki c065bbd7…db5f G7b içeriği dört boot dosyası bakımından yeni 276d568b…a99d0 G7c paketiyle değiştirildi; mevcut MBR/FAT32 düzen formatlanmadı.",
"UART firmware chatter'ı imaj boyutunu gösterir, SHA-256 taşımaz; fiziksel boot'un 276d568b…a99d0 pakete bağı bu 3/3 + dört cmp chain-of-custody zinciridir.",
],
},snippet sha256: 8fa211f15164…file sha256: 9726dbf00f84…
Kayıtlı yürütme/kanıt komutu
diskutil list + diskutil info -plist /dev/disk4Registry schema v5 · generator
website/scripts/generate-code-gates.mjs · Tam SHA-256: 3050638b71a684d8f8f947a8a6faa237a17fa8db5dc0db04fb207b668b462af9