libxce-alloc-preason-equality (requirements, design, tasks; not yet approved): - alloc_eq compares `from` and excludes only instid; the scheduler stamps `from` with the deciding session's start, the same clock reading that is recorded as beginRound, so a replay reproduces it. - every comparator takes an optional char** why: a malloc'd description of the first difference, owned and freed by the caller; --sim-verify mismatch lines print it (resolves bug-1881). - job_preason_eq is new full-match behavior, not a relocation (bug-1845 keeps the simulator main-reason-only); the three white-box test files switch to it and keep their sim_verify.c include. - alloc_eq stays separate from merge_job_alloc()'s same_alloc_slot() (bug-1863), which does match on instid. scheduler-sim-discrete-clock (initialized): remove --sim-speed so the simulator clock moves only at recorded timestamps and a replayed session_start equals the recorded beginRound exactly. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
30 lines
614 B
JSON
30 lines
614 B
JSON
{
|
|
"feature_name": "libxce-alloc-preason-equality",
|
|
"created_at": "2026-09-24T04:42:20Z",
|
|
"updated_at": "2026-09-28T08:40:00Z",
|
|
"language": "en",
|
|
"phase": "tasks-generated",
|
|
"approvals": {
|
|
"requirements": {
|
|
"generated": true,
|
|
"approved": false
|
|
},
|
|
"design": {
|
|
"generated": true,
|
|
"approved": false
|
|
},
|
|
"tasks": {
|
|
"generated": true,
|
|
"approved": false
|
|
}
|
|
},
|
|
"ready_for_implementation": false,
|
|
"gitea": {
|
|
"milestone_id": 30,
|
|
"issues": {
|
|
"requirements_design": 153,
|
|
"implementation": 154,
|
|
"validation": 155
|
|
}
|
|
}
|
|
}
|