package com.correx.core.events.types

import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable

/**
 * Edge types for the work graph. A task links to other tasks, artifacts (by [ArtifactId]),
 * or sessions (by [SessionId]) — the target is stored as a plain id string plus a type.
 */
@Serializable
enum class TaskLinkType {
    @SerialName("DEPENDS_ON") DEPENDS_ON,
    @SerialName("BLOCKS") BLOCKS,
    @SerialName("IMPLEMENTS") IMPLEMENTS,
    @SerialName("RELATES_TO") RELATES_TO,
    @SerialName("PRODUCED") PRODUCED,
    @SerialName("CONTEXT") CONTEXT,
}
