feat(release): v1.0.4 — Introduce metrics endpoint and pricing diagnostics#31
Merged
Conversation
… and UI enhancements - Added comprehensive pytest coverage for `diff_releases`, addressing MEDIUM/LOW confidence scenarios, policy checks on latency and error rates, and multiple failure reasons. - Enhanced `runs ingest` functionality to handle edge cases including empty files, malformed JSONL, and JSON array payloads. - Implemented multi-provider and cross-model support for `release diff`, ensuring accurate comparisons across different pricing providers and models. - Updated web UI to present structured outcomes for promote/rollback actions, including policy status and a notification for pricing/model changes in the Run diff view. Co-authored-by: Cursor <cursoragent@cursor.com>
…stics - Added `GET /v1/metrics`: a read-only JSON endpoint providing aggregate counts for releases, pricing tables, run events, and actions. - Enhanced `POST /v1/diff` to include a `pricing.prices` object, detailing per-side input/output/cached-input USD per 1k tokens for the resolved model. - Updated CLI `release diff` command to print per-1k token prices when pricing or model changes are detected. - Modified web UI to display per-1k input/output price deltas in the Run diff view when applicable. - Expanded documentation to cover the new metrics endpoint and pricing diagnostics. Co-authored-by: Cursor <cursoragent@cursor.com>
Resolve conflicts keeping v1.0.4 (metrics, pricing.prices, Diff UI, tests) and layering main doc updates (web-ui, http-api, cli, operations-and-policy). Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Why
Changes
Validation
Run the same checks as CI (see
.github/workflows/ci.yml) before opening / updating the PR. Cursor loads.cursor/rules/flightdeck-ci-artifacts.mdcas a short reminder forstatic/+schemas/gates.uv sync --frozen --extra devuv run python -m ruff check src testsuv run python -m pytestuv run python scripts/generate_schemas.pythengit diff --exit-code schemas/(if models/schemas touched)cd web && npm ci && npm run build && cd .. && git diff --exit-code src/flightdeck/server/static/(ifweb/sources, Vite config, orweb/deps / lockfile change the production bundle)cd web && npx playwright install chromium && npm run test:e2e(ifweb/changed)uv run flightdeck-quickstart-verifyuv run flightdeck --helpWith pip / venv only, use
python -m …equivalents fromDEVELOPMENT.md.Schema / Storage Impact
Risk
Review
@flightdeckdev/maintainerson the org repo). On a fork, GitHub may not auto-request; use Reviewers on the PR.AGENTS.md); linked issue or release note intent noted if helpful.Notes