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
fix(config): canonicalise every AWS service alias in purchase suppressions, not only ec2/compute #1420
#1412 (fixed by #1419) made purchase suppressions match AWS EC2 recs whether they carry ec2 or the canonical compute slug. The same double-buy class exists for the other AWS alias pairs, which the provider treats as equivalent (providers/aws provider.go ~468-476) and which mapServiceSlug in internal/purchase/execution.go ~1268-1281 accepts:
rds / relational-db
elasticache / cache
opensearch / search
redshift / data-warehouse
So an API purchase sent as aws/relational-db writes a suppression under that slug, which misses the scheduler's aws/rds rec for the same capacity. That capacity can then be shown, and bought, again.
Proposed fix: generalise config.CanonicalSuppressionService (added in #1419) to map every AWS alias pair to one canonical value, ideally derived from the same table mapServiceSlug uses so the two can't drift. Add a test per pair in both directions, and keep Azure/GCP unchanged. Found by the independent review of #1419.
Activity
test(config): cross-reference AWS alias tables and cover write-side a…
chore(config): tie suppression slug aliases to the library service co…
fix(config): canonicalise every AWS service alias in purchase suppres…