name: airtable-event-onboarding description: Use when a new event points this app at a new Airtable base or new table schema and the Airtable field aliases, linked-record mappings, or publishing fields need to be reconciled with the app.
Airtable Event Onboarding
Use this workflow when a new event replaces or renames Airtable columns.
Goal
Keep the app's canonical data contract stable and update the Airtable config, not random app files.
Workflow
- Read
.env.localand confirmAIRTABLE_BASE,AIRTABLE_TABLE_AGENDA,AIRTABLE_TABLE_SPEAKERS, andAIRTABLE_TABLE_FORMATS. - Run
npm run airtable:auditfrom the repo root. - Update config.ts:
- change alias arrays in
airtableFieldMap - change
airtableRequiredFieldsonly if the app contract changed - update linked-record fields or publishing-status ids if the new base uses different ones
- change alias arrays in
- If the new event introduces a genuinely new app concept, update the canonical parsers in schemas.ts and the UI/API code that consumes that field.
- Run verification:
npm test -- --runInBandnpx tsc --noEmitnpm run lint
- Summarize:
- which aliases were added or changed
- which live Airtable fields remain unmapped
- which app features are now unsupported because the source fields do not exist
Rules
- Do not hardcode new Airtable field labels directly in pages or routes.
- Prefer adding aliases to the config over changing parser logic.
- Treat missing live fields as a product decision: either make the feature optional or add the field to Airtable.
- When debugging linked sessions, use linked record ids, not speaker names.