π§ Infrastructure Engineer Agent Specification¶
π― Agent Purpose¶
The Infrastructure Engineer Agent is responsible for generating the deployable infrastructure layer for every microservice, API gateway, background task, or system component in the factory.
It bridges the gap between logical service architecture and runnable, traceable cloud-native infrastructure, ensuring that each generated component is:
- π§© Deployable
- π Observable
- π Secure
- βοΈ Cloud-ready
- π― Trace-linked
It converts architecture blueprints into Kubernetes manifests, Helm charts, Bicep modules, service mesh configs, OTEL telemetry hooks, and more β fully aligned to ConnectSoftβs DevOps and GitOps pipelines.
π§ Strategic Role in the Factory¶
| Layer | Role |
|---|---|
| Software Engineering | Converts architectural outputs into deployment-ready specs |
| Infrastructure Layer | Creates declarative infrastructure code |
| DevOps Layer | Supplies deployable YAMLs, Helm, ARM/Bicep, etc. |
| Observability Layer | Injects OpenTelemetry configuration for traceability |
| Security Layer | Applies security baselines, RBAC, service identity bindings |
π How It Differs from Infrastructure Architect Agent¶
| Agent | Role |
|---|---|
| π§ Infrastructure Architect Agent | Designs templates, defines policies, sets constraints (high-level) |
| π§ Infrastructure Engineer Agent | Instantiates, populates, configures, and emits deployable artifacts (concrete) |
π§± What It Builds¶
-
Kubernetes manifests:
-
Deployment,Service,Ingress,ConfigMap,Secret,HPA - Helm charts for versioned deployment
- Azure DevOps YAML templates (CI/CD hooks, liveness, rollout)
- OTEL trace injection via sidecars or environment variables
- Azure Bicep or Pulumi for resource provisioning (optional phase 2)
π Purpose Summary¶
The Infrastructure Engineer Agent automates the generation of cloud-native infrastructure as code artifacts, enriched with traceability metadata, observability instrumentation, and policy-aligned deployment standards β ensuring each software component becomes immediately deployable and auditable in production.
π§© Alignment with ConnectSoft Principles¶
| Principle | Alignment |
|---|---|
| Clean Architecture | Isolates infrastructure layer from core service logic |
| Traceability | Attaches trace_id and blueprint refs to all artifacts |
| Event-Driven | Listens to blueprint & commit events, emits manifest-ready notifications |
| Observability-First | Injects metrics and OTEL automatically |
| Security-First | Supports identity bindings, secret scanning, RBAC output |
| Cloud-Native | Produces Kubernetes-native YAML, Helm, and Azure-compatible artifacts |
| Multi-Tenant SaaS | Supports tenant-specific namespaces, config overlays, scaling policies |
π§ Summary¶
The Infrastructure Engineer Agent is a deterministic, trace-aware infrastructure generation agent that:
- Instantiates real-world runtime definitions,
- Embeds observability and security best practices,
- And enables immediate deployment of every microservice and system component across environments.
It is the βcompilerβ of platform operations β turning abstract architecture into concrete, cloud-executable reality.
π Core Responsibilities¶
The Infrastructure Engineer Agent is accountable for transforming architectural service definitions and operational context into fully structured infrastructure-as-code artifacts. These artifacts are ready for consumption by the DevOps Architect Agent, Security Architect Agent, and Deployment Pipelines.
π§ Functional Responsibilities¶
β 1. Generate Kubernetes Resource Definitions¶
Deployment,Service,Ingress,ConfigMap,Secret,PersistentVolumeClaim, etc.- All YAML output is versioned and validated
- Namespaced per component and tenant
β 2. Emit Helm Charts¶
- Wrap manifests into reusable Helm templates
-
Support overrides for:
-
Environment (dev/staging/prod)
- Multi-tenant values
- Resource scaling
- Populate
Chart.yaml,values.yaml, templates
β 3. Inject Observability Configuration¶
- Generate OpenTelemetry sidecar or
envinjection -
Create config maps for:
-
Tracing exporter config
- Sampling policies
- Propagation context (trace_id, blueprint_id)
β 4. Generate Azure DevOps CI/CD Deployment YAML¶
- Creates deployment job fragments (
kustomize,kubectl apply,helm upgrade) - Publishes deployment stages for use in CI/CD pipelines
β 5. Embed Traceability Metadata¶
-
Inject trace_id, blueprint_id, component_scope into:
-
Annotations
- Labels
- Helm chart metadata
- Ensures all infrastructure is auditable and reversible
β 6. Apply Platform Security Requirements¶
-
Auto-generate:
-
Pod security context
- Identity bindings
- RBAC roles (e.g.,
service-reader,queue-publisher) - Emit Azure Key Vault integration config if required
β 7. Environment-Specific Variants¶
-
Supports overlays for:
-
dev,qa,staging,production - Scaled replicas, node affinity, tolerations
- May interface with environment policies (from Infra Architect Agent)
β 8. Publish Manifest & Helm Events¶
-
Emit:
-
InfrastructureGenerated HelmChartReadyManifestPublished- Events are consumed by: DevOps Agent, Security Agent, Observability Agent
β 9. Store and Version Output¶
-
Persist generated files to:
-
Agent workspace
- Blob storage
- Git repository (via GitOps commit)
- Include manifest signatures and hash digests
β 10. Support Future IaC Backends¶
- Bicep, Terraform, Pulumi (for Azure-native services or preview environments)
- Optional, depending on blueprint source
π Summary Table¶
| Category | Deliverable |
|---|---|
| K8s Resources | deployment.yaml, service.yaml, etc. |
| Helm Artifacts | Chart.yaml, values.yaml, templates/*.yaml |
| Observability | OTEL config maps, sidecars, labels |
| Security | RBAC, Key Vault, pod policies |
| CI/CD YAML | azure-pipelines-deploy.yaml |
| Events | InfrastructureGenerated, HelmChartReady |
| Storage Targets | Git, Blob, Agent Memory |
π§ Summary¶
The Infrastructure Engineer Agent is a production-grade infrastructure generator, tasked with producing cloud-native, policy-compliant, tenant-aware, and trace-annotated artifacts that form the foundation of runtime environments in the ConnectSoft platform.
π₯ Inputs¶
The Infrastructure Engineer Agent requires a well-structured input context that includes:
- Traceable component metadata
- Deployment constraints and scaling rules
- Architectural output from upstream agents
- Template IDs and reusable configurations
- Platform policy overlays (e.g., observability, security)
Inputs may be passed via event payloads, context memory, or agent-to-agent transfer.
π Primary Inputs¶
β 1. Trace Metadata¶
Provided by: Code Committer Agent or Blueprint Registry
| Field | Description |
|---|---|
trace_id |
Unique ID linking infra to its originating blueprint |
blueprint_id |
Identifier for use case or microservice |
component_scope |
Domain-level scope (e.g., Billing, Identity) |
agent_origin |
Source agent (e.g., Microservice Generator Agent) |
β 2. Component Runtime Definition¶
Provided by: Microservice Generator Agent or Architect Agents
component:
name: OrderService
type: microservice
transport: http
replicas: 2
container_image: ghcr.io/connectsoft/orderservice:1.0.0
env:
- name: ORDER_QUEUE
value: queue.order.processing
ports:
- name: http
port: 80
targetPort: 8080
This is the minimal unit of infrastructure to render.
β 3. Deployment Policy Overlay¶
Provided by: Infrastructure Architect Agent
environments:
dev:
replicas: 1
otel_sampling: 100
enable_ingress: true
prod:
replicas: 4
otel_sampling: 20
enable_ingress: true
enable_hpa: true
autoscale:
minReplicas: 2
maxReplicas: 10
β 4. Template References¶
Provided via policy memory or skill parameters:
| Type | Examples |
|---|---|
| Helm template ID | standard-microservice-helm-template-v3 |
| Deployment YAML template | k8s-deployment-v2.yaml |
| OTEL injection template | otel-sidecar-v1 |
| CI/CD pipeline block | azure-pipelines-k8s-deploy-v1 |
β 5. Observability Injection Parameters¶
Injected or resolved from Observability Policy Agent:
observability:
otel_enabled: true
otel_exporter: "otlp"
otel_endpoint: "http://otel-collector.monitoring:4317"
propagation: "trace_id,blueprint_id"
β 6. Security Baseline Profile¶
Provided by: Security Architect Agent
security_profile:
enable_rbac: true
rbac_roles: ["reader", "publisher"]
enable_identity_binding: true
enforce_resource_limits: true
β 7. Environment Selector¶
From the orchestration agent or blueprint:
Used to pick appropriate overlays, Helm values, autoscaling profiles, etc.
π Optional Inputs¶
existing_config_map_refsβ to mount external configurationtls_secret_nameβ if ingress requires HTTPSservice_mesh_enabledβ flags sidecar injection templates (e.g., Istio)
π§ Example Consolidated Input Bundle¶
{
"trace_id": "trace-infra-8128",
"component": {
"name": "UserService",
"type": "microservice",
"container_image": "ghcr.io/connectsoft/userservice:1.0.0",
"transport": "grpc"
},
"target_environment": "dev",
"template_id": "helm-microservice-template-v2",
"observability": {
"otel_enabled": true,
"otel_endpoint": "http://otel.default:4317"
},
"security_profile": {
"enable_rbac": true
}
}
π§ Summary¶
The Infrastructure Engineer Agent relies on a compositional input model, where it aggregates structured metadata from multiple upstream agents, policies, and runtime definitions to generate complete, traceable, and deployable infrastructure blueprints.
π€ Outputs¶
The Infrastructure Engineer Agent emits infrastructure-as-code artifacts, enriched with trace metadata, and aligned with ConnectSoft standards. These outputs serve as:
- Direct inputs to CI/CD pipelines
- Deployment descriptors for Kubernetes clusters
- Observability + security-enforced definitions
- Immutable GitOps assets
Outputs are produced in Helm-compatible, Kubernetes-native, and optionally Azure-native (Bicep) formats.
π§Ύ Output Categories¶
β 1. Kubernetes YAML Manifests¶
Generated per microservice or component:
| File | Purpose |
|---|---|
deployment.yaml |
Deploys the container with env vars, probes, labels |
service.yaml |
Internal service definition (ClusterIP or LoadBalancer) |
ingress.yaml |
Ingress routing (if enable_ingress = true) |
configmap.yaml |
Runtime configuration (non-sensitive) |
secret.yaml |
Encodes sensitive config (e.g., credentials, tokens) |
hpa.yaml |
Horizontal Pod Autoscaler config |
serviceaccount.yaml |
For pod identity / RBAC |
π Annotations include:
trace_id,blueprint_id,component_scopeagent_origin,factory_execution_id
β 2. Helm Chart Bundle¶
Directory output:
chart/
βββ Chart.yaml
βββ values.yaml
βββ templates/
β βββ deployment.yaml
β βββ service.yaml
β βββ ingress.yaml
β βββ otel-configmap.yaml
All charts follow ConnectSoft Helm scaffolding template version (v2+)
π§ Chart.yaml includes:¶
name: userservice
version: 1.0.0
appVersion: 1.0.0
annotations:
trace_id: trace-user-122
blueprint_id: usecase-user-register
generated_by: infrastructure-engineer-agent
β 3. OpenTelemetry Configuration (Optional)¶
| Output | Description |
|---|---|
otel-configmap.yaml |
Configures exporters, endpoints, and context injection |
otel-sidecar.yaml |
If service mesh or injected tracing agent is needed |
β 4. Azure DevOps CI/CD Deployment YAML Block¶
# azure-pipelines.deploy.yaml (fragment)
- stage: deploy_dev
jobs:
- deployment: deploy_userservice
environment: dev
strategy:
runOnce:
deploy:
steps:
- task: HelmDeploy@0
inputs:
chartPath: ./charts/userservice
Automatically emitted to CI/CD repo if GitOps push is enabled
β
5. Event: InfrastructureGenerated¶
Sent to the event bus for downstream agents (DevOps, Observability, Security, Orchestration):
{
"event": "InfrastructureGenerated",
"trace_id": "trace-user-122",
"repo": "UserService",
"chart_path": "charts/userservice/",
"target_environment": "dev",
"agent": "infrastructure-engineer-agent",
"timestamp": "2025-05-07T22:45:12Z"
}
β 6. Artifact Storage Locations¶
| Output | Location |
|---|---|
| YAML files | Local execution output, Git repo, or blob |
| Helm chart | Git (Helm repo), Agent memory, or tarball |
| OTEL config | Shared observability mount or ConfigMap definition |
| Events | MCP Event Bus (JSON), Event Grid (optional) |
π§ Summary¶
The Infrastructure Engineer Agent produces:
- π§ YAMLs (ready-to-apply)
- π¦ Helm charts (reusable, traceable)
- π Observability configs
- π Event hooks
- βοΈ CI/CD blocks
All aligned to ConnectSoftβs multi-tenant, trace-first, cloud-native delivery model β ensuring every component is ready for deployment, auditing, and extension.
π Knowledge Base¶
The Infrastructure Engineer Agent operates as a template-driven, policy-aware generation engine, relying on a rich knowledge base of:
- Infrastructure templates
- Cloud-native patterns
- Multi-tenant deployment overlays
- Security and observability guidelines
- Repository conventions and naming standards
This allows the agent to generate predictable, reusable, and compliant outputs at scale.
π Core Knowledge Categories¶
β 1. Infrastructure Templates¶
| Template Type | Examples |
|---|---|
| Kubernetes YAML | k8s-deployment-v2.yaml, service.yaml, hpa.yaml |
| Helm Scaffolding | Chart.yaml, values.yaml, template/*.yaml |
| Ingress / Mesh | ingress-istio.yaml, gateway-api.yaml |
| DevOps YAML | azure-pipelines.deploy.yaml, helm-release-stage.yaml |
Versioned, stored centrally, and referenced by template ID.
β 2. Observability Injection Blocks¶
| Knowledge | Use |
|---|---|
| OTEL sidecar / environment templates | Add tracing exporters, propagators |
| Trace metadata schema | Define how to inject trace_id, blueprint_id into metadata.labels and annotations |
| Environment-specific propagation rules | e.g., only enable in staging/prod |
β 3. Security Enforcement Snippets¶
| Knowledge | Action |
|---|---|
| RBAC role templates | Generate Role, RoleBinding, ServiceAccount |
| Pod security context rules | Enforce non-root, seccomp, capabilities |
| Vault + Secret annotations | Template for injecting Key Vault or sealed secrets |
β 4. Scaling and Environment Overlays¶
| Environment | Config |
|---|---|
dev |
Single replica, permissive probes, tracing = 100% |
qa |
2β3 replicas, autoscaling on CPU |
prod |
HPA enabled, ingress secured, OTEL = sampling 20% |
Overlays define:
- Replica counts
- Autoscaling configs
- Resource limits/requests
- Ingress TLS and domain mapping
β 5. Naming and Repo Conventions¶
| Type | Pattern |
|---|---|
| Namespace | cs-${tenant}-${component} |
| Helm chart name | ${component}-chart |
| Git path | infrastructure/${component}/ |
| Secret name | cs-${component}-secrets-${env} |
β 6. Reusable Metadata Definitions¶
| Field | Use |
|---|---|
trace_id |
Embedded in metadata.annotations |
blueprint_id |
Embedded in labels and Chart.yaml |
agent_origin |
Logged in InfrastructureGenerated events |
execution_id |
Linked across commit β PR β manifest flow |
β 7. Policy Definitions (from Infra Architect Agent)¶
| Policy | Example |
|---|---|
| Max replicas | 10 in non-prod, 100 in prod |
| Allow ingress | Only in staging, prod |
| Secret volume mount path | Must match /mnt/secrets/<name> |
| Mandatory labels | team, component, trace_id, env |
ποΈ Knowledge Storage Options¶
| Source | Type |
|---|---|
| SK Planner Memory | Templates and transformation prompts |
| Blob Storage / Git | Helm scaffolding, reusable YAMLs |
| Redis / Cosmos DB | Policy overlays and trace mappings |
| Vector DB | Embedded blueprint-usecase β manifest similarity search (future phase) |
π§ Summary¶
The Infrastructure Engineer Agentβs knowledge base enables it to:
- Enforce infrastructure standards
- Apply reusable and modular templates
- Respect multi-environment policies
- Maintain consistency across 1000s of services
- Produce fully traceable, auditable, and secure infrastructure
It transforms infrastructure generation into a policy-bound AI reasoning task, not a copy/paste exercise.
π Process Flow¶
flowchart TD
A[Receive Input Bundle (CommitCompleted / BlueprintReady)] --> B[Resolve Component + Env Config]
B --> C[Load Templates + Overlays]
C --> D[Render YAMLs (Deployment, Service, HPA)]
D --> E[Inject Trace + Metadata]
E --> F[Assemble Helm Chart (Optional)]
F --> G[Validate Artifacts (Schema, Policy)]
G --> H[Emit Output Files + Events]
πͺ Step-by-Step Breakdown¶
β Step 1: Input Ingestion¶
-
Input event or task provides:
-
trace_id,blueprint_id,component_scope - Target
environment - Component metadata (
image,ports,env, etc.)
If any required input is missing, agent halts and emits correction event.
β Step 2: Resolve Configuration Context¶
-
Look up:
-
Tenant/environment overlays
- Default scaling rules
- Observability and security policies
- Determine which templates to use based on component type
β Step 3: Load and Merge Templates¶
-
Load:
-
Kubernetes YAML templates
- Helm scaffold (if enabled)
- OTEL and security stubs
- Merge overlays based on environment profile
β Step 4: Render Infrastructure Artifacts¶
-
Populate:
-
deployment.yaml,service.yaml,hpa.yaml - Inject container image, env vars, probes, ports
- Derive name/namespace using naming policy
- Add config maps, secrets, identity bindings if defined
β Step 5: Inject Traceability Metadata¶
-
Into every artifact:
-
metadata.labels.trace_id metadata.annotations.blueprint_id,component_scope,generated_by- Also inject into
Chart.yaml, OTEL config maps, and release metadata
β Step 6: Helm Chart Assembly (Optional)¶
-
If Helm is enabled:
-
Populate
Chart.yaml,values.yaml, andtemplates/* - Export as chart directory or
.tgzbundle - Add version from execution context
β Step 7: Validate Outputs¶
-
Run:
-
Kubernetes schema validation (
kubectl apply --dry-run=client) - Helm lint checks (
helm lint) -
Policy validation:
- Prohibited ports
- Missing labels
- Disallowed node selectors
- If invalid β retry or escalate to HumanOpsAgent
β Step 8: Emit Artifacts and Events¶
-
Save YAMLs to:
-
Blob storage
- Agent workspace
- Git repo (via GitOps push, optional)
-
Emit:
-
InfrastructureGeneratedevent - Trace linkage log
- Make artifacts available for DevOps pipeline and Observability Agent
π¦ Parallel Paths (Optional)¶
| Flow | Trigger |
|---|---|
| Azure Bicep or Pulumi | Component needs cloud resource (e.g., storage, identity) |
| Config-only Mode | Only ConfigMap or Helm values.yaml generation |
| Multi-env mode | Generate dev, qa, and prod overlays in one pass |
π Process Guardrails¶
| Guardrail | Result |
|---|---|
| Missing trace ID | Abort with validation error |
| PR exists but not linked to trace | Emit warning, block generation |
| Helm chart fails lint | Retry + emit event for TechLeadAgent |
| Environment undefined | Fallback to default overlay (dev) |
π§ Summary¶
The Infrastructure Engineer Agent follows a deterministic, modular pipeline, transforming architecture + policy into validated, traceable, and production-ready infrastructure artifacts.
Its flow enforces:
- Clean separation of concern
- Trace integrity
- Policy application
- AI-powered reproducibility
π§© Skills & Kernel Functions¶
The Infrastructure Engineer Agent uses Semantic Kernel (SK) plugins, LLM-assisted planners, and template resolution functions to transform architectural inputs into structured infrastructure code.
Its skills are composable, reusable, and enforce policy compliance, trace embedding, and platform compatibility.
π οΈ Core Skills & Functions¶
| Skill | Purpose |
|---|---|
TemplateResolverSkill |
Load and resolve YAML/Helm templates using variable substitution |
OverlayMergeSkill |
Apply environment-specific configuration overlays (e.g., prod, dev) |
TraceMetadataInjectorSkill |
Insert trace_id, blueprint_id, component_scope into all outputs |
HelmChartBuilderSkill |
Assemble Helm Chart.yaml, values.yaml, and templates/ |
OtelInjectionSkill |
Add OTEL exporter config, environment variables, or sidecars |
SecurityContextBuilderSkill |
Generate pod security policies, service accounts, identity bindings |
K8sValidatorSkill |
Perform dry-run validations of rendered YAML |
ArtifactEmitterSkill |
Persist generated files, emit event with output paths and metadata |
EventEmitterSkill |
Send events like InfrastructureGenerated, HelmChartReady, InfraValidationFailed |
π Example SK Function Flow¶
β TemplateResolverSkill.Load("k8s-deployment-v2.yaml")
β OverlayMergeSkill.Merge(environment="prod")
β TraceMetadataInjectorSkill.Inject(trace_id="trace-xyz")
β HelmChartBuilderSkill.Build(component="orderservice")
β K8sValidatorSkill.Validate()
β ArtifactEmitterSkill.Save(path="/charts/orderservice")
β EventEmitterSkill.Emit("InfrastructureGenerated")
π§ Semantic Kernel Planner Composition¶
The agent's execution plan is built using SKβs planner + skill chaining, which allows it to:
- Dynamically choose the correct environment overlay
- Reuse templates across services and components
- Inject trace metadata everywhere (including Helm chart metadata, labels, annotations)
π§ AI-Powered Code Synthesis (Optional Phase)¶
| Function | Use |
|---|---|
LLMTemplateExpander |
Given blueprint + resource description β generate YAML draft |
PromptBasedValidator |
Ask: βIs this YAML compliant with ConnectSoft standards?β |
PostProcessorSkill |
Format YAML, compress, inject final metadata block |
Used to fine-tune low-confidence scenarios or novel component types.
π Security-Scoped Skill Usage¶
- Each skill enforces least-privilege file access
- Template paths are read-only (no overwrite unless approved)
- Helm chart builder operates within a sandboxed path per tenant/project
π§ Summary¶
The Infrastructure Engineer Agent is powered by a modular, SK-based skillset that enables:
- Template-driven infrastructure synthesis
- Trace-aware manifest generation
- Secure, policy-aligned Helm packaging
- Observability-first automation across environments
It transforms declarative specs into validated, versioned, cloud-native infrastructure, ready for GitOps deployment or DevOps orchestration.
π§° Core Technology Stack¶
The Infrastructure Engineer Agent is implemented as a modular, containerized, policy-driven agent, using Semantic Kernel, OpenAI, Kubernetes-native tooling, and Azure-native infrastructure.
βοΈ Platform Technologies¶
| Layer | Technology | Purpose |
|---|---|---|
| Agent Orchestration | MCP Server (Model Context Protocol) | Lifecycle orchestration, event flow |
| Execution Engine | .NET 8 + Semantic Kernel | Agent runtime, skills, plan composition |
| LLM Backend | Azure OpenAI (GPT-4 Turbo) | Prompt expansion, reasoning (e.g., trace-to-template logic) |
| Memory | Redis / Cosmos DB / Qdrant | Store overlays, trace-mapping, and reusable templates |
| Container Host | Azure Kubernetes Service (AKS) or Container Apps | Runs the agent securely and scalably |
π¦ Infrastructure-Specific Tools¶
| Tool | Use |
|---|---|
| Helm | Chart generation, packaging, and linting |
| Kustomize (optional phase) | Layered overlay generation for complex resources |
| kubectl | YAML dry-run validation, apply tests |
| Yamllint | Schema checking and formatting |
| OpenTelemetry SDK | Instrument infrastructure artifacts and agent telemetry |
| Azure CLI / Bicep CLI (optional) | Provision cloud resources if blueprint defines service-dependent infrastructure |
π Agent Libraries & Skills¶
| Library | Use |
|---|---|
ConnectSoft.Skills.Kubernetes |
Loads and fills K8s YAML templates |
ConnectSoft.Skills.Helm |
Helm chart scaffolding, value injection, metadata mapping |
ConnectSoft.Skills.TraceInjection |
Labels + annotations for observability and traceability |
ConnectSoft.Skills.Validation |
YAML linting, policy checks, schema enforcement |
ConnectSoft.Skills.Eventing |
Infrastructure lifecycle events for downstream use (DevOps, QA, Docs, etc.) |
π Security & Policy Enforcement¶
| Feature | Technology |
|---|---|
| RBAC/PodSecurity | Enforced via YAML + policy overlays |
| Key Vault Integration | Injected via annotation + secret template |
| Identity binding | Uses Azure AD pod identity (via service account config) |
| File sandboxing | Helm and YAML writers scoped to tenant/workspace only |
π Observability Stack¶
| Tool | Use |
|---|---|
| OpenTelemetry (OTEL) | Agent-level spans, operation metrics |
| Azure Monitor / Grafana | Dashboards and alert rules for generation failures |
| Span Tags | Include: trace_id, component_scope, chart_status, helm_lint_passed |
π Output Integration Targets¶
| Target | Technology |
|---|---|
| GitOps Repo | Git CLI or GitHub/Azure DevOps REST API |
| Artifact Blob | Azure Blob Storage |
| Event Bus | Azure Event Grid or MCP Server Messaging |
| Helm Repo | Git-based or OCI Helm registry (future phase) |
π§ Summary¶
The Infrastructure Engineer Agent uses a composable AI + DevOps toolchain, grounded in:
- Kubernetes-native standards
- Trace-first automation
- Policy-bound execution
- Multi-environment and multi-tenant support
It brings together the power of AI reasoning with the determinism of IaC templates, ensuring that infrastructure generation is autonomous, auditable, and production-safe.
π System Prompt¶
The System Prompt is the initial instruction injected into the agentβs LLM-backed planning kernel to define its:
- Mission
- Scope boundaries
- Output format expectations
- Compliance rules
- Error handling mindset
It ensures consistent, secure, and traceable infrastructure generation across environments and tenants.
π§ Infrastructure Engineer Agent β System Prompt¶
You are the Infrastructure Engineer Agent in the ConnectSoft AI Software Factory.
Your primary task is to generate complete, traceable, policy-compliant infrastructure definitions for microservices, APIs, event processors, or system components. These definitions are consumed by CI/CD pipelines, observability layers, and DevOps systems.
You never invent functionality β instead, you populate infrastructure templates with correct values, following environment overlays and platform policies.
You always include:
- Required Kubernetes resources: deployment, service, ingress, configmap
- Helm charts if requested
- Traceability metadata in labels and annotations
- OpenTelemetry configuration (if enabled)
- RBAC roles, service account, or security context (if required)
You must:
- Follow infrastructure naming policies
- Ensure output is YAML-compliant
- Validate using linting and schema checks
- Halt on invalid or incomplete input
You emit both:
- Infrastructure files (YAML, Helm, OTEL config)
- Lifecycle event: InfrastructureGenerated
All output must be:
- Cleanly formatted
- Deterministic and reproducible
- Enriched with trace and blueprint metadata
Do not guess, hallucinate, or fabricate. Work strictly from templates and policy overlays.
π Key Behavioral Constraints¶
| Rule | Purpose |
|---|---|
| No hallucination | Enforces deterministic IaC |
| Always inject trace_id | Enables audit and rollback |
| Fail fast on policy violation | Prevents insecure or unscoped artifacts |
| Use reusable templates | Ensures consistency across 1000s of components |
π Sample Manifest Annotation Output (Required)¶
metadata:
labels:
trace_id: trace-ord-8128
component_scope: Order
annotations:
blueprint_id: usecase-create-order
generated_by: infrastructure-engineer-agent
π§ Summary¶
This System Prompt ensures the Infrastructure Engineer Agent always:
- Acts with trace-first discipline
- Embeds security and observability standards
- Produces CI/CD- and GitOps-ready infrastructure artifacts
- Behaves with AI safety and operational rigor
It is the foundation of agentic reproducibility in infrastructure synthesis.
π₯ Input Prompt Template¶
The Input Prompt Template provides a structured and parameterized instruction to the agent, combining:
- Component metadata
- Trace linkage
- Environment overlays
- Template resolution instructions
This prompt is either fed into the Semantic Kernel planner or expanded by the LLM-backed function to generate YAML, Helm, and event outputs.
π§© Prompt Template (YAML-Injection Style)¶
You are generating Kubernetes infrastructure definitions for the following component:
Trace ID: {{trace_id}}
Blueprint ID: {{blueprint_id}}
Component Name: {{component_name}}
Component Scope: {{component_scope}}
Component Type: {{component_type}} (e.g., microservice, api-gateway, job)
Image: {{container_image}}
Transport: {{transport}} (http, grpc, queue, etc.)
Target Environment: {{target_environment}}
Environment Overlays:
{{env_overlay_block}}
Security Profile:
{{security_profile}}
Observability Settings:
{{observability_block}}
Template ID: {{template_id}}
Output Format: Kubernetes YAML + Helm Chart (if enabled)
Instructions:
1. Fill deployment, service, ingress, and configmap templates using the inputs above.
2. Apply environment-specific overlays (replicas, resources, ingress rules).
3. Inject traceability metadata into all `metadata.labels` and `metadata.annotations`.
4. Add OTEL config or sidecar (if observability enabled).
5. Assemble a valid Helm chart (if requested).
6. Validate all YAMLs using schema-aware linting.
7. Emit: output files + InfrastructureGenerated event
Your output must be:
- Complete, valid YAML
- Compliant with all input policies
- Clearly traceable via metadata
- Stored and emitted according to factory standards
Do not generate sample values. Use only inputs provided.
π§Ύ Substituted Prompt Example (Partial)¶
Trace ID: trace-auth-9042
Blueprint ID: usecase-auth-token-grant
Component Name: AuthService
Component Scope: Identity
Component Type: microservice
Image: ghcr.io/connectsoft/authservice:1.3.1
Transport: http
Target Environment: staging
Observability Settings:
otel_enabled: true
otel_endpoint: http://otel.default.svc.cluster.local:4317
propagation_fields: trace_id, blueprint_id
Template ID: helm-microservice-template-v3
Output Format: Helm + YAML
π§ Required Template Variables¶
| Variable | Description |
|---|---|
{{trace_id}} |
Critical for linking infra to blueprint |
{{component_name}} |
Used in file names, chart IDs, metadata |
{{transport}} |
Determines port schema and service mapping |
{{observability_block}} |
Dictates if sidecars or OTEL configmaps are needed |
{{security_profile}} |
Triggers RBAC and pod policy generation |
{{target_environment}} |
Chooses overlays and resource profiles |
π§ Prompt Behavior Summary¶
| Area | Role |
|---|---|
| π§ Contextual | Provides LLM or planner everything needed to render valid infrastructure |
| π Safe | Explicitly disables guessing, hallucination |
| π¦ Reusable | Can be versioned or replayed for the same component |
| π― Deterministic | Ensures output matches blueprint, not improvisation |
β Summary¶
The Input Prompt Template enables the Infrastructure Engineer Agent to operate in a strict, controlled, and reproducible manner β generating infrastructure that is:
- Trace-linked
- Policy-driven
- Cloud-native
- Composable via agent-to-agent flow
π¦ Output Expectations¶
The Infrastructure Engineer Agent emits infrastructure-as-code artifacts that are:
- Valid Kubernetes YAML manifests
- Optional Helm charts
- OTEL and security config files
- CI/CD deployment fragments
- Event payloads describing success/failure
All outputs must be traceable, policy-compliant, and ready for automation.
β YAML File Expectations¶
π§Ύ Structure¶
Each YAML manifest must be:
- Fully structured and schema-valid
- Separated per Kubernetes kind
- Commented (optional) for readability
- Labeled and annotated for traceability
π§Ύ Required Files (per component)¶
| File | Description |
|---|---|
deployment.yaml |
Includes image, env vars, probes, replica spec |
service.yaml |
ClusterIP or LoadBalancer |
ingress.yaml (optional) |
Routing configuration if ingress enabled |
configmap.yaml |
App-level non-sensitive config |
secret.yaml (optional) |
Mounted secrets via volumes |
hpa.yaml (optional) |
Horizontal Pod Autoscaler |
serviceaccount.yaml |
Identity-binding + RBAC link |
π Required Metadata Injection¶
Each manifest must include the following:
metadata:
labels:
trace_id: trace-ord-8128
component_scope: Order
annotations:
blueprint_id: usecase-create-order
agent_origin: infrastructure-engineer-agent
factory_execution_id: exec-8128-xyz
β Helm Chart Expectations¶
| File | Description |
|---|---|
Chart.yaml |
Includes name, version, appVersion, annotations |
values.yaml |
Accepts all configurable params (image, replicaCount, env, etc.) |
templates/*.yaml |
Mirrors YAML files above with {{ .Values.* }} injection |
Must pass
helm lintand be exportable as.tgz
β CI/CD Output Fragment (Optional)¶
# azure-pipelines.deploy.yaml
- stage: deploy
jobs:
- deployment: deploy_orderservice
strategy:
runOnce:
deploy:
steps:
- task: HelmDeploy@0
inputs:
chartPath: ./charts/orderservice
releaseName: orderservice-${{ environment }}
β
Event: InfrastructureGenerated¶
Structured payload for event-driven pipelines:
{
"event": "InfrastructureGenerated",
"trace_id": "trace-ord-8128",
"repo": "OrderService",
"env": "staging",
"files": [
"deployment.yaml",
"service.yaml",
"hpa.yaml"
],
"agent": "infrastructure-engineer-agent",
"timestamp": "2025-05-07T23:19:41Z"
}
β οΈ Output Validation Criteria¶
| Check | Rule |
|---|---|
| YAML valid | kubectl apply --dry-run=client must succeed |
| Helm lint | helm lint must pass if chart generated |
| Required metadata | trace_id, blueprint_id, component_scope must be present |
| Reproducibility | Inputs must produce same output deterministically |
| Policy-compliant | No unapproved ports, unscoped volumes, or missing securityContext |
π Storage Targets¶
| Artifact | Target |
|---|---|
| YAML / Helm | Git repo (via GitOps), local volume, or blob |
| Event | Event Grid, MCP Event Bus, or Redis Stream |
| Logs | Structured logs to Azure Monitor or Blob Archive |
π§ Summary¶
The Infrastructure Engineer Agentβs outputs are:
- Trace-bound and audit-ready
- Valid and secure
- Usable by GitOps, DevOps, and CI pipelines
- Extendable across environments and tenants
These outputs form the bridge between architecture and deployment in ConnectSoftβs AI Software Factory.
π§ Memory¶
The Infrastructure Engineer Agent uses memory to:
- Maintain execution context during a run
- Track trace-to-blueprint relationships
- Persist reusable overlays and templates
- Avoid duplicate generation
- Support auditability, rollback, and differential infra inspection
It combines short-term (in-memory) and long-term (persistent) memory strategies.
π Short-Term Memory (Execution Scope)¶
Cleared after task execution or timeout.
| Field | Description |
|---|---|
trace_id |
Passed into all artifact generators |
execution_id |
Used for correlation across logs and events |
component_context |
Parsed blueprint + microservice metadata |
template_id |
Resolved from blueprint or default registry |
merged_overlay_config |
In-memory merged env + policy config |
generated_artifacts |
Pointer to YAML files and chart files during execution |
Stored in Semantic Kernel context dictionary, accessible by all skills.
πΎ Long-Term Memory (Persistent Store)¶
Stored in Redis, Cosmos DB, or vector database depending on configuration.
β a. Trace β Artifact Map¶
Tracks generated infrastructure per trace:
{
"trace_id": "trace-user-812",
"component": "UserService",
"helm_chart": "charts/userservice/",
"artifacts": ["deployment.yaml", "hpa.yaml"],
"env": "qa",
"timestamp": "2025-05-07T23:30:02Z"
}
Enables rebuilds, rollbacks, and trace validation.
β b. Template Registry Cache¶
- Indexed by
template_idandcomponent_type - Includes hash of rendered output to detect drift or unintended changes
β c. Environment Overlays¶
-
Maps of tenant/environment-level overrides:
-
replicaCount,resources,ingress,otel_enabled, etc.
Used to auto-resolve policies without re-fetching from source.
β d. Helm Chart History¶
- Stores published chart versions per component
- Allows for
diff,rollback, and GitOps pull syncing
β e. LLM/Embedding-Based Memory (Optional Phase)¶
Used for similarity searches on past blueprint-infra relationships:
| Use | Benefit |
|---|---|
| "Show me infra for a similar billing service" | Aids in templating |
| "What pattern do other services in Finance follow?" | Promotes consistency |
| "Has this file changed since last run?" | Enables infra diffing |
π§ Memory Retention Policies¶
| Type | Retention |
|---|---|
| Execution memory | 1 task/session (ephemeral) |
| Trace map | 90 days (extendable to 1 year) |
| Helm charts | Kept per version, pruned after 5 versions |
| OTEL and overlay cache | 30 days or until invalidated by config update |
π Memory Security¶
- All writes scoped to tenant/workspace
- Infra output cannot be read by unrelated agents
- LLM embedding vectors (if used) are anonymized by trace prefix, not full payload
π§ Summary¶
The Infrastructure Engineer Agentβs memory system ensures that infrastructure generation is:
- Traceable β every YAML or chart can be mapped to its originating blueprint
- Reproducible β same inputs yield same output
- Auditable β metadata, execution logs, and event history are retained
- Composable β overlays and templates can be reused without recomputation
This makes it a state-aware and context-persistent agent in a stateless cloud environment.
β Validation¶
The Infrastructure Engineer Agent must ensure every generated artifact is:
- β Schema-valid (e.g., Kubernetes syntax correctness)
- β
Traceable (has
trace_id,blueprint_id) - β Policy-compliant (security, naming, resource limits)
- β Deployable (wonβt break CI/CD or GitOps workflows)
Validation is run before output is committed to Git, stored, or published as a Helm chart.
π§ͺ Validation Categories¶
π§Ύ 1. Schema & Syntax Validation¶
| Validator | Description |
|---|---|
kubectl apply --dry-run=client |
Ensures Kubernetes manifests can be parsed and applied |
helm lint |
Verifies Helm templates compile with current values.yaml |
yamllint |
Structural format and indentation rules |
π 2. Security Compliance Checks¶
| Check | Rule |
|---|---|
runAsNonRoot |
Must be true unless overridden by policy |
privileged |
Must be false |
| Secret mounts | Must use approved paths (e.g., /mnt/secrets/<name>) |
| No hostPath volumes | Unless explicitly approved via overlay |
These are defined in reusable
security-profile.yamlbundles injected by the Infrastructure Architect Agent.
π·οΈ 3. Metadata Compliance¶
| Requirement | Status |
|---|---|
trace_id label |
β Must be present in all resources |
blueprint_id annotation |
β Must be consistent |
component_scope label |
β Required for policy routing |
generated_by label |
Must be infrastructure-engineer-agent |
π 4. Resource Policy Checks¶
| Rule | Example |
|---|---|
| Max replicas | Dev β€ 3, Prod β€ 100 |
| CPU request/limit ratio | Must follow platform ratio (e.g., 1:2) |
| Liveness/readiness probes | Required for microservice types |
| Ingress hostname | Must match *.connectsoft.dev for dev/staging environments |
π§© 5. Helm-Specific Validation (if enabled)¶
| Rule | Description |
|---|---|
| Chart metadata valid | Name, version, appVersion present |
| Template rendering test | helm template . must not fail |
| Values coverage | All .Values variables must resolve (no undefined references) |
π§° 6. Custom Policy Validators¶
Provided by the Security Architect or Infrastructure Architect agents, including:
- Forbidden ports
- Mandatory labels for observability
- RuntimeClass enforcement
β 7. Failure Conditions and Actions¶
| Failure Type | Action |
|---|---|
| Schema error | Abort generation, emit InfraValidationFailed event |
| Missing trace_id | Halt and escalate to HumanOpsAgent |
| Helm lint failure | Retry with fallback values (if applicable), else escalate |
| Policy violation | Block output and attach reason to event/log |
π Validation Output Format¶
{
"trace_id": "trace-infra-882",
"component": "OrderService",
"status": "failed",
"errors": [
"Missing trace_id in deployment.yaml",
"securityContext.privileged=true is not allowed"
],
"agent": "infrastructure-engineer-agent",
"timestamp": "2025-05-07T23:42:50Z"
}
π§ Summary¶
The Infrastructure Engineer Agent's validation logic ensures every artifact is:
- Safe for production
- Traceable to the source blueprint
- Deployable across environments
- Compliant with platform policies
It prevents accidental misconfigurations, enforces reproducibility, and guarantees that only verified infrastructure artifacts move downstream in the ConnectSoft software factory.
π Retry & Correction Flow¶
The Infrastructure Engineer Agent must be:
- β Resilient to transient issues (e.g., template load failure)
- β
Strict on structural violations (e.g., missing
trace_id) - β Smart in recovery β retry only where safe and deterministic
- β Transparent β emit structured failure events and notify appropriate agents
This ensures generation errors donβt silently fail or propagate broken infrastructure into CI/CD pipelines.
π Retry Scenarios¶
β Automatically Retry On:¶
| Failure Type | Strategy |
|---|---|
| Helm lint timeout | Retry up to 3 times with exponential backoff |
| Template load failure | Retry with fallback template or cached version |
| External dependency delay (e.g., config fetch) | Retry 1β2 times with backoff |
π« Do Not Retry On:¶
| Failure Type | Action |
|---|---|
Missing trace_id |
Abort and escalate |
| Policy violation (e.g., privileged container) | Halt and emit violation event |
| YAML syntax invalid | Emit validation error immediately |
| Invalid environment overlay | Notify Infra Architect Agent or HumanOpsAgent |
πͺ Retry Strategy Logic¶
flowchart TD
A[Generation Starts] --> B[Template Load]
B --> C[Merge Overlays]
C --> D[Render YAML]
D --> E[Run Validation]
E --> F{Validation Passes?}
F -- Yes --> G[Emit Artifacts + Event]
F -- No --> H{Retryable Failure?}
H -- Yes --> D
H -- No --> I[Emit Failure Event + Notify Ops]
π Retry Policy Definition¶
retry_policy:
max_attempts: 3
backoff_strategy: exponential
retryable_failures:
- helm_lint_timeout
- template_load_failure
- blob_storage_timeout
hard_failures:
- trace_missing
- policy_violation
- yaml_schema_error
π£ Failure & Correction Events¶
π΄ InfrastructureGenerationFailed¶
Emitted when retries are exhausted or fatal errors occur.
{
"event": "InfrastructureGenerationFailed",
"trace_id": "trace-user-122",
"component": "UserService",
"reason": "missing trace_id in deployment.yaml",
"attempts": 1,
"status": "aborted",
"timestamp": "2025-05-07T23:46:00Z"
}
Consumed by:
HumanOpsAgentTechLeadAgentSecurityArchitectAgent
π§βπΌ Human Correction Pathways¶
| Interface | Capability |
|---|---|
| MCP Dashboard | Inspect failed run, retry with override |
| DevOps Console | Push fixed template or policy |
| Trace Debugger | See blueprintβartifactβvalidation mapping |
| Manual PR | Allow fallback PR with partial infra only |
π§ Optional: Auto-Fix for Common Errors (Future)¶
- Detect
missing imageand promptMicroservice Generator Agent - Suggest RBAC fixes for known
access deniedviolations - Fallback to
safe values.yamlon Helm render error
π§ Summary¶
The Infrastructure Engineer Agent includes a deterministic, policy-bound retry mechanism with:
- Smart backoff
- Traceable events
- Safe halting behavior
- Human correction pathways
It ensures infrastructure generation is resilient, secure, and auditable, even in the presence of partial failures or policy violations.
π Collaboration Interfaces¶
The Infrastructure Engineer Agent works in coordination with multiple upstream and downstream agents, exchanging trace-aware, versioned, and policy-constrained artifacts.
It operates mid-pipeline between design (architecture agents) and deployment (DevOps agents), emitting infrastructure that is:
- Validated
- Observable
- Secure
- Traceable
π₯ Upstream Inputs From¶
| Agent | Purpose |
|---|---|
| Microservice Generator Agent | Supplies component definition (image, ports, env, transport) |
| Infrastructure Architect Agent | Provides reusable templates, overlays, and policies |
| Security Architect Agent | Injects RBAC roles, identity binding rules, security context templates |
| Observability Agent (optional) | Supplies OTEL settings and tracing propagation fields |
| Blueprint/Trace Mapper Agent | Provides linkage to trace_id, blueprint_id, execution_id |
π€ Downstream Consumers¶
| Agent | Purpose |
|---|---|
| DevOps Agent | Consumes YAML and Helm for CI/CD deployment pipeline |
| HumanOpsAgent | Intervenes in case of validation or generation failure |
| Security Architect Agent | Post-verifies policy compliance of security contexts |
| Observability Agent | Parses OTEL-configured manifests to wire tracing |
| Documentation Agent | Pulls metadata for infra overview documentation (env, chart, ports, identity) |
π Event-Based Communication (MCP)¶
| Event | Trigger | Consumed By |
|---|---|---|
InfrastructureGenerated |
On successful artifact generation | DevOps Agent, Observability Agent |
HelmChartReady |
Helm package built | DevOps Agent |
InfrastructureGenerationFailed |
YAML/Helm/validation failure | HumanOpsAgent, TechLeadAgent |
TraceLinkValidated |
Trace/blueprint IDs resolved and matched | Trace Auditor or Doc Generator |
π§ Semantic Kernel Context Passing¶
Via shared execution memory:
- Passes validated environment overlays downstream
- Makes reusable config blocks accessible to related agents (e.g., PR generator, deployment renderer)
- Retains shared trace execution context (
execution_id,component_scope)
π Git and Storage Interfaces¶
| Target | Use |
|---|---|
| GitOps Repository | Push generated artifacts (YAML, Helm) with trace-annotated commits |
| Blob Storage | Archive versioned Helm charts and manifest bundles |
| Azure DevOps Pipelines | Feed azure-pipelines.deploy.yaml to deploy stages |
| Helm Registry (optional) | Publish charts for reuse in multi-region setups |
π Security Interfaces¶
| Agent | Integration |
|---|---|
Security Architect Agent |
Fetches/validates security policies, injects identities |
Vault Resolver Agent (future) |
Mounts secret references and encrypted configurations |
RBAC Plan Generator Agent (optional) |
Resolves RBAC scopes per service role pattern (e.g., reader, publisher) |
π€ Collaboration Sequence Diagram¶
sequenceDiagram
MicroserviceGen->>InfraEng: Component Definition + Trace Metadata
InfraArch->>InfraEng: Template + Overlay Profiles
SecurityArch->>InfraEng: RBAC + Security Context
InfraEng->>DevOpsAgent: Emit InfrastructureGenerated Event
InfraEng->>ObservabilityAgent: OTEL-enabled Manifest Emitted
InfraEng->>HumanOpsAgent: (On Failure) Emit InfrastructureGenerationFailed
π§ Summary¶
The Infrastructure Engineer Agent is a collaborative orchestrator of infrastructure generation β integrating with architecture, security, observability, DevOps, and traceability pipelines.
It enables fully connected, end-to-end traceable infrastructure across the entire ConnectSoft AI Software Factory, ensuring:
- Deployment readiness
- Auditability
- Compliance
- Automation safety
π Observability Hooks¶
The agent is fully instrumented using OpenTelemetry and emits structured logs, spans, and events to support debugging, analysis, SLA monitoring, and forensic auditing.
β 1. OpenTelemetry Spans¶
| Span Name | Description |
|---|---|
infragen.start |
Start of infrastructure generation task |
infragen.template.load |
Template resolution and overlay merging |
infragen.render.yaml |
Rendering of YAML files |
infragen.helm.build |
Helm chart assembly (if enabled) |
infragen.validate |
Runs validation and schema checks |
infragen.complete |
Emission of artifacts and success event |
Span Tags:¶
trace_idcomponent_scoperepoenvexecution_idagent: infrastructure-engineer-agentstatus: success | failed | skippedfailure_reason(if failed)
β 2. Structured Logging (JSON)¶
Every step is logged with contextual metadata:
{
"agent": "infrastructure-engineer-agent",
"trace_id": "trace-billing-810",
"component": "BillingService",
"template_id": "helm-v2",
"result": "success",
"files_generated": ["deployment.yaml", "hpa.yaml"],
"execution_id": "exec-810a",
"timestamp": "2025-05-07T23:53:24Z"
}
Logs go to:
- Azure Monitor
- Central blob log archive
- Optional real-time telemetry bus (e.g., Redis Stream)
β 3. Lifecycle Events¶
| Event | Used For |
|---|---|
InfrastructureGenerated |
Signals artifact readiness |
HelmChartReady |
Indicates chart packaging complete |
InfrastructureGenerationFailed |
Alerts failure (validation, trace, etc.) |
TraceLinkValidated (optional) |
Confirms successful blueprint β artifact linkage |
π§βπΌ Human Intervention Hooks¶
When the agent encounters non-recoverable failures, it halts execution and notifies human operators via structured escalation channels.
π¨ Escalation Triggers¶
| Trigger | Action |
|---|---|
Missing trace_id |
Abort and emit InfrastructureGenerationFailed |
| Template render error | Log and halt; offer fix or override via MCP dashboard |
| Helm lint failure (non-retryable) | Alert HumanOpsAgent |
| Policy violation | Pass to Security Architect Agent or TechLeadAgent |
π₯ HumanOps Interfaces¶
| Tool | Capability |
|---|---|
| MCP Ops Dashboard | View failed executions, retry with override |
| Slack / Teams | Alert on failure with error summary |
| GitHub PR Comments (optional) | Auto-comment on PR if linked to infra failure |
| Manual Trigger API | Allow DevOps team to regenerate infrastructure with fixed values or reconfigured overlays |
π§ Manual Retry Flow¶
sequenceDiagram
InfraEng->>ValidationService: Run validation
ValidationService-->>InfraEng: Failure (policy violation)
InfraEng->>HumanOpsAgent: Emit InfrastructureGenerationFailed
HumanOpsAgent->>InfraEng: Retry with override via dashboard or CLI
InfraEng->>DevOpsAgent: Emit updated InfrastructureGenerated event
β Observability Compliance¶
| Feature | Enforced? |
|---|---|
| OTEL-compliant spans | β |
| Span correlation to execution_id | β |
| Structured logs with trace_id | β |
| Event-driven pipeline integration | β |
| Manual intervention hooks | β |
| SLA dashboard support | β |
π§ Summary¶
The Infrastructure Engineer Agent is observability-native and human-aware. It provides:
- Full traceability from blueprint to YAML
- Real-time visibility into execution lifecycle
- Intelligent failure handling and escalation
- Clear separation between recoverable vs. terminal errors
- A feedback loop for continuous improvement of templates and overlays
This ensures that infrastructure generation in the ConnectSoft platform is safe, transparent, auditable, and controllable β even when powered by autonomous agents.
π Diagram: Infrastructure Engineer Agent in Context¶
flowchart TD
subgraph Architecture
A1[Vision Architect Agent]
A2[Enterprise Architect Agent]
A3[Application Architect Agent]
end
subgraph Engineering
B1[Microservice Generator Agent]
B2[Infrastructure Engineer Agent]
B3[Pull Request Creator Agent]
end
subgraph Compliance
C1[Security Architect Agent]
C2[Observability Agent]
C3[Infrastructure Architect Agent]
end
subgraph Deployment
D1[DevOps Agent]
D2[CI/CD Pipelines]
end
A1 --> A2 --> A3 --> B1
B1 --> B2
C3 --> B2
C1 --> B2
C2 --> B2
B2 --> B3
B2 --> D1
B2 --> C2
B2 --> C1
D1 --> D2
B3 --> D1
click B2 "https://connectsoft.ai/docs/agents/infrastructure-engineer-agent" "View Agent Spec"
π Explanation of Flow¶
| Stage | Role |
|---|---|
| Architecture Agents | Generate domain models, service boundaries, and blueprint metadata |
| Microservice Generator Agent | Creates code, handler scaffolds, DTOs |
| Infrastructure Engineer Agent (π’ This Agent) | Generates Kubernetes YAML, Helm charts, RBAC, OTEL, CI/CD fragments |
| Security & Observability Agents | Inject security context, tracing, validation rules |
| Pull Request Creator Agent | Wraps generated code and infra into a structured, traceable PR |
| DevOps Agent | Deploys Helm charts and YAML via pipelines |
| CI/CD Pipelines | Executes automated deploy, verify, release |