Troubleshooting

Common issues and solutions for the User Story Coverage Tagging tool.

Table of Contents


Installation Issues

Python Module Not Found

Error:

ImportError: No module named 'requests'
ModuleNotFoundError: No module named 'requests'

Cause: The requests library is not installed.

Solution:

Wrong Python Version

Error:

Cause: Using Python 2.x instead of Python 3.7+

Solution:

Permission Denied

Error:

Cause: No write permissions for output directory or pip installation.

Solution:


Configuration Issues

Settings File Not Found

Error:

Cause: Settings file doesn't exist in current directory.

Solution:

Invalid JSON in Settings

Error:

Cause: Malformed JSON in settings file.

Solution:

Environment Variable JSON Parsing

Error:

Cause: Invalid JSON in environment variable.

Solution:

Missing Required Settings

Error:

Cause: Required configuration missing.

Solution:

Ensure all required fields are present:


Authentication Issues

SeaLights API Token Invalid

Error:

Cause: Invalid or expired API token.

Solution:

  1. Generate new token in SeaLights web UI

  2. Update settings or environment variable:

Jira Authentication Failed

Error:

Cause: Invalid credentials or insufficient permissions.

Solution:

For Jira Cloud:

For Jira On-Prem:

Check Permissions:

  • User must have read access to projects in JQL

  • API token must not be expired

GitHub Token Invalid

Error:

Cause: Invalid GitHub personal access token.

Solution:

  1. Generate new token at https://github.com/settings/tokens

  2. Required scopes: repo (or public_repo for public repos only)

  3. Update settings:

Azure DevOps PAT Expired

Error:

Cause: PAT token expired or invalid.

Solution:

  1. Generate new PAT in ADO web UI

  2. Required permissions:

    • Work Items: Read

    • Extension Data: Read & Write (for plugin)

  3. Update authorization:


Tagging Issues

No PRs Found

Error:

Cause: No PRs in specified time range or repo name mismatch.

Solution:

Ticket ID Not Extracted

Error/Warning:

Cause: Regex pattern doesn't match PR title/commit message.

Solution:

Test and fix regex pattern:

Common Patterns:

  • Jira: [A-Z]+-[0-9]+

  • GitHub Issues: #[0-9]+

  • ADO: [0-9]+

  • Multiple: (PROJ|FEAT|BUG)-[0-9]+

Git Clone/Pull Failed

Note: This only applies if using US_SRC_tag_repos_by_history.py (git-based tagging). If using SeaLights auto-tagging or GitHub PR-based tagging, git is not needed.

Error:

Cause: Git authentication not configured for repository cloning.

Solution:

For SSH:

For HTTPS with token:

App/Branch Not Found in SeaLights

Error:

Cause: Application or branch name doesn't exist in SeaLights.

Solution:


Report Generation Issues

No Tickets Found

Error:

Cause: JQL/WIQL returns no results.

Solution:

Test query in web UI:

  • Jira: Issues → Search → Advanced

  • ADO: Boards → Queries

Failed to Create Coverage Report

Error:

Cause: No builds found matching app/branch in specified time range.

Solution:

Report Timeout

Error:

Cause: Report generation taking too long.

Solution:

No Coverage Data in Reports

Symptom: Reports generated but show 0% coverage for all tickets.

Cause: Code hasn't been tagged yet, or ticket IDs don't match tags.

Solution:

Missing ReportInfo Files

Error:

Cause: US1 script didn't run or failed.

Solution:


API Issues

SSL Certificate Verification Failed

Error:

Cause: Self-signed certificates or corporate proxy.

Solution:

Temporary (not recommended for production):

Proper solution:

Rate Limiting

Error:

Cause: Too many API requests to GitHub/Jira/ADO.

Solution:

Connection Timeout

Error:

Cause: Network issues or slow API.

Solution:


Performance Issues

Slow Tagging

Symptom: Tagging takes hours for large repositories.

Solution:

Memory Issues

Symptom: Script crashes with MemoryError or system becomes unresponsive.

Solution:

Slow Report Generation

Symptom: US1 script runs for hours.

Solution:


Debugging Tips

Enable Debug Logging

Check API Responses

Validate Configuration

Test Regex Patterns


Getting Help

If issues persist:

  1. Check logs - Review full error messages and stack traces

  2. Verify configuration - Ensure all required fields are correct

  3. Test APIs directly - Use curl to test authentication and connectivity

  4. Enable debug mode - Use --log-level DEBUG for detailed output

  5. Check documentation - Review Configuration and Examples

  6. Simplify - Test with minimal configuration first, then add complexity

Common Root Causes:

  • Authentication/credentials

  • Network/firewall/proxy

  • Name mismatches (case-sensitive)

  • Regex patterns

  • Time range too narrow

  • Missing data in source systems


Next Steps

Last updated

Was this helpful?