Skip to content

feat(cef): CEF QA tools + client on the current layout - #5

Open
jaxter03 wants to merge 1 commit into
mainfrom
feat/cef-tools-client-port
Open

feat(cef): CEF QA tools + client on the current layout#5
jaxter03 wants to merge 1 commit into
mainfrom
feat/cef-tools-client-port

Conversation

@jaxter03

Copy link
Copy Markdown
Collaborator

Ports the CEF-proprietary Python from the old app/ layout onto main's refactored layout (integrations/, tools/, surfaces/), so main becomes the canonical source for the CEF QA tool — no more running the feature off a stale branch. Excludes the correlate / PR-blame feature (removed with the #code-review QA).

What lands

  • integrations/cef/ — CEF QA client + service (client, qa, report, wallet_signer, classify) and the grafana_alerts webhook receiver + corroboration gate.
  • integrations/cef/tools/platform_guidance_tool + cef_platform_metrics_tool, auto-discovered via tools/registry_discovery (INTEGRATION_TOOL_PACKAGES).
  • surfaces/cli/commands/cef_qa.pyopensre cef-qa, sharing run_cef_qa() with the service (CLI and API stay in lockstep).
  • integrations/grafana/{base,loki,mimir}.py — feat-only additions merged as a backward-compatible superset (range queries, LogQL metric queries, datasource resolution); upstream methods untouched.
  • Wiringcef classifier in _catalog_impl, cef alert-source routing (via the sanctioned alert_source_catalog, not a hard-coded route), CefIntegrationConfig.

Excluded

correlate (service + CLI) and its tests, per the code-review-QA removal.

Validation

  • make typecheckclean, 1491 files.
  • tests/integrations/test_cef_qa_service.py + test_grafana_alerts.py26 passed.
  • ruff check / ruff format --check — clean.
  • opensre cef-qa --help works; both CEF tools confirmed registered.

Base = the upstream-sync branch (PR #3); retarget to main once #3 merges. Independent of PR #4 (workflow prune) — touches disjoint files.

🤖 Generated with Claude Code

@github-actions

Copy link
Copy Markdown

Greptile code review

This repo uses Greptile for automated review. Before merge, aim for Confidence Score: 5/5 with zero unresolved review threads — see CONTRIBUTING.md.

Run a review — add a PR comment with:

@greptile review

Give it ~5-10 minutes (sometimes longer) for results, then fix feedback and re-trigger until you reach Confidence Score: 5/5.

Optional: automate with the greploop skill.

@jaxter03
jaxter03 changed the base branch from chore/sync-upstream-2026-07-28 to main July 28, 2026 15:54
Ports the CEF hiring-coach QA onto main's refactored layout (integrations/,
tools/, surfaces/), so 'opensre cef-qa' works on canonical code.

- integrations/cef/ — QA client + service (client, qa, report, wallet_signer,
  classify, availability).
- integrations/cef/tools/ — the four tools run_cef_qa actually calls:
  get_cef_guidance, cef_agent_logs, cef_component_logs, cef_clip_history
  (auto-discovered via tools/registry_discovery INTEGRATION_TOOL_PACKAGES).
- surfaces/cli/commands/cef_qa.py — 'opensre cef-qa' (shares run_cef_qa).
- wiring: 'cef' classifier, 'cef' alert-source routing, CefIntegrationConfig.
- tests/integrations/test_cef_tools_registered.py — guard asserting the QA
  tools are registered (would have caught a mis-scoped port).
- docs/cef-qa.mdx + docs.json.

Scope: agent QA only. The alert-driven platform RCA (grafana_alerts receiver +
platform_guidance/cef_platform_metrics tools) is deliberately NOT here — it is a
separate, currently-unwired feature and lands in its own PR if/when OpenSRE (vs
HolmesGPT) owns alert-driven monitoring. No integrations/grafana changes.

make typecheck clean (1489 files); 5 CEF tests pass; ruff clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PkNM3j2VZmxijQsWFZMPiy
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