Skip to content

feat(argocd,ui): add directory_recurse and auto-sync task configs on YAML change#1032

Merged
artdroz merged 9 commits intomainfrom
prebuild/feat/argocd-directory-recurse
Mar 24, 2026
Merged

feat(argocd,ui): add directory_recurse and auto-sync task configs on YAML change#1032
artdroz merged 9 commits intomainfrom
prebuild/feat/argocd-directory-recurse

Conversation

@artdroz
Copy link
Copy Markdown
Collaborator

@artdroz artdroz commented Mar 23, 2026

Summary

  • ArgoCD directory_recurse: Adds directory_recurse parameter to the create_application MCP tool, mapping to ArgoCD's source.directory.recurse option for apps with nested manifest directories
  • Auto-sync task configs: Fixes a bug where updating task_config.yaml (via ConfigMap) never reached the Task Builder because the seed endpoint skipped when system configs already existed in MongoDB. Now uses SHA-256 content hashing to detect YAML changes and upsert system configs automatically, without affecting user-created workflows. Also cleans up system configs removed from YAML.
  • Volume mount fix: Removes subPath from the task-config volume mount so Kubernetes auto-updates the file when the ConfigMap changes (subPath mounts are not updated by kubelet)

Test plan

  • Verify create_application with directory_recurse=true creates an app with source.directory.recurse: true in ArgoCD
  • Verify default behavior (directory_recurse=false) is unchanged
  • Update task_config.yaml in ConfigMap and confirm Task Builder reflects changes without pod restart
  • Verify user-created workflows are not affected by auto-sync
  • Verify system workflows removed from YAML are cleaned up in MongoDB
  • Run existing ArgoCD agent and UI tests

Allows callers to enable recursive directory scanning for Kubernetes
manifests when creating ArgoCD applications, matching the ArgoCD
directory.recurse source option.

Signed-off-by: Arthur Drozdov <adrozdov@cisco.com>
@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.9% 7495/18790 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-2

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-2

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

