Skip to content

feat: follow-up question chips + dashboard auto-refresh - #29

Merged
AhmadHammad21 merged 1 commit into
mainfrom
feat/follow-up-questions-dashboard-refresh
May 11, 2026
Merged

AhmadHammad21 merged 1 commit into
mainfrom
feat/follow-up-questions-dashboard-refresh

Conversation

@AhmadHammad21

@AhmadHammad21 AhmadHammad21 commented May 11, 2026 •

Copy link
Copy Markdown
Owner

Summary

Also includes doc and CLAUDE.md updates carried over from the previous PR (sidebar rename/delete, font description, auto-refresh note).

Changes

Backend

  • src/tools/final_answer.py — add follow_up_questions: list[str] parameter to submit_investigation
  • src/api/routers/chat.py — extract follow-up questions from tool_calls_log after stream ends; include in done SSE event as follow_up_questions

Frontend

  • frontend/src/pages/ChatPage.tsx — followUpQuestions state; populate from done event; render pill chips above InputArea; clear on new send
  • frontend/src/pages/DashboardPage.tsx — wrap fetch in load(), call on mount and every 30s via setInterval; return cleanup

Docs

  • docs/ui.md — follow-up chips, auto-refresh, sidebar three-dot menu (rename + delete), corrected font description
  • CLAUDE.md — sidebar description updated; font attribution removed

Test plan

Follow-up questions (#17)

  • Run an investigation to completion (any prompt that triggers submit_investigation)
  • Verify 3 chips appear above the input box after the done event
  • Click a chip — it sends the question as a new message and chips disappear
  • Type and send a manual message while chips are visible — chips clear immediately
  • If the agent does not call submit_investigation (e.g. a bare ask that just replies), verify no chips appear

Dashboard auto-refresh (#20)

  • Open the dashboard and note current session count
  • In another tab, run a new investigation
  • Wait up to 30s — dashboard session count should update without a manual reload
  • Navigate away from the dashboard and back — no stale intervals accumulating (check browser DevTools Network tab for duplicate requests)

Docs

  • No mention of "Linear" anywhere in docs/ or CLAUDE.md

…loses #20)

Follow-up questions (#17):
- Add follow_up_questions: list[str] to submit_investigation tool schema; generated
  by the agent in the same final call at zero extra LLM cost
- Extract questions from tool_calls_log in chat.py and include in the done SSE event
- Render up to 3 clickable chips above the input box after investigation completes;
  clicking a chip sends it immediately and clears the chips

Dashboard auto-refresh (#20):
- Extract fetch into a named function and call it on a 30s setInterval with cleanup
  on unmount; silent background refresh (no spinner on subsequent loads)

Docs:
- docs/ui.md: follow-up chips, dashboard auto-refresh, sidebar rename/delete menu,
  corrected font stack description
- CLAUDE.md: sidebar now documents rename + portal dropdown; remove stray attribution
  from font descriptions; note follow-up questions in chat page features
@AhmadHammad21
AhmadHammad21 merged commit 37860fe into main May 11, 2026
2 checks passed
@AhmadHammad21
AhmadHammad21 deleted the feat/follow-up-questions-dashboard-refresh branch May 11, 2026 23:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: auto-refresh dashboard stats every 30s feat: follow-up question suggestions after each investigation

1 participant