# AI Hint Feed migration and coexistence ## Boundary `key.osglab.com` remains the legacy AI Hint Feed for installed clients that still use that origin. This repository must not: - change the `key.osglab.com` DNS record; - redirect `key.osglab.com` to `account.osglab.com`; - reuse or delete the legacy container, image, settings file, or data volume; - require the legacy service to call this account service. The migrated generator runs independently inside OSGAccountServer and publishes: - `https://account.osglab.com/v1/content/hints/manifest` - `https://account.osglab.com/v1/content/hints/{locale}` - `https://account.osglab.com/hints/manifest.json` - `https://account.osglab.com/hints/hints-{locale}.json` ## Safe rollout 1. Back up the legacy `settings.json`, `manifest.json`, `hints-zh.json`, and `hints-en.json` from its persistent volume. 2. Deploy OSGAccountServer with `HINT_FEED_ENABLED=false`. 3. Apply Flyway migration `V24__hint_feed_generation.sql` and the matching runtime grants. 4. Use the protected admin console to review generation settings and run one manual generation. 5. Verify both v1 and legacy paths on `account.osglab.com`, including ETag/304. 6. Set `HINT_FEED_ENABLED=true` only after the generated packs are accepted. 7. Point only new client releases at `account.osglab.com`. Existing clients may continue to use `key.osglab.com`. ## Rollback Disable `HINT_FEED_ENABLED` to stop scheduled generation. Published packs remain available from MySQL and manual editing/saving remains available. No rollback step depends on or modifies `key.osglab.com`. Provider credentials such as `TOPHUB_API_KEY` stay in environment-backed secret storage. They are never written to the generation settings table or returned to the admin browser.