kernelci / kernelci/kernelci-core
Add a distinct "prepared" state for pull-labs jobs
- Dominant language
- Python
- Stars
- 120
- Forks
- 107
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 21
Description
Pull-labs jobs currently use `state=available` to mean "ready for an external lab to pick up". Elsewhere in the pipeline, `available` means "this node has produced a usable result/artifact".
This overload confused `send_kcidb`: it listens for `available` nodes and can submit pull-labs jobs to KCIDB before they are actually finished, producing dashboard records with `status: NULL`.
Short-term fix:
- `send_kcidb` should only submit `job`, `test`, and `process` nodes after `state=done`.
(46cb4a1 in pipeline)
Long-term fix:
- Add a distinct state such as `prepared` for pull-labs jobs waiting to be picked up.
- Make pull-labs workers poll `state=prepared`.
- Keep `available` for nodes whose outputs/results are actually available.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the send_kcidb entry point, the pull-labs worker polling, and the pipeline state transitions. Confirm how available, done, and the proposed prepared state are interpreted across these paths. Done means pull-labs workers poll prepared, available is reserved for usable outputs, and send_kcidb does not submit unfinished job, test, or process nodes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- ci-cd
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100