import { PLANNING_STATE_EVENT_KINDS } from "./planning-event-payloads.js";
/** Envelope + payload schema generation admitted to the canonical git log (Phase 114 S1 + Phase 119 planning). */
export const TASK_STATE_EVENT_LOG_SUPPORTED_SCHEMA_VERSION = 1;
/** Explicit versioning policy for operators and agents (machine canon). */
export const TASK_STATE_EVENT_LOG_SCHEMA_POLICY = "Append only events with envelope.schemaVersion === 1 and kind in CANONICAL_STATE_EVENT_LOG_SUPPORTED_KINDS. " +
    "Reject unknown kinds, unsupported schemaVersion, duplicate clientMutationId in the same stream, " +
    "and lifecycle transitions that disagree with replayed task status or workspace-kit transition table. " +
    "Future schema bumps require a new log segment or migration runbook — do not coerce v2+ into v1 validators.";
export const TASK_STATE_EVENT_LOG_SUPPORTED_KINDS = [
    "task.created",
    "task.updated",
    "task.transitioned",
    "task.batch_applied"
];
export const PLANNING_STATE_EVENT_LOG_SUPPORTED_KINDS = PLANNING_STATE_EVENT_KINDS;
export const CANONICAL_STATE_EVENT_LOG_SUPPORTED_KINDS = [
    ...TASK_STATE_EVENT_LOG_SUPPORTED_KINDS,
    ...PLANNING_STATE_EVENT_LOG_SUPPORTED_KINDS
];
export function isSupportedCanonicalEventKind(kind) {
    return CANONICAL_STATE_EVENT_LOG_SUPPORTED_KINDS.includes(kind);
}
