Description
The following bugs have been identified during codebase analysis:
-
Persistent Input Field Bug (Storage Fallback Failure)
In src/scripts/scrumHelper.js, when a user manually clears project name or access tokens from the extension UI, the logic incorrectly falls back to the previously stored value, making it impossible to delete or clear these inputs once set.
-
Broken Platform-Specific Report Cache
In src/scripts/scrumHelper.js, the report writer only sets a generic lastScrumReportHtml cache key, instead of the expected platform-specific keys (githubLastScrumReportHtml / gitlabLastScrumReportHtml), breaking caching isolation when switching platforms.
-
Unauthenticated Org Validation on GitHub
In src/scripts/githubHelper.js, the validateOrgOnBlur function validates organization existence using an unauthenticated API call. This results in stricter rate limits and fails to validate private organizations (returning 404).
-
Excessive Disk I/O & Storage Throttling
In src/scripts/main.js, event listeners are saving values to chrome.storage.local on every keyup event, causing high I/O overhead and potential storage API rate-limiting errors.
-
Rust Tutorial Code Mismatch (src/main.rs)
The --count argument is registered as a string option but is being mistakenly parsed as a positional argument, leading to errors.
Solution
- Fixed logic in
scrumHelper.js to correctly check if DOM inputs exist and set values directly.
- Updated
scrumHelper.js to save platform-specific cache keys.
- Updated
githubHelper.js to include the GitHub Token in the Authorization header during org validation.
- Changed
keyup events to change / blur events in main.js.
- Fixed the
--count argument parsing logic in src/main.rs.
Description
The following bugs have been identified during codebase analysis:
Persistent Input Field Bug (Storage Fallback Failure)
In
src/scripts/scrumHelper.js, when a user manually clears project name or access tokens from the extension UI, the logic incorrectly falls back to the previously stored value, making it impossible to delete or clear these inputs once set.Broken Platform-Specific Report Cache
In
src/scripts/scrumHelper.js, the report writer only sets a genericlastScrumReportHtmlcache key, instead of the expected platform-specific keys (githubLastScrumReportHtml/gitlabLastScrumReportHtml), breaking caching isolation when switching platforms.Unauthenticated Org Validation on GitHub
In
src/scripts/githubHelper.js, thevalidateOrgOnBlurfunction validates organization existence using an unauthenticated API call. This results in stricter rate limits and fails to validate private organizations (returning 404).Excessive Disk I/O & Storage Throttling
In
src/scripts/main.js, event listeners are saving values tochrome.storage.localon everykeyupevent, causing high I/O overhead and potential storage API rate-limiting errors.Rust Tutorial Code Mismatch (src/main.rs)
The
--countargument is registered as a string option but is being mistakenly parsed as a positional argument, leading to errors.Solution
scrumHelper.jsto correctly check if DOM inputs exist and set values directly.scrumHelper.jsto save platform-specific cache keys.githubHelper.jsto include the GitHub Token in the Authorization header during org validation.keyupevents tochange/blurevents inmain.js.--countargument parsing logic insrc/main.rs.