47 Commits

Author SHA1 Message Date
Accusys
e3066c3f49 Add Charade face matching experience report
Documents the journey from Rust pipeline snowball bug through
5 iterations of pgvector-based matching to the final 11-identity
centroid approach with dual-gate and ambiguity cleanup.
2026-06-02 05:01:56 +08:00
Accusys
3a6c186575 docs: add REFERENCE docs, M4 workspace, Caddyfile 2026-05-16 03:11:32 +08:00
Accusys
39ba5ddf76 feat: Phase 1 handover - schema migration, correction mechanism, API fixes
Schema changes: dev.chunks->dev.chunk, remove old_chunk_id/chunk_index
Correction: asr-1.json format, generate/apply scripts
API: 37/37 endpoints fixed and tested
Docs: HANDOVER_V2.0.md for M4
2026-05-11 07:03:22 +08:00
Accusys
ef894a44ad docs: update Phase 1 report with all Qdrant collections + voice embeddings fix
- Fixed asrx_processor_custom.py: embeddings now passed to asrx.json
- Voice embeddings (192D ECAPA-TDNN) extracted for all 1815 ASRX segments
- momentry_dev_voice Qdrant collection created (1815 vectors)
- Updated Phase 1 report with 6 collections, key decisions
2026-05-10 01:11:42 +08:00
Accusys
d043b6adae docs: Phase 1 completion report + LLM reasoning off fix 2026-05-09 22:03:34 +08:00
Accusys
e7f311e7b8 docs: Phase 1 checklist 6 sections (含 face trace + TKG + identities)
release_pack.py: identities 併入 phase 1(不限 phase >= 2)
2026-05-09 18:14:22 +08:00
Accusys
3a4fd4136d docs: wiki vs RAG distinction in model lifecycle
wiki is not traditional RAG:
- RAG: ephemeral query-time augmentation
- Wiki: permanent model corrections, versioned, packaged with model
- Edits accumulate across versions as ground truth
2026-05-09 14:28:47 +08:00
Accusys
e2509a650c docs: wiki mechanism for model adjustability
Each momentry model includes a wiki/ directory for user-contributed knowledge:
- identity labels, object labels, ASR corrections
- Edits feed back into next model version
- TKG edges enriched by wiki data
2026-05-09 14:24:40 +08:00
Accusys
076af4cba1 docs: Phase 3 object identity design (v3 model)
- Object instance tracking (similar to face trace)
- Custom detector for stamps, guns, etc.
- TKG integration for object-face-speaker graph
- Upgrade path: yolov5nu → yolov8m, fine-tune, zero-shot
2026-05-09 14:22:37 +08:00
Accusys
19669a1f91 refactor: model naming v1(base)/v2, Qdrant collection naming
- Phase 1 = v1 (base model, sentence chunk embedding)
- Phase 2 = v2 (full pipeline + 5W1H)
- Naming leaves room for v3, v4, etc.
- Qdrant collection: momentry_dev_v1 (active model under dev)
- Release packaging exports Qdrant points snapshot
2026-05-09 14:14:04 +08:00
Accusys
227c647a43 docs: momentry model vs core architecture
Pipeline = training → produces momentry model per video
Core = inference engine → serves APIs from model
Phase 1 = tiny model (sentence chunks)
Phase 2 = full model (complete + 5W1H)
2026-05-09 14:03:00 +08:00
Accusys
28652f5b76 feat: phased release packaging (Phase 1 + Phase 2)
- scripts/release_pack.py: packages output_json + schema + chunks + vectors
- Phase 1: triggered after ASR+ASRX+Rule 1+vectorization (sentence chunk delivery)
- Phase 2: triggered after full pipeline + 5W1H Agent (full delivery)
- Both phases include all available {uuid}.*.json files
- Non-overlapping directories: release/phase1/ and release/phase2/
2026-05-09 13:58:55 +08:00
Accusys
7237a1811e feat: verification agent for processor output validation
- New src/verification/ module: verify_output() checks JSON structure/completeness per processor type
- Worker: after processor succeeds, verification agent gates the result
- Passed -> mark completed + cleanup_temp_files (remove .tmp/.partial/.err/timestamp backups)
- Failed -> mark failed with verification details, preserve files for inspection
- cleanup_temp_files() keeps only the canonical {uuid}.{proc}.json
2026-05-09 13:30:00 +08:00
Accusys
b902763d45 feat: trace chunks with co-appearance relationships
- New trace_ingest module: creates chunks for each face trace (time + bbox + ASR text)
- Computes pairwise time overlaps between traces -> co_appearances in metadata
- Worker auto-triggers after face trace store + Qdrant sync
- SearchFilters: chunk_type filter (sentence/cut/trace/visual)
- SearchFilters: co_appears_with_trace_id filter
2026-05-09 06:18:32 +08:00
Accusys
9f5afd1b86 fix: file-based source of truth for worker + backup protocol
- Worker: check {uuid}.{processor}.json existence before starting processor
- Worker: timestamp-copy backup existing output files before re-run (no delete, no overwrite)
- Executor: partial output saved as .json.partial (not .json) to avoid false completion
- Start script: removed set-e, log dir changed to momentry/logs, Qdrant collection status fix
- docs: M4 release incident report + M4/M5 collaboration protocol
2026-05-09 05:32:13 +08:00
Warren
2b23d1cfbd feat: update core API, database layer, and worker modules
- Remove unused imports (n8n_search, universal_search, Client, Arc, etc.)
- Update API endpoints for identity, face recognition, search
- Fix postgres_db.rs search_videos parent_uuid column
- Add snapshot API and identity agent API
- Clean up backup files (.bak, .bak2)
2026-04-30 15:07:02 +08:00
Warren
59809dae1f chore: backup before migration to new repo 2026-04-23 16:46:02 +08:00
Warren
2393d81a3f feat: fix Chinese text search and duplicate chunk_id bug
- Add helper functions to extract text from nested content structure
- Update SearchResult to include uuid field
- Add PostgreSQL function get_chunk_by_chunk_id_and_uuid to handle duplicate chunk_ids
- Update Qdrant search functions to extract uuid from payload
- Change embedding model to nomic-embed-text-v2-moe:latest
- Update Qdrant collection name to momentry_rule1
- Fix MongoDB authentication and disable cache for development
- Improve error handling in processor.rs
- Update documentation with new embedding model
2026-03-29 04:44:28 +08:00
Warren
82955504f3 feat: 新增 Job Worker 系統與 API 文檔全面更新 2026-03-26 16:16:34 +08:00
Warren
ceb33877ff docs: change media_url to file_path in API response 2026-03-25 16:39:48 +08:00
Warren
dacfb7e083 docs: clarify media_url is auto-generated and may not be accessible 2026-03-25 16:33:10 +08:00
Warren
fb60858cec docs: clarify media_url meaning in search API 2026-03-25 16:28:44 +08:00
Warren
f1d7077e40 docs: fix media_url example to show realistic filename 2026-03-25 16:27:06 +08:00
Warren
4f402c873b docs: add SFTPGo demo credentials to training manual 2026-03-25 16:23:46 +08:00
Warren
a89d94bc67 docs: update SFTPGo host to sftpgo.momentry.ddns.net 2026-03-25 16:21:15 +08:00
Warren
17cab667f9 docs: add chunk API usage, playback format, and API examples 2026-03-25 16:06:11 +08:00
Warren
f8925ab994 docs: update API docs with cache/unregister endpoints and marcom training refs 2026-03-25 15:56:29 +08:00
Warren
dac2b234d0 docs: add version history tables to all training docs 2026-03-25 15:54:01 +08:00
Warren
67c8c60ceb docs: add search endpoint documentation with chunk details 2026-03-25 15:51:30 +08:00
Warren
c5ba252d89 docs: update training docs with cache/unregister APIs 2026-03-25 15:49:24 +08:00
Warren
e4d3365ada feat: add cache toggle, unregister API and chunk training docs
- Add POST /api/v1/config/cache for cache toggle
- Add POST /api/v1/unregister for video deletion
- Add CHUNK_DATA_STRUCTURE.md for marcom training
- Fix processor_results query in delete_video
2026-03-25 15:44:47 +08:00
Warren
de80b96c15 docs: add PHP examples for WordPress integration 2026-03-25 15:32:07 +08:00
Warren
f5436c7b63 docs: add training manual and workflow guide for marcom team 2026-03-25 15:27:47 +08:00
accusys
383201cacd feat: Initial v0.9 release with API Key authentication
## v0.9.20260325_144654

