Skip to content

Conversation

@MH0386
Copy link
Contributor

@MH0386 MH0386 commented Nov 6, 2025

This pull request introduces several updates and improvements to CI/CD workflows, repository configuration, and project automation. The changes focus on enhancing Docker image builds, workflow flexibility, automation for versioning and releases, and repository hygiene.

CI/CD Workflow Enhancements:

  • Added support for dynamic Docker registry selection, improved build argument handling, and enhanced test reporting in .github/workflows/.docker.yaml. This includes using the correct credentials per registry, passing install source and Python version as build arguments, and summarizing Dockerfile check results. [1] [2] [3] [4] [5] [6] [7] [8] [9]
  • Improved the build and release process in .github/workflows/build.yaml by updating permissions, ensuring the project version matches the branch/tag, and automating commits and tags when versions diverge. [1] [2] [3]
  • Refined the release workflow in .github/workflows/release.yaml by removing the HuggingFace job and ensuring Docker images are built from the released version. [1] [2]
  • Updated test workflow to provide a dependency tree summary and to install from the current git commit. [1] [2]

Automation and Repository Management:

  • Added an "Opencode" job in .github/workflows/ci_tools.yaml to respond to specific issue comments and run the opencode action. [1] [2]
  • Adjusted concurrency settings and triggers for CI tools, and changed versioning workflow to trigger only for the renovate[bot] actor. [1] [2]
  • Updated Mergify rules to automate merging for Trunk updates, improved branch cleanup, and commented on merges. [1] [2]

Repository and Project Hygiene:

  • Added a .gitattributes file to enforce LF line endings.
  • Removed the .envrc file, likely to standardize environment management.
  • Updated .idea project files to exclude the logs directory and added a run configuration for "Vocalizr MCP". [1] [2]
  • Added "ckpts" to the project dictionary for spellchecking.
  • Minor update to trunk auto-commit to skip pre-commit hooks.

These changes collectively improve CI/CD reliability, automation, and maintainability across the project.

Summary by Sourcery

Refactor the Chattr application to leverage the Agno multi-agent framework, integrate advanced tooling and vector knowledge stores, and overhaul CI/CD, Docker, and project configuration for greater automation and maintainability.

New Features:

  • Replace custom orchestration with Agno Agent-based setup and inject MultiMCPTools, Qdrant vector DB, JSON persistence, and Poml prompts.
  • Introduce AGENTS.md with detailed guidelines for tool-driven workflows.
  • Add compose-dev.yaml for local development environment.

Enhancements:

  • Revamp GitHub workflows to support dynamic Docker registry selection, build args (install source, Python version), automated version syncing, test dependency tree summaries, and an Opencode trigger on issue comments.
  • Improve Docker Compose and Dockerfile with restart policies, permissions fixes, environment variables, and cache mounts.
  • Streamline settings initialization with Pydantic validators, directory setup, and Rich logging.
  • Update project dependencies in pyproject.toml to adopt Agno and related libraries and simplify main launcher.

Build:

  • Adjust Dockerfile to accept INSTALL_SOURCE and PYTHON_VERSION build arguments and install package accordingly.

CI:

  • Refine CI/CD pipelines (.docker.yaml, build.yaml, release.yaml, test.yaml, ci_tools.yaml, version.yaml) for automated versioning, tagging, Mergify rules, and dependency checking.

Documentation:

  • Add AGENTS.md for agent guidelines and create .gitattributes to enforce LF line endings.

Tests:

  • Enhance test workflow to include dependency tree summaries in step outputs.

Chores:

  • Remove legacy .envrc, obsolete MCP schema validation, and deprecated GUI/utils modules.
  • Add .idea and IDE config updates to ignore logs and define run configurations.

MH0386 and others added 30 commits October 2, 2025 03:32
This commit fixes the style issues introduced in 566e2b8 according to the output
from Ruff Formatter.

Details: #388
This commit fixes the style issues introduced in ec36f60 according to the output
from Ruff Formatter.

Details: #388
This PR refactors class attribute assignments by removing unsupported inline type declarations. The changes ensure compatibility with environments that do not support variable type annotations on assignment.

- Unsupported `Type` declaration: The code originally declared types inline (e.g., `cls._tools: list[BaseTool] = ...`), which is not supported in all Python versions. The fix removes the `: type` portion, leaving standard assignments for `_tools`, `_llm`, and `_model`, while preserving functionality.

> This Autofix was generated by AI. Please review the change before merging.
Refactor Docker workflows and improve CI configurations
Copilot AI review requested due to automatic review settings December 9, 2025 14:39
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@sonarqubecloud
Copy link

sonarqubecloud bot commented Dec 9, 2025

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.

2 participants