Skip to content

feat: deliver personal center usage analytics - #4

Merged
knqiufan merged 11 commits into
mainfrom
codex/personal-center-usage-analytics
Aug 13, 2026
Merged

feat: deliver personal center usage analytics#4
knqiufan merged 11 commits into
mainfrom
codex/personal-center-usage-analytics

Conversation

@knqiufan

Copy link
Copy Markdown
Owner

Summary

  • deliver the complete P0-P8 personal center and usage analytics plan
  • add local profile editing and managed avatars, usage overview, 365-day activity calendar, and 30-day model trend
  • unify Rig/MCP/Sidecar usage capture into an append-only SQLite ledger with exact/estimated/legacy/unknown quality semantics
  • add idempotent finalize, lifecycle/import-export behavior, lazy rebuildable rollups, and Schema v16 repair for installations that reached v15 before rollup tables existed
  • synchronize architecture, implementation, UI, project-structure, and development-status documentation

Data and migration safety

  • Schema v15 owns user_profiles and llm_usage_events as durable facts
  • Schema v16 only creates/recreates disposable usage rollup tables
  • upgrades create misaka.pre-v16.sqlite3 before migration
  • the migration regression test reproduces a v15 database with ledger rows but missing rollups, then verifies preservation, dashboard rebuild, idempotency, and backup restoration

Verification

  • cargo test --all-features -j1: 511 tests passed
  • cargo test --all-features --test db_migrations_tests -j1: 22 passed
  • cargo check --all-features
  • cargo fmt --all --check
  • npm test: 50 files / 313 tests passed
  • npm run build
  • Sidecar delivery gate: 41 pytest tests passed
  • 100k usage-event hot dashboard P95: 64.8ms

cargo nextest run --all-features --profile ci was attempted locally during P8, but Windows ended rustc with OS 1455 (paging-file resource limit). The repository-documented serial fallback completed successfully; no cargo clean was used.

@knqiufan
knqiufan merged commit 154f98b into main Aug 13, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant