kernelci / kernelci/kci-dev

Add --start-date and --end-date support

Open
#316 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
10
Forks
11
Avg merge
11d 23h
Merged PRs (30d)
9

Description

The KernelCI dashboard allows users to select exact custom date ranges for issue listings. However, kci-dev results issues currently supports only --days.

As a result, dashboard-generated kci-dev commands must round custom ranges up to a whole-day duration. These commands cannot reproduce the exact start and end boundaries selected in the dashboard.

Add the following options to kci-dev results issues:

--start-date
--end-date

Requirements:

Accept YYYY-MM-DD dates and timezone-aware ISO 8601 timestamps.
Pass the corresponding exact boundaries to the dashboard API.
Require --start-date and --end-date to be used together.
Reject a range where the start is later than the end.
Make an explicit date range mutually exclusive with --days.
Preserve the existing --days behavior for backward compatibility.
Return clear usage errors for invalid or incomplete ranges.
Support the new options with both human-readable and JSON output.
Update command help, documentation, and examples.
Add pytest coverage for valid ranges, timestamps with timezones, invalid values, reversed ranges, incomplete pairs, and conflicts with --days.

Example:

kci-dev results issues \
--origin maestro \
--start-date 2026-08-01T00:00:00Z \
--end-date 2026-08-08T00:00:00Z

Once implemented, the KernelCI dashboard can generate commands that reproduce custom issue-listing date ranges without rounding or reporting omitted timestamp boundaries.

Contributor guide

Open the contributing guide

Research direction

Start at the `kci-dev results issues` command and inspect how its existing `--days` option reaches the dashboard API. Add pytest coverage for the listed valid and invalid date-range cases, including both output formats. Done means paired, validated date options work with timezone-aware timestamps, conflicts and errors are clear, `--days` remains compatible, and help, documentation, and examples are updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, cli, documentation, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.