Merged
Conversation
…rkflows Implement full quality checks lifecycle management with 9 CLI commands (create, get, list, update, delete, export, import, export-templates, import-templates) backed by 7 API functions and 10 service functions. Key capabilities: - Git-friendly export: one YAML file per check, organized by container - Stable UID system (_qualytics_check_uid in additional_metadata) for deterministic upsert matching across environments - Cross-reference resolution between container/datastore names and IDs - Multi-datastore import enabling Dev → Test → Prod promotion workflows - GitHub Actions promotion example in docs/examples/ Also includes serialization utilities, updated documentation (README.md, AGENTS.md), and 79 tests covering API, CLI, services, promotion workflows, and edge cases.
Implement anomaly lifecycle commands (get, list, update, archive, delete) backed by 7 API functions with full filtering, bulk operations, and status-aware transitions (Active/Acknowledged via update, Resolved/ Invalid/Duplicate/Discarded via archive, hard delete via delete). Key capabilities: - Rich filtering by datastore, container, check, status, type, tags, and date range for CI pipeline integration - Bulk update and bulk archive/delete for programmatic workflows - Status validation enforcing API transition rules - CI gating pattern: list active anomalies post-scan to fail pipelines Includes 31 tests covering all API functions and CLI commands, updated AGENTS.md and README.md with anomaly commands and CI examples.
Implement standalone connection lifecycle commands (create, update, get,
list, delete, test) with two creation modes: inline flags with ${ENV_VAR}
resolution for CI pipelines, and --from-yaml for local config files.
Key security features:
- ${VAR} placeholder resolution from env vars and .env files
- Hard error on unresolved variables to prevent plaintext leaks
- Recursive redaction of 12+ sensitive field patterns on all output
- Shared utils/secrets.py replaces local redaction in datastores
Includes 75 tests covering API, service, secrets utilities, and all
CLI commands including env var resolution and 409 conflict handling.
…support
Implement qualytics config export and import commands for deploying
connections, datastores, containers, and quality checks across
environments using portable, git-friendly YAML files.
Key capabilities:
- Hierarchical folder structure: connections/ and datastores/<name>/
with nested containers and checks for clean repository organization
- Upsert semantics using natural keys (name for connections/datastores/
containers, UID for checks) — creates if missing, updates if exists
- Dependency-ordered import: connections → datastores → containers →
quality checks with automatic name-to-ID resolution
- Secrets exported as ${ENV_VAR} placeholders, resolved from environment
or .env files at import time — secrets never written to disk
- Write-if-changed output produces zero git diff on re-export when
nothing changed, enabling clean upsert workflows
- Selective export/import via --include flag and --dry-run preview
Includes 62 tests covering export/import orchestration, YAML stripping,
secret placeholder generation, upsert logic, and CLI commands.
- Add qualytics/cli/auth.py with auth login, auth status, and auth init - auth status shows masked token, JWT expiry, SSL config (gh auth status style) - Move computed-tables import/preview into containers subcommands - Remove computed-tables command group registration - Deprecate top-level init and show-config with warnings - Update AGENTS.md, README.md, and docs references - Add container_import() and container_preview() API client methods - 501 tests passing (+12 new in test_auth.py and test_client.py)
- Add qualytics/mcp/server.py with 35 MCP tools across 8 groups - Add qualytics mcp serve command (STDIO + HTTP transport) - Add fastmcp>=2.0.0 dependency to pyproject.toml - Add 26 MCP tests in tests/test_mcp.py - Update AGENTS.md with MCP section, file tree, and dependencies - Update README.md with LLM Integration section and setup instructions - 528 tests passing, all pre-commit hooks clean
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.
No description provided.