codex-usage-tracking 0.13.0__tar.gz → 0.13.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/.codex-plugin/plugin.json +1 -1
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/CHANGELOG.md +4 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/PKG-INFO +1 -1
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/cli-json-schemas.md +1 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/cli-reference.md +2 -1
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/development.md +5 -5
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/one-dot-oh-readiness.md +8 -8
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/pyproject.toml +1 -1
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/skills/codex-usage-tracker/scripts/run_mcp.py +2 -2
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/__init__.py +1 -1
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/diagnostics.py +3 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/parser_diagnostics.py +12 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/json_contract_diagnostics.py +25 -8
- codex_usage_tracking-0.13.1/src/codex_usage_tracker/diagnostics/guided_summary.py +544 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_constants.py +2 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_payloads.py +10 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_report.py +53 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshots.py +34 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_diagnostics_snapshots.js +58 -6
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/diagnostic_routes.py +11 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/routes.py +2 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracking.egg-info/PKG-INFO +1 -1
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracking.egg-info/SOURCES.txt +1 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_cli_lifecycle.py +16 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_cli_parser_diagnostics.py +8 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_server.py +15 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_diagnostic_snapshot_report.py +2 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_diagnostic_snapshots.py +75 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/.mcp.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/AGENTS.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/CONTRIBUTING.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/LICENSE +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/MANIFEST.in +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/README.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/SECURITY.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/assets/icon.svg +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/adoption-hardening-roadmap.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/architecture/decisions/0001-package-domain-boundaries.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/architecture-boundary-map.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/architecture.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-call-investigator-evidence.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-call-investigator-preview.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-call-investigator.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-calls-preview.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-calls.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-details.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-diagnostics-git-expanded.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-diagnostics.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-insights.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/dashboard-threads.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/plugin-prompts.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/plugin-thread-leaderboard.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/ux/call-detail-panel.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/ux/insight-overview.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/assets/ux/thread-investigation.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/call-drilldown-performance-checklist.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/dashboard-guide.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/first-five-minutes.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/install.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/maintainability-roadmap.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/maintainability-scorecard.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/mcp.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/pricing-and-credits.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/privacy.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/ui-ux-improvement-plan.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/docs/usage-drain-modeling.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/scripts/benchmark_synthetic_history.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/scripts/check_release.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/scripts/check_wemake_baseline.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/scripts/install_local_plugin.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/scripts/model_usage_drain.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/scripts/smoke_installed_package.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/setup.cfg +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/skills/codex-usage-api/SKILL.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/skills/codex-usage-tracker/SKILL.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/__main__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/allowance.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/__main__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/config.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/dashboard.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/main.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/mcp_server.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/output.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/parser.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/cli/plugin_installer.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/action_timing.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/constants.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/loader.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/reader.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/serialized.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/summaries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/token_estimates.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/context/values.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/api_payloads.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/call_origin.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/formatting.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/i18n.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/json_contract_cli.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/json_contract_common.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/json_contract_server.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/json_contract_validation.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/json_contracts.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/models.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/paths.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/projects.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/redaction.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/schema.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/core/threads.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/dashboard/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/dashboard/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/dashboard/assets.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/dashboard/pricing_snapshot.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/action_hints.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/fact_classifiers.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/facts.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/mcp.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/reports.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_analysis.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_concentration.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_events.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_rows.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_source_logs.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/snapshot_source_scan.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/diagnostics/types.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/mcp_server.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/parser/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/parser/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/parser/jsonl_v1.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/parser/jsonl_values.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/parser/state.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/assets/icon.svg +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_actions.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_analysis.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_call.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_call_diagnostics.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_call_investigator.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_cells.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_data.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_detail.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_details.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_diagnostics.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_diagnostics_facts.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_events.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_filters.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_format.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_i18n.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_insights.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_insights.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_layout.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_live.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_payload_cache.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_responsive.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_state.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_status.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_tables.css +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_tables.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_template.html +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/dashboard_tooltips.js +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/ar.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/de.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/en.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/es.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/fr.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/it.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/ja.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/ko.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/pt.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/ru.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/vi.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/dashboard/locales/zh-Hans.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-call-investigator-evidence.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-call-investigator-preview.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-call-investigator.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-calls-preview.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-calls.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-details.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-diagnostics-git-expanded.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-diagnostics.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-insights.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/dashboard-threads.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/plugin-prompts.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/assets/plugin-thread-leaderboard.png +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/docs/dashboard-guide.html +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/rate_cards/codex-credit-rates.json +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/skills/codex-usage-api/SKILL.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_data/skills/codex-usage-tracker/SKILL.md +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/plugin_installer.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/allowance.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/allowance_config.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/allowance_rate_card.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/allowance_text.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/allowance_usage.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/config.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/costing.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/estimates.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/pricing/openai.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/filters.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/project_summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/recommendation_builder.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/recommendations.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/reports/support.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/call_detail.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/call_lists.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/context.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/context_settings.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/dashboard_shell.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/diagnostic_facts.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/diagnostic_snapshots.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/handler.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/live_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/live_rows.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/open_investigator.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/recommendations.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/request_guards.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/responses.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/status.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/threads.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/usage_refresh.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/server/utils.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/api.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/connection.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/dashboard_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/diagnostic_call_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/diagnostic_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/exports.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/query_sql.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/refresh.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/rows.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/schema.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/sources.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/summary_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/thread_summaries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/usage_api_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/usage_record_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/store/usage_timing.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/support.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/allowance_breakpoints.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/allowance_fits.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/allowance_online.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/boundary_delta.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/boundary_delta_core.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/boundary_delta_rows.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/boundary_delta_summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/boundary_scopes.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/boundary_summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/capacity_specs.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/error_diagnostics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/feature_history.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/features.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/grace.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/history_state.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/model.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/predictive.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/predictive_specs.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/proxy_fit.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/regime_labels.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/regime_segments.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/regression.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/reports.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/spans.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/state_buckets.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/state_diagnostics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/summary_metrics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/thread_curves.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/time_series.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/token_components.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/transition_gates.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/transition_metrics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/types.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/utils.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/walk_forward.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracker/usage_drain/walk_forward_rows.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracking.egg-info/dependency_links.txt +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracking.egg-info/entry_points.txt +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracking.egg-info/requires.txt +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/src/codex_usage_tracking.egg-info/top_level.txt +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/__init__.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_cli_module_entrypoints.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_cli_release.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_mcp_integration.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_mcp_launcher.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/cli/test_plugin_installer.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_action_timing.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_evidence.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_scan.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_serialized.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_summaries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_token_estimates.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/context/test_context_values.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_call_origin.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_formatting.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_i18n.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_json_contracts.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_privacy.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_projects.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_redaction.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_schema.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/core/test_threads.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_data.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_diagnostics_snapshots.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_live.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_payload.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_pricing_snapshot.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_state.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/dashboard/test_dashboard_status.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_diagnostic_fact_classifiers.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_diagnostic_reports.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_diagnostic_snapshot_events.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_diagnostic_snapshot_source_scan.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/diagnostics/test_doctor_first_run.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/parser/test_parser.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/parser/test_parser_inspect_log.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/parser/test_parser_state.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/pricing/test_allowance.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/pricing/test_pricing.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/reports/test_recommendations.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/reports/test_support.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_call_detail.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_call_lists.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_context.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_context_settings.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_dashboard_shell.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_diagnostic_facts.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_diagnostic_refresh_auth.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_diagnostic_snapshots.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_live_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_live_rows.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_open_investigator.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_recommendations.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_request_guards.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_responses.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_routes.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_status.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_threads.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/server/test_server_usage_refresh.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store/test_store_dashboard_mcp.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store/test_store_dashboard_queries.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store/test_store_large_batches.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store/test_store_migrations.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store/test_store_query_sql.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store/test_store_sources.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/store_dashboard_helpers.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_allowance_fits.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_boundary_delta.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_boundary_delta_summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_boundary_summary.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_error_diagnostics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_feature_history.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_model.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_one_percent_capacity.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_predictive.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_regime_segments.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_regression.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_report_records.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_reports.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_state_buckets.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_state_diagnostics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_summary_metrics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_thread_curves.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_token_components.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_transition_gates.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_transition_metrics.py +0 -0
- {codex_usage_tracking-0.13.0 → codex_usage_tracking-0.13.1}/tests/usage_drain/test_usage_drain_walk_forward.py +0 -0
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.13.1 - 2026-06-30
|
|
6
|
+
|
|
7
|
+
- Add guided usage-summary diagnostics across CLI, API, and dashboard to explain the largest aggregate drivers behind usage.
|
|
8
|
+
|
|
5
9
|
## 0.13.0 - 2026-06-30
|
|
6
10
|
|
|
7
11
|
- Add first-run onboarding docs covering install, setup, live-dashboard launch, empty-dashboard troubleshooting, plugin discovery, and safe issue diagnostics.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codex-usage-tracking
|
|
3
|
-
Version: 0.13.
|
|
3
|
+
Version: 0.13.1
|
|
4
4
|
Summary: Unofficial local Codex plugin and dashboard for investigating aggregate token usage, costs, caching, and thread patterns.
|
|
5
5
|
Author: Douglas Monsky
|
|
6
6
|
License-Expression: MIT
|
|
@@ -56,6 +56,7 @@ Tracked schema ids:
|
|
|
56
56
|
| `codex-usage-tracker-diagnostic-file-modifications-v1` | CLI `diagnostics file-modifications --json`, dashboard server `/api/diagnostics/file-modifications` |
|
|
57
57
|
| `codex-usage-tracker-diagnostic-read-productivity-v1` | CLI `diagnostics read-productivity --json`, dashboard server `/api/diagnostics/read-productivity` |
|
|
58
58
|
| `codex-usage-tracker-diagnostic-concentration-v1` | CLI `diagnostics concentration --json`, dashboard server `/api/diagnostics/concentration` |
|
|
59
|
+
| `codex-usage-tracker-diagnostic-guided-summary-v1` | CLI `diagnostics guided-summary --json`, dashboard server `/api/diagnostics/guided-summary` |
|
|
59
60
|
| `codex-usage-tracker-diagnostic-usage-drain-v1` | CLI `diagnostics usage-drain --json`, dashboard server `/api/diagnostics/usage-drain` |
|
|
60
61
|
| `codex-usage-tracker-session-v1` | CLI `session --json`, MCP `session_usage(response_format="json")` |
|
|
61
62
|
| `codex-usage-tracker-context-v1` | CLI `context`, MCP `usage_call_context` when raw context is explicitly enabled |
|
|
@@ -128,6 +128,7 @@ codex-usage-tracker diagnostics file-reads --refresh
|
|
|
128
128
|
codex-usage-tracker diagnostics file-modifications --refresh
|
|
129
129
|
codex-usage-tracker diagnostics read-productivity --refresh
|
|
130
130
|
codex-usage-tracker diagnostics concentration --refresh
|
|
131
|
+
codex-usage-tracker diagnostics guided-summary --refresh
|
|
131
132
|
codex-usage-tracker diagnostics fact-calls --fact-type compaction --fact-name post_compaction
|
|
132
133
|
```
|
|
133
134
|
|
|
@@ -135,7 +136,7 @@ Diagnostics expose structured event patterns and their associated token totals.
|
|
|
135
136
|
|
|
136
137
|
Snapshot diagnostics are persisted aggregate reports. Without `--refresh`, snapshot commands return the latest stored payload or a `missing` status. With `--refresh`, they recompute from indexed source logs and replace the stored section snapshot. Ordinary `refresh`, `open-dashboard`, and dashboard `Refresh` update usage rows only; they do not recompute diagnostic snapshots.
|
|
137
138
|
|
|
138
|
-
The snapshot sections answer different questions: `overview` summarizes usage rows and aggregate token totals, `tool-output` counts functions and terminal `Original token count` coverage, `commands` keeps command roots plus bounded safe child labels, `git-interactions` counts safe Git/GitHub CLI operations and token-count coverage, `file-reads` counts reader/path activity and allocated read-output tokens, `file-modifications` counts patch modification events and safe modified-path aggregates, `read-productivity` reports later-edit correlations for matching path keys,
|
|
139
|
+
The snapshot sections answer different questions: `overview` summarizes usage rows and aggregate token totals, `tool-output` counts functions and terminal `Original token count` coverage, `commands` keeps command roots plus bounded safe child labels, `git-interactions` counts safe Git/GitHub CLI operations and token-count coverage, `file-reads` counts reader/path activity and allocated read-output tokens, `file-modifications` counts patch modification events and safe modified-path aggregates, `read-productivity` reports later-edit correlations for matching path keys, `concentration` shows top-N token share by source/session, cwd/project, and day, and `guided-summary` turns aggregate usage patterns into a short "what is driving usage" report.
|
|
139
140
|
|
|
140
141
|
Diagnostic payloads are aggregate-only. They do not include prompts, assistant text, tool arguments, tool output, patch text, raw commands, command arguments, file contents, raw absolute paths, or JSONL fragments. Git interaction diagnostics persist only root and operation labels such as `git/status` or `gh/pr`, category counts, and token coverage; they do not persist branch names, remotes, file paths, tags, commit messages, PR titles, or release notes. File-read and file-modification diagnostics use basename-only path labels plus short irreversible hashes, read-productivity percentages are temporal correlations rather than proof that a read caused a later edit, and concentration reports use safe source/session, cwd, and day labels only.
|
|
141
142
|
|
|
@@ -38,7 +38,7 @@ fix/<issue-number>-short-description
|
|
|
38
38
|
docs/<issue-number>-short-description
|
|
39
39
|
chore/<issue-number>-short-description
|
|
40
40
|
test/<issue-number>-short-description
|
|
41
|
-
release/0.13.
|
|
41
|
+
release/0.13.1
|
|
42
42
|
hotfix/0.3.3
|
|
43
43
|
```
|
|
44
44
|
|
|
@@ -149,8 +149,8 @@ python scripts/smoke_installed_package.py --docker
|
|
|
149
149
|
To verify the public PyPI package instead of the local checkout:
|
|
150
150
|
|
|
151
151
|
```bash
|
|
152
|
-
python scripts/smoke_installed_package.py --from-pypi --version 0.13.
|
|
153
|
-
python scripts/smoke_installed_package.py --docker --from-pypi --version 0.13.
|
|
152
|
+
python scripts/smoke_installed_package.py --from-pypi --version 0.13.1
|
|
153
|
+
python scripts/smoke_installed_package.py --docker --from-pypi --version 0.13.1
|
|
154
154
|
```
|
|
155
155
|
|
|
156
156
|
`scripts/check_release.py` treats these public-package smoke commands as release-state claims. Keep their `--version` and `codex-usage-tracking==...` values aligned with `pyproject.toml`; the release gate fails when the docs claim a different public version. It also checks that install docs point at the real PyPI distribution, `codex-usage-tracking`, and keep the warning that `codex-usage-tracker` is a different PyPI package.
|
|
@@ -297,7 +297,7 @@ After the release branch merges, tag from updated `main`, not from an unreviewed
|
|
|
297
297
|
```bash
|
|
298
298
|
git switch main
|
|
299
299
|
git pull --ff-only
|
|
300
|
-
git tag -a v0.13.
|
|
300
|
+
git tag -a v0.13.1 -m "codex-usage-tracker 0.13.1"
|
|
301
301
|
git push origin v0.13.0
|
|
302
302
|
```
|
|
303
303
|
|
|
@@ -307,7 +307,7 @@ Do not create or push release tags without maintainer approval.
|
|
|
307
307
|
|
|
308
308
|
Publishing uses GitHub Actions Trusted Publishing through `.github/workflows/publish.yml`; do not upload from a local machine and do not add PyPI or TestPyPI API tokens.
|
|
309
309
|
|
|
310
|
-
The first public package release, `0.3.0`, was published on June 8, 2026. Patch release `0.3.1` followed the same day to ship the live-dashboard skill launch fix. Patch release `0.3.2` made dashboard launch refresh the default and added runtime enablement for context loading. Minor release `0.4.0` added Python 3.14 support, release recovery docs, stricter privacy/support-bundle regression coverage, and large-history benchmark thresholds. Patch release `0.4.1` was published by workflow dispatch from `main`; it hardened the PyPI publish workflow and checked off completed 1.0 readiness gates. Minor release `0.5.0` added dashboard localization support and initial language catalogs. Minor release `0.6.0` is the performance and call-drilldown release with SQL-backed live API slices, materialized thread summaries, faster evidence loading, and dashboard runtime module refactors. Patch release `0.6.1` aligns the final README/package screenshots and companion plugin assets. Minor release `0.7.0` adds observed usage snapshots and the latest-observed dashboard card while keeping raw evidence on demand only. Minor release `0.8.0` adds aggregate diagnostics, source-offset context seeking, and live dashboard loading hardening. Patch release `0.8.1` improves Diagnostics fact table readability with pinned fact names and sortable fact columns. Minor release `0.9.0` adds persisted diagnostic snapshots, on-demand diagnostic refresh, tool/command/file-read/concentration reports, and Diagnostics dashboard panels. Minor release `0.10.0` adds Git/GitHub CLI diagnostics, file-modification diagnostics, and derived call timing fields across the dashboard and API. Patch release `0.10.1` adds lightweight action timing to context evidence and ships the synthetic Git Interactions README screenshot. Minor release `0.11.0` adds usage-drain diagnostic reports, projected weekly credit charts, and cumulative thread cost curves. Patch release `0.11.1` improves the Diagnostics weekly projection table and stale snapshot reload controls. Patch release `0.11.2` fixes served dashboard shell hydration and hardens the synthetic source-log benchmark smoke test. Patch release `0.11.3` fixes Windows live dashboard asset MIME handling. Patch release `0.11.4` fixes large-history setup refresh failures from SQLite variable limits. Minor release `0.12.0` ships the maintainability architecture repair, dashboard diagnostics hardening, Agent Maintainer ratchets, and warning-clean test suite. Patch release `0.12.1` ships the package-domain boundary split, allowance helper split, refreshed maintainability baselines, and CLI module entrypoint fix. Minor release `0.13.0` ships adoption-hardening onboarding, first-run diagnostics, support-bundle issue guidance, and installed-wheel lifecycle smoke hardening.
|
|
310
|
+
The first public package release, `0.3.0`, was published on June 8, 2026. Patch release `0.3.1` followed the same day to ship the live-dashboard skill launch fix. Patch release `0.3.2` made dashboard launch refresh the default and added runtime enablement for context loading. Minor release `0.4.0` added Python 3.14 support, release recovery docs, stricter privacy/support-bundle regression coverage, and large-history benchmark thresholds. Patch release `0.4.1` was published by workflow dispatch from `main`; it hardened the PyPI publish workflow and checked off completed 1.0 readiness gates. Minor release `0.5.0` added dashboard localization support and initial language catalogs. Minor release `0.6.0` is the performance and call-drilldown release with SQL-backed live API slices, materialized thread summaries, faster evidence loading, and dashboard runtime module refactors. Patch release `0.6.1` aligns the final README/package screenshots and companion plugin assets. Minor release `0.7.0` adds observed usage snapshots and the latest-observed dashboard card while keeping raw evidence on demand only. Minor release `0.8.0` adds aggregate diagnostics, source-offset context seeking, and live dashboard loading hardening. Patch release `0.8.1` improves Diagnostics fact table readability with pinned fact names and sortable fact columns. Minor release `0.9.0` adds persisted diagnostic snapshots, on-demand diagnostic refresh, tool/command/file-read/concentration reports, and Diagnostics dashboard panels. Minor release `0.10.0` adds Git/GitHub CLI diagnostics, file-modification diagnostics, and derived call timing fields across the dashboard and API. Patch release `0.10.1` adds lightweight action timing to context evidence and ships the synthetic Git Interactions README screenshot. Minor release `0.11.0` adds usage-drain diagnostic reports, projected weekly credit charts, and cumulative thread cost curves. Patch release `0.11.1` improves the Diagnostics weekly projection table and stale snapshot reload controls. Patch release `0.11.2` fixes served dashboard shell hydration and hardens the synthetic source-log benchmark smoke test. Patch release `0.11.3` fixes Windows live dashboard asset MIME handling. Patch release `0.11.4` fixes large-history setup refresh failures from SQLite variable limits. Minor release `0.12.0` ships the maintainability architecture repair, dashboard diagnostics hardening, Agent Maintainer ratchets, and warning-clean test suite. Patch release `0.12.1` ships the package-domain boundary split, allowance helper split, refreshed maintainability baselines, and CLI module entrypoint fix. Minor release `0.13.0` ships adoption-hardening onboarding, first-run diagnostics, support-bundle issue guidance, and installed-wheel lifecycle smoke hardening. Patch release `0.13.1` adds guided usage-summary diagnostics across CLI, API, and dashboard.
|
|
311
311
|
|
|
312
312
|
- GitHub Release: `https://github.com/douglasmonsky/codex-usage-tracker/releases/tag/v0.3.0`
|
|
313
313
|
- GitHub Release: `https://github.com/douglasmonsky/codex-usage-tracker/releases/tag/v0.3.1`
|
|
@@ -24,12 +24,12 @@ Not guaranteed:
|
|
|
24
24
|
|
|
25
25
|
## 1. Public Install And Package Metadata
|
|
26
26
|
|
|
27
|
-
- [x] Verify the current public PyPI version is visible as `0.13.
|
|
28
|
-
- [x] Verify public venv install for `0.13.
|
|
29
|
-
- [x] Verify public pipx install path for `0.13.
|
|
27
|
+
- [x] Verify the current public PyPI version is visible as `0.13.1`: `python -c "import json, urllib.request; print(json.load(urllib.request.urlopen('https://pypi.org/pypi/codex-usage-tracking/json'))['info']['version'])"`.
|
|
28
|
+
- [x] Verify public venv install for `0.13.1`: `python -m venv /tmp/codex-usage-pypi-smoke && . /tmp/codex-usage-pypi-smoke/bin/activate && python -m pip install codex-usage-tracking==0.13.1 && codex-usage-tracker --version`.
|
|
29
|
+
- [x] Verify public pipx install path for `0.13.1`: `PIPX_HOME=/tmp/codex-usage-pipx-home PIPX_BIN_DIR=/tmp/codex-usage-pipx-bin pipx install codex-usage-tracking==0.13.1 && /tmp/codex-usage-pipx-bin/codex-usage-tracker --version`.
|
|
30
30
|
- [x] Verify installed package resources from a built wheel: `python scripts/smoke_installed_package.py`.
|
|
31
31
|
- [x] Verify installed package resources in Linux Docker: `python scripts/smoke_installed_package.py --docker`.
|
|
32
|
-
- [x] Verify public PyPI package in Docker: `python scripts/smoke_installed_package.py --docker --from-pypi --version 0.13.
|
|
32
|
+
- [x] Verify public PyPI package in Docker: `python scripts/smoke_installed_package.py --docker --from-pypi --version 0.13.1`.
|
|
33
33
|
- [x] Verify PyPI metadata names remain unchanged: `python scripts/check_release.py`.
|
|
34
34
|
- [x] Add Python 3.14 as an official support target after CI, package classifiers, docs, and installed-package smoke coverage were added. Docker smoke coverage uses `python:3.14-slim` by default. Track this in issue #12.
|
|
35
35
|
|
|
@@ -134,14 +134,14 @@ Not guaranteed:
|
|
|
134
134
|
|
|
135
135
|
## Evidence References
|
|
136
136
|
|
|
137
|
-
These references are the concrete proof behind completed checklist items. Public package smoke commands are version-specific to `0.13.
|
|
137
|
+
These references are the concrete proof behind completed checklist items. Public package smoke commands are version-specific to `0.13.1`; all repo tests use synthetic or aggregate-only data.
|
|
138
138
|
|
|
139
139
|
### Public Install And Package Metadata
|
|
140
140
|
|
|
141
141
|
- Public PyPI version, public venv install, and public pipx install are proven by the exact public-install commands in section 1.
|
|
142
142
|
- Built-wheel and installed-resource coverage is proven by `scripts/smoke_installed_package.py` and `tests/test_cli_release.py::test_installed_package_smoke_checks_help_for_stable_commands`.
|
|
143
143
|
- Linux package-resource coverage is proven by `scripts/smoke_installed_package.py --docker`.
|
|
144
|
-
- Public PyPI Docker coverage is proven by `scripts/smoke_installed_package.py --docker --from-pypi --version 0.13.
|
|
144
|
+
- Public PyPI Docker coverage is proven by `scripts/smoke_installed_package.py --docker --from-pypi --version 0.13.1`.
|
|
145
145
|
- PyPI metadata, package/distribution names, package resources, source/wheel member names, Python 3.10-3.14 support metadata, CI workflow requirements, publish workflow safety text, and tracked secret patterns are proven by `scripts/check_release.py`, `scripts/check_release.py --dist`, and `tests/test_cli_release.py::test_release_check_script_passes`.
|
|
146
146
|
|
|
147
147
|
### Upgrade And Migration
|
|
@@ -219,8 +219,8 @@ These references are the concrete proof behind completed checklist items. Public
|
|
|
219
219
|
- Publish workflow package name, Trusted Publishing, TestPyPI/PyPI job presence, event guards, no push/PR publishing, no token/password publishing, and manual PyPI main/tag preflight are proven by `scripts/check_release.py::_check_publish_workflow`.
|
|
220
220
|
- The GitHub `pypi` environment gate is proven by `gh api repos/douglasmonsky/codex-usage-tracker/environments/pypi`, which reports a `required_reviewers` protection rule and `can_admins_bypass=false`.
|
|
221
221
|
- Dist filename and wheel/sdist member checks are proven by `python -m build`, `python -m twine check dist/*`, and `python scripts/check_release.py --dist`.
|
|
222
|
-
- TestPyPI publish process is proven by a workflow-dispatch run on `main`, followed by TestPyPI metadata and clean virtualenv install checks for `codex-usage-tracking==0.13.
|
|
223
|
-
- PyPI publish process is proven by a workflow-dispatch run on `main`, protected `pypi` environment approval, PyPI metadata visibility, clean virtualenv install, temporary pipx install, and Docker public-package smoke for `codex-usage-tracking==0.13.
|
|
222
|
+
- TestPyPI publish process is proven by a workflow-dispatch run on `main`, followed by TestPyPI metadata and clean virtualenv install checks for `codex-usage-tracking==0.13.1`.
|
|
223
|
+
- PyPI publish process is proven by a workflow-dispatch run on `main`, protected `pypi` environment approval, PyPI metadata visibility, clean virtualenv install, temporary pipx install, and Docker public-package smoke for `codex-usage-tracking==0.13.1`.
|
|
224
224
|
- Release recovery documentation is proven by `scripts/check_release.py` required-file and docs checks.
|
|
225
225
|
|
|
226
226
|
### Known Limitations
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "codex-usage-tracking"
|
|
7
|
-
version = "0.13.
|
|
7
|
+
version = "0.13.1"
|
|
8
8
|
description = "Unofficial local Codex plugin and dashboard for investigating aggregate token usage, costs, caching, and thread patterns."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -15,9 +15,9 @@ from pathlib import Path
|
|
|
15
15
|
|
|
16
16
|
PACKAGE_SPEC = os.environ.get(
|
|
17
17
|
"CODEX_USAGE_TRACKER_PACKAGE_SPEC",
|
|
18
|
-
"codex-usage-tracking==0.13.
|
|
18
|
+
"codex-usage-tracking==0.13.1",
|
|
19
19
|
)
|
|
20
|
-
RUNTIME_VERSION = "0.13.
|
|
20
|
+
RUNTIME_VERSION = "0.13.1"
|
|
21
21
|
PACKAGE_SPEC_MARKER = ".codex-usage-tracker-package-spec"
|
|
22
22
|
MODULE_CHECK = (
|
|
23
23
|
"import importlib.metadata; "
|
|
@@ -18,6 +18,7 @@ from codex_usage_tracker.diagnostics.snapshots import (
|
|
|
18
18
|
build_diagnostic_file_modifications_report,
|
|
19
19
|
build_diagnostic_file_reads_report,
|
|
20
20
|
build_diagnostic_git_interactions_report,
|
|
21
|
+
build_diagnostic_guided_summary_report,
|
|
21
22
|
build_diagnostic_overview_report,
|
|
22
23
|
build_diagnostic_read_productivity_report,
|
|
23
24
|
build_diagnostic_tool_output_report,
|
|
@@ -145,6 +146,7 @@ _REPORT_BUILDERS: dict[str, ReportBuilder] = {
|
|
|
145
146
|
"file-modifications": _build_snapshot_report,
|
|
146
147
|
"read-productivity": _build_snapshot_report,
|
|
147
148
|
"concentration": _build_snapshot_report,
|
|
149
|
+
"guided-summary": _build_snapshot_report,
|
|
148
150
|
"usage-drain": _build_usage_drain_report,
|
|
149
151
|
}
|
|
150
152
|
|
|
@@ -157,4 +159,5 @@ _SNAPSHOT_REPORT_BUILDERS: dict[str, Callable[..., Any]] = {
|
|
|
157
159
|
"file-modifications": build_diagnostic_file_modifications_report,
|
|
158
160
|
"read-productivity": build_diagnostic_read_productivity_report,
|
|
159
161
|
"concentration": build_diagnostic_concentration_report,
|
|
162
|
+
"guided-summary": build_diagnostic_guided_summary_report,
|
|
160
163
|
}
|
|
@@ -147,6 +147,18 @@ def add_diagnostics_parser(
|
|
|
147
147
|
)
|
|
148
148
|
concentration.add_argument("--json", action="store_true", dest="as_json")
|
|
149
149
|
|
|
150
|
+
guided_summary = diagnostic_subparsers.add_parser(
|
|
151
|
+
"guided-summary",
|
|
152
|
+
help="Show plain-language aggregate usage-driver diagnostics",
|
|
153
|
+
)
|
|
154
|
+
guided_summary.add_argument("--include-archived", action="store_true")
|
|
155
|
+
guided_summary.add_argument(
|
|
156
|
+
"--refresh",
|
|
157
|
+
action="store_true",
|
|
158
|
+
help="Recompute and persist guided summary snapshot before reading it.",
|
|
159
|
+
)
|
|
160
|
+
guided_summary.add_argument("--json", action="store_true", dest="as_json")
|
|
161
|
+
|
|
150
162
|
usage_drain = diagnostic_subparsers.add_parser(
|
|
151
163
|
"usage-drain",
|
|
152
164
|
help="Show usage-drain modeling and cumulative cost diagnostic reports",
|
|
@@ -136,10 +136,10 @@ DIAGNOSTIC_JSON_PAYLOAD_CONTRACTS: dict[str, dict[str, Any]] = {
|
|
|
136
136
|
}
|
|
137
137
|
},
|
|
138
138
|
'codex-usage-tracker-diagnostic-concentration-v1': {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
139
|
+
"required": {
|
|
140
|
+
"section": str,
|
|
141
|
+
"status": str,
|
|
142
|
+
"refreshed": bool,
|
|
143
143
|
"raw_context_included": bool,
|
|
144
144
|
"snapshot": (dict, NoneType),
|
|
145
145
|
"summary": (dict, NoneType),
|
|
@@ -147,11 +147,28 @@ DIAGNOSTIC_JSON_PAYLOAD_CONTRACTS: dict[str, dict[str, Any]] = {
|
|
|
147
147
|
"dimensions": list,
|
|
148
148
|
"largest_impact_rows": list,
|
|
149
149
|
"privacy": dict,
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
150
|
+
"notes": list,
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
'codex-usage-tracker-diagnostic-guided-summary-v1': {
|
|
154
|
+
"required": {
|
|
155
|
+
"section": str,
|
|
156
|
+
"status": str,
|
|
157
|
+
"refreshed": bool,
|
|
158
|
+
"raw_context_included": bool,
|
|
159
|
+
"snapshot": (dict, NoneType),
|
|
160
|
+
"summary": (dict, NoneType),
|
|
161
|
+
"drivers": list,
|
|
162
|
+
"top_threads": list,
|
|
163
|
+
"top_models": list,
|
|
164
|
+
"top_efforts": list,
|
|
165
|
+
"token_mix": (dict, NoneType),
|
|
166
|
+
"signals": list,
|
|
167
|
+
"notes": list,
|
|
168
|
+
}
|
|
169
|
+
},
|
|
153
170
|
'codex-usage-tracker-diagnostic-usage-drain-v1': {
|
|
154
|
-
|
|
171
|
+
"required": {
|
|
155
172
|
"section": str,
|
|
156
173
|
"status": str,
|
|
157
174
|
"refreshed": bool,
|