1.0 KiB
1.0 KiB
Plan: Move interestMap from certmanager to smartacme core
Goal
- Pull the interest coordination mechanism out of the ICertManager implementations and into the SmartAcme class.
Steps
- Remove
interestMapfromICertManagerinterface (ts/interfaces/certmanager.ts) and its import ofInterestMap. - Strip out
interestMapproperty, initialization, and usage fromMemoryCertManagerandMongoCertManager(ts/certmanagers/*.ts). - In
Smartacmeclass (ts/smartacme.classes.smartacme.ts):- Add a private
interestMap: plugins.lik.InterestMap<string, SmartacmeCert>property. - Initialize it in the constructor:
this.interestMap = new plugins.lik.InterestMap((domain) => domain);. - Update
getCertificateForDomain()and any other consumers to referencethis.interestMapinstead ofthis.certmanager.interestMap.
- Add a private
- Remove any tests or code that reference the old
interestMaponICertManager(if any). - Run CI (
pnpm buildandpnpm test) and fix any regressions.
Please review and confirm before we begin the refactor.