# Plan Detail ## Step 0: Discover and structure the solution's functional requirements, non-functional requirements, constraints, assumptions, and open questions without selecting cloud products. - **Capability:** Elicit and organize architecture requirements while explicitly deferring product selection. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** This is a deliverable phase in the requested GCP solution-architecture workflow, not an independently reusable registry capability. - **Input schema:** `{'repository_name': 'string', 'template_url': 'string', 'workflow_request': 'string'}` - **Output schema:** `{'repository_name': 'string', 'template_url': 'string', 'functional_requirements': 'string[]', 'non_functional_requirements': 'string[]', 'constraints': 'string[]', 'assumptions': 'string[]', 'open_questions': 'string[]', 'product_selection_deferred': 'boolean'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 1: Select Google Cloud products from the confirmed requirements and produce the solution architecture, Mermaid diagram, architecture description, and Terraform infrastructure-as-code. - **Capability:** Translate confirmed functional and non-functional requirements into a Google Cloud product architecture and deployable Terraform artifacts. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** The architecture artifacts are specific to this workflow's requirements and belong in the requested deliverable repository rather than as a standalone registry agent. - **Input schema:** `{'repository_name': 'string', 'template_url': 'string', 'functional_requirements': 'string[]', 'non_functional_requirements': 'string[]', 'constraints': 'string[]', 'assumptions': 'string[]', 'open_questions': 'string[]', 'product_selection_deferred': 'boolean'}` - **Output schema:** `{'repository_name': 'string', 'template_url': 'string', 'functional_requirements': 'string[]', 'non_functional_requirements': 'string[]', 'constraints': 'string[]', 'assumptions': 'string[]', 'selected_products': 'string[]', 'architecture_diagram_mermaid': 'string', 'architecture_description': 'string', 'terraform_iac': 'string'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 2: Validate the Terraform infrastructure and architecture artifacts without deploying resources by running formatting checks, Terraform validation, and a dry-run or plan-oriented deployment check. - **Capability:** Perform pre-deployment validation of Terraform and solution architecture outputs without provisioning cloud resources. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** Validation is a phase of this requested workflow and its checks are coupled to the Phase 2 Terraform output. - **Input schema:** `{'repository_name': 'string', 'template_url': 'string', 'functional_requirements': 'string[]', 'non_functional_requirements': 'string[]', 'constraints': 'string[]', 'assumptions': 'string[]', 'selected_products': 'string[]', 'architecture_diagram_mermaid': 'string', 'architecture_description': 'string', 'terraform_iac': 'string'}` - **Output schema:** `{'repository_name': 'string', 'template_url': 'string', 'functional_requirements': 'string[]', 'non_functional_requirements': 'string[]', 'constraints': 'string[]', 'assumptions': 'string[]', 'selected_products': 'string[]', 'architecture_diagram_mermaid': 'string', 'architecture_description': 'string', 'terraform_iac': 'string', 'terraform_format_valid': 'boolean', 'terraform_validation_valid': 'boolean', 'dry_run_valid': 'boolean', 'validation_findings': 'string[]'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 3: Package the approved requirements, architecture, Mermaid diagram, Terraform IaC, and validation results into solution-architecture-guide.md in the gcp_solution_architecture_agent repository. - **Capability:** Consolidate validated solution architecture artifacts into a complete, reviewable solution architecture guide. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** The guide is the final deliverable for this repository and is not a standalone reusable capability. - **Input schema:** `{'repository_name': 'string', 'template_url': 'string', 'functional_requirements': 'string[]', 'non_functional_requirements': 'string[]', 'constraints': 'string[]', 'assumptions': 'string[]', 'selected_products': 'string[]', 'architecture_diagram_mermaid': 'string', 'architecture_description': 'string', 'terraform_iac': 'string', 'terraform_format_valid': 'boolean', 'terraform_validation_valid': 'boolean', 'dry_run_valid': 'boolean', 'validation_findings': 'string[]'}` - **Output schema:** `{'repository_name': 'string', 'solution_architecture_guide': 'string'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 4: Verify that the gcp_solution_architecture_agent repository contains the packaged solution-architecture-guide.md with the approved workflow outputs. - **Capability:** Confirm repository delivery of the complete solution architecture guide. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** (none recorded) - **Input schema:** `{'repository_name': 'string', 'solution_architecture_guide': 'string'}` - **Output schema:** `{'repository_name': 'string', 'guide_path': 'string', 'guide_content': 'string', 'guide_persisted': 'boolean'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 5: Verify that the repository is derived from the workflow_agent template and implements the complete four-phase Google Cloud solution architecture workflow alongside the packaged guide. - **Capability:** Inspect repository structure and workflow configuration to confirm template conformance, phase coverage, and delivery of the required architecture artifacts. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** (none recorded) - **Input schema:** `{'repository_name': 'string', 'guide_path': 'string', 'guide_content': 'string', 'guide_persisted': 'boolean'}` - **Output schema:** `{'repository_name': 'string', 'guide_path': 'string', 'guide_persisted': 'boolean', 'template_conformance_valid': 'boolean', 'phase_coverage_valid': 'boolean', 'required_artifacts_present': 'boolean', 'verification_findings': 'string[]'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 6: Publish the verified gcp_solution_architecture_agent repository with its completed workflow implementation and solution architecture guide. - **Capability:** Persist and publish the verified repository contents to the configured source-control remote. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** (none recorded) - **Input schema:** `{'repository_name': 'string', 'guide_path': 'string', 'guide_persisted': 'boolean', 'template_conformance_valid': 'boolean', 'phase_coverage_valid': 'boolean', 'required_artifacts_present': 'boolean', 'verification_findings': 'string[]'}` - **Output schema:** `{'repository_name': 'string', 'published': 'boolean', 'published_revision': 'string', 'publication_findings': 'string[]'}` - **Acceptance criteria:** (none) - **Success conditions:** (none) ## Step 7: Verify that the published repository revision contains the completed workflow implementation and solution architecture guide. - **Capability:** Confirm the remote publication matches the verified repository contents at the reported revision. - **Plan label:** gap - **Reusable capability:** False - **Rationale:** (none recorded) - **Input schema:** `{'repository_name': 'string', 'published': 'boolean', 'published_revision': 'string', 'publication_findings': 'string[]'}` - **Output schema:** `{'repository_name': 'string', 'published_revision': 'string', 'remote_revision_verified': 'boolean', 'published_content_verified': 'boolean', 'verification_findings': 'string[]'}` - **Acceptance criteria:** (none) - **Success conditions:** (none)