Skip to content

Conversation

@hannesrudolph
Copy link
Collaborator

Implements an indexing status badge in the chat view that displays the current status of codebase indexing.

The badge provides you with real-time feedback on indexing progress and errors without needing to navigate to the settings page.

Key changes:

  • Created IndexingStatusBadge.tsx: A new component to display the badge.
    • Shows "Indexing X%" with a yellow pulsing dot for active indexing.
    • Shows "Indexing Error" with a red dot for errors.
    • Hidden for "Standby" or successful "Indexed" states.
    • Clicking the badge navigates you to the Codebase Indexing settings.
  • Integrated IndexingStatusBadge into ChatView.tsx:
    • ChatView now listens for indexingStatusUpdate messages from the extension.
    • The badge is rendered in the bottom-right corner of the chat view.
  • Added i18n translations for new badge text.
  • Added unit tests for IndexingStatusBadge and integration tests in ChatView.test.tsx to ensure correct behavior and visibility based on indexing status.

Related GitHub Issue

Closes: #

Description

Test Procedure

Type of Change

  • 🐛 Bug Fix: Non-breaking change that fixes an issue.
  • New Feature: Non-breaking change that adds functionality.
  • 💥 Breaking Change: Fix or feature that would cause existing functionality to not work as expected.
  • ♻️ Refactor: Code change that neither fixes a bug nor adds a feature.
  • 💅 Style: Changes that do not affect the meaning of the code (white-space, formatting, etc.).
  • 📚 Documentation: Updates to documentation files.
  • ⚙️ Build/CI: Changes to the build process or CI configuration.
  • 🧹 Chore: Other changes that don't modify src or test files.

Pre-Submission Checklist

  • Issue Linked: This PR is linked to an approved GitHub Issue (see "Related GitHub Issue" above).
  • Scope: My changes are focused on the linked issue (one major feature/fix per PR).
  • Self-Review: I have performed a thorough self-review of my code.
  • Code Quality:
    • My code adheres to the project's style guidelines.
    • There are no new linting errors or warnings (npm run lint).
    • All debug code (e.g., console.log) has been removed.
  • Testing:
    • New and/or updated tests have been added to cover my changes.
    • All tests pass locally (npm test).
    • The application builds successfully with my changes.
  • Branch Hygiene: My branch is up-to-date (rebased) with the main branch.
  • Documentation Impact: I have considered if my changes require documentation updates (see "Documentation Updates" section below).
  • Changeset: A changeset has been created using npm run changeset if this PR includes user-facing changes or dependency updates.
  • Contribution Guidelines: I have read and agree to the Contributor Guidelines.

Screenshots / Videos

Documentation Updates

Additional Notes

Get in Touch

Implements an indexing status badge in the chat view that displays the current status of codebase indexing.

The badge provides you with real-time feedback on indexing progress and errors without needing to navigate to the settings page.

Key changes:
- Created `IndexingStatusBadge.tsx`: A new component to display the badge.
    - Shows "Indexing X%" with a yellow pulsing dot for active indexing.
    - Shows "Indexing Error" with a red dot for errors.
    - Hidden for "Standby" or successful "Indexed" states.
    - Clicking the badge navigates you to the Codebase Indexing settings.
- Integrated `IndexingStatusBadge` into `ChatView.tsx`:
    - `ChatView` now listens for `indexingStatusUpdate` messages from the extension.
    - The badge is rendered in the bottom-right corner of the chat view.
- Added i18n translations for new badge text.
- Added unit tests for `IndexingStatusBadge` and integration tests in `ChatView.test.tsx` to ensure correct behavior and visibility based on indexing status.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants