fix(issues): return [] not null for empty issues list and events#90
Merged
Merged
Conversation
Both `issues list` and `issues events` used `var data []map[string]any` which stays nil when no results are returned, serializing to JSON null instead of []. Callers (including the issues agent) cannot iterate null. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Andy Young (ayoung19)
approved these changes
Apr 30, 2026
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.
Summary
`issues list` and `issues events` both used `var data []map[string]any`, which stays nil when the API returns zero results. `json.Marshal(nil)` serializes to `null` instead of `[]`, breaking any caller that tries to iterate or check the length of the result.
The issues agent calls `langsmith project issues events --look-back-minutes 360` on every cron scan. For projects with no recent activity this returns `null`, which the agent can't handle cleanly.
Fix: initialize as `data := []map[string]any{}` in both commands so empty results always serialize to `[]`.
Test Plan
Release Note
Fix `issues list` and `issues events` returning `null` instead of `[]` when there are no results.