You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
perf(aws): populate ComputeDetails VCPU/MemoryGB from EC2 DescribeInstanceTypes catalogue #99
PR #97 extended common.ComputeDetails with VCPU + MemoryGB fields. The AWS compute path (providers/aws/recommendations/parser_services.go::ec2Info) doesn't populate them because the upstream Cost Explorer EC2InstanceDetails doesn't carry that data — populating requires a new ec2.DescribeInstanceTypes caller + per-region cache + mocks for tests.
Current behaviour
parser_services.go:76 builds &common.ComputeDetails{} from CE data only. The new VCPU / MemoryGB fields ship as zero (omitted from JSON via omitempty).
Steps to verify the gap
Query a deployed environment with AWS EC2 RI recommendations and observe that responses have details.vcpu / details.memory_gb absent.
Expected behaviour
Populated from ec2.DescribeInstanceTypes(InstanceTypes: [m5.large, ...]) keyed by the converter's seen instance types. Cache the catalogue per-region for the duration of a recommendation collection.
Proposed fix
Add an EC2 instance-type catalogue caller in providers/aws/services/ec2/ — wraps DescribeInstanceTypes, caches per-region per-collection-run.
Inject the catalogue into parser_services.go (or the equivalent post-fetch enrichment point).
Populate VCPU from InstanceTypeInfo.VCpuInfo.DefaultVCpus, MemoryGB from InstanceTypeInfo.MemoryInfo.SizeInMiB / 1024.
P3 — graceful degradation to 'unknown' in the UI, low urgency. EC2 VCPU/MemoryGB population requires a new DescribeInstanceTypes caller + per-region cache, making this effort/m. Not blocking any shipped feature; defer to after the override cluster (#107, #111) is resolved. (triage agent wave1-B)
PR #229 (merge commit c05c0d1, confirmed in origin/feat/multicloud-web-frontend) closes #148 (Azure compute vCPU/MemoryGB via cached SKU catalogue), not #99. Issue #99 is specifically about the AWS path: providers/aws/recommendations/parser_services.go::ec2Info needs a new ec2.DescribeInstanceTypes caller + per-region cache + mocks to populate VCPU/MemoryGB. Verified on feat branch that providers/aws/recommendations/ has no DescribeInstanceTypes call. Issue remains open.
Activity
cristim commentedon Apr 28, 2026
P3 — graceful degradation to 'unknown' in the UI, low urgency. EC2 VCPU/MemoryGB population requires a new
DescribeInstanceTypescaller + per-region cache, making this effort/m. Not blocking any shipped feature; defer to after the override cluster (#107, #111) is resolved. (triage agent wave1-B)cristim commentedon May 28, 2026
Verification: cannot-verify-autopilot
PR #229 (merge commit c05c0d1, confirmed in origin/feat/multicloud-web-frontend) closes #148 (Azure compute vCPU/MemoryGB via cached SKU catalogue), not #99. Issue #99 is specifically about the AWS path:
providers/aws/recommendations/parser_services.go::ec2Infoneeds a newec2.DescribeInstanceTypescaller + per-region cache + mocks to populateVCPU/MemoryGB. Verified on feat branch thatproviders/aws/recommendations/has noDescribeInstanceTypescall. Issue remains open.perf(aws/recs): populate ComputeDetails VCPU/MemoryGB via DescribeIns…
perf(aws/recs): populate ComputeDetails VCPU/MemoryGB via DescribeIns…
perf(aws/recs): populate ComputeDetails VCPU/MemoryGB via DescribeIns…
test(aws/recs): cover SizeInMiB-nil + assert no NextPage on canceled …
test(aws/recs): cover SizeInMiB-nil + assert no NextPage on canceled …
test(aws/recs): cover SizeInMiB-nil + assert no NextPage on canceled …
test(aws/recs): cover SizeInMiB-nil + assert no NextPage on canceled …
test(aws/recs): cover SizeInMiB-nil + assert no NextPage on canceled …