Enhance project structure and add new files for enrichment and analysis

- Updated AGENTS.md to reflect changes in CLI commands and module organization, including the addition of an enrichment step and new functional modules.
- Introduced analysis.json, identities.json, inventory.csv, and plan.json to support enriched metadata and execution planning.
- Added CODE_IMPROVEMENTS.md to document identified code issues and proposed solutions for future enhancements.
- Updated README.md to include new enrichment features and configuration options.
- Removed unused dependency on ffmpeg-python from pyproject.toml.

These changes improve the overall functionality and maintainability of the Video Library Manager project.
This commit is contained in:
windyboy
2026-02-10 16:56:17 +08:00
parent f0c951ad7f
commit dcd87754cf
39 changed files with 145509 additions and 642 deletions
+5 -3
View File
@@ -11,6 +11,7 @@ from pathlib import Path
from typing import Union
from vlm.config import Config
from vlm.utils import ensure_utc, utc_now
from vlm.models import (
ExecutionPlan,
FileOperation,
@@ -48,7 +49,7 @@ def generate_plan(
return ExecutionPlan(
plan_id=str(uuid.uuid4()),
created_at=datetime.now(),
created_at=utc_now(),
operations=operations,
summary=summary
)
@@ -391,10 +392,11 @@ def load_plan(input_path: Path) -> ExecutionPlan:
for op in plan_dict["operations"]
]
# Reconstruct ExecutionPlan
# Reconstruct ExecutionPlan (normalize naive datetime to UTC for backward compatibility)
created_at = ensure_utc(datetime.fromisoformat(plan_dict["created_at"]))
return ExecutionPlan(
plan_id=plan_dict["plan_id"],
created_at=datetime.fromisoformat(plan_dict["created_at"]),
created_at=created_at,
operations=operations,
summary=plan_dict["summary"]
)