Files
correx/infrastructure/workflow/AGENTS.md
T
kami d26f20c316 docs(dox): build out the DOX AGENTS.md hierarchy
Root Child DOX Index assembled, plus a per-module AGENTS.md across the tree
(core/*, infrastructure/*, apps/*, testing/*, and docs/examples/frontend/etc),
each following the DOX section shape: Purpose, Ownership, Local Contracts,
Work Guidance, Verification, Child DOX Index.
2026-06-28 20:43:27 +04:00

32 lines
1.7 KiB
Markdown

# infrastructure/workflow/
## Purpose
Workflow and prompt loading adapters. Parses TOML workflow definitions into `core:transitions` execution plans (`TomlWorkflowLoader`, `ExecutionPlanCompiler`), loads prompt files from the filesystem (`FileSystemPromptLoader`), and validates plan structure (`PlanLinter`).
## Ownership
Adapter for `core:transitions` and `core:inference` workflow interfaces. Depends on `core:transitions`, `core:inference`, `core:events`, `core:artifacts`. Uses Jackson for TOML parsing.
## Local Contracts
- `WorkflowLoader` (implemented by `TomlWorkflowLoader`) is the interface for reading workflow definitions; implementations must not embed domain logic beyond parsing and structural validation.
- `PromptLoader` (implemented by `FileSystemPromptLoader`) reads prompt text from disk; filesystem reads are environment observations — callers must record the loaded content as events if replay must reproduce the exact prompt (invariant #9).
- `ExecutionPlanCompiler` converts the parsed `ExecutionPlanModel` into a runnable plan for `core:transitions`; compilation is deterministic given the same input model.
- `PlanLinter` enforces structural rules (e.g. unreachable stages are rejected); linting failures throw `WorkflowValidationException`.
- `PlanDerivedManifest` exposes the write manifest derived from a plan.
## Work Guidance
Standard adapter rules apply (see parent `AGENTS.md`). Filesystem I/O in `withContext(Dispatchers.IO)`. TOML parsing errors must be surfaced as `WorkflowValidationException`, not raw Jackson exceptions.
## Verification
```
./gradlew :infrastructure:workflow:test --rerun-tasks
```
## Child DOX Index
No child AGENTS.md (leaf module).