ASELSANMicrokernel
S221 · SOURCE-BOUND GATE EVIDENCE

G8l: production migration-lifecycle S189 owner ledger

Operations --test hedefi → test hedefiyle aynı adlı uygulama/model modülü → kaynak kesiti Bu sayfa yalnız S221 kapısına aittir; komşu kapıların kaynakları bu kabulün içine katılmaz.

S221Focused kod testiOperations id exactsource SHA exacttest target exact

operation: g8l-s221-production-migration-lifecycle-s189-owner-ledger-partial

uygulama/model · focused test · Operations · 3 exact excerpt

sequence-bound=true · implementation-bound=true
01 · Testin bağlı olduğu uygulama/model kodu

Kapının yürüttüğü gerçek kaynak

tam Rust öğesiL28–L54
kernel/src/g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s189_owner_ledger.rs::publish_runtime_owner_tuple_from_s189_owner_ledger_commit

/// Consume one exact S189 owner-ledger commit, construct S190 once, and enter
/// S220.
///
/// The commit and admission are non-Copy and consumed by value. A downstream
/// failure is terminal at this boundary; no replacement or retry is
/// introduced.
pub fn publish_runtime_owner_tuple_from_s189_owner_ledger_commit(
    queue: &mut G8lRuntimeOwnerS197TupleHandoffQueue,
    runtime: G8lRuntimeAuthority,
    authority: G8lSchedulerOwnerAuthority,
    commit: G8lSchedulerOwnerCommitReceipt,
    caller_cpu: usize,
    target_cpu: usize,
) -> Result<(), G8lMigrationLifecycleS189OwnerLedgerError> {
    if caller_cpu != CPU1 {
        return Err(G8lMigrationLifecycleS189OwnerLedgerError::InvalidCallerCpu);
    }
    let admission = G8lSchedulerOwnerAdmissionReceipt::admit_production_scheduler(
        &runtime, &authority, commit, caller_cpu,
    )
    .map_err(G8lMigrationLifecycleS189OwnerLedgerError::Admission)?;
    publish_runtime_owner_tuple_from_s190_scheduler_admission(
        queue, runtime, authority, admission, caller_cpu, target_cpu,
    )
    .map_err(G8lMigrationLifecycleS189OwnerLedgerError::S190Admission)
}
snippet sha256: cb56d7d60c62file sha256: 410d7f0f8719
02 · Doğrulayan test kodu

Operations komutuna bağlı focused test

tam Rust öğesiL92–L103
simulation/tests/g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s189_owner_ledger.rs::s221_source_is_allocation_free_and_orders_s189_s190_s191_s219

#[test]
fn s221_source_is_allocation_free_and_orders_s189_s190_s191_s219() {
    let source = include_str!("../../kernel/src/g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s189_owner_ledger.rs");
    assert!(!source.contains("Box<"));
    assert!(!source.contains("Vec<"));
    assert!(source.contains("G8lSchedulerOwnerAdmissionReceipt::admit_production_scheduler"));
    assert!(source.contains("publish_runtime_owner_tuple_from_s190_scheduler_admission"));
    assert!(source.contains("S189 -> S190 -> S191 -> S219"));
    assert!(!source.contains("task::scheduler"));
    assert!(!source.contains("send_sgi"));
}
snippet sha256: 343691b393ebfile sha256: c39d088fdc7d
03 · Kapı kimlik kaydı

Operations sıra, kimlik ve başlık bağı

