Skip to content

feat: orchestrator enhancements, agent model refactor, dashboard UX improvements#10

Merged
partarstu merged 39 commits into
mainfrom
new-enhancements-round
May 14, 2026
Merged

feat: orchestrator enhancements, agent model refactor, dashboard UX improvements#10
partarstu merged 39 commits into
mainfrom
new-enhancements-round

Conversation

@partarstu

Copy link
Copy Markdown
Owner

Summary

This PR delivers a broad set of enhancements across the orchestrator, agents, dashboard UI, deployment pipeline, and test coverage. It also introduces three new developer skills and fixes several bugs and test issues.

Changes

Features

  • Dashboard: Paginated log viewerLogViewer now supports "Load More" via infinite query; backend /api/dashboard/logs adds offset parameter
  • Dashboard: Manual agent discovery — New POST /api/dashboard/discovery endpoint and "Discover Agents" button in the AgentGrid UI
  • Agent model settings centralizedCustomLlmWrapper.create_agent() factory replaces per-agent Agent(...) construction; thinking level injected via abstract get_thinking_level() method; model_settings parameter removed from AgentBase
  • LLM request timingCustomLlmWrapper now logs duration for every request and streaming call
  • Results extractor semaphore — Serializes extractor calls to prevent rate-limit errors under concurrent load
  • Xray test management supportxray_client.py extended with fetch_ready_for_execution_test_cases_by_labels, create_test_execution, and supporting helpers
  • Zephyr client hardened — Added create_test_plan, timestamp parsing, retry logic, and improved error handling
  • Allure client extended — New test execution and reporting methods with retry support
  • New agent skillspr-review, run-unit-tests, and software-architect skills with full templates, ADR/decision matrix resources, and implementation plan scaffolding

Bug Fixes

  • Fixed missing attachments in incident creation flow
  • Fixed wrong error message on dashboard during login
  • Fixed agent wait/recovery handling
  • Fixed log viewer scrolling
  • Fixed duplicate detection prompt template
  • Fixed EndpointFilter to use getMessage() for reliable dashboard path matching
  • Fixed LOG_SEPARATTOR typo → LOG_SEPARATOR

Refactoring

  • Removed redundant MAX_RETRIES constant (now uses config.RetryConfig everywhere)
  • Removed duplicate AgentRunResult import in agent_base.py
  • AgentStatus, BrokenReason, TaskStatus now inherit from StrEnum
  • usedforsecurity=False added to all hashlib.md5() calls (non-cryptographic use)
  • GEMINI.md renamed to AGENTS.md; CLAUDE.md updated to reference it

Tests

  • Fixed mock_httpx_client fixture to work with persistent AsyncClient (not context manager)
  • Fixed method name: _ensure_collectionensure_collection in two test files
  • Fixed patch target: common.custom_llm_wrapper.Agent (was agents...main.Agent)
  • Fixed placeholder assertions: == "MINIMAL"== 0, == "LOW"== 1001
  • Added tests for allure_client, xray_methods, zephyr_methods, vector_db_service, utils

Documentation

  • README updated with new dashboard endpoints (/api/dashboard/discovery, logs?offset=)
  • README updated: Xray added to test management system integrations
  • Dashboard feature descriptions updated to reflect pagination and discovery button

Dependencies

Configuration

  • cloudbuild.yaml: Separated image build/push from Cloud Run deploy into distinct steps for better granularity and failure isolation
  • cloudbuild.yaml: Added TZ=$_TIMEZONE env var to jira-mcp-server deployment

Testing

  • All unit tests pass (139 passed)
  • Linting passes (ruff)
  • Security scan reviewed (bandit — 2 high-severity issues fixed, remaining are low-severity assert usage in tests)
  • Dependency vulnerabilities checked (pip-audit — 4 direct deps bumped to patched versions)

Notes

Indirect dependency vulnerabilities in urllib3 (2.6.3), python-multipart (0.0.26), and pip (26.0.1) exist but are not pinned directly — they will be resolved when parent packages pull updated transitive deps. The test_attachment_handler.py test crashes due to a Windows-specific python-magic DLL access violation; this is a pre-existing environment issue unrelated to these changes.

Add pr-review, run-unit-tests, and software-architect skills to expand agent capabilities. Update prepare-pr skill with a detailed verification checklist including ruff, pytest, bandit, and SPDX compliance. Refine writing-unit-tests skill by removing redundant test execution instructions. Improve pr_body_template.md formatting.
Update skill definitions to include the '// turbo-all' annotation to allow for uninterrupted execution of commands. Additionally, add explicit restrictions against using redirection operators ('>', '2>') to ensure safer and more compatible file operations.
Added the _TIMEZONE substitution with a default value of 'Europe/Vienna' to cloudbuild.yaml. This allows for configuring the timezone during deployment, ensuring consistent timekeeping across containers.
partarstu and others added 9 commits May 4, 2026 17:22
- Fix duplicate AgentRunResult import in agent_base.py (ruff F811)
- Migrate str+Enum classes to StrEnum in orchestrator/models.py (ruff UP042)
- Add usedforsecurity=False to hashlib.md5 calls (bandit B324)
- Bump python-dotenv, requests, pytest, PyJWT to patched versions
- Fix test mock setup for async HTTP client in vector_db_service tests
- Fix placeholder assertions (== "MINIMAL", == "LOW") in orchestrator tests
- Fix wrong patch target: Agent now in custom_llm_wrapper, not agent module
- Fix _ensure_collection -> ensure_collection method name mismatch
- Update README with new dashboard endpoints and features
- Update prepare-pr skill: remove squash/temp-branch step

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…m lint

Three test assertions had 'MINIMAL' string instead of 0, causing comparison
failures. Also exclude .agents/skills/ template files from ruff to fix
invalid-syntax errors caused by <placeholder> syntax in templates.
@partarstu partarstu merged commit d7a09fc into main May 14, 2026
4 checks passed
@partarstu partarstu deleted the new-enhancements-round branch May 14, 2026 22:39
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