From 28cff179b254dddc58a452f47e5c21843c8ec191 Mon Sep 17 00:00:00 2001 From: Rongsong Shen Date: Wed, 30 Sep 2026 10:11:18 +0000 Subject: [PATCH] chore(scheduler-allocator-runner): mark task groups complete Co-Authored-By: Claude Opus 5.5 (1M context) --- .kiro/specs/scheduler-allocator-runner/tasks.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.kiro/specs/scheduler-allocator-runner/tasks.md b/.kiro/specs/scheduler-allocator-runner/tasks.md index 167845ee..b707efe1 100644 --- a/.kiro/specs/scheduler-allocator-runner/tasks.md +++ b/.kiro/specs/scheduler-allocator-runner/tasks.md @@ -1,6 +1,6 @@ # Implementation Plan -- [ ] 1. Foundation: plan-iterator contract and allocator contract +- [x] 1. Foundation: plan-iterator contract and allocator contract - [x] 1.1 Retype the plan generator's initialisation to take the scheduling core - Change the plan-iterator initialisation parameter from the scheduler object to the scheduling core in the shared contract, in both built-in plan generators, in both allocators' current calls that initialise their plan generator (they pass the scheduling core instead of the scheduler object), and in the stub generator used by the plan-iterator contract tests - Update the parjob combinatorial tests' direct initialisation calls; turn the poisoned-scheduler case into a poisoned-core case that shows the plan sequence is identical with no core and with a poisoned core @@ -13,7 +13,7 @@ - Done when the scheduler and its suite build and pass unchanged with the new declarations present and no plugin using them yet - _Requirements: 1.2, 1.6_ -- [ ] 2. Characterization tests against the current allocators +- [x] 2. Characterization tests against the current allocators - [x] 2.1 Characterize the sequential-job allocator through its registered entry point - New test target that drives the real seqjob plugin through its job-allocation entry point, using the existing prepare-allocation stub convention and an allocation-record stub with out-of-memory injection - Set up the out-of-memory injection that 2.2 reuses, using only injection points that stay the same across the switch: the existing allocation-record stub failing on its N-th call (per-host records in claim order, then shared records) and link-time wrapping (the testsuite's existing wrap precedent) of the libxce host-allocation and job-allocation constructors with fail-on-call-N counters; the host-array allocation is not injected here because its origin changes at the switch (seqjob's libxce helper and parjob's in-file allocation both become a runner allocation) and is covered by 3.3 @@ -28,7 +28,7 @@ - Done when the new target passes against the unchanged parjob allocator - _Requirements: 4.5, 5.1, 5.2, 5.4, 5.8, 7.2_ -- [ ] 3. Framework allocation routine +- [x] 3. Framework allocation routine - [x] 3.1 Build the routine's guards and shared-resource precheck, test first - Add the new runner source to the scheduler build and to the pend-reason factory audit's scanned files, and add a runner test target that uses a scripted fake allocator contract - Missing plugin, context, core, scheduler back-reference, primary request, contract or plan functions returns invalid-argument without creating a pend-reason record @@ -56,7 +56,7 @@ - Done when runner tests for success and each out-of-memory step pass under ASAN with no leak or double free - _Requirements: 4.1, 4.2, 4.3, 4.4, 5.4, 5.5, 5.6, 5.7, 7.2_ -- [ ] 4. Move both allocators onto the framework routine +- [x] 4. Move both allocators onto the framework routine - [x] 4.1 Switch the parallel-job allocator - First rewrite the parjob characterization tests' `_today` host-reason assertions to the complete per-host reasons of 3.7 (every selection-matching unclaimed short host of each bucket search) and see them fail against the old code - Also add the parjob bug-1893 fixture (two shared resources, one short: exactly one host-less reason, naming the short one; today none is recorded) to the parjob characterization tests and see it fail against the old code @@ -77,7 +77,7 @@ - _Depends: 2.1, 4.1_ - _Requirements: 1.1, 1.2, 1.5, 1.6, 3.6, 3.7, 5.1, 5.3, 5.5, 7.1_ -- [ ] 5. Validation and closure +- [x] 5. Validation and closure - [x] 5.1 Remove stale references to the removed routines - Rewrite comments in both allocator plugins and the simulation allocator bootstrap that describe the removed private routines, so they describe the framework routine - Rewrite testsuite comments that describe current behaviour in terms of the removed routines (host-iterator, simulation limit fan-out, election simulation fixture and parjob end-to-end multi-slot tests); comments that record history may keep the old names