javilofe4/tryzub-ledger

GitHub: javilofe4/tryzub-ledger

一个用于结构化记录、验证和分析俄乌战争公开信息的开源情报平台,支持来源归属、置信度评分与地理空间映射。

Stars: 0 | Forks: 0

# Tryzub Ledger Tryzub Ledger 是一个采用 AGPL-3.0 协议的开源情报平台,用于记录、结构化、验证、映射和分析有关俄罗斯对乌克兰战争的公开信息。 它面向需要带归属记录、来源审查、地理空间上下文、置信度评分和多语言展示的分析师、记者、研究人员和民间社会用户。 本项目是一个独立的社区倡议。它不隶属于乌克兰政府、UNITED24、NATO、任何军方或任何情报机构。如需访问乌克兰官方捐赠和参考网站,请访问 https://u24.gov.ua/。 ## 安全边界 Tryzub Ledger 可以通过归属和置信度评分来记录公开事件、官方声明、来源矛盾、损失、袭击、地理空间参考和分析背景。 它绝不能提供目标定位辅助、战术建议、行动指导、伤害他人的说明,或捏造的冲突事件。 ## 技术栈 - Frontend:Next.js、TypeScript、MapLibre GL - Backend:Python、FastAPI、SQLAlchemy、Alembic - Database:PostgreSQL with PostGIS - Workers:Celery with Redis - Deployment:Docker Compose - License:AGPL-3.0 ## Docker 启动 ``` copy .env.example .env docker compose up --build ``` 服务: - Frontend:http://localhost:3000 - Backend API:http://localhost:8000 - Backend 文档:http://localhost:8000/docs - 健康检查:http://localhost:8000/health Compose 启动时会等待 Postgres 就绪,应用 Alembic migrations,填充冲突和来源注册表记录,然后启动 API。 ## Backend 本地设置 ``` cd backend python -m venv .venv .venv\Scripts\activate pip install -e ".[dev]" alembic upgrade head python -m app.scripts.seed_sources pytest ``` 常用命令: ``` python -m app.scripts.ingest --enabled python -m app.scripts.ingest --source isw celery -A app.workers.celery_app.celery worker --loglevel=info ``` 除非明确实现,Connectors 均为 stubs。Stub connectors 会返回空结果,且不得捏造事件。 ## Frontend 本地设置 ``` cd frontend npm install npm run dev npm run typecheck ``` 设置 `NEXT_PUBLIC_API_BASE_URL=http://localhost:8000`,以便本地前端访问 backend。 ## Migrations Schema 变更通过 Alembic 进行管理: ``` cd backend alembic revision --autogenerate -m "describe change" alembic upgrade head ``` `AUTO_CREATE_DB=true` 仅作为显式的开发降级方案,默认处于禁用状态。 ## 来源填充 填充命令是幂等的: ``` cd backend python -m app.scripts.seed_sources ``` 它会创建或更新主冲突记录和来源注册表条目。它不会创建冲突事件。 ## 数据政策 严禁使用虚假战争数据。事件必须来自有记录的公开来源、分析师手动录入,或经过严格审查且带有归属的 ingestion pipelines。官方声明仅作为声明存储,而非经核实的事实。 ## 已知限制 - 尚未实现完整的登录/认证功能;admin 路由使用 `ADMIN_TOKEN`。 - Source connectors 大多处于规划阶段或为手动操作,在安全实现之前不会返回任何记录。 - 尚未实现从原始条目中进行事件标准化。 - 报告起草和基于事实的 chat 均为占位符。 - Docker 构建的完整性检查取决于本地是否能够访问用于 Python 和 Node 依赖项的包注册表。
标签:AV绕过, FastAPI, PostgreSQL, 代码示例, 地理信息系统, 搜索引擎查询, 数据分析, 测试用例, 请求拦截, 逆向工具