azurenoops / azurenoops/spin_agent

[BUG] [RMF Overview] - Phase Readiness 'Assign →' button sends boundary chat message instead of role assignment action

Open
#623 2 comments 0 reactions 1 assignee Claimed by @jrspinella View on GitHub
agent:oracle area:rmf bug priority:high
Dominant language
C#
Stars
3
Forks
1
Avg merge
13h 18m
Merged PRs (30d)
60

Description

## Bug Description

The **"Assign →"** button in the Phase Readiness checklist on the system overview page (next to "RMF Roles Assigned") sends the wrong message to the chat panel — it fires `"I need to add resources to my authorization boundary — what should I include?"` instead of opening an RMF role assignment modal or sending a roles-related message. The resulting chat response is **"Error: An error occurred."**

This is distinct from #620 (which covers the chat sidebar quick-action button labeled "👤 Assign RMF roles"). This bug covers the **Phase Readiness checklist → "Assign →" button** on the system detail overview page.

## Steps to Reproduce

1. Navigate to any system overview page (e.g., `/systems/b4d0aca6-cdb1-4630-84ae-df93b2747178`)
2. Find the **"Phase Readiness: Prepare → Categorize"** checklist
3. Locate the **"RMF Roles Assigned"** checklist item — it shows ❌ with an **"Assign →"** button
4. Click **"Assign →"**

## Expected Behavior

Clicking "Assign →" should either:
- Open an RMF role assignment modal/form, OR
- Send a chat message about RMF role assignment (e.g., "Assign RMF roles for this system")

## Actual Behavior

- The chat panel opens/activates
- A message is sent automatically: *"I need to add resources to my authorization boundary — what should I include?"*
- Chat responds with: **"Error: An error occurred."** (Compliance Agent)
- The "Assign →" button label and the resulting chat message are completely unrelated to RMF roles — this appears to be a button-to-action mapping error

## Screenshot

Chat panel shows previous conversation "I need to add resources to my authorization boundary" with error response. The button label reads "Assign →" but maps to boundary resource intent.

## Console Errors

- Recurring SignalR WebSocket race condition: `Failed to start the HttpConnection before stop() was called`
- No new JS errors from this specific interaction

## Browser/Environment

Azure Container Apps Dashboard (flankspeed org-centric v2)
Browser: Chromium (Playwright/Hermes browser)
System: QA Test System 2026-06-25T17:48:00Z (ID: b4d0aca6-cdb1-4630-84ae-df93b2747178)
Date: 2026-07-07
Sweep: Automated 4-hour QA sweep

## Playwright Test Code

```typescript
test('[RMF Overview] Assign button sends correct role-assignment message to chat', async ({ page }) => {
await page.goto('/systems/b4d0aca6-cdb1-4630-84ae-df93b2747178');
// Find the Assign → button in Phase Readiness
const assignBtn = page.locator('text=RMF Roles Assigned').locator('..').locator('button', { hasText: 'Assign →' });
await assignBtn.click();
// Verify correct intent in chat — NOT boundary message
await expect(page.locator('.chat-panel')).toContainText(/role|ISSO|ISSM|assign.*role/i);
await expect(page.locator('.chat-panel')).not.toContainText('authorization boundary');
});
```

## Related Issues

- #620 — "Assign RMF Roles" chat quick-action button (different surface, same root failure)
- #497 — Previous RMF role assignment HTTP 405 failure (now replaced with this silent mismatch)
- #584 — No Person components found in Component Library

*Filed by Oracle — Automated 4-hour QA Sweep 2026-07-07T09:11:00Z*

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.