Commit Graph

1628 Commits

Author SHA1 Message Date
Xiaoxia AI 56aeafcb53 fix: set gitea checkout base url 2026-06-15 19:59:47 +08:00
Xiaoxia AI f69e649c7f chore: wire real host-based gitea deploy 2026-06-15 19:58:11 +08:00
Xiaoxia AI acfa82b995 fix: serialize schema init for postgres 2026-06-15 19:41:57 +08:00
Xiaoxia AI f0ee5c6184 feat: persist ingest flow in postgres 2026-06-15 19:34:47 +08:00
Xiaoxia AI 88db1a7753 fix: register worker tasks explicitly 2026-06-15 19:14:54 +08:00
Xiaoxia AI c6e6213209 fix: decouple api from worker package imports 2026-06-15 18:59:58 +08:00
Xiaoxia AI 07c5ad0e22 fix: remove stale upload request schema export 2026-06-15 18:57:50 +08:00
Xiaoxia AI 2c86106c08 fix: switch docker pip mirror to aliyun 2026-06-15 18:53:37 +08:00
Xiaoxia AI ba4e672bf8 fix: use domestic pip mirror for docker builds 2026-06-15 18:52:33 +08:00
Xiaoxia AI 4475677763 chore: wire deployment to environment-based configuration 2026-06-15 18:40:56 +08:00
Xiaoxia AI 36126b47d7 chore: add production environment configuration system 2026-06-15 18:32:05 +08:00
Xiaoxia AI 0f16fa600f docs: add comprehensive API documentation with Swagger
Tests / test (push) Failing after 30s
Tests / lint (push) Failing after 30s
2026-06-15 18:22:10 +08:00
Xiaoxia AI ba159549e2 feat: integrate MinIO for real file storage
Tests / test (push) Failing after 30s
Tests / lint (push) Failing after 30s
2026-06-15 18:19:12 +08:00
Xiaoxia AI 3b8ff2ddae feat: implement real deployment script
Tests / test (push) Failing after 30s
Tests / lint (push) Failing after 30s
2026-06-15 18:12:09 +08:00
Xiaoxia AI cb2364a363 feat: add CI/CD pipeline with Gitea Actions
Deploy / deploy-staging (push) Failing after 30s
Deploy / deploy-production (push) Has been skipped
Tests / test (push) Failing after 30s
Tests / lint (push) Failing after 30s
- .gitea/workflows/tests.yml: automated testing + linting on push/PR
- .gitea/workflows/deploy.yml: deployment workflow (placeholder)
- docs/CI-CD.md: CI/CD configuration guide
- requirements-dev.txt: development dependencies (pytest, black, flake8, mypy)
- test job: run pytest with coverage report
- lint job: black + flake8 + mypy code quality checks
2026-06-15 16:53:09 +08:00
Xiaoxia AI 5f0a280669 feat: add tag functionality to Asset
- domain: Asset.tags field with add_tag/remove_tag methods
- validation: no empty tags, auto deduplication
- tests: 5 integration tests (add/remove/duplicate/empty/idempotent)
- all 13 tests passing
2026-06-15 16:47:45 +08:00
Xiaoxia AI 37f5e0cead docs: add AI session setup guide for multi-session collaboration
- session architecture: main + coding-ai + review-ai + qa-ai
- session creation steps
- message passing examples
- monitoring guide
- acceptance criteria
2026-06-15 16:24:51 +08:00
Xiaoxia AI 6152d49d18 docs: add coding/API/testing standards
- CODING-STANDARD.md: PEP 8, type hints, Clean Architecture constraints, security
- API-SPEC.md: RESTful design, HTTP methods, status codes, request/response format
- TESTING-GUIDE.md: test strategy, AAA pattern, fixtures, coverage targets
- complete examples included
2026-06-15 16:20:11 +08:00
Xiaoxia AI 5ea028cafd docs: add AI system prompts for coding/review/QA
- AI-PROMPTS-CODING.md: Codex coding AI system prompt with architecture constraints
- AI-PROMPTS-REVIEW.md: Review AI checklist (architecture/security/performance/tests)
- AI-PROMPTS-QA.md: QA AI test design guide (boundary/error/concurrency/regression)
- complete examples included
2026-06-15 16:17:09 +08:00
Xiaoxia AI f27c036d70 docs: update AI tools - use Codex as primary coding AI
- Codex as P0 main coding AI (already available)
- Cursor downgraded to P2 backup
- zero additional monthly cost
- Week 1 checklist updated
2026-06-15 16:14:23 +08:00
Xiaoxia AI ebb542f1ab docs: add AI tools preparation checklist
- P0 tools: Cursor, Review AI, QA AI
- P1 tools: UI AI (v0/Figma)
- collaboration templates (task/review/QA)
- configuration steps timeline
- budget estimation
- acceptance criteria
2026-06-15 16:04:45 +08:00
Xiaoxia AI 578f22442f docs: update README with complete project status
- project overview and current status
- tech stack and architecture
- core domain entities explained
- completed features (API, Worker, pipelines)
- development guide (setup, testing, migrations)
- roadmap (Phase 2-5)
- architecture decision records (ADR-001 to ADR-003)
- contribution guidelines
2026-06-15 15:49:33 +08:00
Xiaoxia AI a8177c1268 feat: add asset classification pipeline
- domain: ClassificationJob entity with AssetClassification enum (scenic, product, person, animal, food, tech, sport, music, other)
- ports: ClassificationJobRepository interface
- application: SubmitClassificationJobUseCase
- adapters: InMemoryClassificationJobRepository
- worker: classify_asset task with mock classification logic
- tests: full classification pipeline test
- all 8 integration tests passing
2026-06-15 15:39:28 +08:00
Xiaoxia AI b43cdcadc5 feat: add Alembic database migrations
- alembic.ini: Alembic configuration
- alembic/env.py: migration environment with Base import
- alembic/versions/001_initial_schema.py: initial schema migration (projects, asset_libraries, assets, ingest_jobs)
- alembic/README.md: migration usage guide
- all 7 integration tests still passing
2026-06-15 15:33:01 +08:00
Xiaoxia AI e4e2595e70 feat: add PostgreSQL persistence layer
- adapters: SQLAlchemy implementations for all 4 repositories (Project, AssetLibrary, Asset, IngestJob)
- models: SQLAlchemy ORM models with proper schema
- database: connection config and session management
- tests: SQLAlchemy repository integration test (in-memory SQLite)
- all 7 integration tests passing
2026-06-15 15:29:13 +08:00
Xiaoxia AI d5504166ff feat: add upload asset endpoint
- API: POST /api/upload endpoint (mock storage, real ingest pipeline trigger)
- schemas: UploadAssetRequest, UploadAssetResponse
- tests: full upload→ingest→asset pipeline test
- all 6 integration tests passing
2026-06-15 15:23:53 +08:00
Xiaoxia AI 43fd071e3b feat: implement ingest asset worker task
- worker: real ingest_asset logic (metadata extraction mock, Asset creation, IngestJob status update)
- API: ingest_jobs route now enqueues async task via ingest_asset.delay()
- tests: full ingest pipeline test (submit -> process -> verify asset + job status)
- all 5 integration tests passing
2026-06-15 15:20:58 +08:00
Xiaoxia AI b5a62ee9a3 feat: initial SaaS scaffold
- domain: User, Workspace, Project, AssetLibrary, Asset, IngestJob
- ports: repository interfaces
- application: use cases
- adapters: in-memory
- API: FastAPI 5 routes
- worker: Celery ingest_asset
- tests: 4 passing
2026-06-15 15:17:40 +08:00