add created_at + associated fields, extractProfileFields, read-mode batches, edge caching
- add created_at (ISO 8601) and associated (JSON) columns to actors table
- extract shared extractProfileFields() for 4 callsites (enrichment, cron, backfill, admin)
- cleanAssociated() strips zero/false fields to match bsky's compact typeahead shape
- search response now returns full profileViewBasic surface minus viewer
- db.batch() supports read/write mode param (was hardcoded to "write")
- stats handler uses read-mode batch (3-6s → 50-250ms warm)
- stats handler uses CF edge cache (60s TTL) with Server-Timing headers
- search handler cache.put moved to ctx.waitUntil (non-blocking)
- add PLC export streaming backfill script for bulk created_at population
- update docs, architecture, README for new fields
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>