Repository navigation
fix(incident): fetch get by id through /incident/list-by-ids - #214
Merged
Merged
Conversation
`incident get <id>...` sent only incident_ids to /incident/list. That endpoint requires a start_time/end_time window, so every call failed with "StartTime is a required field, EndTime is a required field" (HTTP 400). Fetch through /incident/list-by-ids, which takes ids alone and returns the same row shape. Short-id resolution still goes through /incident/list with its 30-day lookback. Tests now assert the request path, which the previous stub did not check.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
flashduty incident get <id> [<id2>...]sent onlyincident_idstoPOST /incident/list. That endpoint bindsstart_time/end_timeas required, so every call failed:The existing test stub answered every path with the same canned rows and never checked which endpoint was called, so the suite stayed green.
Fix
getfetches throughIncidents.ListByIDs(POST /incident/list-by-ids), which takes ids alone and returns the same incident row shape. Its help now uses theListByIDsresponse description (top-level array, unchanged forjq '.[]'users).num) resolution is unchanged: it still goes through/incident/listwith its 30-day lookback.[/incident/list, /incident/list-by-ids]; full id →[/incident/list-by-ids]only. Both new assertions fail on the previous code.Verification
make check(fmt, lint, test -race, build): green.make gen-cards: no card diff.incident get <full-id> --json→ record withnum,progress,detail_urlincident get <num>→ resolves and returns the recordincident get <id1> <id2> <id3>→ 3 rows (json and table)/incident/listwith ids only) reproduces the 400 above on the same backend.🤖 Generated with Claude Code