Xiaoxia AI
8a9542274f
fix(deploy): require runtime image artifact for production
2026-06-22 14:53:48 +08:00
Xiaoxia AI
df7c4ee0d7
chore(release): add runtime image artifact deploy
2026-06-22 14:48:33 +08:00
Xiaoxia AI
34353506d7
fix(web): restore project workspace context
2026-06-22 13:19:45 +08:00
Xiaoxia AI
0042c4d54f
fix(web): route admin mocks to coming soon
2026-06-22 10:55:32 +08:00
Xiaoxia AI
51a1729c59
fix(web): disable unsupported subscription api calls
2026-06-22 10:35:24 +08:00
Xiaoxia AI
6fb8d11cec
fix(deploy): skip runtime image builds on production host
2026-06-22 10:04:26 +08:00
Xiaoxia AI
1cf43fa6a0
fix(deploy): isolate production web api proxy
2026-06-22 10:02:03 +08:00
Xiaoxia AI
1939878dec
fix(deploy): require prebuilt web artifact for production
2026-06-22 09:34:27 +08:00
Xiaoxia AI
c7f243d7d8
fix(deploy): cache web dependencies during image build
2026-06-22 07:47:49 +08:00
Xiaoxia AI
d7ff0dceb1
fix(deploy): allow direct production deploy host prefix
2026-06-22 07:15:02 +08:00
Xiaoxia AI
aa2b190866
fix(deploy): allow direct staging deploy host prefix
2026-06-21 23:13:51 +08:00
Xiaoxia AI
238cffcbcf
fix(deploy): align staging deploy host prefix
2026-06-21 23:11:36 +08:00
Xiaoxia AI
70a9f4f4b5
fix(deploy): use mirrored web base images
2026-06-21 17:23:24 +08:00
Xiaoxia AI
2874ab0ac0
fix(deploy): rebuild web image during releases
2026-06-21 16:49:00 +08:00
Xiaoxia AI
3680888d36
fix(auth): allow registration without display name
2026-06-21 16:24:21 +08:00
Xiaoxia AI
a186f367f3
fix(deploy): separate production application deployment
2026-06-21 15:50:40 +08:00
Xiaoxia AI
713a244e80
chore(release): provision separated production infrastructure
2026-06-21 15:35:09 +08:00
Xiaoxia AI
14e3cde119
chore(release): initialize separated production env
2026-06-21 14:24:23 +08:00
Xiaoxia AI
f9c012098f
chore(release): allow smtp skip in strict smoke
2026-06-21 14:09:29 +08:00
Xiaoxia AI
b7e69c4e0b
chore(release): script database backup runbook
2026-06-21 13:26:45 +08:00
Xiaoxia AI
e98dfc9ffb
chore(release): add alembic preflight check
2026-06-21 13:01:49 +08:00
Xiaoxia AI
ccb6786e0b
chore(release): add external service smoke checks
2026-06-21 12:50:33 +08:00
Xiaoxia AI
6d68c28860
chore(release): validate production env readiness
2026-06-21 12:34:51 +08:00
Xiaoxia AI
ccb7e1e57a
refactor(storage): retire minio runtime naming
2026-06-21 11:20:55 +08:00
Xiaoxia AI
3594cc1216
refactor(auth): configure external service adapters
2026-06-21 11:04:07 +08:00
Xiaoxia AI
b78a290bdd
feat(auth): add verification and password reset routes
2026-06-21 10:40:56 +08:00
Xiaoxia AI
9872c20d30
refactor(adapters): remove legacy postgres adapter
2026-06-21 10:11:18 +08:00
Xiaoxia AI
6ba97351aa
refactor(auth): remove auth simple shim
2026-06-21 09:57:17 +08:00
Xiaoxia AI
27ea04264f
feat(workspace): restore member management routes
2026-06-21 09:36:08 +08:00
Xiaoxia AI
383151efcb
feat(workspace): restore core routes on sqlalchemy adapters
2026-06-21 09:22:09 +08:00
Xiaoxia AI
a912e17868
refactor(auth): replace legacy middleware sentinel
2026-06-21 09:06:22 +08:00
Xiaoxia AI
cddd9948e3
feat(auth): add bearer current user dependency
2026-06-21 08:35:25 +08:00
Xiaoxia AI
93271f7dda
refactor(auth): route simple auth through use cases
2026-06-21 08:22:49 +08:00
Xiaoxia AI
ebae5f51b0
fix(schema): forbid auto create schema in deployed envs
2026-06-21 07:36:46 +08:00
Xiaoxia AI
bfbaddbd9a
style: normalize python formatting gates
2026-06-21 06:52:19 +08:00
Xiaoxia AI
4b4602a0fd
refactor(schema): mark sqlalchemy models as schema mainline
2026-06-21 06:30:55 +08:00
Xiaoxia AI
788de9a245
refactor(adapters): deprecate postgres repository path
2026-06-21 02:15:56 +08:00
Xiaoxia AI
d25bd753a2
refactor(api): guard route adapter boundaries
2026-06-21 02:02:55 +08:00
Xiaoxia AI
0e93d2e71f
refactor(domain): move auth infrastructure to adapters
2026-06-21 00:46:56 +08:00
Xiaoxia AI
57310f33d4
fix(auth): harden simple auth and router imports
2026-06-21 00:27:58 +08:00
Xiaoxia AI
7f2f52bad8
feat(phase7): align generated video storage paths
2026-06-18 20:56:31 +08:00
Xiaoxia AI
642d01eee4
feat(phase7): prefer presigned generated video downloads
2026-06-18 20:49:31 +08:00
Xiaoxia AI
3d6b90c022
feat(phase7): add generated video download endpoint
2026-06-18 20:33:14 +08:00
Xiaoxia AI
58ab98689f
feat(phase7): trigger generation worker from API
2026-06-18 20:13:08 +08:00
Xiaoxia AI
758c2c7e13
feat(phase7): align asset flow and scaffold generation pipeline
2026-06-18 19:59:37 +08:00
Xiaoxia AI
267f097a7b
feat(testing): add API integration tests and Phase 4 completion summary
...
- Add integration tests for Auth API (register/login/logout)
- Add integration tests for Workspace API (create/list)
- Test authentication and authorization flows
- Create comprehensive Phase 4 completion document
- Document all completed modules and features
- Include deployment guide and API documentation
- List remaining work for Phase 5+
Phase 4 COMPLETED: 29/68 tasks (42.6%), 170 unit tests passing
Total time: 4 hours 42 minutes
2026-06-17 07:36:04 +08:00
Xiaoxia AI
4e33158d8d
feat(quota): add quota checking and management system
...
- Implement QuotaChecker for project and storage limits
- Check project count before creation (respect max_projects)
- Check storage availability before upload
- Get quota status with usage percentages
- Update storage usage (increase/decrease)
- Define warning levels (normal/warning/critical/exceeded)
- Add ProjectRepository interface for project counting
- Add 14 comprehensive unit tests (all passed)
Phase 4 Task 22/68 completed
2026-06-17 07:24:14 +08:00
Xiaoxia AI
dba2fe94ac
feat(subscription): add upgrade and cancel subscription use cases
...
- Implement UpgradeSubscriptionUseCase (Free→Pro→Enterprise)
- Prevent downgrades (must use cancel to return to Free)
- Auto-set quotas and expiration date on upgrade
- Implement CancelSubscriptionUseCase to downgrade to Free
- Only workspace owner can manage subscription
- Add 8 comprehensive unit tests (all passed)
Phase 4 Task 21/68 completed
2026-06-17 07:20:34 +08:00
Xiaoxia AI
80c29ba940
feat(permissions): add permission system and checker
...
- Implement PermissionChecker for workspace access control
- Define Permission constants for all operations
- Define ROLE_PERMISSIONS mapping (Owner/Admin/Member/Viewer)
- Support workspace/member/project/asset permission checks
- Helper functions: check_is_owner, check_can_manage_members, etc.
- Add 15 comprehensive unit tests (all passed)
Phase 4 Task 20/68 completed
2026-06-17 07:16:02 +08:00
Xiaoxia AI
0a2137c2aa
feat(workspace): add list members use case
...
- Implement ListMembersUseCase to get all workspace members
- Return member info with user details (username, email, display_name)
- Show role, inviter, and join time for each member
- Only workspace members can view member list
- Add 6 comprehensive unit tests (all passed)
Phase 4 Task 18/68 completed
2026-06-17 07:06:33 +08:00