mirror of
https://github.com/This-weiyuqing/mi-fitness-health.git
synced 2026-10-17 18:55:37 +08:00
29 lines
1.8 KiB
Python
29 lines
1.8 KiB
Python
"""创建本机专用合成数据库;运行中不调用云端接口。"""
|
|
import sqlite3
|
|
import json
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
ROOT = Path(__file__).resolve().parents[2]
|
|
sys.path.insert(0, str(ROOT / 'work/mi-fitness-mcp-cn/src'))
|
|
from mi_fitness_mcp.models import DailyActivity
|
|
from mi_fitness_mcp.storage import Database
|
|
|
|
target = ROOT / 'work/audit2-container-validation'
|
|
target.mkdir(exist_ok=True)
|
|
(target / 'state/data').mkdir(parents=True, exist_ok=True)
|
|
(target / 'state/credentials').mkdir(parents=True, exist_ok=True)
|
|
(target / 'state/config/mi-fitness-mcp').mkdir(parents=True, exist_ok=True)
|
|
(target / 'state/config/mi-fitness-mcp/config.json').write_text(json.dumps({
|
|
'mode': 'mi_fitness_cloud', 'region': 'cn', 'timezone': 'Asia/Shanghai',
|
|
'database_path': '/state/data/mi_fitness.db', 'auto_sync_on_start': False}), encoding='utf-8')
|
|
(target / 'keyring_master').write_text('synthetic-only-keyring-unlock-value-20261017', encoding='utf-8')
|
|
db = Database(target / 'state/data/mi_fitness.db')
|
|
db.insert_daily_activity(DailyActivity(id='synthetic-day', provider='mi_fitness', source_type='cloud_session',
|
|
user_id='synthetic-owner', date='2026-10-15', steps=4691, active_kcal=596, distance_m=2979))
|
|
with db._get_connection() as conn:
|
|
conn.execute('CREATE TABLE IF NOT EXISTS api_keys (key TEXT PRIMARY KEY,label TEXT,user_id TEXT NOT NULL,pass_token TEXT NOT NULL,region TEXT NOT NULL DEFAULT \'cn\',created_at TEXT NOT NULL,last_used_at TEXT,revoked INTEGER NOT NULL DEFAULT 0)')
|
|
conn.execute("INSERT OR IGNORE INTO api_keys(key,label,user_id,pass_token,region,created_at) VALUES ('mif_sk_syntheticlocal','synthetic only','synthetic-owner','synthetic-token','cn','2026-10-17')")
|
|
conn.commit()
|
|
print('Synthetic container fixture ready; no real health records or credentials used.')
|