# core/tasks — AGENTS.md ## Purpose Task graph management: defines tasks, their status, links, notes, and history; projects task state from events; assembles task context bundles for inference; syncs with git commit history; and provides search and retrieval over the task board. ## Ownership CORREX kernel team. ## Local Contracts - `Task` / `TaskState` / `TaskStatus` / `TaskLink` / `TaskNote` — core task domain types. - `TaskReducer` / `DefaultTaskReducer` — standard reducer over `TaskEvents` (from `core:events`). - `TaskBoardProjector` — projects all tasks into `TaskBoard` (the full board view). - `DefaultTaskRepository` wraps `EventReplayer`. - `TaskGraph` — dependency/link graph over tasks; surfaces ready/blocked status. - `TaskBoard` — aggregated view: all tasks + graph relationships. - `TaskHistory` — event history for a single task. - `TaskMarkdown` — renders task state as Markdown for context injection. - `TaskContextAssembler` / `TaskContextBundle` — assembles task-related context for an inference call. - `TaskSearch` — keyword/status search over `TaskBoard`. - `TaskService` — application-layer facade for task operations (create, update, transition). - `TaskStreams` — streaming task updates for WS consumers. - `TaskKnowledgeRetriever` — retrieves task-related knowledge for L3 context. - `GitTaskSync` / `CommitTaskParser` — syncs tasks from git commit history. - `TaskArtifactResolver` / `TaskDocumentResolver` / `TaskSessionResolver` — resolvers for task-linked artifacts, documents, and sessions. - `TaskTargetKinds` / `TaskCounterProjection` / `TaskCounterState` — supporting types. ## Work Guidance - Follow the standard Events→State→Reducer→Projector→Repository pattern (see `core/AGENTS.md`). - `DefaultTaskReducer` only does `state.copy(...)`. - `TaskGraph` is a derived structure — always rebuild from `TaskBoard`, never persist it independently (Hard Invariant #1). - `GitTaskSync` reads git history; its observations must be recorded as events (Hard Invariant #9). Do not re-read git history during replay. ## Verification ```bash ./gradlew :core:tasks:test --rerun-tasks ``` ## Child DOX Index No child AGENTS.md (leaf module).