The supervisor Docker image bundles all agent code (COPY . /app/),
so changes under ai_platform_engineering/agents/** must also trigger
the supervisor prebuild workflow.

Signed-off-by: Arthur Drozdov <adrozdov@cisco.com>
@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-3

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-3

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.9% 7495/18790 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/ai-platform-engineering
Tag: feat-argocd-directory-recurse-3

Usage

docker pull ghcr.io/cnoe-io/prebuild/ai-platform-engineering:feat-argocd-directory-recurse-3

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: agent-ontology
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-agent-ontology
Tag: feat-argocd-directory-recurse-3

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-agent-ontology:feat-argocd-directory-recurse-3

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: ingestors
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-ingestors
Tag: feat-argocd-directory-recurse-3

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-ingestors:feat-argocd-directory-recurse-3

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: server
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-server
Tag: feat-argocd-directory-recurse-3

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-server:feat-argocd-directory-recurse-3

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

The seed endpoint previously skipped updates when system configs already
existed in MongoDB, causing ConfigMap changes to never reach the Task
Builder. Now uses SHA-256 content hashing to detect YAML changes and
upsert system configs on every page load, without affecting user-created
workflows. Also removes subPath volume mount so Kubernetes auto-updates
the file without requiring pod restarts.

Signed-off-by: Arthur Drozdov <adrozdov@cisco.com>
@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@artdroz artdroz changed the title feat(argocd): add directory_recurse parameter to create_application feat(argocd,ui): add directory_recurse and auto-sync task configs on YAML change Mar 24, 2026
@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 24, 2026

🧪 CAIPE UI Test Results

All tests passed

🔴 Overall Coverage: 32%

Coverage
lines
statements
functions
branches

📊 Detailed Coverage

Metric Covered Total Percentage
Lines 6220 18169 34.23%
Statements 6674 19834 33.64%
Functions 1119 4002 27.96%
Branches 4200 13874 30.27%

✅ Test Suites

  • ✅ auth-guard.test.tsx - Route protection & authorization
  • ✅ token-expiry-guard.test.tsx - Token expiry handling
  • ✅ a2a-sdk-client.test.ts - A2A streaming SDK
  • ✅ auth-utils.test.ts - Authentication utilities (100% coverage)
  • ✅ auth-config.test.ts - OIDC configuration
📈 Coverage Thresholds
Threshold Target Current Status
Minimum 40% 32% ❌ Fail
Good 60% 32% ⚠️ Below target
Excellent 80% 32% ⚠️ Below target
⚠️ Areas Needing Tests

High Priority:

  • hooks/use-a2a-streaming.ts - Core streaming functionality
  • store/chat-store.ts - Chat state management
  • store/agent-config-store.ts - Agent configuration
  • lib/api-client.ts - API communication
  • lib/storage-mode.ts - MongoDB/localStorage switching

Medium Priority:

  • components/chat/ChatPanel.tsx - Main chat interface
  • components/agent-builder/* - Agent builder UI
  • lib/mongodb.ts - MongoDB integration

💡 Run locally: make caipe-ui-tests
📦 Full report: Check workflow artifacts

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: server
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-server
Tag: feat-argocd-directory-recurse-4

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-server:feat-argocd-directory-recurse-4

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-4

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-4

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

📦 Pre-release Helm Charts Published

Registry: ghcr.io/cnoe-io/pre-release-helm-charts

ai-platform-engineering

Version: 0.2.42-feat-argocd-directory-recurse-5

helm upgrade --install ai-platform oci://ghcr.io/cnoe-io/pre-release-helm-charts/ai-platform-engineering --version 0.2.42-feat-argocd-directory-recurse-5

Note: These pre-release versions will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-5

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-5

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.9% 7495/18790 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.9% 7495/18790 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/ai-platform-engineering
Tag: feat-argocd-directory-recurse-5

Usage

docker pull ghcr.io/cnoe-io/prebuild/ai-platform-engineering:feat-argocd-directory-recurse-5

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild CAIPE UI Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/caipe-ui
Tag: feat-argocd-directory-recurse-5

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-5

Test in docker-compose

# Update docker-compose.dev.yaml
caipe-ui:
  image: ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-5
  # ... rest of config

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.9% 7495/18790 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild CAIPE UI Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/caipe-ui
Tag: feat-argocd-directory-recurse-6

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-6

Test in docker-compose

# Update docker-compose.dev.yaml
caipe-ui:
  image: ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-6
  # ... rest of config

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: agent-ontology
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-agent-ontology
Tag: feat-argocd-directory-recurse-5

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-agent-ontology:feat-argocd-directory-recurse-5

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: ingestors
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-ingestors
Tag: feat-argocd-directory-recurse-5

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-ingestors:feat-argocd-directory-recurse-5

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/ai-platform-engineering
Tag: feat-argocd-directory-recurse-6

Usage

docker pull ghcr.io/cnoe-io/prebuild/ai-platform-engineering:feat-argocd-directory-recurse-6

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: agent-ontology
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-agent-ontology
Tag: feat-argocd-directory-recurse-6

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-agent-ontology:feat-argocd-directory-recurse-6

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: server
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-server
Tag: feat-argocd-directory-recurse-6

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-server:feat-argocd-directory-recurse-6

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: ingestors
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-ingestors
Tag: feat-argocd-directory-recurse-6

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-ingestors:feat-argocd-directory-recurse-6

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Component: server
Repository: ghcr.io/cnoe-io/prebuild/caipe-rag-server
Tag: feat-argocd-directory-recurse-5

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-rag-server:feat-argocd-directory-recurse-5

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

artdroz and others added 3 commits March 24, 2026 17:50
# Conflicts:
#	charts/ai-platform-engineering/Chart.yaml
#	charts/ai-platform-engineering/charts/caipe-ui/Chart.yaml
@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

1 similar comment
@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@github-actions
Copy link
Copy Markdown
Contributor

✅ No proprietary content detected. This PR is clear for review!

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.7% 7503/18890 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.7% 7503/18890 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

📦 Pre-release Helm Charts Published

Registry: ghcr.io/cnoe-io/pre-release-helm-charts

ai-platform-engineering

Version: 0.2.43-feat-argocd-directory-recurse-9

helm upgrade --install ai-platform oci://ghcr.io/cnoe-io/pre-release-helm-charts/ai-platform-engineering --version 0.2.43-feat-argocd-directory-recurse-9

Note: These pre-release versions will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Main Tests Coverage

Metric Coverage Details
Lines 39.7% 7503/18890 lines
Branches 0.0% 0/0 branches

📁 Coverage Artifacts

  • Main tests: coverage-reports-main artifact
  • RAG tests: coverage-reports-rag artifact (not available)
  • Download artifacts to view detailed HTML coverage reports

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-8

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-8

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-9

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-9

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild Docker Image Published

Agent: argocd
Repository: ghcr.io/cnoe-io/prebuild/mcp-argocd
Tag: feat-argocd-directory-recurse-10

Usage

docker pull ghcr.io/cnoe-io/prebuild/mcp-argocd:feat-argocd-directory-recurse-10

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild CAIPE UI Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/caipe-ui
Tag: feat-argocd-directory-recurse-8

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-8

Test in docker-compose

# Update docker-compose.dev.yaml
caipe-ui:
  image: ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-8
  # ... rest of config

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild CAIPE UI Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/caipe-ui
Tag: feat-argocd-directory-recurse-9

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-9

Test in docker-compose

# Update docker-compose.dev.yaml
caipe-ui:
  image: ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-9
  # ... rest of config

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@github-actions
Copy link
Copy Markdown
Contributor

🐳 Prebuild CAIPE UI Docker Image Published

Repository: ghcr.io/cnoe-io/prebuild/caipe-ui
Tag: feat-argocd-directory-recurse-10

Usage

docker pull ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-10

Test in docker-compose

# Update docker-compose.dev.yaml
caipe-ui:
  image: ghcr.io/cnoe-io/prebuild/caipe-ui:feat-argocd-directory-recurse-10
  # ... rest of config

Note: This prebuild image will be automatically cleaned up when the PR is closed or merged.

@artdroz artdroz merged commit d33b631 into main Mar 24, 2026
41 of 42 checks passed
@artdroz artdroz deleted the prebuild/feat/argocd-directory-recurse branch March 24, 2026 18:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants