Files
vibe-kanban/frontend/package.json
Louis Knight-Webb 69cda33532 Agent logs should be collapsable (vibe-kanban) (#451)
* Add collapsible agent log headers

- Make process headers (Setup Script, Coding Agent, Cleanup Script) clickable to hide/show logs
- Add chevron icon with rotation animation to indicate collapsed state
- Filter log entries to hide those from collapsed processes while preserving virtualization
- Maintain scroll position and follow-output behavior when toggling collapse
- Support keyboard navigation (Enter/Space) for accessibility

Amp-Thread: https://ampcode.com/threads/T-f44b0256-de19-45e1-96cb-df755553716d
Co-authored-by: Amp <amp@ampcode.com>

* Cleanup script changes for task attempt 990e23da-53ff-4203-ac58-f5b28653bc1f

* Commit changes from coding agent for task attempt 990e23da-53ff-4203-ac58-f5b28653bc1f

* Cleanup (and adjust lint)

* Enhance agent log collapsibility with auto-hide and dev server filtering

- Filter dev server processes from logs tab to reduce noise
- Auto-collapse completed setup/cleanup scripts on initial load for cleaner UX
- Auto-expand scripts that restart after completion
- Add process constants for type safety and consistency
- Separate auto-collapsed and user-collapsed state management
- Maintain scroll position and user preferences throughout

Amp-Thread: https://ampcode.com/threads/T-f44b0256-de19-45e1-96cb-df755553716d
Co-authored-by: Amp <amp@ampcode.com>

* Cleanup script changes for task attempt 990e23da-53ff-4203-ac58-f5b28653bc1f

* Add coding agent auto-collapse for cleaner log focus

- Auto-collapse all non-latest coding agents on task load for focused viewing
- Detect new coding agent starts (follow-ups) and collapse previous agents
- Latest coding agent always remains expanded for active monitoring
- Robust latest agent detection with timestamp tie-breaking
- One-shot initial collapse prevents duplicate processing
- Smart follow-up detection tracks new running agents
- User manual toggles permanently override auto-collapse behavior
- Comprehensive state reset on attempt changes

Amp-Thread: https://ampcode.com/threads/T-f44b0256-de19-45e1-96cb-df755553716d
Co-authored-by: Amp <amp@ampcode.com>

* Cleanup script changes for task attempt 990e23da-53ff-4203-ac58-f5b28653bc1f

* Fix timing issue with coding agent auto-collapse

- Only mark initial collapse as complete when coding agents are actually processed
- Prevents race condition where flag was set before real data arrived
- Ensures auto-collapse logic runs after data loads, not during empty state
- Fixes issue where all coding agents remained expanded instead of latest-only

Amp-Thread: https://ampcode.com/threads/T-f44b0256-de19-45e1-96cb-df755553716d
Co-authored-by: Amp <amp@ampcode.com>

* Cleanup script changes for task attempt 990e23da-53ff-4203-ac58-f5b28653bc1f

* refactor

* lints

* prettier

---------

Co-authored-by: Amp <amp@ampcode.com>
2025-08-11 23:52:32 +01:00

71 lines
2.3 KiB
JSON

{
"name": "vibe-kanban",
"private": true,
"version": "0.0.55",
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc && vite build",
"check": "tsc --noEmit",
"preview": "vite preview",
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 100",
"lint:fix": "eslint . --ext ts,tsx --fix",
"format": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css,md}\"",
"format:check": "prettier --check \"src/**/*.{ts,tsx,js,jsx,json,css,md}\""
},
"dependencies": {
"@dnd-kit/core": "^6.3.1",
"@dnd-kit/modifiers": "^9.0.0",
"@git-diff-view/file": "^0.0.30",
"@git-diff-view/react": "^0.0.30",
"@microsoft/fetch-event-source": "^2.0.1",
"@radix-ui/react-dropdown-menu": "^2.1.15",
"@radix-ui/react-label": "^2.1.7",
"@radix-ui/react-portal": "^1.1.9",
"@radix-ui/react-select": "^2.2.5",
"@radix-ui/react-separator": "^1.1.7",
"@radix-ui/react-slot": "^1.2.3",
"@radix-ui/react-tabs": "^1.1.12",
"@radix-ui/react-tooltip": "^1.2.7",
"@sentry/react": "^9.34.0",
"@sentry/vite-plugin": "^3.5.0",
"@tailwindcss/typography": "^0.5.16",
"@types/react-window": "^1.8.8",
"class-variance-authority": "^0.7.0",
"click-to-react-component": "^1.1.2",
"clsx": "^2.0.0",
"diff": "^8.0.2",
"lucide-react": "^0.303.0",
"react": "^18.2.0",
"react-diff-viewer-continued": "^3.4.0",
"react-dom": "^18.2.0",
"react-markdown": "^10.1.0",
"react-router-dom": "^6.8.1",
"react-use-measure": "^2.1.7",
"react-virtuoso": "^4.13.0",
"react-window": "^1.8.11",
"rfc6902": "^5.1.2",
"tailwind-merge": "^2.2.0",
"tailwindcss-animate": "^1.0.7"
},
"devDependencies": {
"@types/react": "^18.2.43",
"@types/react-dom": "^18.2.17",
"@typescript-eslint/eslint-plugin": "^6.21.0",
"@typescript-eslint/parser": "^6.21.0",
"@vitejs/plugin-react": "^4.2.1",
"autoprefixer": "^10.4.16",
"eslint": "^8.55.0",
"eslint-config-prettier": "^10.1.5",
"eslint-plugin-prettier": "^5.5.0",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.5",
"eslint-plugin-unused-imports": "^4.1.4",
"postcss": "^8.4.32",
"prettier": "^3.6.1",
"tailwindcss": "^3.4.0",
"typescript": "^5.2.2",
"vite": "^5.0.8"
}
}