Fix Docker Compose CORS issues with nginx API proxying (#793)

* Changes from fix/docker-compose-cors-error

* Update apps/server/src/index.ts

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* Fix: Delete Worktree Crash + PR Comments + Dev Server UX Improvements (#792)

* Changes from fix/delete-worktree-hotifx

* fix: Improve bot detection and prevent UI overflow issues

- Include GitHub app-initiated comments in bot detection
- Wrap handleQuickCreateSession with useCallback to fix dependency issues
- Truncate long branch names in agent header to prevent layout overflow

* feat: Support GitHub App comments in PR review and fix session filtering

* feat: Return invalidation result from delete session handler

* fix: Improve CORS origin validation to handle wildcard correctly

* fix: Correct IPv6 localhost parsing and improve responsive UI layouts

* Changes from fix/pwa-cache-fix (#794)

* fix: Add type checking to prevent crashes from malformed cache entries

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
This commit is contained in:
gsxdsm
2026-02-21 13:56:48 -08:00
committed by GitHub
parent f785f1204b
commit 28becb177b
11 changed files with 100 additions and 53 deletions

View File

@@ -220,6 +220,7 @@ export function useBoardActions({
const {
initialStatus: requestedStatus,
workMode: _workMode,
childDependencies,
...restFeatureData
} = featureData;
const initialStatus = requestedStatus || 'backlog';
@@ -244,8 +245,8 @@ export function useBoardActions({
saveCategory(featureData.category);
// Handle child dependencies - update other features to depend on this new feature
if (featureData.childDependencies && featureData.childDependencies.length > 0) {
for (const childId of featureData.childDependencies) {
if (childDependencies && childDependencies.length > 0) {
for (const childId of childDependencies) {
const childFeature = features.find((f) => f.id === childId);
if (childFeature) {
const childDeps = childFeature.dependencies || [];

View File

@@ -267,6 +267,13 @@ export function WorktreeActionsDropdown({
};
}, [showPRInfo, worktree.pr]);
const viewDevServerLogsItem = (
<DropdownMenuItem onClick={() => onViewDevServerLogs(worktree)} className="text-xs">
<ScrollText className="w-3.5 h-3.5 mr-2" />
View Dev Server Logs
</DropdownMenuItem>
);
return (
<DropdownMenu onOpenChange={onOpenChange}>
<DropdownMenuTrigger asChild>
@@ -411,12 +418,7 @@ export function WorktreeActionsDropdown({
</DropdownMenuItem>
<DropdownMenuSubTrigger className="text-xs px-1 rounded-l-none border-l border-border/30 h-8" />
</div>
<DropdownMenuSubContent>
<DropdownMenuItem onClick={() => onViewDevServerLogs(worktree)} className="text-xs">
<ScrollText className="w-3.5 h-3.5 mr-2" />
View Dev Server Logs
</DropdownMenuItem>
</DropdownMenuSubContent>
<DropdownMenuSubContent>{viewDevServerLogsItem}</DropdownMenuSubContent>
</DropdownMenuSub>
<DropdownMenuSeparator />
</>
@@ -443,12 +445,7 @@ export function WorktreeActionsDropdown({
disabled={isStartingDevServer}
/>
</div>
<DropdownMenuSubContent>
<DropdownMenuItem onClick={() => onViewDevServerLogs(worktree)} className="text-xs">
<ScrollText className="w-3.5 h-3.5 mr-2" />
View Dev Server Logs
</DropdownMenuItem>
</DropdownMenuSubContent>
<DropdownMenuSubContent>{viewDevServerLogsItem}</DropdownMenuSubContent>
</DropdownMenuSub>
<DropdownMenuSeparator />
</>

View File

@@ -467,8 +467,7 @@ export function useDevServers({ projectPath }: UseDevServersOptions) {
} catch (error) {
logger.error('Start dev server failed:', error);
toast.error('Failed to start dev server', {
description:
error instanceof Error ? error.message : 'Check the dev server logs panel for details.',
description: error instanceof Error ? error.message : undefined,
});
} finally {
setIsStartingDevServer(false);