- FormAfterCreate/FormAfterUpdate run the locale check, then register a
purge of kind faq through cooler.PurgeSiteCacheAfterCommit
- new FormAfterDelete purges after the delete commits
- purgeSiteCache helper takes the save transaction from cabana.TxFromContext
and the purger from cooler.SiteCacheFromApp (site_cache.* keys)
- TestFaqAdminPurgesSiteCache on Postgres
- GET /_faq/api/v1/faqs/{slug}?locale=xx, anonymous, faq-public-api bucket (120/min per client IP)
- locale by enabled code or the default locale; active row, lowest id among duplicates
- description and answers passed through seaglass.Sanitize on output; 404 {"error":"FAQ not found"}
- TestFaqAPISmoke; README with API, CORS paths, import workflow and Winter adaptations
- go mod tidy records the test dependencies