Commit Graph

14 Commits

Author SHA1 Message Date
Rasmus Widing
ec79f86652 fix: resolve task jumping and optimistic update issues
- Fix polling feedback loop by removing tasks from useEffect deps
- Increase polling intervals to 8s (tasks) and 10s (projects)
- Clean up dead code in DraggableTaskCard and TaskBoardView
- Remove unused imports and debug logging
- Improve task comparison logic for better polling efficiency

Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-01 18:12:28 +03:00
Rasmus Widing
c41eefb110 fix: add force parameter to task count loader and remove temp-ID filtering
- Add optional force parameter to loadTaskCountsForAllProjects to bypass cache
- Remove legacy temp-ID filtering that prevented some projects from getting counts
- Force refresh task counts immediately when tasks change (bypass 5-min cache)
- Keep cache for regular polling to reduce API calls
- Ensure all projects get task counts regardless of ID format
2025-09-01 15:47:43 +03:00
Rasmus Widing
ce4183d33f Fix documentation accuracy issues identified by CodeRabbit
- Update API parameter names from generic {id} to descriptive names ({project_id}, {task_id}, etc.)
- Fix usePolling hook documentation to match actual (url, options) signature
- Remove false exponential backoff claim from polling features
- Add production considerations section to optimistic updates pattern
- Correct hook name from useProgressPolling to useCrawlProgressPolling
- Remove references to non-existent endpoints

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 14:13:09 +03:00
Rasmus Widing
33d95cb449 Add optimistic_updates.md documenting desired future pattern
Created a simple, pragmatic guide for implementing optimistic updates
when needed in the future. Focuses on KISS principles with straightforward
save-update-rollback pattern. Clearly marked as future state, not current.

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 10:50:48 +03:00
Rasmus Widing
2e2fdee2d9 Remove unused optimistic updates code and references
Deleted unused useOptimisticUpdates.ts hook that was never imported.
Removed optimistic update references from documentation since we don't
have a consolidated pattern for it. Current approach is simpler direct
state updates followed by API calls.

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 10:49:19 +03:00
Rasmus Widing
1f1dc4ac41 Update API_NAMING_CONVENTIONS.md to reflect current state
Updated progress endpoints to match actual implementation.
Removed migration/historical references and anti-patterns section.
Focused on current best practices and architecture patterns.

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 10:46:51 +03:00
Rasmus Widing
6c5a597412 Update POLLING_ARCHITECTURE.md to reflect current state
Removed references to deleted files (progressService.ts,
projectCreationProgressService.ts, ProjectCreationProgressCard.tsx).
Updated to document what exists now rather than migration history.

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 10:45:29 +03:00
Rasmus Widing
346a1cf017 Fix documentation accuracy in API conventions and architecture docs
- Fix API_NAMING_CONVENTIONS.md: Changed 'documents' to 'docs' and used
  distinct placeholders ({project_id} and {doc_id}) to match actual API routes
- Fix POLLING_ARCHITECTURE.md: Updated import path to use relative import
  (from ..utils.etag_utils) to match actual code structure
- ARCHITECTURE.md: List formatting was already correct, no changes needed

These changes ensure documentation accurately reflects the actual codebase.
2025-08-28 16:59:01 +03:00
Rasmus Widing
2e4e5fa7e3 Document ETag implementation and limitations
- Add concise documentation explaining current ETag implementation
- Document that we use simple equality check, not full RFC 7232
- Clarify this works for our browser-to-API use case
- Note limitations for future CDN/proxy support

Addresses Code Rabbit feedback about RFC compliance by documenting
the known limitations of our simplified implementation.

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 15:13:38 +03:00
Rasmus Widing
41793221c8 docs: Add comprehensive API naming conventions guide
Created naming standards documentation covering:
- Service method naming patterns
- API endpoint conventions
- Component and hook naming
- State variable naming
- Type definitions
- Common patterns and anti-patterns
- Migration notes from Socket.IO
2025-08-28 10:52:13 +03:00
Rasmus Widing
7283b79b12 docs: Add comprehensive polling architecture documentation
Created developer guide explaining:
- Core polling components and hooks
- ETag caching implementation
- State management patterns
- Migration from Socket.IO
- Performance optimizations
- Developer guidelines and best practices
2025-08-28 10:48:32 +03:00
Rasmus Widing
595907a2e9 refactor: Remove Socket.IO and consolidate task status naming
Major refactoring to simplify the architecture:

1. Socket.IO Removal:
   - Removed all Socket.IO dependencies and code (~4,256 lines)
   - Replaced with HTTP polling for real-time updates
   - Added new polling hooks (usePolling, useDatabaseMutation, etc.)
   - Removed socket services and handlers

2. Status Consolidation:
   - Removed UI/DB status mapping layer
   - Using database values directly (todo, doing, review, done)
   - Removed obsolete status types and mapping functions
   - Updated all components to use database status values

3. Simplified Architecture:
   - Cleaner separation between frontend and backend
   - Reduced complexity in state management
   - More maintainable codebase

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 10:34:38 +03:00
Wirasm
bb574598f3 Add PRP story task template and reorganize PRP commands (#508)
* Reorganize PRP commands and add story task template

- Move PRP commands to dedicated subdirectories
- Add new agent definitions for codebase analysis and library research
- Create story task PRP template for user story implementation
- Rename prp-base.md to prp_base.md for consistency

* Update .claude/agents/library-researcher.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update .claude/commands/prp-claude-code/prp-story-task-create.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update .claude/commands/prp-claude-code/prp-story-task-create.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update PRPs/templates/prp_story_task.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update PRPs/templates/prp_story_task.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-27 14:10:25 +03:00
Cole Medin
59084036f6 The New Archon (Beta) - The Operating System for AI Coding Assistants! 2025-08-13 07:58:24 -05:00