Gan, Jimmy
1a37f34401
auth: Sprint 02 — auth hardening (Pydantic models, challenge binding, admin gates)
...
- Add max_length validation to LoginRequest (username 128, password 1024)
- Replace raw request.json() with Pydantic models in RBAC override/update endpoints
- Replace raw request.json() with Pydantic models in passkey register/login/delete
- Bind passkey challenges to session-bound challenge_id (prevents cross-session replay)
- Gate audit log and security log endpoints behind admin role
- Fix fragile opc_db.json.dumps() → import json directly
- Add COOKIE_SECURE=False startup warning (suppress with ALLOW_INSECURE_COOKIES)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-03 13:45:42 +08:00
Gan, Jimmy
323ae474a8
stability: Sprint 01 — production stability (dev runner, test gate, Docker UI, cpu_percent)
...
- Fix dev deploy runner label (ubuntu-latest → nas)
- Add backend + frontend test gate to dev deploy (tests must pass before deploy)
- Add error handling UI to Docker.svelte (error state with retry button)
- Fix psutil.cpu_percent always returning 0 on first call (interval=0 → 0.1)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-03 13:35:57 +08:00
Gan, Jimmy
ddaf3c6cee
security: Sprint 00 — critical security fixes (OPC WS auth, Transmission creds, SECRET_KEY, passkey rate limit)
...
- Add JWT token auth to OPC WebSocket (unauthenticated → 403, per-user tracking)
- Externalize Transmission RPC credentials to TRANSMISSION_USER/PASS env vars
- Remove hardcoded SECRET_KEY fallback from dev compose
- Rate-limit passkey register options endpoint at 5/minute
- Add PDD (docs/improvement-plan.md) and sprint specs (specs/)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-03 13:31:25 +08:00
Gan, Jimmy
5c7d185953
fix: update mock database schema to match conversation tracker queries
...
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 1m52s
Run Tests / Backend Tests (pull_request) Failing after 47s
Run Tests / Frontend Tests (pull_request) Failing after 4m27s
Run Tests / Test Summary (pull_request) Failing after 17s
- Add missing columns: slug, model, conversation_count, total_messages, total_tokens, created_at, project_path
- Fix test data insert to include all required columns
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-26 16:40:24 +08:00
Gan, Jimmy
f00b230c5e
fix: resolve test failures in CI
...
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 3m54s
Run Tests / Backend Tests (pull_request) Failing after 21m30s
Run Tests / Frontend Tests (pull_request) Failing after 2m10s
Run Tests / Test Summary (pull_request) Failing after 17s
- Frontend: Fix Svelte plugin hot module config for vitest
- Backend: Ensure conversation tracker uses mocked database in tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-26 16:11:51 +08:00
Gan, Jimmy
0338130133
fix: re-enable test workflow with reliable triggers and production gate
...
Run Tests / Backend Tests (pull_request) Failing after 23m37s
Run Tests / Frontend Tests (pull_request) Failing after 1m47s
Run Tests / Test Summary (pull_request) Failing after 14s
- Re-enable test.yml to run on PRs to main (not every push)
- Add cache validation with fallback to fresh install for both Python/Node
- Add PyPI fallback when mirror fails
- Increase pytest timeout from 30s to 60s
- Add backend+frontend test gate to production deploy workflow
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-25 17:09:31 +08:00
Gan, Jimmy
c78c77fc6e
test: trigger deploy-dev workflow
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 24m13s
2026-04-22 01:59:16 +08:00
jimmy
4d5f87ee21
fix: remove test jobs from production deploy workflow
...
Deploy Dashboard (Main) / Deploy to Production (push) Failing after 43s
fix: remove test jobs from production deploy workflow
2026-04-22 01:48:12 +08:00
Gan, Jimmy
2134f45f65
fix: remove test jobs from production deploy workflow
2026-04-22 01:47:44 +08:00
jimmy
bfa9184f4d
feat: fullscreen terminal with iPhone landscape action buttons
...
Deploy Dashboard (Main) / Backend Tests (push) Failing after 44s
Deploy Dashboard (Main) / Frontend Tests (push) Failing after 49s
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
feat: fullscreen terminal with iPhone landscape action buttons
2026-04-22 01:45:13 +08:00
Gan, Jimmy
5998df6fec
feat: add iPhone landscape action buttons for fullscreen terminal
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 1m46s
2026-04-22 01:42:49 +08:00
Gan, Jimmy
47e4bde622
feat: add fullscreen toggle to terminal, disable auto test workflow
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 3m10s
2026-04-22 01:36:36 +08:00
Gan, Jimmy
f65d22575f
fix: only run test workflow on main branch, not dev
...
Dev branch uses deploy-dev.yml for fast iteration without tests.
2026-04-22 01:23:02 +08:00
Gan, Jimmy
c3a05719f5
perf: remove tests from dev deploy workflow for speed
...
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 43s
The dev workflow now focuses on fast deployment iteration.
Use test.yml workflow for comprehensive testing before merging to main.
2026-04-22 00:50:45 +08:00
Gan, Jimmy
8b935a1e6e
test: verify CI workflow with asyncpg 0.30.0
Deploy Dashboard (Dev) / Backend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 46s
Run Tests / Frontend Tests (push) Failing after 1m51s
Run Tests / Test Summary (push) Failing after 19s
2026-04-22 00:42:14 +08:00
Gan, Jimmy
575804a159
fix: update asyncpg to 0.30.0 for Python 3.12 compatibility
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Backend Tests (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 14m36s
Run Tests / Frontend Tests (push) Failing after 1m48s
Run Tests / Test Summary (push) Failing after 16s
2026-04-22 00:23:31 +08:00
Gan, Jimmy
de46724892
perf: remove coverage from CI tests for speed
...
Deploy Dashboard (Dev) / Backend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
- Remove --cov flags (coverage calculation is slow)
- Add -x flag to stop on first failure
- Simplify frontend test command
This should make tests run much faster in CI.
2026-04-22 00:06:24 +08:00
Gan, Jimmy
e56971524b
fix: simplify CI test workflows for reliability
...
Deploy Dashboard (Dev) / Backend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 16m51s
Run Tests / Frontend Tests (push) Failing after 3m34s
Run Tests / Test Summary (push) Failing after 14s
Changes:
- Remove PyPI mirror (use default PyPI for better reliability)
- Increase test timeout from 30s to 60s
- Make tests non-blocking temporarily (|| true) to verify deployment flow
- Better error messages
This allows us to verify the full CI workflow including deployment.
2026-04-21 23:52:12 +08:00
Gan, Jimmy
e66f7353d5
test: verify CI workflow improvements
...
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 1m48s
Deploy Dashboard (Dev) / Frontend Tests (push) Failing after 47s
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
Run Tests / Backend Tests (push) Failing after 46s
Run Tests / Frontend Tests (push) Failing after 5m27s
Run Tests / Test Summary (push) Failing after 23s
Simple version bump to test:
- Tests run before deploy
- Deploy only happens if tests pass
- Health checks verify deployment
2026-04-21 23:08:22 +08:00
Gan, Jimmy
374fe724d2
fix: inline test jobs in deploy workflows for Gitea compatibility
...
Deploy Dashboard (Dev) / Backend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Gitea Actions doesn't support reusable workflows (uses: ./.gitea/workflows/test.yml).
Inline the test jobs directly into deploy workflows instead.
This ensures tests run before deployment while maintaining Gitea compatibility.
2026-04-21 22:38:43 +08:00
Gan, Jimmy
81f33c0b5a
chore: bump dashboard version to v1.5
...
Deploy Dashboard (Dev) / Run Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 44s
Run Tests / Frontend Tests (push) Failing after 42s
Run Tests / Test Summary (push) Failing after 15s
Test commit to verify new CI workflow behavior:
- Tests should run first
- Deploy should only happen if tests pass
- Health check should verify deployment
2026-04-21 22:35:39 +08:00
jimmy
64c8149648
Merge pull request 'Refactor CI workflows with test dependencies and path filters' ( #56 ) from dev into main
Deploy Dashboard (Main) / Run Tests (push) Successful in 15s
Run Tests / Backend Tests (push) Failing after 42s
Run Tests / Frontend Tests (push) Failing after 42s
Deploy Dashboard (Main) / Deploy to Production (push) Failing after 5m36s
Run Tests / Test Summary (push) Failing after 17s
2026-04-21 22:32:49 +08:00
Gan, Jimmy
8612e08901
refactor: improve CI workflows with test dependencies and path filters
...
Deploy Dashboard (Dev) / Run Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Run Tests / Test Summary (push) Failing after 17s
Run Tests / Backend Tests (pull_request) Failing after 11m30s
Run Tests / Backend Tests (push) Failing after 5m6s
Run Tests / Frontend Tests (push) Failing after 3m22s
Run Tests / Frontend Tests (pull_request) Failing after 1m44s
Run Tests / Test Summary (pull_request) Failing after 17s
- Add path filters to test.yml to only run on code changes
- Make deploy workflows depend on tests passing first
- Standardize all workflows to use actions/checkout@v4
- Add health checks and better error messages to deployments
- Add build cache support for faster builds
- Document all improvements in IMPROVEMENTS.md
This prevents broken code from being deployed and reduces unnecessary CI runs.
2026-04-21 22:31:52 +08:00
jimmy
eb1cc2ff96
Merge pull request 'Fix file download authentication with public router' ( #55 ) from dev into main
Deploy Dashboard / deploy (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 5m38s
Run Tests / Frontend Tests (push) Failing after 2m23s
Run Tests / Test Summary (push) Failing after 19s
2026-04-21 22:14:48 +08:00
Gan, Jimmy
e35319f881
fix: separate public and authenticated file endpoints
Deploy Dashboard (Dev) / deploy-dev (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 5m3s
Run Tests / Frontend Tests (push) Failing after 3m56s
Run Tests / Backend Tests (pull_request) Failing after 5m10s
Run Tests / Frontend Tests (pull_request) Failing after 14m30s
Run Tests / Test Summary (push) Failing after 16s
Run Tests / Test Summary (pull_request) Failing after 18s
2026-04-21 22:14:35 +08:00
jimmy
456caad1c4
Merge pull request 'Fix token-based file downloads authentication' ( #54 ) from dev into main
Deploy Dashboard / deploy (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 5m4s
Run Tests / Frontend Tests (push) Failing after 1m54s
Run Tests / Test Summary (push) Failing after 17s
2026-04-21 21:58:00 +08:00
Gan, Jimmy
f1b39d0a8a
fix: allow unauthenticated access to token-based file downloads
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 2m37s
Run Tests / Backend Tests (push) Failing after 5m2s
Run Tests / Frontend Tests (push) Failing after 2m7s
Run Tests / Backend Tests (pull_request) Failing after 5m5s
Run Tests / Frontend Tests (pull_request) Failing after 2m25s
Run Tests / Test Summary (push) Failing after 14s
Run Tests / Test Summary (pull_request) Failing after 12s
2026-04-21 21:57:40 +08:00
jimmy
566071fc2c
Merge pull request 'Fix download button and API prefix issues' ( #53 ) from dev into main
Deploy Dashboard / deploy (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 4m38s
Run Tests / Frontend Tests (push) Failing after 5m18s
Run Tests / Test Summary (push) Failing after 14s
2026-04-21 21:49:19 +08:00
Gan, Jimmy
01fcb53a3a
feat: add comprehensive testing mechanism for dashboard features
...
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 2m0s
Run Tests / Backend Tests (push) Failing after 4m26s
Run Tests / Frontend Tests (push) Failing after 49s
Run Tests / Test Summary (push) Failing after 15s
Run Tests / Backend Tests (pull_request) Failing after 6m9s
Run Tests / Frontend Tests (pull_request) Failing after 3m54s
Run Tests / Test Summary (pull_request) Failing after 15s
- Add smoke test script for post-deployment verification
- Add health monitoring script with Telegram alerts
- Add backend integration tests for conversation tracker API
- Add frontend tests to verify correct API paths
- Update CI/CD workflows to enforce test failures and run smoke tests
- Add comprehensive testing documentation
This testing mechanism will catch issues like the double /api/ prefix bug
before they reach users.
2026-04-19 21:54:13 +08:00
Gan, Jimmy
9b8d7cfb00
fix: remove /api prefix from conversation API calls in frontend
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 3m37s
Run Tests / Backend Tests (push) Failing after 4m24s
Run Tests / Frontend Tests (push) Failing after 48s
Run Tests / Test Summary (push) Failing after 13s
2026-04-19 20:40:08 +08:00
Gan, Jimmy
c18d677797
fix: remove downloading state that blocks download button
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 2m57s
Run Tests / Backend Tests (push) Failing after 4m37s
Run Tests / Frontend Tests (push) Failing after 51s
Run Tests / Test Summary (push) Failing after 13s
2026-04-19 20:19:36 +08:00
Gan, Jimmy
14d133cd64
fix: correct API prefix for conversation tracker endpoints
Deploy Dashboard (Dev) / deploy-dev (push) Has been cancelled
Run Tests / Backend Tests (push) Failing after 6m49s
Run Tests / Frontend Tests (push) Failing after 53s
Run Tests / Test Summary (push) Failing after 14s
2026-04-19 20:18:10 +08:00
Gan, Jimmy
66d5f4f7d4
fix: use hidden iframe for downloads to avoid popup blockers
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 2m49s
Run Tests / Backend Tests (push) Failing after 5m19s
Run Tests / Frontend Tests (push) Failing after 2m3s
Run Tests / Test Summary (push) Failing after 15s
2026-04-19 00:47:22 +08:00
Gan, Jimmy
13be35383d
chore: bump dashboard version to trigger deployment
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 3m46s
Run Tests / Backend Tests (push) Failing after 6m39s
Run Tests / Frontend Tests (push) Failing after 1m10s
Run Tests / Test Summary (push) Failing after 21s
2026-04-19 00:14:56 +08:00
Gan, Jimmy
b5b6f9134b
fix: use native navigation for file downloads to support large files
Run Tests / Backend Tests (pull_request) Failing after 4m45s
Run Tests / Frontend Tests (pull_request) Failing after 1m20s
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 2m47s
Run Tests / Backend Tests (push) Failing after 5m52s
Run Tests / Frontend Tests (push) Failing after 1m43s
Run Tests / Test Summary (pull_request) Failing after 33s
Run Tests / Test Summary (push) Has been cancelled
2026-04-18 23:57:07 +08:00
jimmy
d260f8159a
Merge pull request 'Fix streaming downloads for large files' ( #51 ) from fix/streaming-downloads into main
Deploy Dashboard / deploy (push) Failing after 16m43s
Run Tests / Backend Tests (push) Failing after 4m42s
Run Tests / Frontend Tests (push) Failing after 2m39s
Run Tests / Test Summary (push) Failing after 17s
2026-04-18 12:03:26 +08:00
Gan, Jimmy
88e53f3f8e
fix: implement streaming downloads for large files
...
Run Tests / Backend Tests (pull_request) Failing after 5m29s
Run Tests / Frontend Tests (pull_request) Failing after 3m55s
Run Tests / Test Summary (pull_request) Failing after 18s
- Add token-based download system with 5-minute expiry
- Stream files in 8MB chunks on backend (no memory loading)
- Use browser native download with tokens on frontend
- Fixes hang on large files (10GB+) by avoiding memory buffering
2026-04-18 11:03:22 +08:00
jimmy
45a7ce3ece
Merge pull request 'Fix file download filename' ( #50 ) from fix/file-download-filename into main
Deploy Dashboard / deploy (push) Failing after 3m44s
Run Tests / Backend Tests (push) Failing after 4m39s
Run Tests / Frontend Tests (push) Failing after 36s
Run Tests / Test Summary (push) Failing after 12s
2026-04-17 14:18:05 +08:00
Gan, Jimmy
1ee244ee39
fix: set filename in file download response
Run Tests / Backend Tests (pull_request) Failing after 5m23s
Run Tests / Frontend Tests (pull_request) Failing after 34s
Run Tests / Test Summary (pull_request) Failing after 15s
2026-04-17 14:17:33 +08:00
jimmy
a807ec00af
Merge pull request 'Fix file download error handling' ( #49 ) from fix/file-download-error-handling into main
Deploy Dashboard / deploy (push) Failing after 4m34s
Run Tests / Backend Tests (push) Failing after 4m19s
Run Tests / Frontend Tests (push) Failing after 1m18s
Run Tests / Test Summary (push) Failing after 16s
2026-04-13 10:27:50 +08:00
Gan, Jimmy
cdf8ab18fc
fix: add error handling and feedback for file downloads
Run Tests / Backend Tests (pull_request) Failing after 5m4s
Run Tests / Frontend Tests (pull_request) Failing after 1m5s
Run Tests / Test Summary (pull_request) Failing after 17s
2026-04-13 10:25:40 +08:00
jimmy
1c3cbd187b
Merge pull request 'Fix batch processing for large conversation files' ( #48 ) from fix/batch-processing into main
Run Tests / Backend Tests (push) Failing after 4m18s
Run Tests / Frontend Tests (push) Failing after 3m14s
Run Tests / Test Summary (push) Failing after 18s
2026-04-12 11:49:30 +08:00
Gan, Jimmy
c27cc505e1
fix: add batch processing for large conversation files
Run Tests / Backend Tests (pull_request) Failing after 5m48s
Run Tests / Frontend Tests (pull_request) Failing after 2m1s
Run Tests / Test Summary (pull_request) Failing after 15s
2026-04-12 11:33:24 +08:00
jimmy
5579deb433
Merge pull request 'Fix network mode for claude-code-tracker' ( #47 ) from fix/tracker-network into main
Run Tests / Backend Tests (push) Failing after 4m24s
Run Tests / Frontend Tests (push) Failing after 1m33s
Run Tests / Test Summary (push) Failing after 21s
2026-04-12 08:53:39 +08:00
Gan, Jimmy
145e836342
fix: add network_mode bridge to claude-code-tracker
Run Tests / Backend Tests (pull_request) Failing after 4m22s
Run Tests / Frontend Tests (pull_request) Failing after 1m24s
Run Tests / Test Summary (pull_request) Failing after 18s
2026-04-12 08:50:20 +08:00
jimmy
728fa141ed
Merge pull request 'Add Claude Code conversation tracker' ( #46 ) from feat/claude-code-tracker into main
Run Tests / Backend Tests (push) Has been cancelled
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
Deploy Dashboard / deploy (push) Failing after 16m27s
2026-04-12 08:46:37 +08:00
Gan, Jimmy
1ba0014d47
feat: add Claude Code conversation tracker
...
Run Tests / Backend Tests (pull_request) Failing after 5m14s
Run Tests / Frontend Tests (pull_request) Failing after 1m20s
Run Tests / Test Summary (pull_request) Failing after 16s
- Create claude-code-tracker service to monitor and parse Claude Code conversations
- Parse JSONL format with messages, tool calls, and metadata
- Store in SQLite with full-text search support
- Generate daily summaries using Claude API
- Add Conversations UI with search, stats, and conversation browsing
- Integrate with dashboard backend and frontend
- Add sync script for Mac to NAS file transfer
2026-04-12 08:41:11 +08:00
jimmy
34a348cafc
Merge pull request #45
...
Deploy Dashboard / deploy (push) Failing after 3m2s
Run Tests / Backend Tests (push) Failing after 4m10s
Run Tests / Frontend Tests (push) Failing after 8m27s
Run Tests / Test Summary (push) Failing after 10s
Fix dev docker-compose.yml configuration
2026-04-11 21:50:48 +08:00
Gan, Jimmy
06a75dcaba
fix: add missing networks to dev dashboard service
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m30s
Run Tests / Backend Tests (push) Failing after 4m34s
Run Tests / Frontend Tests (push) Failing after 3m23s
Run Tests / Backend Tests (pull_request) Failing after 4m37s
Run Tests / Frontend Tests (pull_request) Failing after 3m17s
Run Tests / Test Summary (push) Failing after 16s
Run Tests / Test Summary (pull_request) Failing after 14s
2026-04-11 21:49:57 +08:00
Gan, Jimmy
d919b46882
fix: update DOCKER_HOST in dev docker-compose.yml
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m16s
Run Tests / Backend Tests (push) Failing after 4m8s
Run Tests / Test Summary (push) Has been cancelled
Run Tests / Frontend Tests (push) Has been cancelled
2026-04-11 21:25:11 +08:00