ASELSANMicrokernel
S180 · SOURCE-BOUND GATE EVIDENCE

G8l: scheduler-mutation admission source contract

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

S180Focused kod testiOperations id exactsource SHA exacttest target exact

operation: g8l-s180-target-dispatch-scheduler-admission-partial

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

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

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

tam Rust öğesiL33–L84
kernel/src/g8l_target_dispatch_scheduler_admission.rs::from_execution_caller

impl G8lTargetDispatchSchedulerAdmission {
    pub fn from_execution_caller(
        runtime: &G8lRuntimeAuthority,
        caller: G8lTargetDispatchExecutionCaller,
    ) -> Result<Self, G8lTargetDispatchSchedulerAdmissionError> {
        caller.revalidate_runtime(runtime)?;
        Ok(Self {
            caller: Some(caller),
        })
    }

    pub fn revalidate_runtime(
        &self,
        runtime: &G8lRuntimeAuthority,
    ) -> Result<(), G8lTargetDispatchSchedulerAdmissionError> {
        let caller = self
            .caller
            .as_ref()
            .ok_or(G8lTargetDispatchSchedulerAdmissionError::Consumed)?;
        caller.revalidate_runtime(runtime)?;
        Ok(())
    }

    pub const fn consumed(&self) -> bool {
        self.caller.is_none()
    }

    pub const fn scheduler_mutation_admission_wired(&self) -> bool {
        false
    }

    pub const fn production_scheduler_wired(&self) -> bool {
        false
    }

    pub const fn global_scheduler_exclusion_proven(&self) -> bool {
        false
    }

    pub const fn gic_delivery_wired(&self) -> bool {
        false
    }

    pub const fn hardware_execution_proven(&self) -> bool {
        false
    }

    pub const fn source_contract_only(&self) -> bool {
        true
    }
}
snippet sha256: cefa20ce3ba6file sha256: 7e5e848611ac
02 · Doğrulayan test kodu

Operations komutuna bağlı focused test

tam Rust öğesiL49–L58
simulation/tests/g8l_target_dispatch_scheduler_admission.rs::scheduler_admission_keeps_mutation_and_global_exclusion_closed

#[test]
fn scheduler_admission_keeps_mutation_and_global_exclusion_closed() {
    let source = include_str!("../../kernel/src/g8l_target_dispatch_scheduler_admission.rs");
    assert!(source.contains("pub const fn scheduler_mutation_admission_wired(&self) -> bool"));
    assert!(source.contains("pub const fn production_scheduler_wired(&self) -> bool"));
    assert!(source.contains("pub const fn global_scheduler_exclusion_proven(&self) -> bool"));
    assert!(source.contains("pub const fn gic_delivery_wired(&self) -> bool"));
    assert!(source.contains("pub const fn hardware_execution_proven(&self) -> bool"));
}
snippet sha256: 2975c3411d29file sha256: 4e3fdd594fd1
03 · Kapı kimlik kaydı

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

tam Operations kaydıL22650–L22689
website/src/lib/operations.ts::g8l-s180-target-dispatch-scheduler-admission-partial
  {
    id: "g8l-s180-target-dispatch-scheduler-admission-partial",
    date: "2026-08-24",
    sequence: 180,
    status: "passed",
    umbrella_status: "partial",
    title: "G8l: scheduler-mutation admission source contract",
    summary:
      "S180, S179 execution caller'ını by-value tek sahip scheduler-mutation admission sınırına taşıyan 8/8 source contract kurdu. Caller runtime/architecture revalidation'a delege edilir, caller error ve consumed durumları fail-closed kalır; scheduler mutation, production scheduler owner, global exclusion, GIC/SGI ve hardware execution bağlanmaz.",
    evidence: [
      "g8l_target_dispatch_scheduler_admission: 8/8 PASS; exact S179 execution caller consumption, single-owner Option boundary and delegated runtime/architecture revalidation.",
      "Caller error and consumed states fail-closed; architecture-supplied constructor closed and scheduler admission cannot be replayed through a retained caller.",
      "Production scheduler mutation/owner, global scheduler exclusion, GIC/SGI delivery and hardware execution remain closed: scheduler_mutation_admission_wired=false, production_scheduler_wired=false, global_scheduler_exclusion_proven=false, gic_delivery_wired=false, hardware_execution_proven=false.",
      "Kalıcı kapsam: `docs/M8.1-RPi5-G8l-S180-Scheduler-Mutation-Admission-Proof.md`.",
      "S180 fiziksel/device operasyonu yapmadı: physical/device operations=0 ve RUNBOOK_EXECUTED_IN_S180=NO.",
    ],
    commands: [
      "cargo test --quiet --test g8l_target_dispatch_scheduler_admission -- --test-threads=1",
      "cargo check --quiet --manifest-path kernel/Cargo.toml --target aarch64-unknown-none --no-default-features --features board-rpi5",
    ],
    terminalSessions: [
      {
        id: "s180-g8l-target-dispatch-scheduler-admission",
        title: "G8l S180 scheduler-mutation admission source contract",
        commandLines: [
          "cargo test --quiet --test g8l_target_dispatch_scheduler_admission -- --test-threads=1",
        ],
        outputLines: ["running 8 tests", "test result: ok; 8 passed; 0 failed"],
        exitCode: 0,
        outputMode: "selected",
      },
    ],
    terminalSessionsNote:
      "S180 dar kaynak kabulü PASS'tir; scheduler mutation admission sözleşmesi typed caller'ı tüketir fakat production scheduler/GIC/hardware authority açmaz.",
    limitations: [
      "S180 source-only scheduler admission boundary'dir; production scheduler mutation ve gerçek owner wiring yapmaz.",
      "Global scheduler exclusion/source linearity, GIC/SGI delivery, context-switch assembly, QEMU ve fiziksel RPi execution kapsam dışıdır.",
      "S180 fiziksel/device operasyonu yapmadı; RUNBOOK_EXECUTED_IN_S180=NO.",
    ],
  },
snippet sha256: 6f61488214e0file sha256: 9726dbf00f84
Focused test komutu
cargo test --quiet --test g8l_target_dispatch_scheduler_admission -- --test-threads=1
proof: docs/M8.1-RPi5-G8l-S180-Scheduler-Mutation-Admission-Proof.md
Registry schema v5 · generator website/scripts/generate-code-gates.mjs · Tam SHA-256: 3050638b71a684d8f8f947a8a6faa237a17fa8db5dc0db04fb207b668b462af9