← EventHexCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to EventHex
Snapshot Sep 30, 2026 · 23:00 UTC · version 1.0.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Speakers and sessions — bulk creation, breaks, sub-sessions, speaker roles, ordering, photos.",
"included_files": [],
"name": "eventhex-agenda",
"skill_md_contents": "---\nname: eventhex-agenda\ndescription: Speakers and sessions — bulk creation, breaks, sub-sessions, speaker roles, ordering, photos.\n---\n\n# Agenda — speakers & sessions\n\n## Speakers\n\n- `create_speakers(eventId, speakers:[{name, designation, company, about, photo}])` — always an array; one item for a single speaker, many for a lineup. Each item is created independently; report per-item results.\n- Photos from third-party URLs: pass the URL as `photo` — it is copied onto EventHex CDN and the internal key is saved. `upload_speaker_photo_from_url` does the same for an existing speaker.\n- `update_speaker` / `delete_speaker` / `listSpeakers`.\n- Ordering: `reorder_speakers(eventId, speakers:[{speakerId, position}])` — lower positions first.\n- `generateSpeakerProfile` writes AI bio copy for a speaker.\n\n## Sessions\n\n`create_sessions(eventId, sessions:[{title, start, end, stage, description, …}])` — always an array. Supports:\n\n- Breaks: `isBreak:true`.\n- Nested sub-sessions: `isSubSession:true` + `parentSession`.\n- Role-aware speakers: `sessionSpeakers:[{speakerId, role, order}]` for roles like Moderator or Keynote Speaker; the plain `speakers` id array is filled automatically for compatibility.\n\nAlso: `updateSession`, `deleteSession` (destructive — explicit request only), `listSessions`, `assignSpeakerToSession`, `removeSpeakerFromSession`, `createAgendaBatch` (speakers + sessions in one call), `checkConflicts(eventId)` to catch overlapping times/stages after bulk edits.\n\n## Flow for \"here is my full schedule\"\n\n1. `create_speakers` with the whole lineup (dedupe against `listSpeakers` first).\n2. `create_sessions` with the whole schedule, wiring `sessionSpeakers` by the returned speaker ids.\n3. `checkConflicts`, then report per-item successes and any failures.\n\nSession times use the event's timezone.\n"
}SHA-256 of public snapshot: ea5e0727c21df76248b03082b66b336d5c4e407f8048ef71e08e3a44e07d485c