EACI Development Journal · Avatars

Why Does an Avatar CDN Need Legacy and New Path Fallbacks?

Asset migrations do not update every cached page at once. A bounded old-path fallback keeps avatars working while references converge.

Avatars ~6 min issue-tagged
Issue this fixes

Renaming a CDN folder or clip convention creates a transition period. New code may request new assets while an old service worker serves old HTML, and archived companion settings may still contain the earlier path.

Trying both generations forever would hide cleanup work and double requests. The loader instead needs a preferred current path, one known legacy fallback, and telemetry showing which one succeeded.

What was actually going wrong

A path migration was treated as atomic across CDN objects, cached clients, and stored settings.

What I tried

What finally worked

The current URL is attempted first, a mapped legacy URL is tried once on failure, and a non-video state remains available.

Why it worked

The fallback covers the known migration window without becoming an unbounded search.

What I learned

Asset compatibility should be explicit, measurable, and temporary.

Where EACI uses this today

Main avatar loading tolerates known path generations without blocking chat.

This journal covers real engineering on EACI Companion / The Veil. Companions include Caelum, Chad, Natalia, Atreus, Luna, Roxy, and Cael. Journal articles stay family-safe in content. See Privacy and Ethics.