Commit Graph

1628 Commits

Author SHA1 Message Date
CI Test 91a064e825 fix: replace GitHub Actions checkout with Gitea API download in ci-cd.yml
- validate job: add container xiaoxia-ci-python:3.12, use shell-based checkout via Gitea API
- frontend-lint job: remove container, use docker run with local images instead
- All steps converted to shell: sh to avoid uses: actions/* dependencies

Fixes CI timeout on private runner unable to access GitHub Actions marketplace
2026-06-26 19:55:04 +08:00
xiaoxia 0422967229 refactor: Remove workspace concept - Projects now directly under User
BREAKING CHANGES:
- Removed Workspace, WorkspaceMember, WorkspaceInvitation entities
- Project now has owner_user_id instead of workspace_id
- Added shared_users list to Project for collaboration
- Subscription/quota moved from Workspace to User level

Changes:
- packages/domain/entities.py: Removed Workspace entities, updated Project
- packages/adapters/sqlalchemy_impl/models.py: Updated models
- packages/application/: Removed workspace use cases, updated other use cases
- packages/ports/: Removed workspace repository interfaces
- apps/api/: Updated routes, schemas, dependencies, router
- alembic/versions/007_remove_workspace_concept.py: Database migration

New APIs:
- POST /projects/{id}/share: Share project with user
- DELETE /projects/{id}/share/{user_id}: Unshare project
2026-06-26 19:16:54 +08:00
CI Test 6c80606b36 ci: new runner test - 19:10:17 2026-06-26 19:10:17 +08:00
CI Test ba2247b0e2 ci: final test - 19:08:39 2026-06-26 19:08:39 +08:00
CI Test 2a4b6ad71e ci: test after docker restart 2026-06-26 19:07:00 +08:00
CI Test 6bbe159537 ci: debug test with force_pull 2026-06-26 19:05:38 +08:00
CI Test db34e1ca31 fix: use runtime-builder:host label for all jobs 2026-06-26 19:04:30 +08:00
CI Test df10220130 fix: use localhost registry for CI images 2026-06-26 19:01:51 +08:00
CI Test 339c950152 ci: test runner with preloaded images 2026-06-26 18:59:37 +08:00
xiaoxia cea3849051 chore: trigger CI/Deploy pipeline test 2026-06-26 18:52:03 +08:00
xiaoxia 3327b3c1a4 Merge pull request 'fix: 部署workflow使用ubuntu-latest runner label' (#17) from fix/deploy-runner-label into main 2026-06-26 18:44:32 +08:00
xiaoxia 8c3a2cbb3a fix(deploy): use ubuntu-latest runner label 2026-06-26 18:43:54 +08:00
xiaoxia bd56bcae61 Merge pull request 'chore: 修复 P2/P3 技术债务' (#15) from fix/p2p3-tech-debt-v2 into main 2026-06-26 18:41:32 +08:00
xiaoxia 82f110c9b2 Merge pull request 'fix: 移除 CI container 配置,直接在 host 运行' (#16) from fix/ci-remove-container into main 2026-06-26 18:40:37 +08:00
xiaoxia 47c8315e89 fix(ci): remove container field to run on host directly 2026-06-26 18:40:04 +08:00
xiaoxia 5e020aa500 P3-5: 添加 tests/integration/test_auth.py 认证集成测试 2026-06-26 18:39:17 +08:00
xiaoxia 5ba680a7af P3-4: .gitea/workflows/ci-cd.yml 添加 frontend-lint job 2026-06-26 18:38:45 +08:00
xiaoxia 9cc79d164a P3-3: infra/docker/api.Dockerfile 转换为多阶段构建 2026-06-26 18:38:19 +08:00
xiaoxia ec76490135 P3-1: database.py 统一使用 config.py 中的 Settings,消除配置重复定义 2026-06-26 18:37:58 +08:00
xiaoxia 5bace403fa P2-6: processor.py 使用 NamedTemporaryFile + try-finally 确保临时文件清理 2026-06-26 18:37:41 +08:00
xiaoxia af19642f57 P2-4: dependencies.py 添加返回类型注解 2026-06-26 18:37:11 +08:00
xiaoxia 0e4909e29d P2-3: workspace_member_repository.py find_by_workspace 方法添加 JOIN 预加载用户数据 2026-06-26 18:36:45 +08:00
xiaoxia 756ac14331 P2-2: 更新 packages/application/auth/__init__.py 导出 JWT 和 Password 委托处理器 2026-06-26 18:36:21 +08:00
xiaoxia df28dc294f P2-2: 创建 packages/application/auth/password_handler.py 委托层,隔离 Domain 层对 bcrypt 库的依赖 2026-06-26 18:36:04 +08:00
xiaoxia e70d328087 P2-2: 创建 packages/application/auth/jwt_handler.py 委托层,隔离 Domain 层对 jwt 库的依赖 2026-06-26 18:35:45 +08:00
xiaoxia 0b3cb8487c P2-1 & P2-5: 移除 upload.py 中重复的 _require_workspace_member,添加服务端 MIME type 验证 2026-06-26 18:35:21 +08:00
xiaoxia 6204d2fa45 P2-1: 移除 projects.py 中重复的 _require_workspace_member 函数,使用 permissions.py 中的共享函数 2026-06-26 18:34:41 +08:00
xiaoxia dea8f858ae Merge pull request 'chore: 清理仓库 - 删除过时文件和已合并分支' (#13) from chore/repo-cleanup into main 2026-06-26 18:30:22 +08:00
xiaoxia f73bae2e90 chore: update .gitignore for temp files 2026-06-26 18:24:52 +08:00
xiaoxia afc60a5eee chore: remove obsolete audit and project docs 2026-06-26 18:24:42 +08:00
xiaoxia 6f0c7246b3 chore: remove obsolete audit and project docs 2026-06-26 18:24:41 +08:00
xiaoxia 56bffed7d8 chore: remove obsolete audit and project docs 2026-06-26 18:24:41 +08:00
xiaoxia 21bb2411aa chore: remove obsolete audit and project docs 2026-06-26 18:24:40 +08:00
xiaoxia 6592130d93 chore: remove obsolete audit and project docs 2026-06-26 18:24:40 +08:00
xiaoxia a0f561fdb8 chore: remove obsolete audit and project docs 2026-06-26 18:24:39 +08:00
xiaoxia f30e538a48 chore: remove obsolete audit and project docs 2026-06-26 18:24:39 +08:00
xiaoxia 076b3d9d1f chore: remove obsolete audit and project docs 2026-06-26 18:24:39 +08:00
xiaoxia d35ca425ee chore: remove obsolete audit and project docs 2026-06-26 18:24:38 +08:00
xiaoxia b996c5af39 chore: remove obsolete audit and project docs 2026-06-26 18:24:38 +08:00
xiaoxia fcb65e035e chore: remove obsolete audit and project docs 2026-06-26 18:24:37 +08:00
xiaoxia cc0f58949f chore: remove obsolete audit and project docs 2026-06-26 18:24:37 +08:00
xiaoxia dd64c21ac4 chore: remove obsolete audit and project docs 2026-06-26 18:24:36 +08:00
xiaoxia d4223970fb chore: remove obsolete audit and project docs 2026-06-26 18:24:36 +08:00
xiaoxia eda06e0ebf chore: remove obsolete audit and project docs 2026-06-26 18:24:35 +08:00
xiaoxia 4090453cd9 chore: remove obsolete audit and project docs 2026-06-26 18:24:35 +08:00
xiaoxia b9e11f19bf chore: remove obsolete files 2026-06-26 18:24:23 +08:00
xiaoxia 51cd2d96e4 chore: remove obsolete files 2026-06-26 18:24:22 +08:00
xiaoxia ef48832173 chore: remove obsolete phase progress reports 2026-06-26 18:24:22 +08:00
xiaoxia b138305933 chore: remove obsolete phase progress reports 2026-06-26 18:24:21 +08:00
xiaoxia 058989663b chore: remove obsolete phase progress reports 2026-06-26 18:24:21 +08:00