azurenoops / azurenoops/spin_agent
[BUG] [Gap Analysis] - Dashboard UI shows 'endpoint may not be configured yet' -- gap analysis page broken at UI layer
- Dominant language
- C#
- Stars
- 3
- Forks
- 2
- Avg merge
- 11h 2m
- Merged PRs (30d)
- 65
Description
## Bug Description
The **Gap Analysis** dashboard page for Coastal Watch displays:
> "No gap analysis data available. The endpoint may not be configured yet."
This is a **UI-layer failure** distinct from the MCP tool-level issue tracked in #536. The dashboard Gap Analysis page cannot fetch or display gap data for any system in the Prepare phase — the endpoint appears either unconfigured or returning an error that the UI surface as "not configured."
## Steps to Reproduce
1. Navigate to `https://ca-ato-copilot-dashboard-v2.blackwater-9393aa1a.centralus.azurecontainerapps.io/systems/92afdc15-bc6f-4648-8073-ad6af396cf97/gap-analysis`
2. Observe the page content
## Expected Behavior
Gap Analysis page shows controls with missing narratives, evidence gaps, or failing findings — with options to prioritize remediation. Should list controls that need attention.
## Actual Behavior
Page renders the heading "Gap Analysis" but main content shows:
> "No gap analysis data available. The endpoint may not be configured yet."
A "Retry" link appears but clicking it produces the same error.
## Screenshot
Gap Analysis page showing "endpoint may not be configured yet" error.
## Console Errors
No JavaScript errors in browser console.
## Related Issues
- #536: `compliance_boundary_gap_analysis` MCP tool also fails but with a different error ("system not found" via MCP API)
- This issue is specifically the Dashboard UI gap analysis endpoint being unreachable/unconfigured
## Browser/Environment
- URL: `https://ca-ato-copilot-dashboard-v2.blackwater-9393aa1a.centralus.azurecontainerapps.io`
- System: Coastal Watch (ID: 92afdc15-bc6f-4648-8073-ad6af396cf97)
- Browser: Chromium (Hermes QA)
- Date: 2026-06-24T03:12:47Z
## Playwright Test Code
```typescript
test('[gap-analysis] Gap Analysis page loads data', async ({ page }) => {
await page.goto('/systems/92afdc15-bc6f-4648-8073-ad6af396cf97/gap-analysis');
await expect(page.getByText('No gap analysis data available')).not.toBeVisible();
await expect(page.locator('[data-testid="gap-analysis-table"]')).toBeVisible();
});
```
*Filed by Oracle — Automated 4-hour QA Sweep 2026-06-24T03:12:47Z*
Contributor guide
Assessment
This issue has not been assessed yet.