Chapter 10Lesson 04~110 minutes

Issues, Statuses, Assignments, False Positives, and Resolution Workflow: Diagnostics, Failure Modes, and Production Practices

Diagnose issue-workflow failures causally, preserving source, scanner, Compute Engine, permission, issue-history, policy, and gate evidence before correction.

DiagnosticsFailure modesEvidenceBulk changesProduction practice

Learning objectives

  • Diagnose issue workflow failures without deleting evidence or mutating unrelated policy.
  • Separate analysis lifecycle failures from issue-management and permission failures.
  • Recover from inappropriate bulk Accepted/False positive actions by reopening and re-triaging.
  • Distinguish SCM routing mistakes from ownership-policy mistakes.
  • Preserve first-failure evidence before retry, restart, deletion, or suppression.

1. Evidence-first diagnostic sequence

  1. Preserve scanner log, report-task.txt, issue/Activity evidence, and current gate.
  2. Confirm SonarQube edition/version, scanner, analyzers/plugins, and instance mode.
  3. Confirm exact Git revision and effective analysis parameters.
  4. Confirm indexed files and report upload.
  5. Confirm the exact Compute Engine task.
  6. Inspect issue key, rule/profile, status, assignee, comments/tags, and new-code context.
  7. Inspect authorization only when the symptom is a missing/failed workflow action.
  8. Inspect database/search/JVM/container layers only if evidence points there.
  9. Apply the least destructive correction and rerun the smallest equivalent scenario.

2. Failure matrix

Symptom Owning layer Evidence first Safer correction
All findings marked False positive to green the gate Governance/workflow Activity + same SHA + gate before/after Reopen; review source/profile/scope
“Resolved” assumed to mean code fixed Legacy mental model current status + Git diff + reanalysis Use current lifecycle; let analysis establish Fixed
Wrong engineer repeatedly assigned SCM correlation/ownership author/assignee + blame/user mapping Reassign; improve ownership policy
Issue vanished after source suppression Source/pre-analysis suppression diff + suppression marker + scanner evidence Remove broad suppression unless justified
External issue changed only in SonarQube Integration boundary Sonar Activity vs external state Reconcile in authoritative tool

3. Broken example: mass acceptance without review

Assume a lab operator filters all Open findings and bulk-Accepts them solely because the gate is red. Do not delete or rerun yet. Preserve the exact filter, count, Activity history, unchanged Git SHA, gate/measures before/after, and user/permission that performed the action.

Repair by reopening, then partitioning the issues by real cause: source fix, valid deferral, analyzer mistake, profile/scope mismatch, or ownership routing. The original bad action should remain visible in Activity; that is useful audit evidence.

4. Permission failure is not an analyzer failure

If a user can view an issue but cannot Accepted/False-positive it, inspect project authorization first. These actions require Administer Issues. Do not rerun scanners, change profiles, or use a global administrator token to work around an authorization symptom.

For API failures, preserve HTTP status/body and consult the current instance API documentation; the cause may be auth, permission, method/path mismatch, or deprecation.

5. “I fixed it” but the issue is still Open

Possible causes include: wrong revision scanned; wrong base directory/indexed file; the rule still detects an equivalent pattern; report uploaded but Compute Engine failed; wrong branch/project key; or an external analyzer still imports the finding. Trace revision → effective parameters → indexing → task → issue identity before touching workflow status.

6. Suppression shortcuts destroy future signal

Broad suppression can make findings disappear before normal issue workflow. Treat //NOSONAR and language suppressions as source/configuration changes with code-review impact. Never recommend mass suppression, rule deactivation, or threshold lowering as a troubleshooting shortcut.

7. Project deletion is not issue cleanup

Deleting a project destroys the history needed to explain the signal. In production it is a destructive administrative action, not a remediation technique. In this course it is allowed only as guarded cleanup of a uniquely named lab project after the evidence packet is safely preserved.

8. Production remediation record

A mature record lets another engineer reconstruct the analyzed revision, issue/rule, original status, owner, source diff or disposition rationale, reanalysis task, final status, and gate effect. That causal chain is more useful than a screenshot of a green dashboard.

Knowledge check

Gate becomes green after bulk Accepted with no new commit. What changed?

Code changed but issue remains Open. What first?

Why should permission error not trigger scanner rerun?

Why is project deletion bad issue cleanup?

What if one rule creates widespread false positives?

Next lesson

Package the lifecycle into an auditable checkpoint

Lesson 5 combines baseline evidence, explicit ownership, one real code fix, one justified workflow decision, reanalysis, rollback, credential cleanup, and handoff to quality gates.

Official references and version notes

Version and compatibility note

Rechecked 2026-09-07. Mandatory examples target SonarQube Community Build 26.9.0.129388 (released 2026-09-03) and SonarScanner CLI 8.1.0.6389 (released 2026-04-21). Current Community Build issue workflow uses Open, Accepted, False positive, and automatically determined Fixed. Older tutorials may show deprecated Confirmed/Resolved/Closed or resolution fields; those are not taught as current statuses. No commercial feature, Data Center, SonarQube Cloud, AI CodeFix, enterprise identity, external provider, paid CI, or third-party plugin is required.

Keep the academy open

Support free, practical DevOps education.

Every lesson is designed to remain readable in a browser, downloadable from GitHub, and usable without a paid learning platform. Contributions help expand and maintain the curriculum.

Ethereum / ERC-20
0x716c4Ab160C4B66F31a28AE2448BfF68fc3a2ef0Send only Ethereum/ERC-20 compatible assets to this address.