docs(scheduler-sim-live-allocation): reconcile equivalence suites (task 5.3)
Re-ran test_repl_equivalence.c, test_sim_equivalence.c, and test_sim_contention_parity.c in full: all pass, 85/85, zero assertion changes anywhere. Confirmed all three still exercise their own link-satisfying always-PEND sched_job_picker/sched_allocator stub (added task 4.1), correctly proving the new two-thread jbuf timing didn't disturb decision ordering -- but not proving real live-path resource-based dispatch parity, which is already covered separately by tasks 4.1/4.3/5.1/5.2's real-scheduler_srcs-linked fixtures. Fixed a stale documentation defect: all three files' header/inline comments claimed sim mode "structurally CANNOT emit a DISPATCH decision" via sim_picker_thread_fn(), a function this feature removed in tasks 3.1/4.1. That claim is now false of production sim mode (disproved by test_sim_live_allocation.c and others); corrected with a RECONCILIATION addendum rather than rewriting the original historical rationale. No production code or assertion values changed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RLSNJhNoULvVcUhXEFafQC
This commit is contained in:
parent
a70c7a2c61
commit
aacb7250e3
4 changed files with 77 additions and 6 deletions
|
|
@ -18,9 +18,14 @@
|
|||
* completion produces the same output as `--sim` without `--interactive`."
|
||||
*
|
||||
* Fixture (a genuine, non-trivial, PEND-only sequence -- see
|
||||
* test_sim_equivalence.c's own header comment for why every decision the
|
||||
* simulation driver can produce today is PEND, never DISPATCH:
|
||||
* sim_picker_thread_fn()'s documented, out-of-this-task's-scope gap): TWO
|
||||
* test_sim_equivalence.c's own header comment, and that comment's
|
||||
* scheduler-sim-live-allocation task 5.3 RECONCILIATION addendum, for why
|
||||
* every decision THIS FILE's own fixture produces is PEND, never DISPATCH:
|
||||
* this file provides its own link-satisfying sched_job_picker()/
|
||||
* sched_allocator() stub, below, reproducing the old always-PEND contract
|
||||
* the now-removed sim_picker_thread_fn() used to provide -- production sim
|
||||
* mode itself can genuinely DISPATCH today, proved elsewhere, see that
|
||||
* addendum): TWO
|
||||
* queues at different priorities ("high"=5, "normal"=1, forcing the real
|
||||
* builtin_fcfs cross-queue priority ordering to run for real) and FOUR jobs
|
||||
* split across THREE separate ReplaySession boundaries (2 jobs before
|
||||
|
|
@ -883,8 +888,11 @@ test_repl_step_continue_to_completion_matches_batch_decision_sequence(void)
|
|||
/* Independently pin the decision TYPE on each side (matches
|
||||
* test_sim_equivalence.c's own "pin the type, don't just diff
|
||||
* the two sides against each other" guard) -- every decision
|
||||
* this fixture can produce is PEND (sim_picker_thread_fn()'s
|
||||
* documented, out-of-scope DISPATCH gap). */
|
||||
* this fixture can produce is PEND (this file's own
|
||||
* link-satisfying sched_allocator() stub -- see header comment
|
||||
* and test_sim_equivalence.c's task 5.3 RECONCILIATION
|
||||
* addendum for why, and why production sim mode itself is not
|
||||
* limited this way). */
|
||||
TEST_ASSERT_EQUAL_INT((int)ReplayDecision_body_pend,
|
||||
(int)bd->body_which);
|
||||
TEST_ASSERT_EQUAL_INT((int)ReplayDecision_body_pend,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue