Commit Graph

14 Commits

Author SHA1 Message Date
Mohamed Boudra
9966e49329 Key workspace status and ownership by ID, not directory
Multiple workspaces can share one checkout directory. Agent and terminal
status, sidebar tabs, and ownership now attribute strictly by workspace ID,
so a running or blocked agent in one workspace no longer shows up on its
same-directory siblings.

A one-time startup migration backfills workspace IDs onto legacy agents, and
every agent and terminal is created with one thereafter. Directory lookups
remain only for genuinely folder-derived git facts (branch, diff) and the
archive-by-path adapter.
2026-06-16 13:37:58 +07:00
Matteo Pietro Dazzi
e58ea31d6d chore: upgrade vitest (#1091)
* chore: upgrade vitest

* chore: sync lock
2026-05-20 12:14:13 +00:00
Mohamed Boudra
345729c588 refactor: eliminate getCheckoutStatusLite, use WorkspaceGitService
Route all git checkout queries through WorkspaceGitService instead of
shelling out to git on every call. This makes fetch_agents_request
instant when warm (cached in-memory snapshots) and deduplicates
concurrent cold-start refreshes via ensureWorkspaceTarget.

- buildProjectPlacementForCwd now uses workspaceGitService.getSnapshot()
- worktree-session call sites use WorkspaceGitService
- Deleted getCheckoutStatusLite and its 4 return types from checkout-git
- Fixed cold-start thundering herd: getSnapshot deduplicates via
  ensureWorkspaceTarget instead of spawning parallel git processes
- Extracted checkout-diff logic into WorkspaceGitService
2026-04-14 19:05:36 +07:00
Mohamed Boudra
a060ae1256 test: harden daemon lifecycle and e2e reliability across app/cli/server 2026-02-25 10:21:46 +07:00
Mohamed Boudra
45096acdcb fix(server): increase hookTimeout and fix ClaudeAgentClient constructor
- Increase vitest hookTimeout from 30s to 60s to prevent hook timeouts
  in e2e tests that need time to start daemon instances
- Add `**/dist/**` to excludes to avoid running compiled test files
- Fix ClaudeAgentClient constructor call in claude-agent-commands.test.ts
  to pass required logger option
2026-01-17 13:09:42 +07:00
Mohamed Boudra
1c9d9367c1 fix(server): remove CI-based test exclusions from vitest config
Enable full server test suite (including e2e and integration tests) to
run in CI. Removed conditional exclude logic based on CI env var.

The suite now runs the same tests in CI and locally, maintaining
parallel execution support via forks pool.
2026-01-17 12:07:00 +07:00
Mohamed Boudra
86ea9966fc test: exclude claude-agent test in CI 2026-01-14 19:47:09 +07:00
Mohamed Boudra
b6ab9f3bc1 test: exclude more integration tests in CI 2026-01-14 19:44:33 +07:00
Mohamed Boudra
1cbe185ac5 test: exclude e2e and integration tests in CI 2026-01-14 19:42:46 +07:00
Mohamed Boudra
2fa7ec17cb WIP: Refactor and polyfill updates
- Add crypto polyfill for Expo
- Update daemon client and websocket server
- Simplify codex agent tests
2026-01-13 11:06:21 +07:00
Mohamed Boudra
868f9fb571 WIP: Large refactor checkpoint
- Refactored daemon client and RPC layer
- Added new client package structure in server
- Removed legacy hooks (use-daemon-request, use-session-rpc, use-websocket)
- Added use-daemon-client hook
- Added e2e test infrastructure with Playwright
- Updated agent providers and session handling
- Removed codex-sdk patches
2026-01-12 13:30:20 +07:00
Mohamed Boudra
edcfdf970d refactor(ui): extract diff viewer and tool call parsers into reusable components 2025-11-15 16:28:57 +01:00
Mohamed Boudra
086dde30cc feat(agent): add git diff viewer and improve permission handling
- Add git diff viewer screen accessible via agent dropdown menu
- Implement git_diff_request/response WebSocket messages
- Add dropdown menu to agent screen header with "View Changes" option
- Clear pending permissions when starting new agent turn to prevent conflicts
- Treat agent refusals as completed rather than failed state
- Add test coverage for permission handling edge cases
- Configure vitest to run in single-threaded mode for stability
- Remove redundant wrapper in agent stream view

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-26 22:19:16 +01:00
Mohamed Boudra
e646f410be Prompt is too long 2025-10-22 09:06:18 +02:00