package com.correx.core.config

import kotlinx.serialization.Serializable

/**
 * Curated per-repo standing context, authored by the operator at
 * `<workspaceRoot>/.correx/project.toml`. Unlike distilled project memory (reactive,
 * derived from decision journals), this is the deliberate "how to work in this repo"
 * card: injected as L0 for every stage of every session bound to the workspace.
 */
@Serializable
data class ProjectProfile(
    val about: String = "",
    val conventions: List<String> = emptyList(),
    val commands: Map<String, String> = emptyMap(),
) {
    fun isEmpty(): Boolean = about.isBlank() && conventions.isEmpty() && commands.isEmpty()
}