tam Operations kaydıL20591–L20641
website/src/lib/operations.ts::g8l-s221-production-migration-lifecycle-s189-owner-ledger-partial
  {
    id: "g8l-s221-production-migration-lifecycle-s189-owner-ledger-partial",
    date: "2026-08-25",
    sequence: 221,
    status: "passed",
    umbrella_status: "partial",
    title: "G8l: production migration-lifecycle S189 owner ledger",
    summary:
      "S221 11/11 PASS ile exact non-Copy S189 scheduler-owner commit CPU1 caller sınırında by-value tüketildi, tek S190 scheduler admission oluşturuldu ve S220 üzerinden S219/S218/S217/S216/S215/S214/S213/S212 zincirine bağlandı. Occupied slot replacement/retry açılmaz; migration runtime callsite'ı henüz invoke edilmedi.",
    evidence: [
      "S221 focused S189 owner-ledger callsite grubu iki bağımsız koşuda 11/11 PASS: CPU1 caller gate, S189→S190→S191→S192→S193→S194→S195→S196 source order, exact commit consumption, S220/S219/S218/S217/S216/S215/S214/S213/S212 ingress reuse, occupied ownership and no-retry boundaries.",
      "Focused koşular byte-eşit kaldı: 126 B / SHA-256 0d9a424720ba8dcdb80aa72dd7f87ea926ef1c95de05e316e305f19e7e0fe3c5.",
      "S206 callsite/readback + S207–S221 dependency matrix frozen S220 prefix'i üzerine 18 grup / 212/212 PASS ve 2280 B / SHA-256 856eb05ffc67607248e53efbef14b04dee5380a28371f5aa5cfb3b412353203a verdi; ilk 2154 B exact S220 dependency prefix'idir.",
      "S155–S221 explicit sequence-ordered matrix frozen S220 prefix'i üzerine 70 grup / 695/695 PASS ve 8691 B / SHA-256 92806c1d2e182c30a72db56a64f936814fdfe554bbc48edb2712202fde205048 verdi; exact S220 8565 B prefix'i korundu.",
      "RPi5 AArch64 compile PASS: 568 warning envanterlendi; 286252 B / SHA-256 3b38ffed5ae97486a421ff62480dcd1fa0f0fd42991a01d9a0ece30e20d47343. `smp`: 568 warning, 286194 B / SHA-256 4be89b502500e39f8506abe2e5a5cb4394c8d69f0a0c742ef9a8d6ab14a4a63c. Zero-warning iddiası yoktur.",
      "Kalıcı kapsam: `docs/M8.1-RPi5-G8l-S221-Migration-Lifecycle-S189-Owner-Ledger-Proof.md`.",
      "S189 commit by-value tüketilir; CPU1 caller doğrulamasından sonra S190 admission bir kez oluşturulur ve S220/S219/S218/S217/S216/S215/S214/S213/S212 zincirine geçilir. Wrong caller, foreign commit, wrong target ve occupied slot fail-closed kalır; replacement/retry yoktur.",
      "S221 fiziksel/device operasyonu yapmadı: physical/device operations=0 ve RUNBOOK_EXECUTED_IN_S221=NO.",
      "S189 owner-ledger callsite wired/AArch64-compiled'dır fakat boot veya migration runtime callsite'ı henüz invoke edilmedi; present request, S207 invocation veya scheduler mutation gözlemi iddia edilmez.",
      "Canlı marker: S221_11_OF_11_MIGRATION_LIFECYCLE_S189_OWNER_LEDGER_CPU1_CALLER_S189_NONCOPY_COMMIT_CONSUMED_BY_VALUE_EXACT_S190_ADMISSION_CONSTRUCTED_ONCE_S220_S219_S218_S217_S216_S215_S214_S213_S212_SINGLE_SLOT_INGRESS_NO_REPLACEMENT_NO_RETRY_AARCH64_COMPILED_NOT_RUNTIME_INVOKED_PRESENT_REQUEST_NOT_OBSERVED_LEGACY_SCHEDULER_ACCESSES_UNCOVERED_WHOLE_SCHEDULER_GIC_HARDWARE_QEMU_PHYSICAL_CPU2_CPU3_HOTPLUG_SOAK_GENERIC_SMP_OPEN_FULL_PHYSICAL_RUNBOOK_VISIBLE_S381_TO_S431_S406_NO_RUNBOOK_EXECUTED_IN_S221_VERIFIED; deployment-specific route/hash evidence is recorded in the project-status manifest.",
    ],
    commands: [
      "cargo test --quiet -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s189_owner_ledger -- --test-threads=1",
      "cargo check --quiet --manifest-path kernel/Cargo.toml --target aarch64-unknown-none --no-default-features --features board-rpi5",
      "cargo check --quiet --manifest-path kernel/Cargo.toml --target aarch64-unknown-none --no-default-features --features board-rpi5,smp",
    ],
    terminalSessions: [
      {
        id: "s221-g8l-production-migration-lifecycle-s189-owner-ledger",
        title: "G8l S221 migration-lifecycle S189 owner ledger",
        commandLines: [
          "cargo test --quiet -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s189_owner_ledger -- --test-threads=1",
        ],
        outputLines: [
          "test result: ok; 11 passed; 0 failed",
          "CPU1 caller consumes S189 owner-ledger commit and constructs S190 exactly once before S220",
          "S220 delegates through S219/S218/S217/S216/S215/S214/S213/S212 single-slot ingress with no replacement/retry",
          "production migration runtime callsite is not invoked; present request/scheduler mutation is not claimed",
        ],
        exitCode: 0,
        outputMode: "selected",
      },
    ],
    terminalSessionsNote:
      "Terminal özeti S221 S189→S190→S220 callsite sınırını gösterir; production migration runtime, QEMU veya fiziksel cihaz çalıştırması değildir.",
    limitations: [
      "S221 S189 owner-ledger callsite'ını wired/AArch64-compiled yapar; gerçek boot/migration caller'ı henüz invoke edilmediği için present request veya S207 runtime invocation iddia edilmez.",
      "Whole-scheduler exclusion, legacy scheduler erişimleri, GIC/SGI capture, CPU1 ERET/context-switch assembly, QEMU present-tuple yolu, fiziksel RPi ve Generic SMP açıktır.",
      "S221 fiziksel/device operasyonu yapmadı; RUNBOOK_EXECUTED_IN_S221=NO.",
    ],
  },
snippet sha256: 0cea8dda2b36file sha256: 9726dbf00f84
Focused test komutu
cargo test --quiet -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s189_owner_ledger -- --test-threads=1
proof: docs/M8.1-RPi5-G8l-S221-Migration-Lifecycle-S189-Owner-Ledger-Proof.md
Registry schema v5 · generator website/scripts/generate-code-gates.mjs · Tam SHA-256: 3050638b71a684d8f8f947a8a6faa237a17fa8db5dc0db04fb207b668b462af9