### Features
- API Key Authentication System
- Job Worker System
- V2 Backup Versioning

### Bug Fixes
- get_processor_results_by_job column mapping

Co-authored-by: OpenCode
2026-03-25 14:53:41 +08:00
accusys
05683c1715 feat: add v2 backup versioning system
- Add BACKUP_VERSIONING.md with comprehensive backup management
- Update backup_all.sh with v2 version marking
  - v2 naming format: {service}_{type}_v2_{date}_{time}.{ext}
  - Fixed MongoDB backup path to /opt/homebrew/var/mongodb
  - Added momentry_output backup for probe.json files
  - Added restore functions for v2 format
- Update backup_monitor.sh for v2 filename parsing
- Updated VIDEO_REGISTRATION.md with Probe API documentation
- Updated JOB_WORKER_IMPLEMENTATION_PLAN.md status to implemented
- Updated MOMENTRY_CORE_MONITORING.md with Job Worker monitoring
- Updated SERVICES.md with Momentry Playground and Job Worker info
2026-03-25 14:53:41 +08:00
accusys
1122dd977c docs: add Momentry Playground and Job Worker to SERVICES.md
- Add Momentry Playground binary entry (port 3003, dev environment)
- Add Job Worker architecture and monitoring section
- Add Momentry API vs Playground comparison table
- Add Job Worker environment variables documentation
- Add SQL monitoring commands for jobs and processors
2026-03-25 14:53:41 +08:00
accusys
44cf1ee4b6 docs: update for new architecture (Probe API, Job Worker)
- VIDEO_REGISTRATION.md: Add Probe API reference and comparison table
- JOB_WORKER_IMPLEMENTATION_PLAN.md: Update status to implemented
- MOMENTRY_CORE_MONITORING.md: Add Job Worker monitoring section
  - monitor_jobs and processor_results table docs
  - Worker status check commands
  - Redis job monitoring commands
