fix: resolve sources listing display issue in GetProject API#10
Open
fix: resolve sources listing display issue in GetProject API#10
Conversation
When authentication tokens expire, the GetProject API returns empty data (null project ID, title, and sources), causing users to see an empty sources table without understanding why. Changes: - Add check for empty project data in listSources() - Provide clear error message when auth has likely expired - Guide users to run 'nlm auth' to re-authenticate This improves the user experience by clearly indicating when re-authentication is needed instead of showing confusing empty results. Fixes the issue where 'nlm sources <id>' would show empty table when Google's short-lived tokens expired. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
The GetProject API response has an extra level of nesting that was preventing sources from being displayed. This fix unwraps the nested array structure in beprotojson for Project messages, allowing all 39 sources to display correctly in 'nlm sources <id>' command. Changes: - Add special handling in beprotojson for Project message array unwrapping - Remove temporary auth check that was masking the real parsing issue - Add debug output for GetProject API responses (debug mode only) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
03eacf6 to
8238f17
Compare
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
Fixes the sources listing bug where
nlm sources <id>displayed empty table despite API returning valid data.Root Cause
GetProject API response has extra nesting level
[[[sources...]]]instead of expected[[sources...]], causing beprotojson parser to fail when unmarshaling Project messages.Solution
This PR includes two related commits:
Changes
Verification
nlm list- continues working normallynlm sources <id>- now displays all sources correctly with full detailsTest Results
Before: Empty sources table
After: Complete sources listing with ID, title, type, status, and timestamps (39 sources displayed correctly)
🤖 Generated with Claude Code