Summary:
Summary:
- Collects file assets and emits FileAsset entries with storage keys.

Invariants:
- Storage keys are derived via AppAssetStorage for draft files.

Tests:
- Covered by asset build pipeline tests.