2026-03-25 14:53:41 +08:00
accusys
f27e51a905 feat: add POST /api/v1/probe endpoint
- Add ProbeRequest/ProbeResponse structures
- Support relative and absolute paths
- Cache probe.json for repeated requests
- Return video metadata (uuid, duration, width, height, fps)
- Include cached flag to indicate cache hit
- Export FormatInfo and StreamInfo from probe module
- Update API_ENDPOINTS.md documentation
2026-03-25 14:53:41 +08:00
accusys
a95e5c7e5c docs: add configurable Redis key prefix to Redis Keys and Monitoring docs
- Add new section 2 in MOMENTRY_CORE_REDIS_KEYS.md explaining configurable prefix
- Update environment variables to include MOMENTRY_REDIS_PREFIX
- Update Rust implementation examples to use REDIS_KEY_PREFIX static
- Add warning note in MOMENTRY_CORE_MONITORING.md about configurable prefix
- Update shell scripts to use REDIS_PREFIX environment variable
- Document default prefixes: momentry: (production), momentry_dev: (development)
2026-03-25 14:53:41 +08:00
accusys
732ef9296b feat: add momentry_playground binary for development
- Add separate momentry_playground binary with distinct configuration
- Production (momentry): Port 3002, Redis prefix 'momentry:'
- Development (momentry_playground): Port 3003, Redis prefix 'momentry_dev:'
- Add SERVER_PORT and REDIS_KEY_PREFIX config via environment variables
- Replace all hardcoded Redis key prefixes with configurable values
- Create .env.development for playground environment settings
- Update .env with production defaults
- Add dotenv dependency for environment file loading

Configuration isolation allows running both binaries simultaneously
without port conflicts or Redis key collisions.
2026-03-25 14:53:41 +08:00
accusys
13e208b569 feat: Add HTTP API for progress monitoring
- Add /api/v1/progress/:uuid endpoint for real-time progress查询
- Implement Redis Hash storage for progress persistence
- Increase DB connection pool (5->10)
- Add get_processor_status method to RedisClient
- Update DEVELOPMENT_LOG with HTTP API implementation

Test: curl http://127.0.0.1:3002/api/v1/progress/<uuid>
2026-03-25 14:53:41 +08:00
accusys
cb1fcd4846 docs: Add video chunk specification
- Define three chunk types: Sentence, Cut, TimeBased
- Support overlapping chunks
- Frame-accurate timestamps
- Include content and metadata structures
- Add PostgreSQL schema
- Document Rust data structures and splitter implementation
2026-03-25 14:53:41 +08:00
accusys
1e5438866b docs: Add JSON output specification
- Define all JSON output file types and naming conventions
- Document Probe, ASR, ASRx, OCR, YOLO, Face, Pose structures
- Include field descriptions and data types
- Add processing pipeline flow
- Document database storage schema
2026-03-25 14:53:41 +08:00
accusys
97dfbf3b76 docs: Add version quick reference sections
- Add version summary table to SERVICES.md
- Add version quick reference to PYTHON.md
- Add version quick reference to NODEJS.md
- Update related documents references
2026-03-25 14:53:41 +08:00
accusys
ccd510a78e docs: Add Python and Node.js integration specification
- Architecture overview for mixed runtime environments
- Python version management with venv
- Node.js version locking for n8n
- Isolation principles for coexisting environments
- Workflow integration patterns
- Monitoring configuration
- Troubleshooting guide
- New service decision tree
2026-03-25 14:53:41 +08:00
accusys
f699d313c1 docs: Add Rust development specification
- Project structure and module design
- Code style and naming conventions
- Error handling patterns
- Async programming guidelines
- External process integration (Python scripts)
- Testing strategy
- Logging with tracing
- Performance optimization
- Security considerations
- CLI command design
- Version control guidelines
2026-03-25 14:53:41 +08:00
accusys
75edf0aa71 Initial commit: Momentry Core v0.1
- Rust-based digital asset management system
- Video analysis: ASR, OCR, YOLO, Face, Pose
- RAG capabilities with Qdrant vector database
- Multi-database support: PostgreSQL, Redis, MongoDB
- Monitoring system with launchd plists
- n8n workflow automation integration
2026-03-25 14:53:41 +08:00