use an enum for TimelineEvent#action
add a post edit action
prefer describe blocks over context for method blocks