package com.correx.infrastructure.tools.task

import com.correx.core.events.types.SessionId

/**
 * Port: the paths a session has written this run. The host supplies an adapter that folds the
 * session's SessionContext (its writes come from the recorded receipt.affectedEntities). The
 * cite-before-claim gate in [TaskUpdateTool] uses it to confirm a task being completed actually saw
 * changes under its affected_paths. A null binding leaves the gate off.
 */
fun interface SessionWrites {
    fun pathsWritten(sessionId: SessionId): Set<String>
}
