Skip to content

feat: add observability DB schema (Phase 0)#48

Open
Aliciapet11 wants to merge 4 commits into
mainfrom
feat/observability-mlflow
Open

feat: add observability DB schema (Phase 0)#48
Aliciapet11 wants to merge 4 commits into
mainfrom
feat/observability-mlflow

Conversation

@Aliciapet11

Copy link
Copy Markdown
Collaborator

Summary

  • Add 4 new normalized database tables: scorecards, gate_results, certifications, observability_metrics
  • Add 4 Alembic migrations (001-004) for schema management
  • Update store_results.py to persist scorecard data alongside evaluation runs
  • Add pyyaml to store task dependencies (required by new Scorecard import chain)
  • Add backfill script for existing MinIO artifacts (scripts/backfill_scorecards.py)
  • Add Kubernetes migration job manifest (config/migrations/migration-job.yaml)
  • 24 new tests (693 total passing)

Context

Phase 0 of APPENG-5370. These tables enable SQL queries over data that previously lived only as JSON files on MinIO — foundation for Grafana dashboards (Phase D), MLflow tracking (Phase C), and OTEL integration (Phase B).

Validation

  • All 693 tests pass locally (SQLite in-memory)
  • CI Harbor pipeline ci-harbor-k4rtw passed successfully on the cluster with this branch
  • Scorecard data confirmed persisted: 1 scorecard, 4 gate results, 3 certifications

Test plan

  • Existing tests pass (693/693)
  • New model unit tests pass (17 tests)
  • New integration tests pass (7 tests)
  • CI Harbor pipeline passes on cluster
  • Data visible in production DB tables

🤖 Generated with Claude Code

Aliciapet11 and others added 4 commits July 8, 2026 15:34
Add 4 new normalized tables for scorecard, gate results, certification,
and observability metrics — enabling SQL queries over data that previously
lived only as JSON files on MinIO.

- ScorecardRow, GateResultRow, CertificationRow, ObservabilityMetricsRow models
- 4 Alembic migrations (001-004)
- Scorecard persistence in store_results.py with mapping functions
- Backfill script for existing MinIO artifacts
- Kubernetes migration job manifest
- 24 new tests (693 total passing)

APPENG-5370

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The new Scorecard import in store_results.py transitively imports
certification.py which requires PyYAML.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Aliciapet11 Aliciapet11 requested a review from GuyZivRH July 8, 2026 13:09
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