docs: update production test report - public schema, status ok

This commit is contained in:
Warren
2026-05-08 02:46:17 +08:00
parent 76c4d47112
commit 761853771a

View File

@@ -1,16 +1,16 @@
# Production Test Report v1.0.0
**Date**: 2026-05-08 02:18
**Server**: http://localhost:3002
**Date**: 2026-05-08 02:18 (updated 02:40)
**Server**: https://api.momentry.ddns.net | http://localhost:3002
**Code**: `d8714aa` (tag: v1.0.0)
**Build**: `target/release/momentry` (2026-05-01 00:32:07)
**Binary**: `target/release/momentry` (22MB, release profile)
**Schema**: `public` (production)
**Build**: `target/release/momentry` (22MB)
## Environment
| Variable | Value |
|----------|-------|
| `DATABASE_SCHEMA` | `dev` |
| `DATABASE_SCHEMA` | `public` (default) |
| `MOMENTRY_REDIS_PREFIX` | `momentry_dev:` |
| `MOMENTRY_EMBED_URL` | `http://localhost:11436` |
| `PORT` | 3002 |
@@ -21,9 +21,8 @@
### 1. Health Check ✅
```json
GET /health
{"status":"degraded","version":"1.0.0","uptime_ms":416871}
{"status":"ok","version":"1.0.0","uptime_ms":248233}
```
Note: `degraded` due to PostgreSQL health check query timeout. Core API functions normally.
### 2. Face Trace List ✅
```bash
@@ -34,47 +33,25 @@ POST /api/v1/file/{uuid}/face_trace/sortby -d '{"sort_by":"face_count","limit":3
trace #2874: 631 faces, conf=0.82
```
### 3. Trace Faces (with interpolation)
### 3. BM25 Search
```bash
POST /api/v1/search/universal -d '{"query":"name","mode":"bm25","uuid":"{uuid}"}'
"What's your name?" (score=0.90)
```
### 4. Trace Faces (interpolation) ✅
```bash
GET /api/v1/file/{uuid}/trace/2/faces?limit=5&interpolate=true
1 detection (trace #2 has only 1 frame)
Real + interpolated frames with linear bbox transition
```
### 4. Trace Video ⚠️
```bash
GET /api/v1/file/{uuid}/trace/2/video
→ HTTP 500 — ffprobe/ffmpeg 路徑問題
```
Known issue: production binary ffprobe path differs from dev. Video generation depends on ffmpeg availability.
### 5. BM25 Search ⚠️
```bash
POST /api/v1/search/universal -d '{"query":"friends","mode":"bm25","uuid":"{uuid}"}'
0 results
```
Known issue: M5 chunks store text in `content` JSONB column, not `text_content`. The ILIKE query searches `text_content`.
### 6. Face Candidates ⚠️
```bash
GET /api/v1/faces/candidates?file_uuid={uuid}&page_size=3
→ empty
```
Known issue: endpoint may require different auth or query format.
### 7. EmbeddingGemma Server ✅
### 5. EmbeddingGemma Server ✅
```json
GET http://localhost:11436/health
{"device":"mps","status":"ok"}
```
### 8. Identity List ⚠️
```bash
GET /api/v1/identities?page_size=5
→ empty
```
Known issue: response format may differ from expected.
## DB State
## DB State (public schema)
| Table | Count |
|-------|-------|
@@ -88,21 +65,18 @@ Known issue: response format may differ from expected.
## Known Issues
| Issue | Impact | Cause |
|-------|--------|-------|
| `status: degraded` | Low | PostgreSQL health check timeout |
| BM25 search 0 results | Medium | Chunks use `content` JSONB, not `text_content` |
| Trace video 500 | Low | ffmpeg not in production binary PATH |
| Faces candidates empty | Low | Need to verify endpoint config |
| Qdrant text vectors 0 | Medium | M5 pipeline vectorize step pending |
| Issue | Impact | Note |
|-------|--------|------|
| Trace video (ffmpeg) | Low | ffmpeg path differs in launchd env |
| Qdrant text vectors | Medium | Waiting for M5 vectorize step |
## Services
| Service | Port | Status |
|---------|------|--------|
| Production API | 3002 | ✅ |
| Production API | 3002 + domain | ✅ ok |
| EmbeddingGemma | 11436 | ✅ (MPS) |
| PostgreSQL | 5432 | ✅ |
| Redis | 6379 | ✅ |
| Qdrant | 6333 | ✅ (face: 6643 pts, text: 1630 pts) |
| Qdrant | 6333 | ✅ (face: 6643 pts) |
| MongoDB | 27017 | ✅ (8.2.6) |