New briefs: job-config-merge (one live merge of job, application profile, queue policy and project into effective values; simplified rules: job overrides profile, select ANDed, queue hard/task limits reject; queue is policy only, res_req deprecated), project-config (project quotas v1) and project-guarantee (backlog). application-profile: the profile carries the job's resreq (incl. span) and task limits; "frozen at submit" replaced by the live merge. parjob-placement: span constraints live in the fixed-N planner and the range search bisects over the planner's allowed counts; LSF 10.1 block, ptile, stripe and HOSTLIMIT_PER_JOB findings recorded. Roadmap: new specs, existing-spec updates, lsf-config-migration backlog. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2.1 KiB
2.1 KiB
Brief: project-guarantee
(/kiro-discovery, 2026-10-09, Path E "configuration layering". Backlog:
not started until project-config and scheduler-preemption land.)
Problem
With project-config, projects can only be capped. Owners of a project (a
group that funded hardware, a department with a committed share) need a
guarantee: a minimum share or a pool of resources they get when they ask
for it, while idle capacity is still lent to others.
Current State
- No guarantee, share or pool concept exists; fairshare is in the queue YAML
schema only and dropped by
xceadmin(mapping.py:80-97). - Preemption is specified but not implemented (
scheduler-preemption, requirements generated).
Desired Outcome
- A project can own a guarantee: a resource amount (slots, hosts or any resource) or a pool of hosts.
- Idle guaranteed capacity may be borrowed by other projects' jobs.
- When an owner's pending job needs its guarantee back, borrowers are reclaimed (preempted, requeued or allowed to finish, by policy).
- Guarantee state and borrowing are visible (REST,
xcecli, REPL).
Approach
To be chosen in discovery when the spec starts. Candidates: LSF-style
guarantee service classes (lsb.resources GuaranteedResourcePool), or
guarantees as reserved virtual resources built on the limit/vres machinery
plus preemption.
Scope
- In: guarantee model, borrowing, reclaim policy, visibility.
- Out: quotas (
project-config), fairshare ordering, accounting/billing.
Boundary Candidates
- Guarantee model and config.
- Scheduler accounting of owned vs borrowed usage.
- Reclaim through
scheduler-preemption.
Out of Boundary
- Project definitions and membership (
project-config).
Upstream / Downstream
- Upstream:
project-config,scheduler-preemption,job-config-merge. - Downstream:
lsf-config-migration(guarantee pools).
Existing Spec Touchpoints
- Extends: none.
- Adjacent:
scheduler-preemption,resource-distribution-mapping.
Constraints
- Scheduler driver equivalence (live and simulator identical).
- Touches scheduling policy and HA state: full 3-phase workflow.