Files
cleveragents-core/CHANGELOG.md
T
HAL9000 79359baff3
CI / push-validation (pull_request) Successful in 17s
CI / build (pull_request) Successful in 21s
CI / helm (pull_request) Successful in 22s
CI / lint (pull_request) Successful in 33s
CI / quality (pull_request) Successful in 41s
CI / typecheck (pull_request) Successful in 50s
CI / security (pull_request) Successful in 1m12s
CI / e2e_tests (pull_request) Successful in 3m2s
CI / benchmark-publish (pull_request) Has been skipped
CI / integration_tests (pull_request) Successful in 4m2s
CI / unit_tests (pull_request) Successful in 5m10s
CI / docker (pull_request) Successful in 21s
CI / coverage (pull_request) Successful in 10m26s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-regression (pull_request) Successful in 58m15s
docs: update CHANGELOG and automation-tracking for recent agent changes
ISSUES CLOSED: #7116
2026-04-10 10:32:00 +00:00

14 KiB
Raw Blame History

Changelog

All notable changes to this project will be documented in this file. The format follows Keep a Changelog.

[Unreleased]

Added

  • Git Worktree Sandbox Apply (#4454): The plan apply command now merges LLM-generated changes via git merge from an isolated worktree branch instead of flat shutil.copy2. Displays spec-aligned Apply Summary (plan ID, artifacts, insertions/deletions, project, timestamp), Sandbox Cleanup panel, and ✓ OK Changes applied footer. Non-git projects fall back to the original flat file copy.

  • Context Hydration Fix (#4454): Fixed ContextFragment metadata types (detail_depth and relevance_score must be strings, not int/float) that caused Pydantic validation errors during context assembly, resulting in the LLM receiving zero file context.

  • Automation Tracking System: Replaced shared session state issue tracking with individual per-agent tracking issues. Each agent now creates its own [AUTO-<PREFIX>] titled issues with standardized headers, reporting intervals, and health indicators. Agents: session-persister, implementation-orchestrator, system-watchdog, backlog-groomer, human-liaison. Documentation at docs/development/automation-tracking.md.

  • Automated Health Monitoring and Recovery: The system-watchdog now runs audit_automation_tracking_health() every 5 minutes, detecting stalled agents when tracking issues are >20% overdue from their declared reporting interval. On detection, it terminates stalled sessions via the OpenCode Server API, performs root-cause analysis, creates high-priority diagnostic issues, and closes stale tracking issues with recovery notes.

  • Centralized Label Management (forgejo-label-manager): A new specialized subagent centralizes all Forgejo label operations across the agent system. Enforces the organization-level label system, prohibits label creation, and validates label compliance. Agents backlog-groomer, human-liaison, project-owner, epic-planner, new-issue-creator, and issue-state-updater now delegate all label operations to this subagent.

  • PRIssue Label Synchronization: PRs now inherit Priority/, MoSCoW/, Points/, and State/ labels from their associated issues at creation time (pr-api-creator). The backlog-groomer adds a continuous Pass 19 for ongoing PRissue label synchronization. The issue-state-updater syncs PR state labels whenever issue states change.

  • Automation Tracking Announcements: Extended automation-tracking-manager with announcement issue support (CREATE_ANNOUNCEMENT_ISSUE, CLOSE_ANNOUNCEMENT_ISSUE, LIST_TRACKING_ISSUES, READ_ANNOUNCEMENTS, REVIEW_OWN_ANNOUNCEMENTS). Supervisors and workers now read critical announcements before each cycle for cross-agent awareness. Priority-based filtering (Critical/High/Medium/Low) reduces noise. Backlog-groomer performs intelligent cleanup with age thresholds by priority.

  • PR Agent Reorganization: All PR-related agents renamed and reorganized to follow the *-pool-supervisor naming pattern. New agents added: pr-editor (safe PR editing with description preservation), pr-manager (unified PR interface), and pr-merge-pool-supervisor (automated PR merging supervisor). Renamed: pr-api-creatorpr-creator, pr-checkerpr-ci-test-fixer, pr-status-checkerpr-status-analyzer, pr-self-reviewerpr-reviewer, pr-fix-orchestratorpr-fix-pool-supervisor.

  • Automated PR Merging (pr-merge-pool-supervisor): New supervisor continuously monitors for merge-ready PRs and merges them automatically when all criteria are met (approvals, CI passing, no conflicts). Supports both formal reviews and comment-based approvals (LGTM, , "ready to merge", etc.).

  • Implementation Worker Workflow Completion: implementation-worker now implements work claiming protocols with conflict detection, comprehensive review feedback handling with intelligent parsing, sophisticated merge conflict resolution with multiple strategies, and parallel subtask execution with wave-based dependency analysis. Pass rate improved from 48.15% to 84.8%.

  • Container Resource Stop Support: agents resource stop now correctly stops container-instance and devcontainer-instance resource types.

Changed

  • Automation Tracking Format: All automation tracking issues now use a standardized header format with mandatory Reporting Interval: <interval> (Next report expected: <ts>) declarations, enabling precise staleness detection.

  • PR Review Policy: Reduced PR review requirement from 2 approvals to 1. Self-approval is now permitted including for automated bot PRs. Approval can be a formal review OR an approval comment (LGTM, Approved, , "ready to merge").

  • Label Delegation Enforcement: automation-tracking-manager now enforces delegation to forgejo-label-manager for all label operations, preventing "invalid label ID" errors and ensuring all tracking issues receive proper labels via name-to-ID mapping.

  • ACMS Context Hydration: Fixed ACMS indexing pipeline not wired into CLI — ContextTierService started empty on every CLI invocation so LLM received zero file context during plan execution. Added context_tier_hydrator.py that reads files from linked project resources (via git ls-files or os.walk) and stores them as TieredFragment objects in the tier service. Hydration runs automatically before context assembly in LLMExecuteActor.execute(). Respects max file size (256KB), total budget (10MB), binary file exclusion, and .git/node_modules/__pycache__ directory skipping. (#1028)

Fixed

  • Robot Framework TDD Listener Guards (#5436): Added three guard conditions to the tdd_expected_fail_listener end_test() function to prevent blindly inverting ALL test failures to passes, which was masking infrastructure errors and causing flaky CI behavior. Guards: setup/teardown error detection, non-assertion failure detection (infrastructure errors), and dry-run mode detection. Also fixed Variable Should Exist syntax errors in e2e test files and removed tdd_expected_fail from 4 context assembly e2e tests where bugs were already fixed.

  • issue-state-updater Bash Script Errors: Removed problematic bash script examples that tried to invoke task forgejo-label-manager as a bash command (the Task tool cannot be invoked from bash). Replaced with clear step-by-step operational instructions and direct label management via API.

  • automation-tracking-manager Label Delegation Syntax: Fixed incorrect delegation syntax when calling forgejo-label-manager. The manager now uses correct natural language requests (e.g., "Apply labels to issue #123: Automation Tracking") instead of structured parameters, ensuring tracking issues receive proper labels.

  • product-builder Missing Supervisors: Added missing pr-fix-pool-supervisor and pr-merge-pool-supervisor to the product-builder's supervisor launch list (18 total supervisors). Updated all numeric references, pre-flight checklists, and validation logic.


[3.8.0] — 2026-04-05

Added

  • Wired Invariant Reconciliation Actor auto-invocation into PlanLifecycleService phase transitions (start_strategize, execute_plan, apply_plan). Reconciliation failures now block the transition with ReconciliationBlockedError and emit INVARIANT_VIOLATED events. Post-correction reconciliation runs via CORRECTION_APPLIED event subscription (best-effort). Added InvariantService Singleton provider in the DI container.

  • TUI — Shell danger detection: The TUI shell mode (! prefix) now detects dangerous command patterns before execution. A configurable pattern registry classifies commands by danger level (warning, critical) and surfaces a user warning overlay before proceeding. Patterns cover destructive filesystem operations, privilege escalation, network exfiltration, and more. (#1003)

  • TUI — Permission Question Widget: A new inline PermissionQuestionWidget renders permission requests directly in the conversation stream for single-file operations. Users can allow/reject with single-key shortcuts (a/A/r/R), navigate with arrow keys, confirm with Enter, or press v to open the full permissions screen. (#1004)

  • TUI — Actor thought blocks: Expandable reasoning trace widgets rendered inline in the conversation stream with muted styling. Collapsed by default; expand with Space or click. (#1005)

  • UKO provenance tracking: Every typed triple now carries sourceResource, validFrom, and isCurrent metadata. A revision chain enables temporal queries and point-in-time ontology state reconstruction.

  • JSON-RPC 2.0 A2A wire format: A2aRequest/A2aResponse fields renamed to standard JSON-RPC 2.0 names (method, id, result, error). The A2aVersionNegotiator handles backward compatibility.

  • Database resource handler: Full CRUD and checkpoint/rollback support for SQLite, PostgreSQL, MySQL, and DuckDB resources via the resource DAG.

  • Estimation lifecycle hook: actor.default.estimation config key wires an estimation actor into the Strategize-to-Estimate lifecycle hook.

  • Persona system: YAML-backed personas bind actors, argument presets, and scope references to named identities; persisted in ~/.config/cleveragents/personas/.

  • Session management: Create, list, export, and import conversation sessions; full JSON export/import for portability; Markdown transcript export (--format md) for human-readable sharing.

  • First-run experience: ActorSelectionOverlay guides new users to pick an actor on first TUI launch; creates a "default" persona automatically.

  • Server mode: agents server connect configures a remote CleverAgents server; Kubernetes Helm chart in k8s/ for production deployment.

  • A2A integration: Agent-to-Agent protocol facade wires CLI and TUI to live application services (session, plan, registry, event).

  • Permissions screen: TUI overlay for reviewing tool permission requests with unified, side-by-side, and context diff views; session-scoped allow/reject decisions.

  • Inline permission questions: PermissionQuestionWidget renders single-file permission requests directly in the conversation stream with single-key shortcuts.

  • Invariant reconciliation: InvariantReconciliationActor runs automatically at every plan phase transition; failures block the transition and emit INVARIANT_VIOLATED.

  • UKO runtime: Universal Knowledge Ontology query interface, inference engine, and graph persistence for ACMS context strategies.

Fixed

  • LangChainChatProvider.name and model_id are now mutable properties with setters, fixing an AttributeError when PlanService attempted to resolve provider names after instantiation. (#1553)

[3.7.0] — 2026-03-15

Added

  • Interactive TUI (agents tui) — full-screen Textual app with multi-session tabs, persona switching, slash commands (67 commands across 14 groups), reference picker (@), shell mode (!), context-sensitive F1 help, and Ctrl+T argument preset cycling.
  • Slash command system — 67 commands across 14 groups accessible via / overlay.
  • Reference picker@ key opens a file/resource reference picker that inserts references into the input field.
  • TUI persona system — YAML-backed personas bind actors, argument presets, and scope references; persisted in ~/.config/cleveragents/personas/.
  • TUI session export/import — full JSON round-trip and Markdown transcript export (--format md).

[3.6.0] — 2026-02-28

Added

  • Advanced Context Management System (ACMS) with three-tier context strategy.
  • UKO Runtime (Universal Knowledge Ontology) with graph persistence and inference engine.
  • Implicit inference engine producing uko:implicitSiblingOf, uko:implicitContains, and uko:implicitDependsOn triples with confidence 0.7.

[3.5.0] — 2026-02-14

Added

  • Autonomy hardening: advisory locking, validation pipeline, definition-of-done gating.
  • Resource DAG with dependency tracking and type hierarchy with multiple inheritance.
  • Container resource types (container.docker, container.podman).
  • LSP resource types (lsp.*).

[3.4.0] — 2026-01-31

Added

  • ACMS v1 with context scaling strategies.
  • Resource type inheritance system (ADR-042).
  • Safety profile extraction (ADR-041).

[3.3.0] — 2026-01-17

Added

  • Corrections and subplans support in plan lifecycle.
  • Checkpoint and rollback for all resource writes.
  • Decision tree versioning and history (ADR-034).
  • Decision tree rollback and replay (ADR-035).

[3.2.0] — 2026-01-03

Added

  • Decisions, validations, and invariants in plan lifecycle.
  • Validation abstraction layer (ADR-013).
  • Invariant system (ADR-016).
  • Automation profiles (ADR-017).
  • Semantic error prevention (ADR-018).

[3.1.0] — 2025-12-20

Added

  • MCP (Model Context Protocol) adapter and client (ADR-029).
  • LSP (Language Server Protocol) client integration (ADR-027).
  • Agent Skills Standard (AgentSkills.io) support (ADR-028).
  • Skill abstraction definition (ADR-030).

[3.0.0] — 2025-12-06

Added

  • Initial public release of CleverAgents Core.
  • Unified agents / cleveragents CLI entry points.
  • Layered architecture: Entry Points → Application → Domain → Infrastructure → Integration → Core.
  • Actor system with YAML-defined LangGraph node graphs.
  • Tool system with four-stage lifecycle (activate → validate → execute → deactivate).
  • Skill system with three-tier progressive disclosure.
  • Resource system with DAG and type hierarchy.
  • A2A (Agent-to-Agent) protocol facade.
  • DI container (cleveragents.application.container).
  • LangChain/LangGraph integration (ADR-022).
  • Provider registry with fallback chain (OpenAI → Anthropic → Google → Azure → OpenRouter → Groq → Together → Cohere).
  • Observability: structured logging, metrics, audit trail, token/cost tracking.
  • BDD test suite (Behave + Robot Framework).
  • Nox automation for lint, typecheck, tests, docs, benchmarks.
  • MkDocs-powered documentation with CleverAgents branding.